ucentral: development update

* update mkits.sh to work with 2021.04 uboot
* add mediatek pstore

Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
John Crispin
2021-05-09 12:37:57 +02:00
parent 43e1a2d92f
commit d28a0c3d9d
3 changed files with 388 additions and 65 deletions

View File

@@ -1,7 +1,7 @@
From 690744436b9fe7bf5414c766e8bc8c8cc67758cc Mon Sep 17 00:00:00 2001
From 583b54e2f10ee14b5756d7035e641f7a1bb3095c Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@nbd.name>
Date: Thu, 9 Apr 2020 09:53:24 +0200
Subject: [PATCH 01/38] mediatek: update to latest trunk version
Subject: [PATCH 01/43] mediatek: update to latest trunk version
Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
@@ -170,7 +170,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
.../base-files/lib/preinit/79_move_config | 18 -
.../mt7622/base-files/lib/upgrade/buffalo.sh | 126 +
.../mt7622/base-files/lib/upgrade/platform.sh | 61 +-
.../mt7622/{config-5.4 => config-5.10} | 181 +-
.../mt7622/{config-5.4 => config-5.10} | 207 +-
target/linux/mediatek/mt7622/target.mk | 3 +-
.../mt7623/base-files/etc/board.d/02_network | 1 -
target/linux/mediatek/mt7623/config-5.4 | 1 +
@@ -178,6 +178,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
target/linux/mediatek/mt7629/config-5.4 | 1 +
.../100-dts-update-mt7622-rfb1.patch | 119 +
.../101-dts-update-mt7629-rfb.patch | 37 +
.../105-dts-mt7622-enable-pstore.patch | 25 +
.../110-dts-fix-bpi2-console.patch | 10 +
.../111-dts-fix-bpi64-console.patch | 11 +
.../112-dts-fix-bpi64-lan-names.patch | 37 +
@@ -214,7 +215,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
.../patches-5.4/0310-mtk-bmt-support.patch | 837 +
...trx-Allow-to-specify-trx-magic-in-DT.patch | 75 +
...ove-dependency-to-BRCM-architectures.patch | 23 +
209 files changed, 105053 insertions(+), 1565 deletions(-)
210 files changed, 105104 insertions(+), 1565 deletions(-)
create mode 100644 target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts
rename target/linux/mediatek/{files-5.4/arch/arm64/boot/dts/mediatek => dts}/mt7622-elecom-wrc-2533gent.dts (99%)
create mode 100644 target/linux/mediatek/dts/mt7622-linksys-e8450-ubi.dts
@@ -377,6 +378,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
mode change 100755 => 100644 target/linux/mediatek/mt7629/base-files/etc/board.d/02_network
create mode 100644 target/linux/mediatek/patches-5.10/100-dts-update-mt7622-rfb1.patch
create mode 100644 target/linux/mediatek/patches-5.10/101-dts-update-mt7629-rfb.patch
create mode 100644 target/linux/mediatek/patches-5.10/105-dts-mt7622-enable-pstore.patch
create mode 100644 target/linux/mediatek/patches-5.10/110-dts-fix-bpi2-console.patch
create mode 100644 target/linux/mediatek/patches-5.10/111-dts-fix-bpi64-console.patch
create mode 100644 target/linux/mediatek/patches-5.10/112-dts-fix-bpi64-lan-names.patch
@@ -101955,7 +101957,7 @@ diff --git a/target/linux/mediatek/mt7622/config-5.4 b/target/linux/mediatek/mt7
similarity index 67%
rename from target/linux/mediatek/mt7622/config-5.4
rename to target/linux/mediatek/mt7622/config-5.10
index b873bdc40c..7f1c3d169a 100644
index b873bdc40c..2d7f82ce23 100644
--- a/target/linux/mediatek/mt7622/config-5.4
+++ b/target/linux/mediatek/mt7622/config-5.10
@@ -1,59 +1,6 @@
@@ -102072,7 +102074,24 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_CLONE_BACKWARDS=y
CONFIG_COMMON_CLK=y
CONFIG_COMMON_CLK_MEDIATEK=y
@@ -220,19 +151,17 @@ CONFIG_DMA_ENGINE_RAID=y
@@ -184,6 +115,8 @@ CONFIG_CRYPTO_ACOMP2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_CMAC=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_DRBG=y
CONFIG_CRYPTO_DRBG_HMAC=y
@@ -207,6 +140,7 @@ CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_RNG_DEFAULT=y
CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_ZSTD=y
CONFIG_DCACHE_WORD_ACCESS=y
CONFIG_DEBUG_MISC=y
CONFIG_DEVTMPFS=y
@@ -220,19 +154,19 @@ CONFIG_DMA_ENGINE_RAID=y
CONFIG_DMA_OF=y
CONFIG_DMA_REMAP=y
CONFIG_DMA_VIRTUAL_CHANNELS=y
@@ -102083,6 +102102,7 @@ index b873bdc40c..7f1c3d169a 100644
-CONFIG_EFI_EARLYCON=y
CONFIG_EINT_MTK=y
+CONFIG_EXT4_FS=y
+CONFIG_F2FS_FS=y
+CONFIG_FIT_PARTITION=y
CONFIG_FIXED_PHY=y
CONFIG_FIX_EARLYCON_MEM=y
@@ -102091,11 +102111,12 @@ index b873bdc40c..7f1c3d169a 100644
-CONFIG_FONT_AUTOSELECT=y
-CONFIG_FONT_SUPPORT=y
CONFIG_FRAME_POINTER=y
+CONFIG_F2FS_FS=y
+CONFIG_FS_IOMAP=y
+CONFIG_FS_MBCACHE=y
# CONFIG_FUJITSU_ERRATUM_010001 is not set
CONFIG_FW_LOADER_PAGED_BUF=y
CONFIG_GENERIC_ALLOCATOR=y
@@ -267,102 +196,19 @@ CONFIG_GLOB=y
@@ -267,102 +201,19 @@ CONFIG_GLOB=y
CONFIG_GPIOLIB=y
CONFIG_GRO_CELLS=y
CONFIG_HANDLE_DOMAIN_IRQ=y
@@ -102198,9 +102219,11 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_IO_URING=y
CONFIG_IRQCHIP=y
CONFIG_IRQ_DOMAIN=y
@@ -371,8 +217,8 @@ CONFIG_IRQ_FORCED_THREADING=y
@@ -370,9 +221,10 @@ CONFIG_IRQ_DOMAIN_HIERARCHY=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_IRQ_TIME_ACCOUNTING=y
CONFIG_IRQ_WORK=y
+CONFIG_JBD2=y
CONFIG_JUMP_LABEL=y
-CONFIG_LEDS_UBNT_LEDBAR=y
CONFIG_LIBFDT=y
@@ -102208,8 +102231,11 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_LOCK_DEBUGGING_SUPPORT=y
CONFIG_LOCK_SPIN_ON_OWNER=y
CONFIG_LZO_COMPRESS=y
@@ -382,22 +228,25 @@ CONFIG_MDIO_BUS=y
@@ -380,21 +232,25 @@ CONFIG_LZO_DECOMPRESS=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_MDIO_BUS=y
CONFIG_MDIO_DEVICE=y
+CONFIG_MDIO_DEVRES=y
CONFIG_MEDIATEK_MT6577_AUXADC=y
CONFIG_MEDIATEK_WATCHDOG=y
-CONFIG_MEDIA_SUPPORT=y
@@ -102229,14 +102255,11 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_MTD_NAND_ECC_SW_HAMMING=y
CONFIG_MTD_NAND_MTK=y
+CONFIG_MTD_NAND_MTK_BMT=y
+CONFIG_MTD_PARSER_TRX=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_SPI_NAND=y
CONFIG_MTD_SPI_NOR=y
+CONFIG_MTD_PARSER_TRX=y
CONFIG_MTD_SPLIT_FIRMWARE=y
CONFIG_MTD_SPLIT_FIT_FW=y
CONFIG_MTD_UBI=y
@@ -422,7 +271,6 @@ CONFIG_NET_DSA=y
@@ -422,7 +278,6 @@ CONFIG_NET_DSA=y
CONFIG_NET_DSA_MT7530=y
CONFIG_NET_DSA_TAG_MTK=y
CONFIG_NET_FLOW_LIMIT=y
@@ -102244,7 +102267,7 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_NET_MEDIATEK_SOC=y
CONFIG_NET_SWITCHDEV=y
CONFIG_NET_VENDOR_MEDIATEK=y
@@ -447,7 +295,6 @@ CONFIG_PARTITION_PERCPU=y
@@ -447,7 +302,6 @@ CONFIG_PARTITION_PERCPU=y
CONFIG_PCI=y
CONFIG_PCIEAER=y
CONFIG_PCIEASPM=y
@@ -102252,7 +102275,7 @@ index b873bdc40c..7f1c3d169a 100644
# CONFIG_PCIEASPM_DEFAULT is not set
CONFIG_PCIEASPM_PERFORMANCE=y
# CONFIG_PCIEASPM_POWERSAVE is not set
@@ -460,6 +307,7 @@ CONFIG_PCI_DOMAINS=y
@@ -460,6 +314,7 @@ CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_MSI=y
CONFIG_PCI_MSI_IRQ_DOMAIN=y
@@ -102260,7 +102283,7 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_PGTABLE_LEVELS=3
CONFIG_PHYLIB=y
CONFIG_PHYLINK=y
@@ -477,7 +325,7 @@ CONFIG_PINCTRL_MT7622=y
@@ -477,7 +332,7 @@ CONFIG_PINCTRL_MT7622=y
CONFIG_PINCTRL_MT8516=y
CONFIG_PINCTRL_MTK=y
CONFIG_PINCTRL_MTK_MOORE=y
@@ -102269,23 +102292,39 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_PM=y
CONFIG_PM_CLK=y
CONFIG_PM_GENERIC_DOMAINS=y
@@ -499,7 +347,6 @@ CONFIG_RATIONAL=y
@@ -487,6 +342,20 @@ CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_POWER_SUPPLY=y
CONFIG_PRINTK_TIME=y
+CONFIG_PSTORE=y
+# CONFIG_PSTORE_842_COMPRESS is not set
+# CONFIG_PSTORE_BLK is not set
+CONFIG_PSTORE_COMPRESS=y
+CONFIG_PSTORE_COMPRESS_DEFAULT="deflate"
+CONFIG_PSTORE_CONSOLE=y
+CONFIG_PSTORE_DEFLATE_COMPRESS=y
+CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
+# CONFIG_PSTORE_LZ4HC_COMPRESS is not set
+# CONFIG_PSTORE_LZ4_COMPRESS is not set
+# CONFIG_PSTORE_LZO_COMPRESS is not set
+CONFIG_PSTORE_PMSG=y
+CONFIG_PSTORE_RAM=y
+# CONFIG_PSTORE_ZSTD_COMPRESS is not set
CONFIG_PWM=y
CONFIG_PWM_MEDIATEK=y
# CONFIG_PWM_MTK_DISP is not set
@@ -499,7 +368,9 @@ CONFIG_RATIONAL=y
CONFIG_RCU_NEED_SEGCBLIST=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_REALTEK_PHY=y
-CONFIG_REFCOUNT_FULL=y
+CONFIG_REED_SOLOMON=y
+CONFIG_REED_SOLOMON_DEC8=y
+CONFIG_REED_SOLOMON_ENC8=y
CONFIG_REGMAP=y
CONFIG_REGMAP_MMIO=y
CONFIG_REGULATOR=y
@@ -514,6 +361,7 @@ CONFIG_RTC_DRV_MT7622=y
CONFIG_RTC_I2C_AND_SPI=y
CONFIG_RTL8367S_GSW=y
CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_SATA_HOST=y
CONFIG_SCSI=y
# CONFIG_SECTION_MISMATCH_WARN_ONLY is not set
CONFIG_SERIAL_8250_FSL=y
@@ -552,7 +400,6 @@ CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
@@ -552,7 +423,6 @@ CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_EMULATION=y
CONFIG_THERMAL_GOV_BANG_BANG=y
CONFIG_THERMAL_GOV_FAIR_SHARE=y
@@ -102293,6 +102332,16 @@ index b873bdc40c..7f1c3d169a 100644
CONFIG_THERMAL_GOV_STEP_WISE=y
CONFIG_THERMAL_GOV_USER_SPACE=y
CONFIG_THERMAL_OF=y
@@ -584,6 +454,9 @@ CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=y
CONFIG_WATCHDOG_PRETIMEOUT_GOV_SEL=m
CONFIG_WATCHDOG_SYSFS=y
CONFIG_XPS=y
+CONFIG_XXHASH=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZONE_DMA32=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
diff --git a/target/linux/mediatek/mt7622/target.mk b/target/linux/mediatek/mt7622/target.mk
index cb5a6b48cd..f43a6c4bf4 100644
--- a/target/linux/mediatek/mt7622/target.mk
@@ -102522,6 +102571,37 @@ index 0000000000..8d3e283315
+ };
+ };
+ };
diff --git a/target/linux/mediatek/patches-5.10/105-dts-mt7622-enable-pstore.patch b/target/linux/mediatek/patches-5.10/105-dts-mt7622-enable-pstore.patch
new file mode 100644
index 0000000000..6ef56f8584
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/105-dts-mt7622-enable-pstore.patch
@@ -0,0 +1,25 @@
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -111,7 +111,7 @@
+ };
+
+ psci {
+- compatible = "arm,psci-0.2";
++ compatible = "arm,psci-1.0";
+ method = "smc";
+ };
+
+@@ -127,6 +127,13 @@
+ #size-cells = <2>;
+ ranges;
+
++ /* 64 KiB reserved for ramoops/pstore */
++ ramoops@0x42ff0000 {
++ compatible = "ramoops";
++ reg = <0 0x42ff0000 0 0x10000>;
++ record-size = <0x1000>;
++ };
++
+ /* 192 KiB reserved for ARM Trusted Firmware (BL31) */
+ secmon_reserved: secmon@43000000 {
+ reg = <0 0x43000000 0 0x30000>;
diff --git a/target/linux/mediatek/patches-5.10/110-dts-fix-bpi2-console.patch b/target/linux/mediatek/patches-5.10/110-dts-fix-bpi2-console.patch
new file mode 100644
index 0000000000..c696e7d369
@@ -102792,13 +102872,13 @@ index 0000000000..479694b400
+ pinctrl-0 = <&spi_pins>;
diff --git a/target/linux/mediatek/patches-5.10/131-dts-mt7622-add-snand-support.patch b/target/linux/mediatek/patches-5.10/131-dts-mt7622-add-snand-support.patch
new file mode 100644
index 0000000000..de96162e8a
index 0000000000..5f89d58b06
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/131-dts-mt7622-add-snand-support.patch
@@ -0,0 +1,96 @@
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -554,6 +554,19 @@
+@@ -561,6 +561,19 @@
+ status = "disabled";
+ };
+
@@ -106407,7 +106487,7 @@ index 0000000000..9c18565319
+ if (PTR_ERR(pcie->free_ck) == -EPROBE_DEFER)
diff --git a/target/linux/mediatek/patches-5.10/602-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-MT7622.patch b/target/linux/mediatek/patches-5.10/602-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-MT7622.patch
new file mode 100644
index 0000000000..5e0114328c
index 0000000000..f613e7c49e
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/602-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-MT7622.patch
@@ -0,0 +1,417 @@
@@ -106694,7 +106774,7 @@ index 0000000000..5e0114328c
+ &pio {
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -794,45 +794,41 @@
+@@ -801,45 +801,41 @@
+ #reset-cells = <1>;
+ };
+
@@ -106757,7 +106837,7 @@ index 0000000000..5e0114328c
+ interrupt-map-mask = <0 0 0 7>;
+ interrupt-map = <0 0 0 1 &pcie_intc0 0>,
+ <0 0 0 2 &pcie_intc0 1>,
+@@ -844,15 +840,39 @@
+@@ -851,15 +847,39 @@
+ #interrupt-cells = <1>;
+ };
+ };
@@ -107069,7 +107149,7 @@ index 0000000000..7b74a8ac73
+
diff --git a/target/linux/mediatek/patches-5.10/700-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch b/target/linux/mediatek/patches-5.10/700-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch
new file mode 100644
index 0000000000..873317eb00
index 0000000000..e617d9ad66
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/700-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch
@@ -0,0 +1,85 @@
@@ -107084,7 +107164,7 @@ index 0000000000..873317eb00
+
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -357,7 +357,7 @@
+@@ -364,7 +364,7 @@
+ };
+
+ cci_control2: slave-if@5000 {
@@ -107093,7 +107173,7 @@ index 0000000000..873317eb00
+ interface-type = "ace";
+ reg = <0x5000 0x1000>;
+ };
+@@ -969,6 +969,8 @@
+@@ -976,6 +976,8 @@
+ power-domains = <&scpsys MT7622_POWER_DOMAIN_ETHSYS>;
+ mediatek,ethsys = <&ethsys>;
+ mediatek,sgmiisys = <&sgmiisys>;
@@ -107160,7 +107240,7 @@ index 0000000000..873317eb00
+ #define SGMSYS_PCS_CONTROL_1 0x0
diff --git a/target/linux/mediatek/patches-5.10/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch b/target/linux/mediatek/patches-5.10/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch
new file mode 100644
index 0000000000..0156d89bba
index 0000000000..e3800bdf9d
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch
@@ -0,0 +1,108 @@
@@ -107176,7 +107256,7 @@ index 0000000000..0156d89bba
+
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -805,6 +805,8 @@
+@@ -812,6 +812,8 @@
+ reg = <0 0x1a143000 0 0x1000>;
+ reg-names = "port0";
+ mediatek,pcie-cfg = <&pciecfg>;
@@ -107185,7 +107265,7 @@ index 0000000000..0156d89bba
+ #address-cells = <3>;
+ #size-cells = <2>;
+ interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>;
+@@ -822,6 +824,7 @@
+@@ -829,6 +831,7 @@
+ bus-range = <0x00 0xff>;
+ ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>;
+ status = "disabled";
@@ -107193,7 +107273,7 @@ index 0000000000..0156d89bba
+
+ slot0: pcie@0,0 {
+ reg = <0x0000 0 0 0 0>;
+@@ -848,6 +851,8 @@
+@@ -855,6 +858,8 @@
+ reg = <0 0x1a145000 0 0x1000>;
+ reg-names = "port1";
+ mediatek,pcie-cfg = <&pciecfg>;
@@ -107202,7 +107282,7 @@ index 0000000000..0156d89bba
+ #address-cells = <3>;
+ #size-cells = <2>;
+ interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>;
+@@ -866,6 +871,7 @@
+@@ -873,6 +878,7 @@
+ bus-range = <0x00 0xff>;
+ ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>;
+ status = "disabled";
@@ -107210,7 +107290,7 @@ index 0000000000..0156d89bba
+
+ slot1: pcie@1,0 {
+ reg = <0x0800 0 0 0 0>;
+@@ -925,6 +931,11 @@
+@@ -932,6 +938,11 @@
+ };
+ };
+

