Hi Harvey, Le 04/07/2011 23:06, Christopher Harvey a écrit : > On Mon, Jul 04, 2011 at 12:00:19PM +0300, Igor Grinberg wrote: >> CONFIG_MACH_TYPE can be used to set the machine type number in the >> common arm code instead of setting it in the board code. >> >> Signed-off-by: Igor Grinberg<grinb...@compulab.co.il> >> --- >> README | 12 ++++++++++++ >> arch/arm/lib/board.c | 5 +++++ >> 2 files changed, 17 insertions(+), 0 deletions(-) >> >> diff --git a/README b/README >> index 446966d..a9ccb0a 100644 >> --- a/README >> +++ b/README >> @@ -442,6 +442,18 @@ The following options need to be configured: >> crash. This is needed for buggy hardware (uc101) where >> no pull down resistor is connected to the signal IDE5V_DD7. >> >> + CONFIG_MACH_TYPE [relevant for ARM only] >> + >> + This option can be used to specify the machine type number >> + as it appears in the ARM machine registry >> + (see http://www.arm.linux.org.uk/developer/machines/). >> + If this option is not defined, then your board code >> + will have to set this up like: >> + gd->bd->bi_arch_number =<mach type>; >> + Note: This option is not suitable if you have multiple >> + boards supported in a single configuration file and the >> + machine type is runtime discoverable. >> + >> - vxWorks boot parameters: >> >> bootvx constructs a valid bootline using the following >> diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c >> index 169dfeb..ee77d05 100644 >> --- a/arch/arm/lib/board.c >> +++ b/arch/arm/lib/board.c >> @@ -451,6 +451,11 @@ void board_init_r (gd_t *id, ulong dest_addr) >> >> monitor_flash_len = _end_ofs; >> debug ("monitor flash len: %08lX\n", monitor_flash_len); >> + >> +#ifdef CONFIG_MACH_TYPE >> + bd->bi_arch_number = CONFIG_MACH_TYPE; /* board id for Linux */ >> +#endif >> + >> board_init(); /* Setup chipselects */ >> >> #ifdef CONFIG_SERIAL_MULTI >> -- >> 1.7.3.4 >> > I'm curious, is it a feature that bd->bi_arch_number can be set at > runtime? Do any boards actually make a decision about what value to > set this to? If not, then maybe it should be a required value. I've > submitted some patches that deal with the same sort of issue, so I'm > interested in seeing that happens to this one.
Some boards indeed have a feature to set the mach_type at runtime, for example to run both the mainline linux kernel and a manufacturer one (manufacturers tend to use/expect fancy machine types). Amicalement, -- Albert. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot