[U-Boot] [PATCH v3 09/12] OMAP3: Add SPL support to Beagleboard

Tom Rini trini at ti.com
Thu Nov 10 15:34:38 CET 2011


On 11/09/2011 11:28 PM, Heiko Schocher wrote:
> Hello Tom,
> 
> Tom Rini wrote:
>> This introduces 200MHz Micron parts timing information based on x-loader
>> to <asm/arch-omap3/mem.h>.  The memory init logic is also based on what
>> x-loader does in these cases.  Note that while previously u-boot would
>> be flashed in with SW ECC in this case it now must be flashed with HW
>> ECC.  We also change CONFIG_SYS_TEXT_BASE to 0x80100000.
>>
>> Cc: Dirk Behme <dirk.behme at gmail.com>
>> Beagleboard rev C5, xM rev A:
>> Tested-by: Tom Rini <trini at ti.com>
>> Beagleboard xM rev C:
>> Tested-by: Matt Ranostay <mranostay at gmail.com>
>> Beagleboard rev B7, C2, xM rev B:
>> Tested-by: Matt Porter <mporter at ti.com>
>> Signed-off-by: Tom Rini <trini at ti.com>
>> ---
>>  arch/arm/include/asm/arch-omap3/mem.h |   23 ++++++++++
>>  board/ti/beagle/beagle.c              |   72 ++++++++++++++++++++++++++++++++-
>>  board/ti/beagle/config.mk             |   33 ---------------
>>  include/configs/omap3_beagle.h        |   58 +++++++++++++++++++++++++-
>>  4 files changed, 148 insertions(+), 38 deletions(-)
>>  delete mode 100644 board/ti/beagle/config.mk
> [...]
> 
>> diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
>> index 9482c5e..1c8f995 100644
>> --- a/board/ti/beagle/beagle.c
>> +++ b/board/ti/beagle/beagle.c
> [...]
>> +void get_board_mem_timings(u32 *mcfg, u32 *ctrla, u32 *ctrlb, u32 *rfr_ctrl,
>> +		u32 *mr)
>> +{
>> +	int pop_mfr, pop_id;
>> +
>> +	/*
>> +	 * We need to identify what PoP memory is on the board so that
>> +	 * we know what timings to use.  If we can't identify it then
>> +	 * we know it's an xM.
>> +	 */
>> +	identify_nand_chip(&pop_mfr, &pop_id);
>> +
>> +	/*
>> +	 * We cannot use the MICRON_MCFG_165 as it relies on
>> +	 * PHYS_SDRAM_1_SIZE being defined to the correct value, and we
>> +	 * don't know that value until runtime.
>> +	 */
>> +	*mr = MICRON_V_MR_165;
>> +	switch (get_board_revision()) {
>> +	case REVISION_C4:
>> +		if (pop_mfr == NAND_MFR_STMICRO && pop_id == 0xba) {
>                                                              ^
> Please use a define for this here, thanks!

I'm not sure that buys us anything, honestly.  Perhaps just a comment to
look it up in drivers/mtd/nand/nand_ids.c ?

>> +			*mcfg = 0x04590099;
>                                 ^
> here too.

Well, as I say in the comment, we can't, at least without a big rewrite
of <asm/arch-omap3/mem.h>.  But, I'll see how bad it gets to do that I
suppose.  Thanks.

-- 
Tom


More information about the U-Boot mailing list