mpc85xx: use bootwrapper for ws-ap3825i
The boot-procedure for the Extreme WS-AP3825I is vfragile to put it mildly. It does not relocate the FDT properly. It currently exercises every step manually as well as coming with a pre-padded dtb. Use the PowerPC bootwrapper code for legacy platforms with a pre-filles DTS instead. We still need to ship a fit image to not break the fdt resize / relocate instructions on existing boards. This does not require adapting the U-Boot bootcommand. Ref: https://github.com/openwrt/openwrt/issues/12223 Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
parent
e314f7be7e
commit
ed82189339
4 changed files with 81 additions and 2 deletions
|
@ -252,6 +252,54 @@
|
||||||
|
|
||||||
/include/ "fsl/p1020si-post.dtsi"
|
/include/ "fsl/p1020si-post.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
cpus {
|
||||||
|
PowerPC,P1010@0 {
|
||||||
|
bus-frequency = <399999996>;
|
||||||
|
timebase-frequency = <50000000>;
|
||||||
|
clock-frequency = <799999992>;
|
||||||
|
d-cache-block-size = <0x20>;
|
||||||
|
d-cache-size = <0x8000>;
|
||||||
|
d-cache-sets = <0x80>;
|
||||||
|
i-cache-block-size = <0x20>;
|
||||||
|
i-cache-size = <0x8000>;
|
||||||
|
i-cache-sets = <0x80>;
|
||||||
|
};
|
||||||
|
|
||||||
|
PowerPC,P1010@1 {
|
||||||
|
bus-frequency = <399999996>;
|
||||||
|
timebase-frequency = <50000000>;
|
||||||
|
clock-frequency = <799999992>;
|
||||||
|
d-cache-block-size = <0x20>;
|
||||||
|
d-cache-size = <0x8000>;
|
||||||
|
d-cache-sets = <0x80>;
|
||||||
|
i-cache-block-size = <0x20>;
|
||||||
|
i-cache-size = <0x8000>;
|
||||||
|
i-cache-sets = <0x80>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
memory {
|
||||||
|
reg = <0x0 0x0 0x0 0x10000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
soc@ffe00000 {
|
||||||
|
bus-frequency = <399999996>;
|
||||||
|
|
||||||
|
serial@4600 {
|
||||||
|
clock-frequency = <399999996>;
|
||||||
|
};
|
||||||
|
|
||||||
|
serial@4500 {
|
||||||
|
clock-frequency = <399999996>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pic@40000 {
|
||||||
|
clock-frequency = <399999996>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* For the OpenWrt 22.03 release, since Linux 5.10.138 now uses
|
* For the OpenWrt 22.03 release, since Linux 5.10.138 now uses
|
||||||
* aliases to determine PCI domain numbers, drop aliases so as not to
|
* aliases to determine PCI domain numbers, drop aliases so as not to
|
||||||
|
|
|
@ -73,8 +73,10 @@ define Device/extreme-networks_ws-ap3825i
|
||||||
DEVICE_MODEL := WS-AP3825i
|
DEVICE_MODEL := WS-AP3825i
|
||||||
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
|
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
|
||||||
BLOCKSIZE := 128k
|
BLOCKSIZE := 128k
|
||||||
DTB_SIZE := 20480
|
KERNEL_NAME := simpleImage.ws-ap3825i
|
||||||
KERNEL = kernel-bin | lzma | pad-dtb | fit lzma $(KDIR)/image-$$(DEVICE_DTS).dtb
|
KERNEL_ENTRY := 0x1000000
|
||||||
|
KERNEL_LOADADDR := 0x1000000
|
||||||
|
KERNEL = kernel-bin | lzma | fit lzma $(KDIR)/image-$$(DEVICE_DTS).dtb
|
||||||
IMAGES := sysupgrade.bin
|
IMAGES := sysupgrade.bin
|
||||||
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
||||||
endef
|
endef
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
BOARDNAME:=P1020
|
BOARDNAME:=P1020
|
||||||
|
KERNEL_IMAGES:=simpleImage.ws-ap3825i
|
||||||
|
|
||||||
define Target/Description
|
define Target/Description
|
||||||
Build firmware images for Freescale P1020 based boards.
|
Build firmware images for Freescale P1020 based boards.
|
||||||
|
|
|
@ -35,3 +35,31 @@ WS-AP3825i AP.
|
||||||
obj-$(CONFIG_CORENET_GENERIC) += corenet_generic.o
|
obj-$(CONFIG_CORENET_GENERIC) += corenet_generic.o
|
||||||
obj-$(CONFIG_FB_FSL_DIU) += t1042rdb_diu.o
|
obj-$(CONFIG_FB_FSL_DIU) += t1042rdb_diu.o
|
||||||
obj-$(CONFIG_RED_15W_REV1) += red15w_rev1.o
|
obj-$(CONFIG_RED_15W_REV1) += red15w_rev1.o
|
||||||
|
--- a/arch/powerpc/boot/Makefile
|
||||||
|
+++ b/arch/powerpc/boot/Makefile
|
||||||
|
@@ -164,6 +164,7 @@ src-plat-$(CONFIG_PPC_POWERNV) += pserie
|
||||||
|
src-plat-$(CONFIG_PPC_IBM_CELL_BLADE) += pseries-head.S
|
||||||
|
src-plat-$(CONFIG_MVME7100) += motload-head.S mvme7100.c
|
||||||
|
src-plat-$(CONFIG_TL_WDR4900_V1) += simpleboot.c fixed-head.S
|
||||||
|
+src-plat-$(CONFIG_WS_AP3825I) += simpleboot.c fixed-head.S
|
||||||
|
|
||||||
|
src-plat-$(CONFIG_PPC_MICROWATT) += fixed-head.S microwatt.c
|
||||||
|
|
||||||
|
@@ -345,6 +346,7 @@ image-$(CONFIG_TQM8555) += cuImage.tqm
|
||||||
|
image-$(CONFIG_TQM8560) += cuImage.tqm8560
|
||||||
|
image-$(CONFIG_KSI8560) += cuImage.ksi8560
|
||||||
|
image-$(CONFIG_TL_WDR4900_V1) += simpleImage.tl-wdr4900-v1
|
||||||
|
+image-$(CONFIG_WS_AP3825I) += simpleImage.ws-ap3825i
|
||||||
|
# Board ports in arch/powerpc/platform/86xx/Kconfig
|
||||||
|
image-$(CONFIG_MVME7100) += dtbImage.mvme7100
|
||||||
|
|
||||||
|
--- a/arch/powerpc/boot/wrapper
|
||||||
|
+++ b/arch/powerpc/boot/wrapper
|
||||||
|
@@ -326,6 +326,7 @@ adder875-redboot)
|
||||||
|
platformo="$object/fixed-head.o $object/redboot-8xx.o"
|
||||||
|
binary=y
|
||||||
|
;;
|
||||||
|
+simpleboot-ws-ap3825i|\
|
||||||
|
simpleboot-tl-wdr4900-v1)
|
||||||
|
platformo="$object/fixed-head.o $object/simpleboot.o"
|
||||||
|
link_address='0x1000000'
|
||||||
|
|
Loading…
Reference in a new issue