From patchwork Wed Jan 18 15:54:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jon Mason X-Patchwork-Id: 18292 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8D156C46467 for ; Wed, 18 Jan 2023 15:55:04 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.19166.1674057297011397438 for ; Wed, 18 Jan 2023 07:54:57 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jon.mason@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D2343AD7 for ; Wed, 18 Jan 2023 07:55:38 -0800 (PST) Received: from localhost.localdomain (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 85F0E3F67D for ; Wed, 18 Jan 2023 07:54:56 -0800 (PST) From: Jon Mason To: meta-arm@lists.yoctoproject.org Subject: [PATCH kirkstone 1/2] arm-bsp/juno: move to compressed initramfs image Date: Wed, 18 Jan 2023 10:54:51 -0500 Message-Id: <20230118155452.592-1-jon.mason@arm.com> X-Mailer: git-send-email 2.17.1 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 18 Jan 2023 15:55:04 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/4298 Change u-boot and machine config to default to booting a compressed initramfs. This allows for easier testing. A compressed image is needed as the image is too big for the storage, and the error notifying of such is vague. Signed-off-by: Jon Mason --- meta-arm-bsp/conf/machine/juno.conf | 7 +++-- .../recipes-bsp/images/firmware-image-juno.bb | 2 +- ...-modify-to-boot-compressed-initramfs.patch | 27 +++++++++++++++++++ .../u-boot/u-boot_2020.07.bbappend | 5 +++- 4 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 meta-arm-bsp/recipes-bsp/u-boot/u-boot-2020.07/juno/0002-configs-vexpress-modify-to-boot-compressed-initramfs.patch diff --git a/meta-arm-bsp/conf/machine/juno.conf b/meta-arm-bsp/conf/machine/juno.conf index fbff8001..69129335 100644 --- a/meta-arm-bsp/conf/machine/juno.conf +++ b/meta-arm-bsp/conf/machine/juno.conf @@ -10,10 +10,10 @@ require conf/machine/include/arm/arch-armv8a.inc MACHINE_FEATURES = "usbhost usbgadget alsa screen wifi bluetooth optee pci" -KERNEL_IMAGETYPE = "Image" +KERNEL_IMAGETYPE = "Image.gz" KERNEL_DEVICETREE = "arm/juno.dtb arm/juno-r1.dtb arm/juno-r2.dtb" -IMAGE_FSTYPES += "tar.bz2 ext4" +IMAGE_FSTYPES += "tar.bz2 ext4 cpio.gz" SERIAL_CONSOLES = "115200;ttyAMA0" @@ -25,3 +25,6 @@ EXTRA_IMAGEDEPENDS += "trusted-firmware-a virtual/bootloader firmware-image-juno # Juno u-boot configuration UBOOT_MACHINE = "vexpress_aemv8a_juno_defconfig" + +INITRAMFS_IMAGE_BUNDLE ?= "1" +INITRAMFS_IMAGE = "core-image-minimal" diff --git a/meta-arm-bsp/recipes-bsp/images/firmware-image-juno.bb b/meta-arm-bsp/recipes-bsp/images/firmware-image-juno.bb index 80565af6..473d28cc 100644 --- a/meta-arm-bsp/recipes-bsp/images/firmware-image-juno.bb +++ b/meta-arm-bsp/recipes-bsp/images/firmware-image-juno.bb @@ -63,7 +63,7 @@ do_deploy() { done if [ "${INITRAMFS_IMAGE_BUNDLE}" -eq 1 ]; then - cp -L -f ${DEPLOY_DIR_IMAGE}/Image-initramfs-juno.bin \ + cp -L -f ${DEPLOY_DIR_IMAGE}/Image.gz-initramfs-juno.bin \ ${D}/${UNPACK_DIR}/SOFTWARE/Image else cp -L -f ${DEPLOY_DIR_IMAGE}/Image ${D}/${UNPACK_DIR}/SOFTWARE/ diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot-2020.07/juno/0002-configs-vexpress-modify-to-boot-compressed-initramfs.patch b/meta-arm-bsp/recipes-bsp/u-boot/u-boot-2020.07/juno/0002-configs-vexpress-modify-to-boot-compressed-initramfs.patch new file mode 100644 index 00000000..fa008af5 --- /dev/null +++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot-2020.07/juno/0002-configs-vexpress-modify-to-boot-compressed-initramfs.patch @@ -0,0 +1,27 @@ +From 097a43223da4fa42335944295903ede2755e2dfd Mon Sep 17 00:00:00 2001 +From: Jon Mason +Date: Mon, 19 Dec 2022 11:36:04 -0500 +Subject: [PATCH] configs: vexpress: modify to boot compressed initramfs + +Signed-off-by: Jon Mason +Upstream-Status: Inappropriate +--- + include/configs/vexpress_aemv8a.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/configs/vexpress_aemv8.h b/include/configs/vexpress_aemv8a.h +index cd7f6c1b9ba0..c2f5eb302076 100644 +--- a/include/configs/vexpress_aemv8a.h ++++ b/include/configs/vexpress_aemv8a.h +@@ -164,6 +164,8 @@ + "kernel_name=norkern\0" \ + "kernel_alt_name=Image\0" \ + "kernel_addr_r=0x80080000\0" \ ++ "kernel_comp_addr_r=0x90000000\0" \ ++ "kernel_comp_size=0x3000000\0" \ + "initrd_name=ramdisk.img\0" \ + "initrd_addr_r=0x88000000\0" \ + "fdtfile=board.dtb\0" \ +-- +2.30.2 + diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot_2020.07.bbappend b/meta-arm-bsp/recipes-bsp/u-boot/u-boot_2020.07.bbappend index 980e5248..3488862d 100644 --- a/meta-arm-bsp/recipes-bsp/u-boot/u-boot_2020.07.bbappend +++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot_2020.07.bbappend @@ -6,4 +6,7 @@ FILESEXTRAPATHS:prepend = "${THIS_DIR}/${BP}:" # # Juno KMACHINE # -SRC_URI:append:juno = " file://u-boot_vexpress_uenv.patch" +SRC_URI:append:juno = " \ + file://u-boot_vexpress_uenv.patch \ + file://0002-configs-vexpress-modify-to-boot-compressed-initramfs.patch \ + " From patchwork Wed Jan 18 15:54:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jon Mason X-Patchwork-Id: 18291 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C0C9C32793 for ; Wed, 18 Jan 2023 15:55:04 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.19278.1674057297173915430 for ; Wed, 18 Jan 2023 07:54:57 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jon.mason@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0C10C169C for ; Wed, 18 Jan 2023 07:55:39 -0800 (PST) Received: from localhost.localdomain (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B17DA3F67D for ; Wed, 18 Jan 2023 07:54:56 -0800 (PST) From: Jon Mason To: meta-arm@lists.yoctoproject.org Subject: [PATCH kirkstone 2/2] arm-bsp/linux-yocto: Update juno patch Date: Wed, 18 Jan 2023 10:54:52 -0500 Message-Id: <20230118155452.592-2-jon.mason@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230118155452.592-1-jon.mason@arm.com> References: <20230118155452.592-1-jon.mason@arm.com> List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 18 Jan 2023 15:55:04 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-arm/message/4299 Update the juno kernel patch to work with the latest kirkstone kernel, and remove the workaround. Signed-off-by: Jon Mason --- .../files/juno/juno-dts-mhu-doorbell.patch | 70 ++++++++++--------- .../linux/linux-yocto_5.15.bbappend | 3 - 2 files changed, 37 insertions(+), 36 deletions(-) delete mode 100644 meta-arm-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend diff --git a/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch b/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch index ca0ba6f9..1100e610 100644 --- a/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch +++ b/meta-arm-bsp/recipes-kernel/linux/files/juno/juno-dts-mhu-doorbell.patch @@ -21,7 +21,7 @@ Signed-off-by: Sudeep Holla 5 files changed, 96 insertions(+), 85 deletions(-) diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi -index 6288e104a089..36844f7d861e 100644 +index a00b0f14c222..8da7fe6fd157 100644 --- a/arch/arm64/boot/dts/arm/juno-base.dtsi +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi @@ -23,12 +23,13 @@ frame@2a830000 { @@ -40,7 +40,7 @@ index 6288e104a089..36844f7d861e 100644 clocks = <&soc_refclk100mhz>; clock-names = "apb_pclk"; }; -@@ -39,7 +40,7 @@ smmu_gpu: iommu@2b400000 { +@@ -40,7 +41,7 @@ smmu_gpu: iommu@2b400000 { ; #iommu-cells = <1>; #global-interrupts = <1>; @@ -49,7 +49,7 @@ index 6288e104a089..36844f7d861e 100644 dma-coherent; status = "disabled"; }; -@@ -63,7 +64,7 @@ smmu_etr: iommu@2b600000 { +@@ -64,7 +65,7 @@ smmu_etr: iommu@2b600000 { #iommu-cells = <1>; #global-interrupts = <1>; dma-coherent; @@ -58,7 +58,7 @@ index 6288e104a089..36844f7d861e 100644 }; gic: interrupt-controller@2c010000 { -@@ -123,7 +124,7 @@ etf@20010000 { /* etf0 */ +@@ -124,7 +125,7 @@ etf@20010000 { /* etf0 */ clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -67,7 +67,7 @@ index 6288e104a089..36844f7d861e 100644 in-ports { port { -@@ -147,7 +148,7 @@ tpiu@20030000 { +@@ -148,7 +149,7 @@ tpiu@20030000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -76,7 +76,7 @@ index 6288e104a089..36844f7d861e 100644 in-ports { port { tpiu_in_port: endpoint { -@@ -164,7 +165,7 @@ main_funnel: funnel@20040000 { +@@ -165,7 +166,7 @@ main_funnel: funnel@20040000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -85,7 +85,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { -@@ -201,7 +202,7 @@ etr@20070000 { +@@ -202,7 +203,7 @@ etr@20070000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -94,7 +94,7 @@ index 6288e104a089..36844f7d861e 100644 arm,scatter-gather; in-ports { port { -@@ -220,7 +221,7 @@ stm@20100000 { +@@ -221,7 +222,7 @@ stm@20100000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -103,7 +103,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { stm_out_port: endpoint { -@@ -235,7 +236,7 @@ replicator@20120000 { +@@ -236,7 +237,7 @@ replicator@20120000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -112,7 +112,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { #address-cells = <1>; -@@ -270,7 +271,7 @@ cpu_debug0: cpu-debug@22010000 { +@@ -271,7 +272,7 @@ cpu_debug0: cpu-debug@22010000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -121,7 +121,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm0: etm@22040000 { -@@ -279,7 +280,7 @@ etm0: etm@22040000 { +@@ -280,7 +281,7 @@ etm0: etm@22040000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -130,7 +130,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster0_etm0_out_port: endpoint { -@@ -295,7 +296,7 @@ funnel@220c0000 { /* cluster0 funnel */ +@@ -296,7 +297,7 @@ funnel@220c0000 { /* cluster0 funnel */ clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -139,7 +139,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster0_funnel_out_port: endpoint { -@@ -330,7 +331,7 @@ cpu_debug1: cpu-debug@22110000 { +@@ -331,7 +332,7 @@ cpu_debug1: cpu-debug@22110000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -148,7 +148,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm1: etm@22140000 { -@@ -339,7 +340,7 @@ etm1: etm@22140000 { +@@ -340,7 +341,7 @@ etm1: etm@22140000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -157,7 +157,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster0_etm1_out_port: endpoint { -@@ -355,7 +356,7 @@ cpu_debug2: cpu-debug@23010000 { +@@ -356,7 +357,7 @@ cpu_debug2: cpu-debug@23010000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -166,7 +166,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm2: etm@23040000 { -@@ -364,7 +365,7 @@ etm2: etm@23040000 { +@@ -365,7 +366,7 @@ etm2: etm@23040000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -175,7 +175,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster1_etm0_out_port: endpoint { -@@ -380,7 +381,7 @@ funnel@230c0000 { /* cluster1 funnel */ +@@ -381,7 +382,7 @@ funnel@230c0000 { /* cluster1 funnel */ clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -184,7 +184,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster1_funnel_out_port: endpoint { -@@ -427,7 +428,7 @@ cpu_debug3: cpu-debug@23110000 { +@@ -428,7 +429,7 @@ cpu_debug3: cpu-debug@23110000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -193,7 +193,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm3: etm@23140000 { -@@ -436,7 +437,7 @@ etm3: etm@23140000 { +@@ -437,7 +438,7 @@ etm3: etm@23140000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -202,7 +202,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster1_etm1_out_port: endpoint { -@@ -452,7 +453,7 @@ cpu_debug4: cpu-debug@23210000 { +@@ -453,7 +454,7 @@ cpu_debug4: cpu-debug@23210000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -211,7 +211,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm4: etm@23240000 { -@@ -461,7 +462,7 @@ etm4: etm@23240000 { +@@ -462,7 +463,7 @@ etm4: etm@23240000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -220,7 +220,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster1_etm2_out_port: endpoint { -@@ -477,7 +478,7 @@ cpu_debug5: cpu-debug@23310000 { +@@ -478,7 +479,7 @@ cpu_debug5: cpu-debug@23310000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -229,7 +229,7 @@ index 6288e104a089..36844f7d861e 100644 }; etm5: etm@23340000 { -@@ -486,7 +487,7 @@ etm5: etm@23340000 { +@@ -487,7 +488,7 @@ etm5: etm@23340000 { clocks = <&soc_smc50mhz>; clock-names = "apb_pclk"; @@ -238,7 +238,7 @@ index 6288e104a089..36844f7d861e 100644 out-ports { port { cluster1_etm3_out_port: endpoint { -@@ -503,8 +504,8 @@ gpu: gpu@2d000000 { +@@ -504,8 +505,8 @@ gpu: gpu@2d000000 { , ; interrupt-names = "job", "mmu", "gpu"; @@ -249,7 +249,7 @@ index 6288e104a089..36844f7d861e 100644 dma-coherent; /* The SMMU is only really of interest to bare-metal hypervisors */ /* iommus = <&smmu_gpu 0>; */ -@@ -519,14 +520,24 @@ sram: sram@2e000000 { +@@ -520,14 +521,24 @@ sram: sram@2e000000 { #size-cells = <1>; ranges = <0 0x0 0x2e000000 0x8000>; @@ -342,21 +342,25 @@ index 6288e104a089..36844f7d861e 100644 }; }; -@@ -596,40 +607,40 @@ thermal-zones { +@@ -596,7 +607,7 @@ thermal-zones { pmic { polling-delay = <1000>; polling-delay-passive = <100>; - thermal-sensors = <&scpi_sensors0 0>; + thermal-sensors = <&scmi_sensors0 0>; - }; - + trips { + pmic_crit0: trip0 { + temperature = <90000>; +@@ -609,7 +620,7 @@ pmic_crit0: trip0 { soc { polling-delay = <1000>; polling-delay-passive = <100>; - thermal-sensors = <&scpi_sensors0 3>; + thermal-sensors = <&scmi_sensors0 3>; - }; - + trips { + soc_crit0: trip0 { + temperature = <80000>; +@@ -622,28 +633,28 @@ soc_crit0: trip0 { big_cluster_thermal_zone: big-cluster { polling-delay = <1000>; polling-delay-passive = <100>; @@ -389,7 +393,7 @@ index 6288e104a089..36844f7d861e 100644 status = "disabled"; }; }; -@@ -705,7 +716,7 @@ hdlcd@7ff50000 { +@@ -719,7 +730,7 @@ hdlcd@7ff50000 { reg = <0 0x7ff50000 0 0x1000>; interrupts = ; iommus = <&smmu_hdlcd1 0>; @@ -398,7 +402,7 @@ index 6288e104a089..36844f7d861e 100644 clock-names = "pxlclk"; port { -@@ -720,7 +731,7 @@ hdlcd@7ff60000 { +@@ -734,7 +745,7 @@ hdlcd@7ff60000 { reg = <0 0x7ff60000 0 0x1000>; interrupts = ; iommus = <&smmu_hdlcd0 0>; @@ -613,5 +617,5 @@ index f00cffbd032c..a28316c65c1b 100644 capacity-dmips-mhz = <578>; dynamic-power-coefficient = <140>; -- -2.25.1 +2.30.2 diff --git a/meta-arm-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend b/meta-arm-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend deleted file mode 100644 index b0bbfeff..00000000 --- a/meta-arm-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend +++ /dev/null @@ -1,3 +0,0 @@ -# This is only needed until the juno patches are updated to the latest 5.15 release. -LINUX_VERSION:juno = "5.15.72" -SRCREV_machine:juno = "0b628306d1f9ea28c0e86369ce9bb87a47893c9c"