View File

@@ -0,0 +1,266 @@
From 43f832c25bb9dee1a817370ab11531e81348f177 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Sun, 9 May 2021 12:23:00 +0200
Subject: [PATCH 42/43] backport: mkits.sh
969083634481c3ab5fb80509f385ef10ab45b55f
e991c1b8a2385397fc1e657ed73878938997d951
9f714398e060c6338fbfad44cdbfa8c940dbb84b
Signed-off-by: John Crispin <john@phrozen.org>
---
include/image-commands.mk | 2 +-
include/image.mk | 2 +-
scripts/mkits.sh | 101 +++++++++++++++++++++++++---
target/linux/ipq40xx/image/Makefile | 1 +
target/linux/ipq806x/image/Makefile | 1 +
5 files changed, 95 insertions(+), 12 deletions(-)
diff --git a/include/image-commands.mk b/include/image-commands.mk
index bde6e030bc..f97d4363d1 100644
--- a/include/image-commands.mk
+++ b/include/image-commands.mk
@@ -204,7 +204,7 @@ define Build/fit
$(if $(word 3,$(1)),-r $(IMAGE_ROOTFS) -f $(subst _,$(comma),$(DEVICE_NAME))) \
-a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
$(if $(DEVICE_FDT_NUM),-n $(DEVICE_FDT_NUM)) \
- -c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config@1") \
+ -c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config-1") \
-A $(LINUX_KARCH) -v $(LINUX_VERSION)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage $(if $(word 3,$(1)),-E -B 0x1000 -p 0x1000) -f $@.its $@.new
@mv $@.new $@
diff --git a/include/image.mk b/include/image.mk
index fc46012e87..7a48b789af 100644
--- a/include/image.mk
+++ b/include/image.mk
@@ -139,7 +139,7 @@ endef
define Image/BuildKernel/MkFIT
$(TOPDIR)/scripts/mkits.sh \
-D $(1) -o $(KDIR)/fit-$(1).its -k $(2) $(if $(3),-d $(3)) -C $(4) -a $(5) -e $(6) \
- -c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config@1") \
+ -c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config-1") \
-A $(LINUX_KARCH) -v $(LINUX_VERSION)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/fit-$(1).its $(KDIR)/fit-$(1)$(7).itb
endef
diff --git a/scripts/mkits.sh b/scripts/mkits.sh
index 3d68fdacbc..7533baf799 100755
--- a/scripts/mkits.sh
+++ b/scripts/mkits.sh
@@ -24,22 +24,29 @@ usage() {
printf "\n\t-a ==> set load address to 'addr' (hex)"
printf "\n\t-e ==> set entry point to 'entry' (hex)"
printf "\n\t-f ==> set device tree compatible string"
+ printf "\n\t-i ==> include initrd Blob 'initrd'"
printf "\n\t-v ==> set kernel version to 'version'"
printf "\n\t-k ==> include kernel image 'kernel'"
printf "\n\t-D ==> human friendly Device Tree Blob 'name'"
printf "\n\t-n ==> fdt unit-address 'address'"
printf "\n\t-d ==> include Device Tree Blob 'dtb'"
- printf "\n\t-r ==> include RootFS blob"
+ printf "\n\t-r ==> include RootFS blob 'rootfs'"
printf "\n\t-H ==> specify hash algo instead of SHA1"
- printf "\n\t-o ==> create output file 'its_file'\n"
+ printf "\n\t-o ==> create output file 'its_file'"
+ printf "\n\t-O ==> create config with dt overlay 'name:dtb'"
+ printf "\n\t\t(can be specified more than once)\n"
exit 1
}
FDTNUM=1
ROOTFSNUM=1
+INITRDNUM=1
HASH=sha1
+LOADABLES=
+DTOVERLAY=
+DTADDR=
-while getopts ":A:a:c:C:D:d:e:f:k:n:o:v:r:S" OPTION
+while getopts ":A:a:c:C:D:d:e:f:i:k:n:o:O:v:r:S" OPTION
do
case $OPTION in
A ) ARCH=$OPTARG;;
@@ -50,9 +57,11 @@ do
d ) DTB=$OPTARG;;
e ) ENTRY_ADDR=$OPTARG;;
f ) COMPATIBLE=$OPTARG;;
+ i ) INITRD=$OPTARG;;
k ) KERNEL=$OPTARG;;
n ) FDTNUM=$OPTARG;;
o ) OUTPUT=$OPTARG;;
+ O ) DTOVERLAY="$DTOVERLAY ${OPTARG}";;
r ) ROOTFS=$OPTARG;;
S ) HASH=$OPTARG;;
v ) VERSION=$OPTARG;;
@@ -74,14 +83,20 @@ if [ -n "${COMPATIBLE}" ]; then
COMPATIBLE_PROP="compatible = \"${COMPATIBLE}\";"
fi
+[ "$DTOVERLAY" ] && {
+ dtbsize=$(wc -c "$DTB" | cut -d' ' -f1)
+ DTADDR=$(printf "0x%08x" $(($LOAD_ADDR - $dtbsize)) )
+}
+
# Conditionally create fdt information
if [ -n "${DTB}" ]; then
FDT_NODE="
- fdt@$FDTNUM {
+ fdt-$FDTNUM {
description = \"${ARCH_UPPER} OpenWrt ${DEVICE} device tree blob\";
${COMPATIBLE_PROP}
data = /incbin/(\"${DTB}\");
type = \"flat_dt\";
+ ${DTADDR:+load = <${DTADDR}>;}
arch = \"${ARCH}\";
compression = \"none\";
hash@1 {
@@ -92,13 +107,34 @@ if [ -n "${DTB}" ]; then
};
};
"
- FDT_PROP="fdt = \"fdt@$FDTNUM\";"
+ FDT_PROP="fdt = \"fdt-$FDTNUM\";"
fi
+if [ -n "${INITRD}" ]; then
+ INITRD_NODE="
+ initrd-$INITRDNUM {
+ description = \"${ARCH_UPPER} OpenWrt ${DEVICE} initrd\";
+ ${COMPATIBLE_PROP}
+ data = /incbin/(\"${INITRD}\");
+ type = \"ramdisk\";
+ arch = \"${ARCH}\";
+ os = \"linux\";
+ hash@1 {
+ algo = \"crc32\";
+ };
+ hash@2 {
+ algo = \"${HASH}\";
+ };
+ };
+"
+ INITRD_PROP="ramdisk=\"initrd-${INITRDNUM}\";"
+fi
+
+
if [ -n "${ROOTFS}" ]; then
dd if="${ROOTFS}" of="${ROOTFS}.pagesync" bs=4096 conv=sync
ROOTFS_NODE="
- rootfs@$ROOTFSNUM {
+ rootfs-$ROOTFSNUM {
description = \"${ARCH_UPPER} OpenWrt ${DEVICE} rootfs\";
${COMPATIBLE_PROP}
data = /incbin/(\"${ROOTFS}.pagesync\");
@@ -113,9 +149,50 @@ if [ -n "${ROOTFS}" ]; then
};
};
"
- ROOTFS_PROP="loadables = \"rootfs@${ROOTFSNUM}\";"
+ LOADABLES="${LOADABLES:+$LOADABLES, }\"rootfs-${ROOTFSNUM}\""
fi
+# add DT overlay blobs
+FDTOVERLAY_NODE=""
+OVCONFIGS=""
+[ "$DTOVERLAY" ] && for overlay in $DTOVERLAY ; do
+ overlay_blob=${overlay##*:}
+ ovname=${overlay%%:*}
+ ovnode="fdt-$ovname"
+ ovsize=$(wc -c "$overlay_blob" | cut -d' ' -f1)
+ echo "$ovname ($overlay_blob) : $ovsize" >&2
+ DTADDR=$(printf "0x%08x" $(($DTADDR - $ovsize)))
+ FDTOVERLAY_NODE="$FDTOVERLAY_NODE
+
+ $ovnode {
+ description = \"${ARCH_UPPER} OpenWrt ${DEVICE} device tree overlay $ovname\";
+ ${COMPATIBLE_PROP}
+ data = /incbin/(\"${overlay_blob}\");
+ type = \"flat_dt\";
+ arch = \"${ARCH}\";
+ load = <${DTADDR}>;
+ compression = \"none\";
+ hash@1 {
+ algo = \"crc32\";
+ };
+ hash@2 {
+ algo = \"${HASH}\";
+ };
+ };
+"
+ OVCONFIGS="$OVCONFIGS
+
+ config-$ovname {
+ description = \"OpenWrt ${DEVICE} with $ovname\";
+ kernel = \"kernel-1\";
+ fdt = \"fdt-$FDTNUM\", \"$ovnode\";
+ ${LOADABLES:+loadables = ${LOADABLES};}
+ ${COMPATIBLE_PROP}
+ ${INITRD_PROP}
+ };
+ "
+done
+
# Create a default, fully populated DTS file
DATA="/dts-v1/;
@@ -124,7 +201,7 @@ DATA="/dts-v1/;
#address-cells = <1>;
images {
- kernel@1 {
+ kernel-1 {
description = \"${ARCH_UPPER} OpenWrt Linux-${VERSION}\";
data = /incbin/(\"${KERNEL}\");
type = \"kernel\";
@@ -140,7 +217,9 @@ DATA="/dts-v1/;
algo = \"$HASH\";
};
};
+${INITRD_NODE}
${FDT_NODE}
+${FDTOVERLAY_NODE}
${ROOTFS_NODE}
};
@@ -148,11 +227,13 @@ ${ROOTFS_NODE}
default = \"${CONFIG}\";
${CONFIG} {
description = \"OpenWrt ${DEVICE}\";
- kernel = \"kernel@1\";
+ kernel = \"kernel-1\";
${FDT_PROP}
- ${ROOTFS_PROP}
+ ${LOADABLES:+loadables = ${LOADABLES};}
${COMPATIBLE_PROP}
+ ${INITRD_PROP}
};
+ ${OVCONFIGS}
};
};"
diff --git a/target/linux/ipq40xx/image/Makefile b/target/linux/ipq40xx/image/Makefile
index 2be262936f..a0d6242a28 100644
--- a/target/linux/ipq40xx/image/Makefile
+++ b/target/linux/ipq40xx/image/Makefile
@@ -8,6 +8,7 @@ define Device/Default
KERNEL_PREFIX := $$(IMAGE_PREFIX)
KERNEL_LOADADDR := 0x80208000
DEVICE_DTS = $$(SOC)-$(lastword $(subst _, ,$(1)))
+ DEVICE_DTS_CONFIG := config@1
IMAGES := sysupgrade.bin
IMAGE/sysupgrade.bin = sysupgrade-tar | append-metadata
IMAGE/sysupgrade.bin/squashfs :=
diff --git a/target/linux/ipq806x/image/Makefile b/target/linux/ipq806x/image/Makefile
index bab1da0090..3bc60fa931 100644
--- a/target/linux/ipq806x/image/Makefile
+++ b/target/linux/ipq806x/image/Makefile
@@ -30,6 +30,7 @@ define Device/Default
KERNEL_PREFIX := $$(IMAGE_PREFIX)
KERNEL_LOADADDR = 0x42208000
DEVICE_DTS = $$(SOC)-$(lastword $(subst _, ,$(1)))
+ DEVICE_DTS_CONFIG := config@1
IMAGES := sysupgrade.bin
IMAGE/sysupgrade.bin = sysupgrade-tar | append-metadata
IMAGE/sysupgrade.bin/squashfs :=
--
2.25.1

View File

@@ -87,29 +87,6 @@ index 0000000000..89ea4a438e
+ };
+
+ aliases {
diff --git a/target/linux/mediatek/patches-5.10/160-add-pstore-support.patch b/target/linux/mediatek/patches-5.10/160-add-pstore-support.patch
new file mode 100644
index 0000000000..6959fc09b3
--- /dev/null
+++ b/target/linux/mediatek/patches-5.10/160-add-pstore-support.patch
@@ -0,0 +1,17 @@
+Index: linux-5.10.16/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+===================================================================
+--- linux-5.10.16.orig/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ linux-5.10.16/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+@@ -132,6 +132,12 @@
+ reg = <0 0x43000000 0 0x30000>;
+ no-map;
+ };
++
++ ramoops@50000000 {
++ compatible = "ramoops";
++ reg = <0 0x50000000 0 0x10000>;
++ record-size = <0x1000>;
++ };
+ };
+
+ thermal-zones {
--
2.25.1