fdt = (void *)get_fdt(); if (fdt && !fdt_check_header(fdt)) { /* * We have been provided with the appropriate device tree for * the board. Make use of it & search for any machine struct * based upon the root compatible string.
*/
for_each_mips_machine(check_mach) {
match = mips_machine_is_compatible(check_mach, fdt); if (match) {
mach = check_mach;
mach_match_data = match->data; break;
}
}
} elseif (IS_ENABLED(CONFIG_LEGACY_BOARDS)) { /* * We weren't booted using the UHI boot protocol, but do * support some number of boards with legacy boot protocols. * Attempt to find the right one.
*/
for_each_mips_machine(check_mach) { if (!check_mach->detect) continue;
if (!check_mach->detect()) continue;
mach = check_mach;
}
/* * If we don't recognise the machine then we can't continue, so * die here.
*/
BUG_ON(!mach);
void __init plat_fdt_relocated(void *new_location)
{ /* * reset fdt as the cached value would point to the location * before relocations happened and update the location argument * if it was passed using UHI
*/
fdt = NULL;
if (fw_arg0 == -2)
fw_arg1 = (unsignedlong)new_location;
}
switch (boot_cpu_type()) { case CPU_20KC: case CPU_25KF: /* The counter runs at the CPU clock rate */ break; default: /* The counter runs at half the CPU clock rate */
mips_hpt_frequency /= 2; break;
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.