[PATCH 3/6] ARM: mvebu: introduce multi image support
sebastian.hesselbarth at gmail.com
Tue Aug 13 10:22:43 EDT 2013
On 08/13/13 16:15, Sascha Hauer wrote:
> On Tue, Aug 13, 2013 at 03:30:38PM +0200, Sebastian Hesselbarth wrote:
>> On 08/13/13 09:26, Sascha Hauer wrote:
>>> diff --git a/arch/arm/boards/solidrun-cubox/lowlevel.c b/arch/arm/boards/solidrun-cubox/lowlevel.c
>>> new file mode 100644
>>> index 0000000..fdf5a7e
>>> --- /dev/null
>>> +++ b/arch/arm/boards/solidrun-cubox/lowlevel.c
>>> @@ -0,0 +1,37 @@
>>> + uint32_t fdt;
>>> + __barebox_arm_head();
>>> + arm_cpu_lowlevel_init();
>>> + fdt = (uint32_t)__dtb_dove_cubox_start - get_runtime_offset();
>>> + mvebu_barebox_entry(fdt);
>>> diff --git a/arch/arm/mach-mvebu/lowlevel.c
>>> index 3f64c4a..11810cc 100644
>>> --- a/arch/arm/mach-mvebu/lowlevel.c
>>> +++ b/arch/arm/mach-mvebu/lowlevel.c
>>> @@ -24,5 +24,5 @@
>>> void __naked barebox_arm_reset_vector(void)
>>> - mvebu_barebox_entry();
>>> + mvebu_barebox_entry(0);
>> thanks for the patch set, I'll give it a go soon.
>> I understand that this is just a first step, but you are adding extra
>> lowlevel init to boards/solidrun-cubox/lowlevel.c but in the end it
>> should be part of mach-mvebu/lowlevel.c instead?
>> I have a some MVEBU boards with Dove and Armada 370 available and
>> could extend the patches to have a single lowlevel init again.
> The board specific lowlevel init is necessary since this specifies the
> dtb to use. Otherwise there's no way to find out on which board you are
> running on.
Ok, but I could try to cook the board lowlevel init down to its bare
minimum and only set fdt address. Or have some mvebu specific
fdt_address variable that can be overwritten. The less board specific
stuff there is, the better.
More information about the barebox