[U-Boot] [PATCH v3 1/1] board: arm: Add support for Broadcom BCM7445
Thomas Fitzsimmons
fitzsim at fitzsim.org
Fri Jun 8 22:25:44 UTC 2018
Florian Fainelli <f.fainelli at gmail.com> writes:
> On 06/06/2018 11:35 AM, Thomas Fitzsimmons wrote:
>> Add support for loading U-Boot on the Broadcom 7445 SoC. This port
>> assumes Broadcom's BOLT bootloader is acting as the second stage
>> bootloader, and U-Boot is acting as the third stage bootloader, loaded
>> as an ELF program by BOLT.
>>
>> Signed-off-by: Thomas Fitzsimmons <fitzsim at fitzsim.org>
>> Cc: Stefan Roese <sr at denx.de>
>> Cc: Tom Rini <trini at konsulko.com>
>> Cc: Florian Fainelli <f.fainelli at gmail.com>
>> ---
>
> Looks good, still some minor comments about the choice of representation
> for physical addresses of peripherals, see below.
>
>> +config BCMSTB_TIMER_LOW
>> + hex "Address of BCMSTB timer low register"
>> + default 0xf0412008
>
> This looks very simplistic here since the CPU system control timer is a
> 64-bit timer.
This worked via the default get_ticks implementation in lib/time.c,
which tracks rollovers and converts to a 64-bit value. But I agree it's
better to use the high timer register, so that (among other reasons)
get_ticks reflects total uptime including time spent in BOLT. I
overrode get_ticks in v4 of the patch to use the high and low timer
registers.
> I am really not a big fan of all of those configurable addresses which
> are a) fixed given a specific SoC family (7445, 7439 etc.) and b) are
> error prone because we let an user change those without necessarily
> knowing what is the implication. I really think sticking those constants
> into a header file would be much more appropriate.
Makes sense, moved to a 7445-specific header in v4.
>> +void enable_caches(void)
>> +{
>> + /*
>> + * Nothing required here, since the prior stage bootloader has
>> + * enabled I-cache and D-cache already. Implementing this
>> + * function silences the warning in the default function.
>> + */
>
> This heavily depends on how you load your binary from BOLT, so you must
> be careful about this statement here.
In v4 I adjusted the comment and added an entry to the README to
document the expectation.
Thanks,
Thomas
More information about the U-Boot
mailing list