To enable L2 cache, we don't want to touch the kernel. Instead, we have to modify U-Boot to do things correctly. Discussion at IRC [1] resulted in the proposal to just remove l2cache_disable() call in uboot's cleanup_before_linux() in cpu/omap3/cpu.c.
Doing this, I built some uboot versions.
a) uboot 1.1.4 ("TI uboot") from [2] (u-boot-beagle-rev2-trial2.tar.gz.gz) + u-boot_1_1_4_500mpu_166ddr_l2enable.patch (see attachment)
This works and kernel reports L2 cache is enabled
Therefore I put binary into attachment.
93fcfe00d952ebcd2c8cea8ce3232946 u-boot.bin
Koen: Using this it shouldn't be necessary any more to enable L2 in kernel. Do you like to not use L2 kernel patch any more and instead use uboot to configure L2 correctly?
b) uboot git ("git uboot") + patches [3] + u-boot_git_500mpu_166ddr_l2enable.patch (see attachment)
This doesn't work:
-- cut --
U-Boot 1.3.3-rc3-00062-ga38dc3e-dirty (May 17 2008 - 07:34:07)
OMAP3430-GP rev 2, CPU-OPP2 L3-133MHz
OMAP3 Beagle Board 2.0 Version + mDDR (Boot ONND)
DRAM: 128 MB
NAND: 256 MiB
In: serial
Out: serial
Err: serial
timed out in wait_for_bb: I2C_STAT=1000
timed out in wait_for_pin: I2C_STAT=1000
I2C read: I/O error
timed out in wait_for_bb: I2C_STAT=1000
Audio Tone on Speakerstimed out in wait_for_bb: I2C_STAT=1000
timed out in wait_for_pin: I2C_STAT=1000
I2C read: I/O error
timed out in wait_for_bb: I2C_STAT=1000
...
-- cut --
Any idea, what might be wrong here?
An other topic: Nishanth seems to make good progress with uboot-v2
http://nishanthmenon.blogspot.com/2008/05/uboot-v2-prompt-ahoy.html
Nishanth: Which download tool do you use for uboot peripheral boot? Serial? Or did you try USB? I think while uboot-v2 becomes working, we should sort out issues [4] 9 & 10.
And one additional: Nishanth: Would be nice if you could check to get uboot-v2 L2 config correct, i.e. don't disable L2 in uboot before jumping to kernel.
Cheers
Dirk
[1] http://www.beagleboard.org/irclogs/index.php?date=2008-05-13#T18:14:49
[2] http://code.google.com/p/beagleboard/wiki/BeagleSourceCode
[3] http://groups.google.com/group/beagleboard/msg/8a40db7ce1008029
[4] http://code.google.com/p/beagleboard/issues/list
u-boot_1_1_4_500mpu_166ddr_l2enable.patch (2.02 KB)
u-boot.bin.bz2 (145 KB)
u-boot_git_500mpu_166ddr_l2enable.patch (1.55 KB)