
Le mercredi 11 mars 2015 à 17:16 -0400, Tom Rini a écrit :
On Wed, Mar 11, 2015 at 09:26:43PM +0100, Paul Kocialkowski wrote:
Le mercredi 11 mars 2015 à 11:04 -0500, Nishanth Menon a écrit :
On Wed, Mar 11, 2015 at 11:00 AM, Tom Rini trini@konsulko.com wrote:
On Wed, Mar 11, 2015 at 10:53:41AM -0500, Nishanth Menon wrote:
On Wed, Mar 11, 2015 at 10:48 AM, Tom Rini trini@konsulko.com wrote:
On Mon, Mar 09, 2015 at 05:12:05PM -0500, Nishanth Menon wrote:
> omap_smc1 is now generic enough to remove duplicate > omap3_gp_romcode_call logic that omap3 introduced. > > As part of this change, move to using the generic lowlevel_init.S for > omap3 as well. > > Signed-off-by: Nishanth Menon nm@ti.com
Reviewed-by: Tom Rini trini@konsulko.com
But I've always wondered, does OMAP3 not actually pass in the same info in the same location / manner as OMAP4 and later?
For smc call, the calls are similar, but the parameters change
Right, sorry but I mean for boot params as that's what's still being omap3-specific in lowlevel_init.S
There seemed to be differences w.r.t bootdevice detection logic which seems to be extensive in omap3 :( had'nt dug too much there :(
As far as I can see, the main difference is that omap4/5 are using SRAM to store various bits such as the boot device (OMAP_SRAM_SCRATCH_BOOT_PARAMS). On omap3, that logic is not used and a global variable (omap3_boot_device) is there instead.
We could easily make that logic fit omap3 as well and get rid of the global variable. I also see a few functions from omap-common's hwinit-common.c that could be reused on omap3.
I could start looking into that, even though again, I don't have many OMAP devices to test with.
Right, but is the data format the same or did it change, in what we're reading?
The boot structure is very similar (at least between omap3 and omap4). This is chapter 27.4.8.4 Image Execution of the OMAP4430 TRM and chapter 26.4.8.4 Image Execution of the OMAP36xx TRM.
There is some padding difference between omap3 and omap4, but nothing we can't deal with in omap-common.c's save_omap_boot_params: some offsets are already defined at omap_boot.h, we probably just need to adjust those for omap3.