Update the AP135 reference design flash layout to be more useful.

* Shuffle the kernel to be at the beginning
* Give the kernel 2mb, the rootfs 6mb, and 'mib0' the rest
* put the cfg parition just before the ART calibration data for the
  wifi part in the SoC
* .. and make sure ART points to the right 64k region.

I've updated the freebsd-wifi-build wiki the instructions on using this.

If someone has an AP135 with 8MB SPI flash then this won't work; everything
minus the big mib0 partition is just a bit over 8MB.  Come see me if this
ever happens (you'll likely just have to shrink the rootfs and the kernel
a little in order to make it fit.)

Tested:

* AP135 reference board.
This commit is contained in:
Adrian Chadd 2015-10-10 05:00:18 +00:00
parent b16c6d237b
commit 27b3a39a8f
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=289106

View File

@ -127,6 +127,17 @@ hint.ath.0.eepromsize=16384
#
# bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),8256k(mib0),64k(ART)
# The default flash layout isn't enough to fit a freebsd kernel
# now, so the layout has been shuffled around.
#
# By default it's set to:
# 256KB uboot, 64KB uboot-env, 6336KB rootfs, 1344KB kernel, 64KB cfg, 8256MB mib0, 64KB ART
# With 'bootcmd=bootm 0x9f680000' in the environment.
#
# Instead, now let's make it:
# 256KB uboot, 64KB uboot-env, 2048MB kernel, 6144MB rootfs, 7644KB mib0, 64KB cfg, 64KB ART
# .. and then you change the boot env to be:
# 'bootcmd=bootm 0x9f050000'
# 256KiB u-boot
hint.map.0.at="flash/spi0"
@ -142,37 +153,37 @@ hint.map.1.end=0x00050000 # 64k u-boot-env
hint.map.1.name="u-boot-env"
hint.map.1.readonly=1
# 6336KiB rootfs
# 2048KiB kernel
hint.map.2.at="flash/spi0"
hint.map.2.start=0x00050000
hint.map.2.end=0x00680000 # 6336k rootfs
hint.map.2.name="rootfs"
hint.map.2.end=0x00250000 # 2048k rootfs
hint.map.2.name="kernel"
hint.map.2.readonly=1
# 1344KiB uImage
# 6144KiB rootfs
hint.map.3.at="flash/spi0"
hint.map.3.start=0x00680000
hint.map.3.end=0x007d0000 # 1408k uImage, 64k off the end..
hint.map.3.name="uImage"
hint.map.3.start=0x00250000
hint.map.3.end=0x00850000
hint.map.3.name="rootfs"
hint.map.3.readonly=1
# 64KiB cfg
# 7644KiB mib0
hint.map.4.at="flash/spi0"
hint.map.4.start=0x007d0000
hint.map.4.end=0x007e0000
hint.map.4.name="cfg"
hint.map.4.start=0x00850000
hint.map.4.end=0x00fe0000
hint.map.4.name="mib0"
hint.map.4.readonly=0
# 8256 KiB mib0
# 64KiB cfg
hint.map.5.at="flash/spi0"
hint.map.5.start=0x007e0000
hint.map.5.end=0x00ff0000 # 64k mib0
hint.map.5.name="mib0"
hint.map.5.readonly=1
hint.map.5.start=0x00fe0000
hint.map.5.end=0x00ff0000
hint.map.5.name="cfg"
hint.map.5.readonly=0
# 64KiB ART
hint.map.6.at="flash/spi0"
hint.map.6.start=0x007f0000
hint.map.6.start=0x00ff0000
hint.map.6.end=0x01000000 # 64k ART
hint.map.6.name="ART"
hint.map.6.readonly=1