Hi Ben,
quoted
When we're using CONFIG_ARM_DEVTREE, we need to postpone machine
detection until later in setup_arch. Because ARM_DEVTREE depends on
!DEBUG_LL, we don't need the mdesc this early anyway.
We'll add support for ARM_DEVTREE && DEBUG_LL later.
Why not add a specific machine type for 'this is device tree' and
then these routines don't even need to #ifdef. It would especially
be good as it allows dt and non-dt machines to coexist in the same
kernel together.
Mainly because this doesn't gain us much; the machine_desc that is discovered
from this new machine type would not have the correct data (phys_io &
io_pg_offset) required for early setup (used for DEBUG_LL).
We could conditionally skip the detection if we see a DT machine type, but
then we'd need to add similar checks for all the paths where the machine_desc
is used.
However, my goal is indeed to allow DT and non-DT machines to coexist as much
as possible, this patch is more a temporary workaround while I figure out how
to handle the DEBUG_LL stuff nicely for DT cases.
Cheers,
Jeremy