[U-Boot] [PATCH V2 13/14] ARM: AM43xx: GP_EVM: Add support for DDR3

Lokesh Vutla lokeshvutla at ti.com
Mon Dec 2 05:21:31 CET 2013


On Thursday 28 November 2013 04:33 AM, Vaibhav Bedia wrote:
> On Wed, Nov 27, 2013 at 4:34 AM, Lokesh Vutla <lokeshvutla at ti.com> wrote:
> [...]
>> Ideally the default value should be exported from e-fuse values.
>> EMIF does some HW sequence according to the value exported here. This filed tells
>> what type of memory it is.
>>
> 
> No, eFuse is not the right place for this information. If you were to do that
> you would be restricting what memory type is supported on a particular
> device that gets shipped and that's not a scalable model.
At least this was the case for OMAPs. So it worked well..:)
> 
>> I understand the point what if efuse is not blown. I am using this only after we write into sdarm_config register.
>> This can confirm that we get a correct value.
>>  If this is not sufficient we can hardcode the register during startup only ?
> 
> I don't see any value in writing some value in the EMIF register at one place
> and then using that here. If you already know what register values to program
> you already know the memory type.
Yes, according to the board we are passing the registers that means we know
the memory type. The same information I am getting from registers.
> 
> Another place where the memory type information is needed is when the device
> enters low power state and the EMIF contents are lost. Rather than having to
> invent one more way of detecting the memory type in resume from low power state
> you could work out a persistent storage area (RTC scratchpad maybe? assuming
> the RTC is powered up) and use that in all the places. Requires some thought
> about the whole sequence but definitely doable IMHO.
We should not rely on RTC here. I don't think U-Boot should worry about low power state. You mean to
say about passing this information to kernel?
In the current kernel also memory type is derived according to the SDRAM CONFIG register only.
So I thought this would be good enough.


Thanks and regards,
Lokesh

> 
>> One more thing is we can get from MR registers of DDR.
>> But for DDR3 we cannot access MR registers. That is why I didn't go with this approach.
>>
> 
> So now you know why things just worked on OMAP3 (and OMAP4?) and not
> on TI81xx, AM335x and AM437x :)
> 
>> Currently EEPROM doesn't have any details about DDR.
>> Please let me know if this approach is not good enough.
>>
> 
> Since there's no speced way of detecting the memory type you should push for
> the right information to be made available via the EEPROM and write
> generic code.
> But hey that's for you to decide :)
> 
> Regards,
> Vaibhav
> 



More information about the U-Boot mailing list