Le 05/07/2011 00:03, Albert ARIBAUD a écrit :
> Hi Harvey,

Sorry Christopher, I mixed up.

> 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,


Amicalement,
-- 
Albert.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to