diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml index 22b5d2886..482475dcf 100644 --- a/.github/workflows/dev.yml +++ b/.github/workflows/dev.yml @@ -11,15 +11,23 @@ jobs: name: Generate version runs-on: [ "ubuntu-20.04" ] outputs: - version_dev: ${{ steps.version.outputs.version_dev }} + version_main: ${{ steps.version_main.outputs.version_main }} + version_dev: ${{ steps.version_dev.outputs.version_dev }} steps: - name: Generate Development build version shell: bash - id: version + id: version_dev run: | version_dev="dev$(date --utc +'%Y%m%d')" echo "Development version \"${version_dev}\"" echo "::set-output name=version_dev::${version_dev}" + - uses: actions/checkout@v2 + - name: Get Major/Minor version + id: version_main + run: | + major=$(cat ${GITHUB_WORKSPACE}/buildroot-external/meta | grep VERSION_MAJOR | cut -d'=' -f2) + build=$(cat ${GITHUB_WORKSPACE}/buildroot-external/meta | grep VERSION_BUILD | cut -d'=' -f2) + echo "::set-output name=version_main::${major}.${build}" build: name: Release build for ${{ matrix.board.name }} @@ -76,6 +84,6 @@ jobs: port: ${{ secrets.DEV_PORT }} key: ${{ secrets.DEV_SCP_KEY }} source: "release/*" - target: ${{ secrets.DEV_TARGET_PATH }}/${{ needs.version.outputs.version_dev }}/ + target: ${{ secrets.DEV_TARGET_PATH }}/${{ needs.version.outputs.version_main }}.${{ needs.version.outputs.version_dev }}/ strip_components: 1 diff --git a/Documentation/kernel.md b/Documentation/kernel.md index 3994111fe..1f9610b8e 100644 --- a/Documentation/kernel.md +++ b/Documentation/kernel.md @@ -5,15 +5,15 @@ Default Kernel tree: 5.4 | Board | Version | |-------|---------| -| Open Virtual Appliance | 5.4.80 | +| Open Virtual Appliance | 5.4.82 | | Raspberry Pi | 5.4.79 | | Raspberry Pi 0-W | 5.4.79 | | Raspberry Pi 2 | 5.4.79 | | Raspberry Pi 3 | 5.4.79 | | Raspberry Pi 4 | 5.4.79 | -| Tinker Board | 5.4.80 | +| Tinker Board | 5.4.82 | | Odroid-C2 | 5.9.11 | | Odroid-C4 | 5.9.11 | | Odroid-N2 | 5.9.11 | | Odroid-XU4 | 5.9.11 | -| Intel NUC | 5.4.80 | +| Intel NUC | 5.4.82 | diff --git a/Documentation/partition.md b/Documentation/partition.md index 8cc52da13..bb7d9294e 100644 --- a/Documentation/partition.md +++ b/Documentation/partition.md @@ -51,10 +51,13 @@ Log in as `root` to get to the Home Assistant CLI and then enter `login` to cont Confirm your USB SSD/HD is connected and recognized using `fdisk -l`. -Make sure the drive has no partition named `hassos-data` (or no partition at all). With the drive, use the below command (again, replacing XXX with your drive) +With the drive connected, use the following command (replacing sdx with your drive, without a partition number): ```sh -$ datactl move /dev/xxx +$ datactl move /dev/sdx ``` -Hit any key to continue, and then the move will happen after the next reboot. Once complete, the external drive will be owned and used by the system. +Enter "yes" to confirm the operation. This will prepare the disk, however, the +actual move will be running on next reboot. Once complete, the external drive +will contain the data and will need to be plugged in to successfully boot Home +Assistant OS. diff --git a/buildroot-external/board/asus/tinker/uboot-boot.ush b/buildroot-external/board/asus/tinker/uboot-boot.ush index 15964c8da..9cab62b3f 100644 --- a/buildroot-external/board/asus/tinker/uboot-boot.ush +++ b/buildroot-external/board/asus/tinker/uboot-boot.ush @@ -49,8 +49,9 @@ for BOOT_SLOT in "${BOOT_ORDER}"; do if test ${BOOT_B_LEFT} -gt 0; then setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1 echo "Trying to boot slot B, ${BOOT_B_LEFT} attempts remaining. Loading kernel ..." - if ext4load mmc ${devnum}:4 ${kernel_addr_r} zImage"; then + if ext4load mmc ${devnum}:4 ${kernel_addr_r} zImage; then setenv bootargs "${bootargs_hassos} ${bootargs_b} rauc.slot=B ${cmdline}" + fi fi fi done diff --git a/buildroot-external/board/hardkernel/patches/linux/0001-arm64-dts-meson-convert-ODROID-N2-to-dtsi.patch b/buildroot-external/board/hardkernel/patches/linux/0001-arm64-dts-meson-convert-ODROID-N2-to-dtsi.patch index 60e770b0c..962204d68 100644 --- a/buildroot-external/board/hardkernel/patches/linux/0001-arm64-dts-meson-convert-ODROID-N2-to-dtsi.patch +++ b/buildroot-external/board/hardkernel/patches/linux/0001-arm64-dts-meson-convert-ODROID-N2-to-dtsi.patch @@ -1,5 +1,5 @@ -From 734f52f38625ce29c964517255538b3b0b546e8d Mon Sep 17 00:00:00 2001 -Message-Id: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> +From 9d2a2b44e67b0ef49e534c097e8b5e3e1173b033 Mon Sep 17 00:00:00 2001 +Message-Id: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> From: Christian Hewitt Date: Tue, 15 Sep 2020 17:24:30 +0200 Subject: [PATCH 1/7] arm64: dts: meson: convert ODROID-N2 to dtsi @@ -1282,5 +1282,5 @@ index 000000000000..6982632ae646 + phy-supply = <&hub_5v>; +}; -- -2.28.0 +2.29.2 diff --git a/buildroot-external/board/hardkernel/patches/linux/0002-dt-bindings-arm-amlogic-add-support-for-the-ODROID-N.patch b/buildroot-external/board/hardkernel/patches/linux/0002-dt-bindings-arm-amlogic-add-support-for-the-ODROID-N.patch index 46e32f0cd..6ba24c605 100644 --- a/buildroot-external/board/hardkernel/patches/linux/0002-dt-bindings-arm-amlogic-add-support-for-the-ODROID-N.patch +++ b/buildroot-external/board/hardkernel/patches/linux/0002-dt-bindings-arm-amlogic-add-support-for-the-ODROID-N.patch @@ -1,7 +1,7 @@ -From 75f1e8330dac46a0bef8a360be0ae4566d9a470c Mon Sep 17 00:00:00 2001 -Message-Id: <75f1e8330dac46a0bef8a360be0ae4566d9a470c.1603528796.git.stefan@agner.ch> -In-Reply-To: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> -References: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> +From 258f03fa4fd897a61b5861df1f809e234711dd49 Mon Sep 17 00:00:00 2001 +Message-Id: <258f03fa4fd897a61b5861df1f809e234711dd49.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> From: Christian Hewitt Date: Tue, 15 Sep 2020 17:24:31 +0200 Subject: [PATCH 2/7] dt-bindings: arm: amlogic: add support for the ODROID-N2+ @@ -32,5 +32,5 @@ index 5eba9f48823e..12ba8d074370 100644 - ugoos,am6 - const: amlogic,s922x -- -2.28.0 +2.29.2 diff --git a/buildroot-external/board/hardkernel/patches/linux/0003-arm64-dts-meson-add-support-for-the-ODROID-N2.patch b/buildroot-external/board/hardkernel/patches/linux/0003-arm64-dts-meson-add-support-for-the-ODROID-N2.patch index 612b0d6b2..99362a17a 100644 --- a/buildroot-external/board/hardkernel/patches/linux/0003-arm64-dts-meson-add-support-for-the-ODROID-N2.patch +++ b/buildroot-external/board/hardkernel/patches/linux/0003-arm64-dts-meson-add-support-for-the-ODROID-N2.patch @@ -1,7 +1,7 @@ -From c714cb26fcb59f5201f7aac68dfd9883319881b2 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> -References: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> +From 6cfaddae585e5a87c5253c932b8d58e153159f6b Mon Sep 17 00:00:00 2001 +Message-Id: <6cfaddae585e5a87c5253c932b8d58e153159f6b.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> From: Christian Hewitt Date: Tue, 15 Sep 2020 17:24:32 +0200 Subject: [PATCH 3/7] arm64: dts: meson: add support for the ODROID-N2+ @@ -74,5 +74,5 @@ index 000000000000..5de2815ba99d +}; + -- -2.28.0 +2.29.2 diff --git a/buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch b/buildroot-external/board/hardkernel/patches/linux/0004-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch similarity index 80% rename from buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch rename to buildroot-external/board/hardkernel/patches/linux/0004-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch index c2aaf3e27..23f504f34 100644 --- a/buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch +++ b/buildroot-external/board/hardkernel/patches/linux/0004-arm64-dts-meson-odroid-n2-plus-fix-vddcpu_a-pwm.patch @@ -1,10 +1,10 @@ -From 0a3a45efeefaf65c170df265126a07da3236e178 Mon Sep 17 00:00:00 2001 -Message-Id: <0a3a45efeefaf65c170df265126a07da3236e178.1603528796.git.stefan@agner.ch> -In-Reply-To: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> -References: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> +From 47f804dc970e2b1f71f1f032a0da2ef3b8315be0 Mon Sep 17 00:00:00 2001 +Message-Id: <47f804dc970e2b1f71f1f032a0da2ef3b8315be0.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> From: Jerome Brunet Date: Fri, 23 Oct 2020 11:41:39 +0200 -Subject: [PATCH 5/7] arm64: dts: meson: odroid-n2 plus: fix vddcpu_a pwm +Subject: [PATCH 4/7] arm64: dts: meson: odroid-n2 plus: fix vddcpu_a pwm On the odroid N2 plus, cpufreq is not available due to an error on the cpu regulators. vddcpu a and b get the same PWM. The one provided to vddcpu A @@ -38,5 +38,5 @@ index 5de2815ba99d..ce1198ad34e4 100644 &vddcpu_b { -- -2.28.0 +2.29.2 diff --git a/buildroot-external/board/hardkernel/patches/linux/0008-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch b/buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch similarity index 78% rename from buildroot-external/board/hardkernel/patches/linux/0008-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch rename to buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch index 8ac092b52..348408f10 100644 --- a/buildroot-external/board/hardkernel/patches/linux/0008-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch +++ b/buildroot-external/board/hardkernel/patches/linux/0005-arm64-dts-meson-add-RTC-to-ODROID-N2-boards.patch @@ -1,10 +1,10 @@ -From 75b8900d6750fa9d44546219a9b925c5df73a985 Mon Sep 17 00:00:00 2001 -Message-Id: <75b8900d6750fa9d44546219a9b925c5df73a985.1605564817.git.stefan@agner.ch> -In-Reply-To: <734f52f38625ce29c964517255538b3b0b546e8d.1605564817.git.stefan@agner.ch> -References: <734f52f38625ce29c964517255538b3b0b546e8d.1605564817.git.stefan@agner.ch> +From 2c15ad491233a80d61c811a944b86067e2e74686 Mon Sep 17 00:00:00 2001 +Message-Id: <2c15ad491233a80d61c811a944b86067e2e74686.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> From: Stefan Agner Date: Mon, 16 Nov 2020 23:11:02 +0100 -Subject: [PATCH 8/8] arm64: dts: meson: add RTC to ODROID-N2 boards +Subject: [PATCH 5/7] arm64: dts: meson: add RTC to ODROID-N2 boards All ODROID-N2 boards come with a NXP PCF8563TS RTC connected to I2C bus 3. This is the RTC which is connected to the on-board RTC backup battery. diff --git a/buildroot-external/board/hardkernel/patches/linux/0006-arm64-dts-meson-g12b-odroid-n2-fix-PHY-deassert-timi.patch b/buildroot-external/board/hardkernel/patches/linux/0006-arm64-dts-meson-g12b-odroid-n2-fix-PHY-deassert-timi.patch new file mode 100644 index 000000000..0efd97f03 --- /dev/null +++ b/buildroot-external/board/hardkernel/patches/linux/0006-arm64-dts-meson-g12b-odroid-n2-fix-PHY-deassert-timi.patch @@ -0,0 +1,41 @@ +From 35d2de7b27bc3f4bc2d977fb6b7671d9ba889496 Mon Sep 17 00:00:00 2001 +Message-Id: <35d2de7b27bc3f4bc2d977fb6b7671d9ba889496.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +From: Stefan Agner +Date: Tue, 1 Dec 2020 00:32:23 +0100 +Subject: [PATCH 6/7] arm64: dts: meson: g12b: odroid-n2: fix PHY deassert + timing requirements + +According to the datasheet (Rev. 1.9) the RTL8211F requires at least +72ms "for internal circuits settling time" before accessing the PHY +egisters. This fixes an issue where the Ethernet link doesn't come up +when using ip link set down/up: + [ 29.360965] meson8b-dwmac ff3f0000.ethernet eth0: Link is Down + [ 34.569012] meson8b-dwmac ff3f0000.ethernet eth0: PHY [0.0:00] driver [RTL8211F Gigabit Ethernet] (irq=31) + [ 34.676732] meson8b-dwmac ff3f0000.ethernet: Failed to reset the dma + [ 34.678874] meson8b-dwmac ff3f0000.ethernet eth0: stmmac_hw_setup: DMA engine initialization failed + [ 34.687850] meson8b-dwmac ff3f0000.ethernet eth0: stmmac_open: Hw setup failed + +Fixes: 658e4129bb81 ("arm64: dts: meson: g12b: odroid-n2: add the Ethernet PHY reset line") +Signed-off-by: Stefan Agner +--- + arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi +index 40390feba053..445d90d25aa3 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi ++++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi +@@ -415,7 +415,7 @@ external_phy: ethernet-phy@0 { + max-speed = <1000>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>; + + interrupt-parent = <&gpio_intc>; +-- +2.29.2 + diff --git a/buildroot-external/board/hardkernel/patches/linux/0006-clk-meson-g12a-mark-fclk_div2-as-critical.patch b/buildroot-external/board/hardkernel/patches/linux/0006-clk-meson-g12a-mark-fclk_div2-as-critical.patch deleted file mode 100644 index 9d2813920..000000000 --- a/buildroot-external/board/hardkernel/patches/linux/0006-clk-meson-g12a-mark-fclk_div2-as-critical.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 03041630d824a775b71f6008067955a51d069845 Mon Sep 17 00:00:00 2001 -Message-Id: <03041630d824a775b71f6008067955a51d069845.1603528796.git.stefan@agner.ch> -In-Reply-To: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> -References: <734f52f38625ce29c964517255538b3b0b546e8d.1603528796.git.stefan@agner.ch> -From: Stefan Agner -Date: Thu, 27 Aug 2020 23:29:57 +0200 -Subject: [PATCH 6/7] clk: meson: g12a: mark fclk_div2 as critical - -On Amlogic Meson G12b platform, similar to fclk_div3, the fclk_div2 -seems to be necessary for the system to operate correctly as well. - -Typically, the clock also gets chosen by the eMMC peripheral. This -probably masked the problem so far. However, when booting from a SD -card the clock seems to get disabled which leads to a system freeze. - -Let's mark this clock as critical, fixing boot from SD card on G12b -platforms. - -Signed-off-by: Stefan Agner ---- - drivers/clk/meson/g12a.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/drivers/clk/meson/g12a.c b/drivers/clk/meson/g12a.c -index 9803d44bb157..9a6722a1dc19 100644 ---- a/drivers/clk/meson/g12a.c -+++ b/drivers/clk/meson/g12a.c -@@ -298,6 +298,7 @@ static struct clk_regmap g12a_fclk_div2 = { - &g12a_fclk_div2_div.hw - }, - .num_parents = 1, -+ .flags = CLK_IS_CRITICAL, - }, - }; - --- -2.28.0 - diff --git a/buildroot-external/board/hardkernel/patches/linux/0007-arm64-dts-meson-fix-PHY-deassert-timing-requirements.patch b/buildroot-external/board/hardkernel/patches/linux/0007-arm64-dts-meson-fix-PHY-deassert-timing-requirements.patch new file mode 100644 index 000000000..8d81b8ad2 --- /dev/null +++ b/buildroot-external/board/hardkernel/patches/linux/0007-arm64-dts-meson-fix-PHY-deassert-timing-requirements.patch @@ -0,0 +1,152 @@ +From 40e8e7e28c44993e352195b359c4d4540bfb2105 Mon Sep 17 00:00:00 2001 +Message-Id: <40e8e7e28c44993e352195b359c4d4540bfb2105.1606829302.git.stefan@agner.ch> +In-Reply-To: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +References: <9d2a2b44e67b0ef49e534c097e8b5e3e1173b033.1606829302.git.stefan@agner.ch> +From: Stefan Agner +Date: Tue, 1 Dec 2020 00:32:23 +0100 +Subject: [PATCH 7/7] arm64: dts: meson: fix PHY deassert timing requirements + +According to the datasheet (Rev. 1.9) the RTL8211F requires at least +72ms "for internal circuits settling time" before accessing the PHY +egisters. This fixes an issue seen on ODROID-C2 where the Ethernet +link doesn't come up when using ip link set down/up: + [ 6630.714855] meson8b-dwmac c9410000.ethernet eth0: Link is Down + [ 6630.785775] meson8b-dwmac c9410000.ethernet eth0: PHY [stmmac-0:00] driver [RTL8211F Gigabit Ethernet] (irq=36) + [ 6630.893071] meson8b-dwmac c9410000.ethernet: Failed to reset the dma + [ 6630.893800] meson8b-dwmac c9410000.ethernet eth0: stmmac_hw_setup: DMA engine initialization failed + [ 6630.902835] meson8b-dwmac c9410000.ethernet eth0: stmmac_open: Hw setup failed + +Fixes: f29cabf240ed ("arm64: dts: meson: use the generic Ethernet PHY reset GPIO bindings") +Signed-off-by: Stefan Agner +--- + arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts | 2 +- + arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts | 2 +- + 9 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts +index 7be3e354093b..de27beafe9db 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts +@@ -165,7 +165,7 @@ eth_phy0: ethernet-phy@0 { + reg = <0>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts +index 70fcfb7b0683..50de1d01e565 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts +@@ -200,7 +200,7 @@ eth_phy0: ethernet-phy@0 { + reg = <0>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi +index 222ee8069cfa..9b0b81f191f1 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi ++++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi +@@ -126,7 +126,7 @@ eth_phy0: ethernet-phy@0 { + reg = <0>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi +index ad812854a107..a350fee1264d 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi ++++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi +@@ -147,7 +147,7 @@ eth_phy0: ethernet-phy@0 { + reg = <0>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts +index b08c4537f260..b2ab05c22090 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts +@@ -82,7 +82,7 @@ external_phy: ethernet-phy@0 { + + /* External PHY reset is shared with internal PHY Led signal */ + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts +index bff8ec2c1c70..e38d9e50caa7 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts +@@ -194,7 +194,7 @@ external_phy: ethernet-phy@0 { + reg = <0>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts +index 83eca3af44ce..dfa7a37a1281 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts +@@ -112,7 +112,7 @@ external_phy: ethernet-phy@0 { + max-speed = <1000>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + }; + }; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts +index ea45ae0c71b7..8edbfe040805 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts +@@ -64,7 +64,7 @@ external_phy: ethernet-phy@0 { + + /* External PHY reset is shared with internal PHY Led signal */ + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio_intc>; +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts +index c89c9f846fb1..dde7cfe12cff 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts +@@ -114,7 +114,7 @@ external_phy: ethernet-phy@0 { + max-speed = <1000>; + + reset-assert-us = <10000>; +- reset-deassert-us = <30000>; ++ reset-deassert-us = <80000>; + reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; + }; + }; +-- +2.29.2 + diff --git a/buildroot-external/board/hardkernel/patches/uboot/0001-ARM-meson-isolate-loading-of-socinfo.patch b/buildroot-external/board/hardkernel/patches/uboot/0001-ARM-meson-isolate-loading-of-socinfo.patch index da7d8b910..6cb2bec2b 100644 --- a/buildroot-external/board/hardkernel/patches/uboot/0001-ARM-meson-isolate-loading-of-socinfo.patch +++ b/buildroot-external/board/hardkernel/patches/uboot/0001-ARM-meson-isolate-loading-of-socinfo.patch @@ -1,8 +1,8 @@ -From f9877c2895d6c05710a828d0cd46d9f25626b070 Mon Sep 17 00:00:00 2001 -Message-Id: +From 526ccae8321b9b48925c44999611c3c5a374328e Mon Sep 17 00:00:00 2001 +Message-Id: <526ccae8321b9b48925c44999611c3c5a374328e.1607542946.git.stefan@agner.ch> From: Stefan Agner Date: Mon, 31 Aug 2020 13:40:18 +0200 -Subject: [PATCH 1/2] ARM: meson: isolate loading of socinfo +Subject: [PATCH 1/3] ARM: meson: isolate loading of socinfo Move loading of socinfo into a separate function so the value can be reused later. diff --git a/buildroot-external/board/hardkernel/patches/uboot/0002-meson-Add-board_rev-to-env.patch b/buildroot-external/board/hardkernel/patches/uboot/0002-meson-Add-board_rev-to-env.patch index 6f34689c9..0277b564e 100644 --- a/buildroot-external/board/hardkernel/patches/uboot/0002-meson-Add-board_rev-to-env.patch +++ b/buildroot-external/board/hardkernel/patches/uboot/0002-meson-Add-board_rev-to-env.patch @@ -1,10 +1,10 @@ -From 31e32295dc261032d7f5540a0b7f79a4f5a5b807 Mon Sep 17 00:00:00 2001 -Message-Id: <31e32295dc261032d7f5540a0b7f79a4f5a5b807.1606490648.git.stefan@agner.ch> -In-Reply-To: -References: +From 2b2ad8c105cbb5fb48c3c5f0512c031f6533d522 Mon Sep 17 00:00:00 2001 +Message-Id: <2b2ad8c105cbb5fb48c3c5f0512c031f6533d522.1607542946.git.stefan@agner.ch> +In-Reply-To: <526ccae8321b9b48925c44999611c3c5a374328e.1607542946.git.stefan@agner.ch> +References: <526ccae8321b9b48925c44999611c3c5a374328e.1607542946.git.stefan@agner.ch> From: Pascal Vizeli Date: Tue, 4 Aug 2020 13:50:57 +0000 -Subject: [PATCH 2/2] meson: Add board_rev to env +Subject: [PATCH 2/3] meson: Add board_rev to env Signed-off-by: Pascal Vizeli Signed-off-by: Stefan Agner diff --git a/buildroot-external/board/hardkernel/odroid-c4/patches/uboot/0001-HACK-mmc-meson-gx-limit-to-24MHz.patch b/buildroot-external/board/hardkernel/patches/uboot/0003-HACK-mmc-meson-gx-limit-to-24MHz.patch similarity index 62% rename from buildroot-external/board/hardkernel/odroid-c4/patches/uboot/0001-HACK-mmc-meson-gx-limit-to-24MHz.patch rename to buildroot-external/board/hardkernel/patches/uboot/0003-HACK-mmc-meson-gx-limit-to-24MHz.patch index 2ae25bf44..fb1ab45b4 100644 --- a/buildroot-external/board/hardkernel/odroid-c4/patches/uboot/0001-HACK-mmc-meson-gx-limit-to-24MHz.patch +++ b/buildroot-external/board/hardkernel/patches/uboot/0003-HACK-mmc-meson-gx-limit-to-24MHz.patch @@ -1,4 +1,7 @@ -From 64017a2cc9e501329016d50b701c5e9a9488991d Mon Sep 17 00:00:00 2001 +From 0077176ac369a1125c3fb22f7ba8e5d53576a1b3 Mon Sep 17 00:00:00 2001 +Message-Id: <0077176ac369a1125c3fb22f7ba8e5d53576a1b3.1607542946.git.stefan@agner.ch> +In-Reply-To: <526ccae8321b9b48925c44999611c3c5a374328e.1607542946.git.stefan@agner.ch> +References: <526ccae8321b9b48925c44999611c3c5a374328e.1607542946.git.stefan@agner.ch> From: Neil Armstrong Date: Mon, 2 Sep 2019 15:42:04 +0200 Subject: [PATCH 3/3] HACK: mmc: meson-gx: limit to 24MHz @@ -9,10 +12,10 @@ Signed-off-by: Neil Armstrong 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mmc/meson_gx_mmc.c b/drivers/mmc/meson_gx_mmc.c -index b5f5122b..00bfa324 100644 +index 719dd1e5e5..dd3dd7c08c 100644 --- a/drivers/mmc/meson_gx_mmc.c +++ b/drivers/mmc/meson_gx_mmc.c -@@ -252,7 +252,7 @@ static int meson_mmc_probe(struct udevice *dev) +@@ -265,7 +265,7 @@ static int meson_mmc_probe(struct udevice *dev) cfg->host_caps = MMC_MODE_8BIT | MMC_MODE_4BIT | MMC_MODE_HS_52MHz | MMC_MODE_HS; cfg->f_min = DIV_ROUND_UP(SD_EMMC_CLKSRC_24M, CLK_MAX_DIV); @@ -20,6 +23,7 @@ index b5f5122b..00bfa324 100644 + cfg->f_max = SD_EMMC_CLKSRC_24M; cfg->b_max = 511; /* max 512 - 1 blocks */ cfg->name = dev->name; + +-- +2.29.2 --- -2.22.0 diff --git a/buildroot-external/board/intel/ova/kernel.config b/buildroot-external/board/intel/ova/kernel.config index 2ef9c3175..543fed10f 100644 --- a/buildroot-external/board/intel/ova/kernel.config +++ b/buildroot-external/board/intel/ova/kernel.config @@ -20,6 +20,11 @@ CONFIG_VIRTIO_MMIO=y CONFIG_SCSI_VIRTIO=y CONFIG_HW_RANDOM_VIRTIO=y +CONFIG_FUSION=y +CONFIG_FUSION_SPI=y +CONFIG_FUSION_SAS=y +CONFIG_FUSION_MAX_SGE=128 + CONFIG_SCSI_LOWLEVEL=y CONFIG_USB_XHCI_HCD=y CONFIG_BLK_DEV_NVME=y diff --git a/buildroot-external/board/intel/patches/dt-utils/0001-get-devicetree-from-file.patch b/buildroot-external/board/intel/patches/dt-utils/0001-barebox-state-get-devicetree-from-file.patch similarity index 80% rename from buildroot-external/board/intel/patches/dt-utils/0001-get-devicetree-from-file.patch rename to buildroot-external/board/intel/patches/dt-utils/0001-barebox-state-get-devicetree-from-file.patch index 61f098523..ecfa1b0c7 100644 --- a/buildroot-external/board/intel/patches/dt-utils/0001-get-devicetree-from-file.patch +++ b/buildroot-external/board/intel/patches/dt-utils/0001-barebox-state-get-devicetree-from-file.patch @@ -1,12 +1,18 @@ -From 405590bdb7ae434798010458e810c415e4e99db4 Mon Sep 17 00:00:00 2001 +From 4e9abe7945370765a9e8e88b01a7ef5f266bf7fd Mon Sep 17 00:00:00 2001 +Message-Id: <4e9abe7945370765a9e8e88b01a7ef5f266bf7fd.1606682453.git.stefan@agner.ch> From: Steffen Trumtrar Date: Fri, 30 Jun 2017 16:53:34 +0200 -Subject: barebox-state: get devicetree from file +Subject: [PATCH dt-utils 1/3] barebox-state: get devicetree from file Signed-off-by: Steffen Trumtrar +--- + src/barebox-state.c | 30 ++++++++++++++++++++++-------- + src/barebox-state.h | 2 +- + src/keystore-blob.c | 2 +- + 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/src/barebox-state.c b/src/barebox-state.c -index e68b8cb..3622e76 100644 +index f8b8df6..76f9c41 100644 --- a/src/barebox-state.c +++ b/src/barebox-state.c @@ -308,7 +308,7 @@ static int state_set_var(struct state *state, const char *var, const char *val) @@ -16,11 +22,11 @@ index e68b8cb..3622e76 100644 -struct state *state_get(const char *name, bool readonly, bool auth) +struct state *state_get(const char *name, const char *filename, bool readonly, bool auth) { - struct device_node *root, *node, *partition_node; + struct device_node *root, *node; char *path; -@@ -320,11 +320,19 @@ struct state *state_get(const char *name, bool readonly, bool auth) - off_t offset; - size_t size; +@@ -317,11 +317,19 @@ struct state *state_get(const char *name, bool readonly, bool auth) + const char *backend_type = NULL; + struct state_variable *v; - root = of_read_proc_devicetree(); - if (IS_ERR(root)) { @@ -43,7 +49,7 @@ index e68b8cb..3622e76 100644 } of_set_root_node(root); -@@ -387,6 +395,7 @@ static struct option long_options[] = { +@@ -372,6 +380,7 @@ static struct option long_options[] = { {"get", required_argument, 0, 'g' }, {"set", required_argument, 0, 's' }, {"name", required_argument, 0, 'n' }, @@ -51,7 +57,7 @@ index e68b8cb..3622e76 100644 {"dump", no_argument, 0, 'd' }, {"dump-shell", no_argument, 0, OPT_DUMP_SHELL }, {"verbose", no_argument, 0, 'v' }, -@@ -402,6 +411,7 @@ static void usage(char *name) +@@ -387,6 +396,7 @@ static void usage(char *name) "-g, --get get the value of a variable\n" "-s, --set = set the value of a variable\n" "-n, --name specify the state to use (default=\"state\"). Multiple states are allowed.\n" @@ -59,7 +65,7 @@ index e68b8cb..3622e76 100644 "-d, --dump dump the state\n" "--dump-shell dump the state suitable for shell sourcing\n" "-v, --verbose increase verbosity\n" -@@ -439,12 +449,13 @@ int main(int argc, char *argv[]) +@@ -424,12 +434,13 @@ int main(int argc, char *argv[]) bool readonly = true; int pr_level = 5; int auth = 1; @@ -74,7 +80,7 @@ index e68b8cb..3622e76 100644 if (c < 0) break; switch (c) { -@@ -490,6 +501,9 @@ int main(int argc, char *argv[]) +@@ -475,6 +486,9 @@ int main(int argc, char *argv[]) ++nr_states; break; } @@ -84,7 +90,7 @@ index e68b8cb..3622e76 100644 case ':': case '?': default: -@@ -530,7 +544,7 @@ int main(int argc, char *argv[]) +@@ -515,7 +529,7 @@ int main(int argc, char *argv[]) } list_for_each_entry(state, &state_list.list, list) { @@ -120,4 +126,5 @@ index 028dd8b..4572431 100644 return PTR_ERR(tmp); state = tmp; -- -cgit v0.10.2 +2.29.2 + diff --git a/buildroot-external/board/intel/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch b/buildroot-external/board/intel/patches/dt-utils/0002-libdt-support-finding-devices-by-partuuid.patch similarity index 56% rename from buildroot-external/board/intel/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch rename to buildroot-external/board/intel/patches/dt-utils/0002-libdt-support-finding-devices-by-partuuid.patch index 31b8b2b6d..cdbf8b288 100644 --- a/buildroot-external/board/intel/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch +++ b/buildroot-external/board/intel/patches/dt-utils/0002-libdt-support-finding-devices-by-partuuid.patch @@ -1,15 +1,21 @@ -From 26148417fab419a0c7f301fb8f2be015324d5374 Mon Sep 17 00:00:00 2001 +From 4eb260d97419349320aa688866b4cf1eb177df70 Mon Sep 17 00:00:00 2001 +Message-Id: <4eb260d97419349320aa688866b4cf1eb177df70.1606682453.git.stefan@agner.ch> +In-Reply-To: <4e9abe7945370765a9e8e88b01a7ef5f266bf7fd.1606682453.git.stefan@agner.ch> +References: <4e9abe7945370765a9e8e88b01a7ef5f266bf7fd.1606682453.git.stefan@agner.ch> From: Steffen Trumtrar Date: Fri, 30 Jun 2017 16:53:17 +0200 -Subject: libdt: support finding devices by partuuid +Subject: [PATCH dt-utils 2/3] libdt: support finding devices by partuuid Signed-off-by: Steffen Trumtrar +--- + src/libdt.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) diff --git a/src/libdt.c b/src/libdt.c -index 3adeed2..2bc6cc1 100644 +index 4638678..b52f80c 100644 --- a/src/libdt.c +++ b/src/libdt.c -@@ -2393,6 +2393,18 @@ int of_get_devicepath(struct device_node *partition_node, char **devpath, off_t +@@ -2416,6 +2416,18 @@ int of_get_devicepath(struct device_node *partition_node, char **devpath, off_t */ node = partition_node->parent; @@ -29,5 +35,5 @@ index 3adeed2..2bc6cc1 100644 * Respect flash "partitions" subnode. Use parent of parent in this * case. -- -cgit v0.10.2 +2.29.2 diff --git a/buildroot-external/board/intel/patches/dt-utils/0003-state-use-run-to-store-lockfile.patch b/buildroot-external/board/intel/patches/dt-utils/0003-state-use-run-to-store-lockfile.patch new file mode 100644 index 000000000..811fdc3c7 --- /dev/null +++ b/buildroot-external/board/intel/patches/dt-utils/0003-state-use-run-to-store-lockfile.patch @@ -0,0 +1,52 @@ +From 665603ecadb8385dd6c18840d3b0120859a00369 Mon Sep 17 00:00:00 2001 +Message-Id: <665603ecadb8385dd6c18840d3b0120859a00369.1606682453.git.stefan@agner.ch> +In-Reply-To: <4e9abe7945370765a9e8e88b01a7ef5f266bf7fd.1606682453.git.stefan@agner.ch> +References: <4e9abe7945370765a9e8e88b01a7ef5f266bf7fd.1606682453.git.stefan@agner.ch> +From: Stefan Agner +Date: Fri, 13 Nov 2020 10:39:03 +0100 +Subject: [PATCH dt-utils 3/3] state: use /run to store lockfile + +The current location /var/lock is considered legacy (at least by +systemd). Just use /run to store the lockfile and append the usual .lock +suffix. + +Signed-off-by: Stefan Agner +--- + src/barebox-state.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/src/barebox-state.c b/src/barebox-state.c +index 76f9c41..53e5eb6 100644 +--- a/src/barebox-state.c ++++ b/src/barebox-state.c +@@ -38,6 +38,8 @@ + #include
+ #include + ++#define BAREBOX_STATE_LOCKFILE "/run/barebox-state.lock" ++ + struct state_variable; + + static int __state_uint8_set(struct state_variable *var, const char *val); +@@ -515,15 +517,15 @@ int main(int argc, char *argv[]) + ++nr_states; + } + +- lock_fd = open("/var/lock/barebox-state", O_CREAT | O_RDWR, 0600); ++ lock_fd = open(BAREBOX_STATE_LOCKFILE, O_CREAT | O_RDWR, 0600); + if (lock_fd < 0) { +- pr_err("Failed to open lock-file /var/lock/barebox-state\n"); ++ pr_err("Failed to open lock-file " BAREBOX_STATE_LOCKFILE "\n"); + exit(1); + } + + ret = flock(lock_fd, LOCK_EX); + if (ret < 0) { +- pr_err("Failed to lock /var/lock/barebox-state: %m\n"); ++ pr_err("Failed to lock " BAREBOX_STATE_LOCKFILE ": %m\n"); + close(lock_fd); + exit(1); + } +-- +2.29.2 + diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0001-rpi-Use-CONFIG_OF_BOARD-instead-of-CONFIG_EMBED.patch b/buildroot-external/board/raspberrypi/patches/uboot/0001-rpi-Use-CONFIG_OF_BOARD-instead-of-CONFIG_EMBED.patch index 9435c5378..adb348e5c 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0001-rpi-Use-CONFIG_OF_BOARD-instead-of-CONFIG_EMBED.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0001-rpi-Use-CONFIG_OF_BOARD-instead-of-CONFIG_EMBED.patch @@ -1,8 +1,8 @@ From a04331a6ba7334282836bbaa76e979c4e6be3900 Mon Sep 17 00:00:00 2001 -Message-Id: +Message-Id: From: Pascal Vizeli Date: Tue, 10 Dec 2019 09:48:46 +0000 -Subject: [PATCH 01/15] rpi: Use CONFIG_OF_BOARD instead of CONFIG_EMBED +Subject: [PATCH 01/16] rpi: Use CONFIG_OF_BOARD instead of CONFIG_EMBED Signed-off-by: Pascal Vizeli --- diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0002-raspberrypi-Disable-simple-framebuffer-support.patch b/buildroot-external/board/raspberrypi/patches/uboot/0002-raspberrypi-Disable-simple-framebuffer-support.patch index 09a78954f..1fe95fc6e 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0002-raspberrypi-Disable-simple-framebuffer-support.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0002-raspberrypi-Disable-simple-framebuffer-support.patch @@ -1,10 +1,10 @@ From cc40a554b003df9b07f8a55f69a94d7393d81cbc Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +Message-Id: +In-Reply-To: +References: From: Florin Sarbu Date: Thu, 12 Sep 2019 12:31:31 +0200 -Subject: [PATCH 02/15] raspberrypi: Disable simple framebuffer support +Subject: [PATCH 02/16] raspberrypi: Disable simple framebuffer support On 4.19 kernels this u-boot driver clashes with bcm2708_fb. So let's disable it from here so that we have bcm2708_fb diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0003-rpi-force-a-smaller-amount-of-memory.patch b/buildroot-external/board/raspberrypi/patches/uboot/0003-rpi-force-a-smaller-amount-of-memory.patch index dbef8a146..4c1d87250 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0003-rpi-force-a-smaller-amount-of-memory.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0003-rpi-force-a-smaller-amount-of-memory.patch @@ -1,10 +1,10 @@ From b0895f2384712f3d0d89405c06519da195e9ccc9 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +Message-Id: +In-Reply-To: +References: From: Stefan Agner Date: Thu, 26 Nov 2020 17:56:01 +0100 -Subject: [PATCH 03/15] rpi: force a smaller amount of memory +Subject: [PATCH 03/16] rpi: force a smaller amount of memory This fixes booting from USB on 32-bit installations. It seems not to affect the detected memory or SD card boot negatively. diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0004-usb-xhci-convert-to-TRB_TYPE.patch b/buildroot-external/board/raspberrypi/patches/uboot/0004-usb-xhci-convert-to-TRB_TYPE.patch index ecc2a7b9b..0d983d46a 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0004-usb-xhci-convert-to-TRB_TYPE.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0004-usb-xhci-convert-to-TRB_TYPE.patch @@ -1,10 +1,10 @@ From 000f636c9ea4909a23119ba65d3a3847687c8c6b Mon Sep 17 00:00:00 2001 -Message-Id: <000f636c9ea4909a23119ba65d3a3847687c8c6b.1606428503.git.stefan@agner.ch> -In-Reply-To: -References: +Message-Id: <000f636c9ea4909a23119ba65d3a3847687c8c6b.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: From: Chunfeng Yun Date: Tue, 8 Sep 2020 18:59:59 +0200 -Subject: [PATCH 04/15] usb: xhci: convert to TRB_TYPE() +Subject: [PATCH 04/16] usb: xhci: convert to TRB_TYPE() Use TRB_TYPE(p) instead of ((p) << TRB_TYPE_SHIFT) diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0005-usb-xhci-use-macros-with-parameter-to-fill-ep_info2.patch b/buildroot-external/board/raspberrypi/patches/uboot/0005-usb-xhci-use-macros-with-parameter-to-fill-ep_info2.patch index df75b05a7..e067afb18 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0005-usb-xhci-use-macros-with-parameter-to-fill-ep_info2.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0005-usb-xhci-use-macros-with-parameter-to-fill-ep_info2.patch @@ -1,10 +1,10 @@ From bab3fd38c8eec5f3d12e41e706c02c79b4c4a21e Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +Message-Id: +In-Reply-To: +References: From: Chunfeng Yun Date: Tue, 8 Sep 2020 19:00:02 +0200 -Subject: [PATCH 05/15] usb: xhci: use macros with parameter to fill ep_info2 +Subject: [PATCH 05/16] usb: xhci: use macros with parameter to fill ep_info2 Use macros with parameter to fill ep_info2, then some macros for MASK and SHIFT can be removed diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-xhci_bulk_tx-Don-t-BUG-when-comparing-addre.patch b/buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-xhci_bulk_tx-Don-t-BUG-when-comparing-addre.patch new file mode 100644 index 000000000..299a10869 --- /dev/null +++ b/buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-xhci_bulk_tx-Don-t-BUG-when-comparing-addre.patch @@ -0,0 +1,40 @@ +From 0c4bf0c18097807364ee302effc0d0c7a32e4364 Mon Sep 17 00:00:00 2001 +Message-Id: <0c4bf0c18097807364ee302effc0d0c7a32e4364.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: +From: Stefan Roese +Date: Mon, 24 Aug 2020 13:04:37 +0200 +Subject: [PATCH 06/16] usb: xhci: xhci_bulk_tx: Don't "BUG" when comparing + addresses + +Octeon uses mapped addresses for virtual and physical memory. It's not +that easy to calculate the resulting addresses here. So let's remove +this BUG_ON() completely, as it's not really helpful. + +Please also note, that BUG_ON() is not recommended any more in the Linux +kernel. + +Signed-off-by: Stefan Roese +Reviewed-by: Bin Meng +Cc: Bin Meng +Cc: Marek Vasut +--- + drivers/usb/host/xhci-ring.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c +index a893277c75..d912cba2f4 100644 +--- a/drivers/usb/host/xhci-ring.c ++++ b/drivers/usb/host/xhci-ring.c +@@ -726,8 +726,6 @@ int xhci_bulk_tx(struct usb_device *udev, unsigned long pipe, + + BUG_ON(TRB_TO_SLOT_ID(field) != slot_id); + BUG_ON(TRB_TO_EP_INDEX(field) != ep_index); +- BUG_ON(*(void **)(uintptr_t)le64_to_cpu(event->trans_event.buffer) - +- buffer > (size_t)length); + + record_transfer_result(udev, event, length); + xhci_acknowledge_event(ctrl); +-- +2.29.2 + diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-avoid-type-conversion-of-void.patch b/buildroot-external/board/raspberrypi/patches/uboot/0007-usb-xhci-avoid-type-conversion-of-void.patch similarity index 89% rename from buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-avoid-type-conversion-of-void.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0007-usb-xhci-avoid-type-conversion-of-void.patch index 1e6b7b30c..eb35bcfe1 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0006-usb-xhci-avoid-type-conversion-of-void.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0007-usb-xhci-avoid-type-conversion-of-void.patch @@ -1,10 +1,10 @@ -From 8591faf0da31be68ea45fdc8a0485c0163a3eb52 Mon Sep 17 00:00:00 2001 -Message-Id: <8591faf0da31be68ea45fdc8a0485c0163a3eb52.1606428503.git.stefan@agner.ch> -In-Reply-To: -References: +From 99d6472fd9105c821582f069dfd151466bb5d263 Mon Sep 17 00:00:00 2001 +Message-Id: <99d6472fd9105c821582f069dfd151466bb5d263.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: From: Heinrich Schuchardt Date: Tue, 29 Sep 2020 22:03:01 +0200 -Subject: [PATCH 06/15] usb: xhci: avoid type conversion of void * +Subject: [PATCH 07/16] usb: xhci: avoid type conversion of void * void * can be assigned to any pointer variable. Avoid unnecessary conversions. diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0007-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch b/buildroot-external/board/raspberrypi/patches/uboot/0008-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch similarity index 95% rename from buildroot-external/board/raspberrypi/patches/uboot/0007-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0008-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch index 9eba7daea..d3763e1b1 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0007-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0008-mmc-sdhci-move-the-ADMA2-table-handling-into-own-mod.patch @@ -1,10 +1,10 @@ -From f12d0a67a79679641299b1b923883e62332ee6d4 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From 361a81dd4eb8c508c882484a69bf85c00570cfe8 Mon Sep 17 00:00:00 2001 +Message-Id: <361a81dd4eb8c508c882484a69bf85c00570cfe8.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: From: Michael Walle Date: Wed, 23 Sep 2020 12:42:51 +0200 -Subject: [PATCH 07/15] mmc: sdhci: move the ADMA2 table handling into own +Subject: [PATCH 08/16] mmc: sdhci: move the ADMA2 table handling into own module There are other (non-SDHCI) controllers which supports ADMA2 descriptor diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0008-rpi-Add-identifier-for-the-new-RPi400.patch b/buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-RPi400.patch similarity index 75% rename from buildroot-external/board/raspberrypi/patches/uboot/0008-rpi-Add-identifier-for-the-new-RPi400.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-RPi400.patch index 171ff4677..988fc3810 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0008-rpi-Add-identifier-for-the-new-RPi400.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-RPi400.patch @@ -1,10 +1,10 @@ -From 0ad1fdab7a52554d1da758b36917c09965495dd9 Mon Sep 17 00:00:00 2001 -Message-Id: <0ad1fdab7a52554d1da758b36917c09965495dd9.1606428503.git.stefan@agner.ch> -In-Reply-To: -References: +From 47206784cfd0100ea48b8ede65119687a4af8f09 Mon Sep 17 00:00:00 2001 +Message-Id: <47206784cfd0100ea48b8ede65119687a4af8f09.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:15 +0100 -Subject: [PATCH 08/15] rpi: Add identifier for the new RPi400 +Subject: [PATCH 09/16] rpi: Add identifier for the new RPi400 The Raspberry Pi Foundation released the new RPi400 which we want to detect, so we can enable Ethernet on it and know the correct device tree diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-CM4.patch b/buildroot-external/board/raspberrypi/patches/uboot/0010-rpi-Add-identifier-for-the-new-CM4.patch similarity index 75% rename from buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-CM4.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0010-rpi-Add-identifier-for-the-new-CM4.patch index 2aa1eec54..63b21666c 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0009-rpi-Add-identifier-for-the-new-CM4.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0010-rpi-Add-identifier-for-the-new-CM4.patch @@ -1,10 +1,10 @@ -From f9cb12f4cf902797987fea885fa186ba7d676aa0 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From aad1a59f4c8929f46b715e023aa19a224844c3a0 Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:16 +0100 -Subject: [PATCH 09/15] rpi: Add identifier for the new CM4 +Subject: [PATCH 10/16] rpi: Add identifier for the new CM4 The Raspberry Pi Foundation released the new Compute Module 4which we want to detect, so we can enable Ethernet on it and know the correct diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0010-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch b/buildroot-external/board/raspberrypi/patches/uboot/0011-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch similarity index 86% rename from buildroot-external/board/raspberrypi/patches/uboot/0010-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0011-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch index c007f53f0..8275b2a80 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0010-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0011-pci-pcie-brcmstb-Fix-inbound-window-configurations.patch @@ -1,10 +1,10 @@ -From c576988161912dfcb1bcd8b87640f5f998a87bf3 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From ed5a66c3f22d0f01c4f71371714af4180e65b37d Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:17 +0100 -Subject: [PATCH 10/15] pci: pcie-brcmstb: Fix inbound window configurations +Subject: [PATCH 11/16] pci: pcie-brcmstb: Fix inbound window configurations So far we've assumed a fixed configuration for inbound windows as we had a single user for this controller. But the controller's DMA constraints diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0011-dm-Introduce-xxx_get_dma_range.patch b/buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-xxx_get_dma_range.patch similarity index 96% rename from buildroot-external/board/raspberrypi/patches/uboot/0011-dm-Introduce-xxx_get_dma_range.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-xxx_get_dma_range.patch index 73b7b5bc7..8b4176b29 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0011-dm-Introduce-xxx_get_dma_range.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-xxx_get_dma_range.patch @@ -1,10 +1,10 @@ -From a2052b8361818ec5acb04e5d0c1d229083dfbeb6 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From 754d53fbedf5f97384f473f6f5a831aecae687f6 Mon Sep 17 00:00:00 2001 +Message-Id: <754d53fbedf5f97384f473f6f5a831aecae687f6.1607085588.git.stefan@agner.ch> +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:18 +0100 -Subject: [PATCH 11/15] dm: Introduce xxx_get_dma_range() +Subject: [PATCH 12/16] dm: Introduce xxx_get_dma_range() Add the follwing functions to get a specific device's DMA ranges: - dev_get_dma_range() diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch b/buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch similarity index 84% rename from buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch index 0f7f79f4d..756ec639d 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0012-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-DMA-constraints-into-the-core-device-mo.patch @@ -1,10 +1,10 @@ -From ea24a497a84cf0d1efb9c4f285d4d29bd69f3ebb Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From e286d6acbf158bc385d702aafcf1caa8da9ab8ee Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:19 +0100 -Subject: [PATCH 12/15] dm: Introduce DMA constraints into the core device +Subject: [PATCH 13/16] dm: Introduce DMA constraints into the core device model Calculating the DMA offset between a bus address space and CPU's every diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch b/buildroot-external/board/raspberrypi/patches/uboot/0014-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch similarity index 75% rename from buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0014-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch index 01dc4c9c1..e7b47aca2 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0013-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0014-dm-Introduce-dev_phys_to_bus-dev_bus_to_phys.patch @@ -1,10 +1,10 @@ -From 3f75e2303ddb7fa6eed6dc288880f613329ce3bb Mon Sep 17 00:00:00 2001 -Message-Id: <3f75e2303ddb7fa6eed6dc288880f613329ce3bb.1606428503.git.stefan@agner.ch> -In-Reply-To: -References: +From c5d66c3defc09d5dba273f430d871dd8f7ab6352 Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:20 +0100 -Subject: [PATCH 13/15] dm: Introduce dev_phys_to_bus()/dev_bus_to_phys() +Subject: [PATCH 14/16] dm: Introduce dev_phys_to_bus()/dev_bus_to_phys() These functions, instead of relying on hard-coded platform-specific address translations, make use of the DMA constraints provided by the DM diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0014-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch b/buildroot-external/board/raspberrypi/patches/uboot/0015-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch similarity index 96% rename from buildroot-external/board/raspberrypi/patches/uboot/0014-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0015-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch index e1e9efe85..f1ff72831 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0014-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0015-xhci-translate-virtual-addresses-into-the-bus-s-addr.patch @@ -1,10 +1,10 @@ -From e3c96fd50787aa9ea2e5136593166cc49696d7ea Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From edbdacb93fb0372ba456d84dc760314ed7757f86 Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:21 +0100 -Subject: [PATCH 14/15] xhci: translate virtual addresses into the bus's +Subject: [PATCH 15/16] xhci: translate virtual addresses into the bus's address space So far we've been content with passing physical addresses when @@ -191,7 +191,7 @@ index b002d6f166..e8d435d644 100644 /* diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c -index a893277c75..74deaabb9b 100644 +index d912cba2f4..3d4b84f9a1 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c @@ -275,10 +275,13 @@ void xhci_queue_command(struct xhci_ctrl *ctrl, u8 *ptr, u32 slot_id, @@ -227,7 +227,7 @@ index a893277c75..74deaabb9b 100644 debug("dev=%p, pipe=%lx, buffer=%p, length=%d\n", udev, pipe, buffer, length); -@@ -876,7 +879,7 @@ int xhci_ctrl_tx(struct usb_device *udev, unsigned long pipe, +@@ -874,7 +877,7 @@ int xhci_ctrl_tx(struct usb_device *udev, unsigned long pipe, if (length > 0) { if (req->requesttype & USB_DIR_IN) field |= TRB_DIR_IN; diff --git a/buildroot-external/board/raspberrypi/patches/uboot/0015-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch b/buildroot-external/board/raspberrypi/patches/uboot/0016-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch similarity index 86% rename from buildroot-external/board/raspberrypi/patches/uboot/0015-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch rename to buildroot-external/board/raspberrypi/patches/uboot/0016-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch index 59d656588..c7cdb42a9 100644 --- a/buildroot-external/board/raspberrypi/patches/uboot/0015-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch +++ b/buildroot-external/board/raspberrypi/patches/uboot/0016-mmc-Introduce-mmc_phys_to_bus-mmc_bus_to_phys.patch @@ -1,10 +1,10 @@ -From de9f878b9cc4ab665c6aa4e6bb14193c66f78816 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: -References: +From a92d8e7740d65859f5e08abe110fd9d37aebf4cd Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Nicolas Saenz Julienne Date: Thu, 19 Nov 2020 18:48:22 +0100 -Subject: [PATCH 15/15] mmc: Introduce mmc_phys_to_bus()/mmc_bus_to_phys() +Subject: [PATCH 16/16] mmc: Introduce mmc_phys_to_bus()/mmc_bus_to_phys() This will allow us to use DM variants of phys_to_bus()/bus_to_phys() when relevant. diff --git a/buildroot-external/busybox.config b/buildroot-external/busybox.config index 55f569b22..11513c874 100644 --- a/buildroot-external/busybox.config +++ b/buildroot-external/busybox.config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Busybox version: 1.32.0 -# Fri Nov 20 14:15:29 2020 +# Thu Dec 3 13:37:18 2020 # CONFIG_HAVE_DOT_CONFIG=y @@ -441,33 +441,33 @@ CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 # # Finding Utilities # -# CONFIG_FIND is not set -# CONFIG_FEATURE_FIND_PRINT0 is not set -# CONFIG_FEATURE_FIND_MTIME is not set -# CONFIG_FEATURE_FIND_MMIN is not set -# CONFIG_FEATURE_FIND_PERM is not set -# CONFIG_FEATURE_FIND_TYPE is not set -# CONFIG_FEATURE_FIND_EXECUTABLE is not set -# CONFIG_FEATURE_FIND_XDEV is not set -# CONFIG_FEATURE_FIND_MAXDEPTH is not set -# CONFIG_FEATURE_FIND_NEWER is not set -# CONFIG_FEATURE_FIND_INUM is not set -# CONFIG_FEATURE_FIND_EXEC is not set -# CONFIG_FEATURE_FIND_EXEC_PLUS is not set -# CONFIG_FEATURE_FIND_USER is not set -# CONFIG_FEATURE_FIND_GROUP is not set -# CONFIG_FEATURE_FIND_NOT is not set -# CONFIG_FEATURE_FIND_DEPTH is not set -# CONFIG_FEATURE_FIND_PAREN is not set -# CONFIG_FEATURE_FIND_SIZE is not set -# CONFIG_FEATURE_FIND_PRUNE is not set -# CONFIG_FEATURE_FIND_QUIT is not set -# CONFIG_FEATURE_FIND_DELETE is not set -# CONFIG_FEATURE_FIND_EMPTY is not set -# CONFIG_FEATURE_FIND_PATH is not set -# CONFIG_FEATURE_FIND_REGEX is not set +CONFIG_FIND=y +CONFIG_FEATURE_FIND_PRINT0=y +CONFIG_FEATURE_FIND_MTIME=y +CONFIG_FEATURE_FIND_MMIN=y +CONFIG_FEATURE_FIND_PERM=y +CONFIG_FEATURE_FIND_TYPE=y +CONFIG_FEATURE_FIND_EXECUTABLE=y +CONFIG_FEATURE_FIND_XDEV=y +CONFIG_FEATURE_FIND_MAXDEPTH=y +CONFIG_FEATURE_FIND_NEWER=y +CONFIG_FEATURE_FIND_INUM=y +CONFIG_FEATURE_FIND_EXEC=y +CONFIG_FEATURE_FIND_EXEC_PLUS=y +CONFIG_FEATURE_FIND_USER=y +CONFIG_FEATURE_FIND_GROUP=y +CONFIG_FEATURE_FIND_NOT=y +CONFIG_FEATURE_FIND_DEPTH=y +CONFIG_FEATURE_FIND_PAREN=y +CONFIG_FEATURE_FIND_SIZE=y +CONFIG_FEATURE_FIND_PRUNE=y +CONFIG_FEATURE_FIND_QUIT=y +CONFIG_FEATURE_FIND_DELETE=y +CONFIG_FEATURE_FIND_EMPTY=y +CONFIG_FEATURE_FIND_PATH=y +CONFIG_FEATURE_FIND_REGEX=y # CONFIG_FEATURE_FIND_CONTEXT is not set -# CONFIG_FEATURE_FIND_LINKS is not set +CONFIG_FEATURE_FIND_LINKS=y CONFIG_GREP=y # CONFIG_EGREP is not set # CONFIG_FGREP is not set @@ -589,13 +589,13 @@ CONFIG_DEFAULT_DEPMOD_FILE="" CONFIG_ACPID=y CONFIG_FEATURE_ACPID_COMPAT=y CONFIG_BLKDISCARD=y -CONFIG_BLKID=y +# CONFIG_BLKID is not set # CONFIG_FEATURE_BLKID_TYPE is not set -CONFIG_BLOCKDEV=y +# CONFIG_BLOCKDEV is not set CONFIG_CAL=y CONFIG_CHRT=y -CONFIG_DMESG=y -CONFIG_FEATURE_DMESG_PRETTY=y +# CONFIG_DMESG is not set +# CONFIG_FEATURE_DMESG_PRETTY is not set CONFIG_EJECT=y CONFIG_FEATURE_EJECT_SCSI=y CONFIG_FALLOCATE=y @@ -613,20 +613,20 @@ CONFIG_FEATURE_FBSET_READMODE=y # CONFIG_FEATURE_OSF_LABEL is not set # CONFIG_FEATURE_GPT_LABEL is not set # CONFIG_FEATURE_FDISK_ADVANCED is not set -CONFIG_FINDFS=y -CONFIG_FLOCK=y +# CONFIG_FINDFS is not set +# CONFIG_FLOCK is not set CONFIG_FDFLUSH=y CONFIG_FREERAMDISK=y -CONFIG_FSCK_MINIX=y -CONFIG_FSFREEZE=y -CONFIG_FSTRIM=y -CONFIG_GETOPT=y -CONFIG_FEATURE_GETOPT_LONG=y -CONFIG_HEXDUMP=y -CONFIG_FEATURE_HEXDUMP_REVERSE=y +# CONFIG_FSCK_MINIX is not set +# CONFIG_FSFREEZE is not set +# CONFIG_FSTRIM is not set +# CONFIG_GETOPT is not set +# CONFIG_FEATURE_GETOPT_LONG is not set +# CONFIG_HEXDUMP is not set +# CONFIG_FEATURE_HEXDUMP_REVERSE is not set # CONFIG_HD is not set # CONFIG_XXD is not set -# CONFIG_HWCLOCK is not set +CONFIG_HWCLOCK=y # CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set CONFIG_IONICE=y # CONFIG_IPCRM is not set @@ -655,14 +655,14 @@ CONFIG_LSUSB=y # CONFIG_MKSWAP is not set # CONFIG_FEATURE_MKSWAP_UUID is not set CONFIG_MORE=y -CONFIG_MOUNT=y -CONFIG_FEATURE_MOUNT_FAKE=y -CONFIG_FEATURE_MOUNT_VERBOSE=y +# CONFIG_MOUNT is not set +# CONFIG_FEATURE_MOUNT_FAKE is not set +# CONFIG_FEATURE_MOUNT_VERBOSE is not set # CONFIG_FEATURE_MOUNT_HELPERS is not set -CONFIG_FEATURE_MOUNT_LABEL=y +# CONFIG_FEATURE_MOUNT_LABEL is not set # CONFIG_FEATURE_MOUNT_NFS is not set # CONFIG_FEATURE_MOUNT_CIFS is not set -CONFIG_FEATURE_MOUNT_FLAGS=y +# CONFIG_FEATURE_MOUNT_FLAGS is not set # CONFIG_FEATURE_MOUNT_FSTAB is not set # CONFIG_FEATURE_MOUNT_OTHERTAB is not set # CONFIG_MOUNTPOINT is not set @@ -678,62 +678,54 @@ CONFIG_REV=y CONFIG_RTCWAKE=y CONFIG_SCRIPT=y CONFIG_SCRIPTREPLAY=y -CONFIG_SETARCH=y -CONFIG_LINUX32=y -CONFIG_LINUX64=y +# CONFIG_SETARCH is not set +# CONFIG_LINUX32 is not set +# CONFIG_LINUX64 is not set CONFIG_SETPRIV=y CONFIG_FEATURE_SETPRIV_DUMP=y CONFIG_FEATURE_SETPRIV_CAPABILITIES=y CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES=y CONFIG_SETSID=y -CONFIG_SWAPON=y -CONFIG_FEATURE_SWAPON_DISCARD=y -CONFIG_FEATURE_SWAPON_PRI=y -CONFIG_SWAPOFF=y -CONFIG_FEATURE_SWAPONOFF_LABEL=y +# CONFIG_SWAPON is not set +# CONFIG_FEATURE_SWAPON_DISCARD is not set +# CONFIG_FEATURE_SWAPON_PRI is not set +# CONFIG_SWAPOFF is not set +# CONFIG_FEATURE_SWAPONOFF_LABEL is not set CONFIG_SWITCH_ROOT=y CONFIG_TASKSET=y CONFIG_FEATURE_TASKSET_FANCY=y CONFIG_FEATURE_TASKSET_CPULIST=y CONFIG_UEVENT=y -CONFIG_UMOUNT=y -CONFIG_FEATURE_UMOUNT_ALL=y +# CONFIG_UMOUNT is not set +# CONFIG_FEATURE_UMOUNT_ALL is not set # CONFIG_UNSHARE is not set # CONFIG_WALL is not set - -# -# Common options for mount/umount -# -CONFIG_FEATURE_MOUNT_LOOP=y +# CONFIG_FEATURE_MOUNT_LOOP is not set # CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set # CONFIG_FEATURE_MTAB_SUPPORT is not set -CONFIG_VOLUMEID=y - -# -# Filesystem/Volume identification -# +# CONFIG_VOLUMEID is not set # CONFIG_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_FEATURE_VOLUMEID_CRAMFS is not set # CONFIG_FEATURE_VOLUMEID_EXFAT is not set -CONFIG_FEATURE_VOLUMEID_EXT=y +# CONFIG_FEATURE_VOLUMEID_EXT is not set # CONFIG_FEATURE_VOLUMEID_F2FS is not set -CONFIG_FEATURE_VOLUMEID_FAT=y +# CONFIG_FEATURE_VOLUMEID_FAT is not set # CONFIG_FEATURE_VOLUMEID_HFS is not set # CONFIG_FEATURE_VOLUMEID_ISO9660 is not set # CONFIG_FEATURE_VOLUMEID_JFS is not set # CONFIG_FEATURE_VOLUMEID_LFS is not set # CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set -CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y +# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set # CONFIG_FEATURE_VOLUMEID_LUKS is not set -CONFIG_FEATURE_VOLUMEID_MINIX=y +# CONFIG_FEATURE_VOLUMEID_MINIX is not set # CONFIG_FEATURE_VOLUMEID_NILFS is not set -CONFIG_FEATURE_VOLUMEID_NTFS=y +# CONFIG_FEATURE_VOLUMEID_NTFS is not set # CONFIG_FEATURE_VOLUMEID_OCFS2 is not set # CONFIG_FEATURE_VOLUMEID_REISERFS is not set # CONFIG_FEATURE_VOLUMEID_ROMFS is not set # CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set -CONFIG_FEATURE_VOLUMEID_SYSV=y +# CONFIG_FEATURE_VOLUMEID_SYSV is not set # CONFIG_FEATURE_VOLUMEID_UBIFS is not set # CONFIG_FEATURE_VOLUMEID_UDF is not set # CONFIG_FEATURE_VOLUMEID_XFS is not set @@ -814,8 +806,8 @@ CONFIG_FEATURE_LESS_MAXLINES=0 # CONFIG_MICROCOM is not set CONFIG_MIM=y # CONFIG_MT is not set -CONFIG_NANDWRITE=y -CONFIG_NANDDUMP=y +# CONFIG_NANDWRITE is not set +# CONFIG_NANDDUMP is not set # CONFIG_PARTPROBE is not set # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set @@ -828,13 +820,13 @@ CONFIG_STRINGS=y CONFIG_TIME=y CONFIG_TS=y CONFIG_TTYSIZE=y -CONFIG_UBIATTACH=y -CONFIG_UBIDETACH=y -CONFIG_UBIMKVOL=y -CONFIG_UBIRMVOL=y -CONFIG_UBIRSVOL=y -CONFIG_UBIUPDATEVOL=y -CONFIG_UBIRENAME=y +# CONFIG_UBIATTACH is not set +# CONFIG_UBIDETACH is not set +# CONFIG_UBIMKVOL is not set +# CONFIG_UBIRMVOL is not set +# CONFIG_UBIRSVOL is not set +# CONFIG_UBIUPDATEVOL is not set +# CONFIG_UBIRENAME is not set # CONFIG_VOLNAME is not set CONFIG_WATCHDOG=y diff --git a/buildroot-external/configs/intel_nuc_defconfig b/buildroot-external/configs/intel_nuc_defconfig index db791a537..e4990dafa 100644 --- a/buildroot-external/configs/intel_nuc_defconfig +++ b/buildroot-external/configs/intel_nuc_defconfig @@ -22,7 +22,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.80" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.82" BR2_LINUX_KERNEL_DEFCONFIG="x86_64" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc/kernel.config" BR2_LINUX_KERNEL_LZ4=y @@ -34,6 +34,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_LINUX_FIRMWARE=y diff --git a/buildroot-external/configs/odroid_c2_defconfig b/buildroot-external/configs/odroid_c2_defconfig index a428789f6..4bd2921c6 100644 --- a/buildroot-external/configs/odroid_c2_defconfig +++ b/buildroot-external/configs/odroid_c2_defconfig @@ -36,6 +36,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_CRDA=y diff --git a/buildroot-external/configs/odroid_c4_defconfig b/buildroot-external/configs/odroid_c4_defconfig index d9cd816a9..9ab9ebf91 100644 --- a/buildroot-external/configs/odroid_c4_defconfig +++ b/buildroot-external/configs/odroid_c4_defconfig @@ -2,7 +2,7 @@ BR2_aarch64=y BR2_DL_DIR="/cache/dl" BR2_CCACHE=y BR2_CCACHE_DIR="/cache/cc" -BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c4/patches" +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/patches" BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_GCC_VERSION_9_X=y BR2_OPTIMIZE_2=y @@ -36,6 +36,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_CRDA=y diff --git a/buildroot-external/configs/odroid_n2_defconfig b/buildroot-external/configs/odroid_n2_defconfig index 5d1b43e51..646599344 100644 --- a/buildroot-external/configs/odroid_n2_defconfig +++ b/buildroot-external/configs/odroid_n2_defconfig @@ -36,6 +36,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_CRDA=y diff --git a/buildroot-external/configs/odroid_xu4_defconfig b/buildroot-external/configs/odroid_xu4_defconfig index 4d038c7c0..a7eb04442 100644 --- a/buildroot-external/configs/odroid_xu4_defconfig +++ b/buildroot-external/configs/odroid_xu4_defconfig @@ -36,6 +36,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_LINUX_FIRMWARE=y diff --git a/buildroot-external/configs/ova_defconfig b/buildroot-external/configs/ova_defconfig index 9f593b3b0..570ca088e 100644 --- a/buildroot-external/configs/ova_defconfig +++ b/buildroot-external/configs/ova_defconfig @@ -23,7 +23,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.80" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.82" BR2_LINUX_KERNEL_DEFCONFIG="x86_64" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova/kernel.config" BR2_LINUX_KERNEL_LZ4=y @@ -35,6 +35,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_CRDA=y diff --git a/buildroot-external/configs/rpi0_w_defconfig b/buildroot-external/configs/rpi0_w_defconfig index 908208631..1dae58233 100644 --- a/buildroot-external/configs/rpi0_w_defconfig +++ b/buildroot-external/configs/rpi0_w_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_WIFI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi2_defconfig b/buildroot-external/configs/rpi2_defconfig index 68d73bca6..568f71179 100644 --- a/buildroot-external/configs/rpi2_defconfig +++ b/buildroot-external/configs/rpi2_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig index b2d4f090f..da9378405 100644 --- a/buildroot-external/configs/rpi3_64_defconfig +++ b/buildroot-external/configs/rpi3_64_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi3_defconfig b/buildroot-external/configs/rpi3_defconfig index 67bf6426e..0ad2e74c0 100644 --- a/buildroot-external/configs/rpi3_defconfig +++ b/buildroot-external/configs/rpi3_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig index 91bba4378..117b9b8af 100644 --- a/buildroot-external/configs/rpi4_64_defconfig +++ b/buildroot-external/configs/rpi4_64_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi4_defconfig b/buildroot-external/configs/rpi4_defconfig index cac392916..add7af347 100644 --- a/buildroot-external/configs/rpi4_defconfig +++ b/buildroot-external/configs/rpi4_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/rpi_defconfig b/buildroot-external/configs/rpi_defconfig index 5362abf72..1fdb1c01d 100644 --- a/buildroot-external/configs/rpi_defconfig +++ b/buildroot-external/configs/rpi_defconfig @@ -37,6 +37,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_RPI_FIRMWARE=y diff --git a/buildroot-external/configs/tinker_defconfig b/buildroot-external/configs/tinker_defconfig index 5d9b3c7e9..5a1eedc25 100644 --- a/buildroot-external/configs/tinker_defconfig +++ b/buildroot-external/configs/tinker_defconfig @@ -24,7 +24,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker $(BR2_EXTERNAL_HASSOS_PATH)/board/asus/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.80" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.82" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker/kernel.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config" @@ -38,6 +38,7 @@ BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_PROCPS_NG=y BR2_PACKAGE_JQ=y BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_E2IMAGE=y BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y BR2_PACKAGE_SQUASHFS=y BR2_PACKAGE_LINUX_FIRMWARE=y diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf index 3510d5475..faf6975fb 100644 --- a/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf +++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf @@ -9,3 +9,10 @@ unmanaged-devices=type:bridge;type:tun;type:veth [logging] backend=journal + +[connection] +connection.mdns=2 +connection.llmnr=2 + +[device] +wifi.scan-rand-mac-address=no diff --git a/buildroot-external/rootfs-overlay/etc/sysctl.d/10-printk.conf b/buildroot-external/rootfs-overlay/etc/sysctl.d/10-printk.conf new file mode 100644 index 000000000..0388d742e --- /dev/null +++ b/buildroot-external/rootfs-overlay/etc/sysctl.d/10-printk.conf @@ -0,0 +1,2 @@ +# Only show kernel errors +kernel.printk = 4 4 1 7 diff --git a/buildroot-external/rootfs-overlay/usr/bin/datactl b/buildroot-external/rootfs-overlay/usr/bin/datactl index adc024685..152b942f3 100755 --- a/buildroot-external/rootfs-overlay/usr/bin/datactl +++ b/buildroot-external/rootfs-overlay/usr/bin/datactl @@ -1,31 +1,74 @@ #!/bin/sh # ============================================================================== -# HassOS data partition handling +# Home Assistant OS data partition handling # ============================================================================== set -e -OPTION_FILE=/mnt/overlay/data.opt -DATA_DEVICE_CHILD="$(findfs LABEL="hassos-data")" +# Use current mount point. This avoids "Can't be the same disk!" error +# when using a drive which has been used as a data drive previously. +DATA_DEVICE_CHILD="$(findmnt --noheadings --output=source /mnt/data)" DATA_DEVICE_ROOT="/dev/$(lsblk -no pkname "${DATA_DEVICE_CHILD}")" +if [ "${DATA_DEVICE_ROOT}" = "" ]; then + echo "[ERROR] Data disk device not found!" + exit 1 +fi + # Move command if [ "${1}" = "move" ] && [ -e "${2}" ]; then - DEVICE="${2}" + NEW_DEVICE_ROOT="${2}" # Check device - if ! lsblk "${DEVICE}" | grep disk > /dev/null 2>&1; then + if ! lsblk "${NEW_DEVICE_ROOT}" | grep disk > /dev/null 2>&1; then echo "[ERROR] Is not disk!" exit 1 - elif [ "${DEVICE}" = "${DATA_DEVICE_ROOT}" ]; then + elif [ "${NEW_DEVICE_ROOT}" = "${DATA_DEVICE_ROOT}" ]; then echo "[ERROR] Can't be the same disk!" exit 1 fi # Flag device - echo "WARNING: ${DEVICE} will be reset on next restart!" - echo "Press a key to move forward" - read -r + echo "WARNING: All partitions on ${NEW_DEVICE_ROOT} will be deleted!" + printf "Enter \"yes\" to confirm: " + read -r confirm + if [ "${confirm}" != "yes" ]; then + echo "Aborting." + exit 1 + fi + + # Create GPT partition table with a single data partition + cat << EOF | sfdisk --wipe-partitions=always --wipe=always "${NEW_DEVICE_ROOT}" +label: gpt +uuid=a52a4597-fa3a-4851-aefd-2fbe9f849079, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, name=hassos-data-external +EOF + + # Since we create a new partition table etc. we are guaranteed the target + # partition is partition 1 + NEW_DEVICE_PART_SIZE=$(cat "/sys/class/block/$(basename "${NEW_DEVICE_ROOT}")1/size") + OLD_DEVICE_PART_SIZE=$(cat "/sys/class/block/$(basename "${DATA_DEVICE_CHILD}")/size") + + if [ "${NEW_DEVICE_PART_SIZE}" -lt "${OLD_DEVICE_PART_SIZE}" ]; then + echo "[INFO] Target device too small!" + echo "label: gpt" | sfdisk "${NEW_DEVICE_ROOT}" + exit 1 + fi + + touch "/mnt/overlay/move-data" + cat << EOF + +Disk ${NEW_DEVICE_ROOT} has been prepared to be used as data drive and the data +move has been scheduled for the next reboot. Please reboot the device now and +make sure to leave the disk connected to the system from now on. +EOF + +else + cat << EOF +Usage: datactl move + +Moves data partition to external device provided by (without partition +number). A new partition table and a partition for the complete device will be +created by datactl. +EOF - echo "${DEVICE}" > ${OPTION_FILE} fi diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system/hassos-data.service b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/hassos-data.service index 847ffe9c5..6f8b2136f 100644 --- a/buildroot-external/rootfs-overlay/usr/lib/systemd/system/hassos-data.service +++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system/hassos-data.service @@ -1,16 +1,17 @@ [Unit] -Description=HassOS data partition +Description=Home Assistant OS data partition migration DefaultDependencies=no RefuseManualStart=true RefuseManualStop=true Requires=mnt-overlay.mount dev-disk-by\x2dlabel-hassos\x2ddata.device Wants=hassos-expand.service -After=mnt-overlay.mount dev-disk-by\x2dlabel-hassos\x2ddata.device systemd-fsck@dev-disk-by\x2dlabel-hassos\x2ddata.service +After=mnt-overlay.mount dev-disk-by\x2dlabel-hassos\x2ddata.device systemd-fsck@dev-disk-by\x2dlabel-hassos\x2ddata.service dev-disk-by\x2dpartlabel-hassos\x2ddata\x2dexternal.device Before=hassos-expand.service -ConditionPathExists=/mnt/overlay/data.opt +ConditionPathExists=/mnt/overlay/move-data [Service] Type=oneshot +ExecStartPre=-/usr/bin/rm -f /mnt/overlay/move-data ExecStart=/usr/libexec/hassos-data [Install] diff --git a/buildroot-external/rootfs-overlay/usr/libexec/hassos-data b/buildroot-external/rootfs-overlay/usr/libexec/hassos-data index 874992586..671f779b5 100755 --- a/buildroot-external/rootfs-overlay/usr/libexec/hassos-data +++ b/buildroot-external/rootfs-overlay/usr/libexec/hassos-data @@ -1,83 +1,43 @@ #!/bin/sh -# shellcheck disable=SC2039 # ============================================================================== -# HassOS data partition handler +# Home Assistant OS data partition migration script # ============================================================================== set -e -OPTION_FILE=/mnt/overlay/data.opt +# Rely on systemd-udev symlinks to find current data partition by fs label +OLD_DEVICE_CHILD="$(readlink -f "/dev/disk/by-label/hassos-data")" -# New data partition exits -if ! [ -e "${OPTION_FILE}" ]; then - echo "[INFO] No data option found" - exit 0 -else - NEW_DEVICE_ROOT="$(cat ${OPTION_FILE})" - rm ${OPTION_FILE} -fi - -# Get device information -OLD_DEVICE_CHILD="$(findfs LABEL="hassos-data")" -OLD_DEVICE_ROOT="/dev/$(lsblk -no pkname "${OLD_DEVICE_CHILD}")" -OLD_PART_NUM="${OLD_DEVICE_CHILD: -1}" - -# Wait for devices -timeout 90 \ - ash -c \ - "until [ -e \"${NEW_DEVICE_ROOT}\" ]; do sleep 5; done" \ - > /dev/null 2>&1 || true; - -# Check if block device is exists -if [ ! -b "${NEW_DEVICE_ROOT}" ]; then - echo "[ERROR] No block device ${NEW_DEVICE_ROOT}!" - exit 1 -fi -echo "[INFO] Cleanup device ${NEW_DEVICE_ROOT}!" -sgdisk -Z "${NEW_DEVICE_ROOT}" - -# Create new partition -echo "[INFO] Create new hassos-data partition" -sgdisk -o "${NEW_DEVICE_ROOT}" -sgdisk \ - -n "0:0:0" \ - -c "0:hassos-data" \ - -t "0:0FC63DAF-8483-4772-8E79-3D69D8477DE4" \ - -u "0:a52a4597-fa3a-4851-aefd-2fbe9f849079" \ - "${NEW_DEVICE_ROOT}" -sgdisk -v "${NEW_DEVICE_ROOT}" -partx -u "${NEW_DEVICE_ROOT}" - -NEW_DEVICE_CHILD="$(fdisk -l "${NEW_DEVICE_ROOT}" | grep '^/dev' | cut -d' ' -f1 | head -n 1)" - -echo "[INFO] Move hassos-data from ${OLD_DEVICE_CHILD} to ${NEW_DEVICE_CHILD}" -if ! dd if="${OLD_DEVICE_CHILD}" of="${NEW_DEVICE_CHILD}" status=none; then - echo "[ERROR] Data copy fails!" - - # Reset new data partition - sgdisk -o "${NEW_DEVICE_ROOT}" - partx -u "${NEW_DEVICE_ROOT}" +# We cannot rely on systemd Wants/Requires since this is evaluated before +# ConditionPathExists, and would make us wait for an external device on +# every boot. +# Instead, just start the unit here, which makes sure a device with the +# partlabel "hassos-data-external" is present. +if ! systemctl start "dev-disk-by\\x2dpartlabel-hassos\\x2ddata\\x2dexternal.device"; then + echo "[ERROR] External data device ${NEW_DEVICE} not found!" exit 1 fi -echo "[INFO] Remove old hassos-data partition ${OLD_PART_NUM} / ${OLD_DEVICE_ROOT}" -if sfdisk -dq "${OLD_DEVICE_ROOT}" | grep -q 'label: gpt'; then - sgdisk -d "${OLD_PART_NUM}" "${OLD_DEVICE_ROOT}" - sgdisk -v "${OLD_DEVICE_ROOT}" +# Rely on systemd-udev symlinks to find external data partition by partlabel +NEW_DEVICE_CHILD="$(readlink -f "/dev/disk/by-partlabel/hassos-data-external")" -else - sfdisk --delete "${OLD_DEVICE_ROOT}" "${OLD_PART_NUM}" --force - sfdisk -V "${OLD_DEVICE_ROOT}" +NEW_DEVICE_PART_SIZE=$(cat "/sys/class/block/$(basename "${NEW_DEVICE_CHILD}")/size") +OLD_DEVICE_PART_SIZE=$(cat "/sys/class/block/$(basename "${OLD_DEVICE_CHILD}")/size") +if [ "${NEW_DEVICE_PART_SIZE}" -lt "${OLD_DEVICE_PART_SIZE}" ]; then + echo "[INFO] Target device too small!" + exit 1 fi -echo "[INFO] fix filesystem & layout" +echo "[INFO] Moving data from ${OLD_DEVICE_CHILD} to ${NEW_DEVICE_CHILD}" +if ! e2image -ra -p "${OLD_DEVICE_CHILD}" "${NEW_DEVICE_CHILD}"; then + echo "[ERROR] Copying data partition to external device failed!" + # Rename partition to make sure HAOS does not try to mount a failed copy attempt. + e2label "${NEW_DEVICE_CHILD}" hassos-data-failed || true + exit 1 +fi -# Fix filesystem -e2fsck -y "${NEW_DEVICE_CHILD}" -resize2fs -f "${NEW_DEVICE_CHILD}" +# At this point we have two partition with the same fs label. Make sure +# to rename the internal partition so we won't mount it anymore. +echo "[INFO] Rename old hassos-data partition ${OLD_DEVICE_CHILD}" +e2label "${OLD_DEVICE_CHILD}" hassos-data-old -# Fix partition layout -partx -d "${OLD_DEVICE_CHILD}" -partx -u "${OLD_DEVICE_ROOT}" -partx -u "${NEW_DEVICE_ROOT}" - -echo "[INFO] Finish hassos data movement" +echo "[INFO] Data move has been completed successfully" diff --git a/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli b/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli index ddfbca0df..6748febd6 100755 --- a/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli +++ b/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli @@ -10,6 +10,11 @@ if [ "${TERM}" = "vt220" ] || [ "${TERM}" = "vt102" ] || \ fi # Run CLI container +if [ ! "$(findmnt /mnt/data)" ]; then + echo "[WARN] Data partition not mounted! Jump into emergency console..." + exec /bin/ash -l +fi + if [ "$(docker ps -q -f name=hassio_cli)" ]; then docker container exec \ -ti hassio_cli \ @@ -21,7 +26,7 @@ if [ "$(docker ps -q -f name=hassio_cli)" ]; then fi else echo "[WARN] Home Assistant CLI is not running! Jump into emergency console..." - /bin/ash -l + exec /bin/ash -l fi exit diff --git a/buildroot-patches/0001-Docker-AppArmor-support.patch b/buildroot-patches/0001-Docker-AppArmor-support.patch deleted file mode 100644 index 79a1400d9..000000000 --- a/buildroot-patches/0001-Docker-AppArmor-support.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 8aa12f1835721959d0d1999fceee632404f28366 Mon Sep 17 00:00:00 2001 -Message-Id: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -From: Pascal Vizeli -Date: Mon, 13 Jan 2020 12:27:06 +0000 -Subject: [PATCH 1/7] Docker: AppArmor support - -Signed-off-by: Pascal Vizeli ---- - package/docker-containerd/docker-containerd.mk | 1 + - package/docker-engine/docker-engine.mk | 2 +- - package/runc/runc.mk | 2 +- - 3 files changed, 3 insertions(+), 2 deletions(-) - -diff --git a/package/docker-containerd/docker-containerd.mk b/package/docker-containerd/docker-containerd.mk -index 71f9b4c065..e4a4105018 100644 ---- a/package/docker-containerd/docker-containerd.mk -+++ b/package/docker-containerd/docker-containerd.mk -@@ -17,6 +17,7 @@ DOCKER_CONTAINERD_LDFLAGS = \ - DOCKER_CONTAINERD_BUILD_TARGETS = cmd/ctr cmd/containerd cmd/containerd-shim - - DOCKER_CONTAINERD_INSTALL_BINS = containerd containerd-shim -+DOCKER_CONTAINERD_TAGS = apparmor - - ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) - DOCKER_CONTAINERD_DEPENDENCIES += libseccomp host-pkgconf -diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk -index 8cedf307ba..370cfdbaee 100644 ---- a/package/docker-engine/docker-engine.mk -+++ b/package/docker-engine/docker-engine.mk -@@ -17,7 +17,7 @@ DOCKER_ENGINE_LDFLAGS = \ - -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ - -X main.Version=$(DOCKER_ENGINE_VERSION) - --DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen -+DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen apparmor - DOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd - - ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) -diff --git a/package/runc/runc.mk b/package/runc/runc.mk -index 3d177d23d5..d9e953c640 100644 ---- a/package/runc/runc.mk -+++ b/package/runc/runc.mk -@@ -10,7 +10,7 @@ RUNC_LICENSE = Apache-2.0 - RUNC_LICENSE_FILES = LICENSE - - RUNC_LDFLAGS = -X main.gitCommit=$(RUNC_VERSION) --RUNC_TAGS = cgo static_build -+RUNC_TAGS = cgo static_build apparmor - - ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) - RUNC_TAGS += seccomp --- -2.29.2 - diff --git a/buildroot-patches/0001-docker-add-AppArmor-support.patch b/buildroot-patches/0001-docker-add-AppArmor-support.patch new file mode 100644 index 000000000..70d07a3c4 --- /dev/null +++ b/buildroot-patches/0001-docker-add-AppArmor-support.patch @@ -0,0 +1,65 @@ +From dd83e231779b8daaeaa0a78d6686b80eeb49c12b Mon Sep 17 00:00:00 2001 +Message-Id: +From: Pascal Vizeli +Date: Mon, 13 Jan 2020 12:27:06 +0000 +Subject: [PATCH 1/7] docker: add AppArmor support + +Signed-off-by: Pascal Vizeli +Signed-off-by: Stefan Agner +--- + package/docker-containerd/docker-containerd.mk | 5 +++++ + package/docker-engine/docker-engine.mk | 5 +++++ + package/runc/runc.mk | 5 +++++ + 3 files changed, 15 insertions(+) + +diff --git a/package/docker-containerd/docker-containerd.mk b/package/docker-containerd/docker-containerd.mk +index d9a0eb28a6..c68e3818a8 100644 +--- a/package/docker-containerd/docker-containerd.mk ++++ b/package/docker-containerd/docker-containerd.mk +@@ -18,6 +18,11 @@ DOCKER_CONTAINERD_BUILD_TARGETS = cmd/ctr cmd/containerd cmd/containerd-shim + + DOCKER_CONTAINERD_INSTALL_BINS = containerd containerd-shim + ++ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) ++DOCKER_CONTAINERD_DEPENDENCIES += libapparmor ++DOCKER_CONTAINERD_TAGS += apparmor ++endif ++ + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) + DOCKER_CONTAINERD_DEPENDENCIES += libseccomp host-pkgconf + DOCKER_CONTAINERD_TAGS += seccomp +diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk +index 8cedf307ba..7f898680b7 100644 +--- a/package/docker-engine/docker-engine.mk ++++ b/package/docker-engine/docker-engine.mk +@@ -20,6 +20,11 @@ DOCKER_ENGINE_LDFLAGS = \ + DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen + DOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd + ++ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) ++DOCKER_ENGINE_DEPENDENCIES += libapparmor ++DOCKER_ENGINE_TAGS += apparmor ++endif ++ + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) + DOCKER_ENGINE_TAGS += seccomp + DOCKER_ENGINE_DEPENDENCIES += libseccomp +diff --git a/package/runc/runc.mk b/package/runc/runc.mk +index 3d177d23d5..c559244e83 100644 +--- a/package/runc/runc.mk ++++ b/package/runc/runc.mk +@@ -12,6 +12,11 @@ RUNC_LICENSE_FILES = LICENSE + RUNC_LDFLAGS = -X main.gitCommit=$(RUNC_VERSION) + RUNC_TAGS = cgo static_build + ++ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) ++RUNC_DEPENDENCIES += libapparmor ++RUNC_TAGS += apparmor ++endif ++ + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) + RUNC_TAGS += seccomp + RUNC_DEPENDENCIES += libseccomp host-pkgconf +-- +2.29.2 + diff --git a/buildroot-patches/0002-rpi-firmware-Bump-firmware.patch b/buildroot-patches/0002-rpi-firmware-Bump-firmware.patch index 267a90dbd..5a8e4e63a 100644 --- a/buildroot-patches/0002-rpi-firmware-Bump-firmware.patch +++ b/buildroot-patches/0002-rpi-firmware-Bump-firmware.patch @@ -1,7 +1,7 @@ -From 05fa58fbff93719044a9d1bb9e7c82d67068e346 Mon Sep 17 00:00:00 2001 -Message-Id: <05fa58fbff93719044a9d1bb9e7c82d67068e346.1605131156.git.stefan@agner.ch> -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From 7c7198d6075748a5f831c0068441695455d06e6f Mon Sep 17 00:00:00 2001 +Message-Id: <7c7198d6075748a5f831c0068441695455d06e6f.1607000394.git.stefan@agner.ch> +In-Reply-To: +References: From: Pascal Vizeli Date: Thu, 16 Apr 2020 11:51:46 +0000 Subject: [PATCH 2/7] rpi-firmware: Bump firmware diff --git a/buildroot-patches/0003-network-manager-wpa_supplicant.patch b/buildroot-patches/0003-network-manager-wpa_supplicant.patch index ed5ff5fa8..8cd8ea8bd 100644 --- a/buildroot-patches/0003-network-manager-wpa_supplicant.patch +++ b/buildroot-patches/0003-network-manager-wpa_supplicant.patch @@ -1,7 +1,7 @@ -From d1f588ab003b001079b6fab1cfd5d43401989b3b Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From 506a2a77b2967f911f93a3941bfbdfe9f6acfa77 Mon Sep 17 00:00:00 2001 +Message-Id: <506a2a77b2967f911f93a3941bfbdfe9f6acfa77.1607000394.git.stefan@agner.ch> +In-Reply-To: +References: From: Pascal Vizeli Date: Thu, 16 Apr 2020 14:32:45 +0000 Subject: [PATCH 3/7] network-manager: wpa_supplicant diff --git a/buildroot-patches/0004-Fix-dhcp-client.patch b/buildroot-patches/0004-Fix-dhcp-client.patch index df419cb06..696c4b946 100644 --- a/buildroot-patches/0004-Fix-dhcp-client.patch +++ b/buildroot-patches/0004-Fix-dhcp-client.patch @@ -1,7 +1,7 @@ -From fe8fec1b597f65938376451c7cf84a462c492fd9 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From ad1b1c5ef75626ae0fc735473034ca1b571dc281 Mon Sep 17 00:00:00 2001 +Message-Id: +In-Reply-To: +References: From: Pascal Vizeli Date: Thu, 16 Apr 2020 12:01:44 +0000 Subject: [PATCH 4/7] Fix dhcp client diff --git a/buildroot-patches/0005-rpi-use-latest-wifi-driver.patch b/buildroot-patches/0005-rpi-use-latest-wifi-driver.patch index c5da38c90..7723f1519 100644 --- a/buildroot-patches/0005-rpi-use-latest-wifi-driver.patch +++ b/buildroot-patches/0005-rpi-use-latest-wifi-driver.patch @@ -1,7 +1,7 @@ -From baba5ba468fe84e1a85818dd5a2a111e1391d822 Mon Sep 17 00:00:00 2001 -Message-Id: -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From 51babd578150f840311099d54abf8ea39b2127e6 Mon Sep 17 00:00:00 2001 +Message-Id: <51babd578150f840311099d54abf8ea39b2127e6.1607000394.git.stefan@agner.ch> +In-Reply-To: +References: From: Pascal Vizeli Date: Thu, 16 Apr 2020 12:05:21 +0000 Subject: [PATCH 5/7] rpi: use latest wifi driver diff --git a/buildroot-patches/0006-ODROID-XU4-video-firmware.patch b/buildroot-patches/0006-ODROID-XU4-video-firmware.patch index d44dea7dd..5c07d8dfa 100644 --- a/buildroot-patches/0006-ODROID-XU4-video-firmware.patch +++ b/buildroot-patches/0006-ODROID-XU4-video-firmware.patch @@ -1,7 +1,7 @@ -From 502b35edadbac3d51c3f37b4c74917ffff6f1332 Mon Sep 17 00:00:00 2001 -Message-Id: <502b35edadbac3d51c3f37b4c74917ffff6f1332.1605131156.git.stefan@agner.ch> -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From 4526121b86b259e426766c4ba35b2911b2c0965c Mon Sep 17 00:00:00 2001 +Message-Id: <4526121b86b259e426766c4ba35b2911b2c0965c.1607000394.git.stefan@agner.ch> +In-Reply-To: +References: From: Stefan Agner Date: Wed, 11 Nov 2020 22:16:10 +0100 Subject: [PATCH 6/7] ODROID-XU4: video firmware @@ -12,7 +12,7 @@ Subject: [PATCH 6/7] ODROID-XU4: video firmware 2 files changed, 12 insertions(+) diff --git a/package/linux-firmware/Config.in b/package/linux-firmware/Config.in -index 9b999034da..d3b7a2b79b 100644 +index 105daf42b8..109af152f8 100644 --- a/package/linux-firmware/Config.in +++ b/package/linux-firmware/Config.in @@ -44,6 +44,12 @@ config BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO @@ -29,7 +29,7 @@ index 9b999034da..d3b7a2b79b 100644 menu "Bluetooth firmware" diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk -index d9ad942903..5474377a36 100644 +index 8808b5284c..f1c84a134d 100644 --- a/package/linux-firmware/linux-firmware.mk +++ b/package/linux-firmware/linux-firmware.mk @@ -39,6 +39,12 @@ LINUX_FIRMWARE_FILES += qcom/a* diff --git a/buildroot-patches/0007-docker-proxy-Bump-version.patch b/buildroot-patches/0007-docker-proxy-Bump-version.patch index 826e78fd9..ccf3b2544 100644 --- a/buildroot-patches/0007-docker-proxy-Bump-version.patch +++ b/buildroot-patches/0007-docker-proxy-Bump-version.patch @@ -1,7 +1,7 @@ -From 14cd8a7e9eec46e0cdd243db17827335de2803c5 Mon Sep 17 00:00:00 2001 -Message-Id: <14cd8a7e9eec46e0cdd243db17827335de2803c5.1605131156.git.stefan@agner.ch> -In-Reply-To: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> -References: <8aa12f1835721959d0d1999fceee632404f28366.1605131156.git.stefan@agner.ch> +From 0feaec5aace7006f2a4afbb8d69541acac0842e4 Mon Sep 17 00:00:00 2001 +Message-Id: <0feaec5aace7006f2a4afbb8d69541acac0842e4.1607000394.git.stefan@agner.ch> +In-Reply-To: +References: From: Pascal Vizeli Date: Thu, 7 May 2020 09:02:05 +0000 Subject: [PATCH 7/7] docker-proxy: Bump version diff --git a/buildroot/CHANGES b/buildroot/CHANGES index 45c7ecc12..3894193d3 100644 --- a/buildroot/CHANGES +++ b/buildroot/CHANGES @@ -1,3 +1,16 @@ +2020.11, released December 2nd, 2020 + + Various fixes. + + Updated/fixed packages: bustle, docker-containerd, gnuplot, + gst1-plugins-good, jemalloc, kmsxx, libcap, libplist, + libuhttpd, libxkbcommon, lynx, mariadb, netsurf, privoxy, + s390-tools, setserial, xserver_xorg-server + + Issues resolved (http://bugs.uclibc.org): + + #13276: libcap builds libcap.pc incorrectly + 2020.11-rc3, released November 28th, 2020 Fixes all over the tree. diff --git a/buildroot/Makefile b/buildroot/Makefile index 5105cd07f..34237a212 100644 --- a/buildroot/Makefile +++ b/buildroot/Makefile @@ -92,9 +92,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2020.11-rc3 +export BR2_VERSION := 2020.11 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1606558000 +BR2_VERSION_EPOCH = 1606948000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) diff --git a/buildroot/docs/manual/manual.html b/buildroot/docs/manual/manual.html index b3e1d9d42..d01120cc3 100644 --- a/buildroot/docs/manual/manual.html +++ b/buildroot/docs/manual/manual.html @@ -1,8 +1,8 @@ -The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Details about packages
8.9. Graphing the dependencies between packages
8.10. Graphing the build duration
8.11. Graphing the filesystem size contribution of packages
8.12. Top-level parallel build
8.13. Integration with Eclipse
8.14. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Using SELinux in Buildroot
10.1. Enabling SELinux support
10.2. SELinux policy tweaking
11. Frequently Asked Questions & Troubleshooting
11.1. The boot hangs after Starting network…
11.2. Why is there no compiler on the target?
11.3. Why are there no development files on the target?
11.4. Why is there no documentation on the target?
11.5. Why are some packages not visible in the Buildroot config menu?
11.6. Why not use the target directory as a chroot directory?
11.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
11.8. How to speed-up the build process?
12. Known issues
13. Legal notice and licensing
13.1. Complying with open source licenses
13.2. Complying with the Buildroot license
14. Beyond Buildroot
14.1. Boot the generated images
14.2. Chroot
III. Developer guide
15. How Buildroot works
16. Coding style
16.1. Config.in file
16.2. The .mk file
16.3. The documentation
16.4. Support scripts
17. Adding support for a particular board
18. Adding new packages to Buildroot
18.1. Package directory
18.2. Config files
18.3. The .mk file
18.4. The .hash file
18.5. Infrastructure for packages with specific build systems
18.6. Infrastructure for autotools-based packages
18.7. Infrastructure for CMake-based packages
18.8. Infrastructure for Python packages
18.9. Infrastructure for LuaRocks-based packages
18.10. Infrastructure for Perl/CPAN packages
18.11. Infrastructure for virtual packages
18.12. Infrastructure for packages using kconfig for configuration files
18.13. Infrastructure for rebar-based packages
18.14. Infrastructure for Waf-based packages
18.15. Infrastructure for Meson-based packages
18.16. Integration of Cargo-based packages
18.17. Infrastructure for Go packages
18.18. Infrastructure for QMake-based packages
18.19. Infrastructure for packages building kernel modules
18.20. Infrastructure for asciidoc documents
18.21. Infrastructure specific to the Linux kernel package
18.22. Hooks available in the various build steps
18.23. Gettext integration and interaction with packages
18.24. Tips and tricks
18.25. Conclusion
19. Patching a package
19.1. Providing patches
19.2. How patches are applied
19.3. Format and licensing of the package patches
19.4. Integrating patches found on the Web
20. Download infrastructure
21. Debugging Buildroot
22. Contributing to Buildroot
22.1. Reproducing, analyzing and fixing bugs
22.2. Analyzing and fixing autobuild failures
22.3. Reviewing and testing patches
22.4. Work on items from the TODO list
22.5. Submitting patches
22.6. Reporting issues/bugs or getting help
22.7. Using the run-tests framework
23. DEVELOPERS file and get-developers
24. Release Engineering
24.1. Releases
24.2. Development
IV. Appendix
25. Makedev syntax documentation
26. Makeusers syntax documentation
27. Migrating from older Buildroot versions
27.1. Migrating to 2016.11
27.2. Migrating to 2017.08

Buildroot 2020.11-rc3 manual generated on 2020-11-28 -10:11:19 UTC from git revision a418d0ac51

The Buildroot manual is written by the Buildroot developers. +The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Details about packages
8.9. Graphing the dependencies between packages
8.10. Graphing the build duration
8.11. Graphing the filesystem size contribution of packages
8.12. Top-level parallel build
8.13. Integration with Eclipse
8.14. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Using SELinux in Buildroot
10.1. Enabling SELinux support
10.2. SELinux policy tweaking
11. Frequently Asked Questions & Troubleshooting
11.1. The boot hangs after Starting network…
11.2. Why is there no compiler on the target?
11.3. Why are there no development files on the target?
11.4. Why is there no documentation on the target?
11.5. Why are some packages not visible in the Buildroot config menu?
11.6. Why not use the target directory as a chroot directory?
11.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
11.8. How to speed-up the build process?
12. Known issues
13. Legal notice and licensing
13.1. Complying with open source licenses
13.2. Complying with the Buildroot license
14. Beyond Buildroot
14.1. Boot the generated images
14.2. Chroot
III. Developer guide
15. How Buildroot works
16. Coding style
16.1. Config.in file
16.2. The .mk file
16.3. The documentation
16.4. Support scripts
17. Adding support for a particular board
18. Adding new packages to Buildroot
18.1. Package directory
18.2. Config files
18.3. The .mk file
18.4. The .hash file
18.5. Infrastructure for packages with specific build systems
18.6. Infrastructure for autotools-based packages
18.7. Infrastructure for CMake-based packages
18.8. Infrastructure for Python packages
18.9. Infrastructure for LuaRocks-based packages
18.10. Infrastructure for Perl/CPAN packages
18.11. Infrastructure for virtual packages
18.12. Infrastructure for packages using kconfig for configuration files
18.13. Infrastructure for rebar-based packages
18.14. Infrastructure for Waf-based packages
18.15. Infrastructure for Meson-based packages
18.16. Integration of Cargo-based packages
18.17. Infrastructure for Go packages
18.18. Infrastructure for QMake-based packages
18.19. Infrastructure for packages building kernel modules
18.20. Infrastructure for asciidoc documents
18.21. Infrastructure specific to the Linux kernel package
18.22. Hooks available in the various build steps
18.23. Gettext integration and interaction with packages
18.24. Tips and tricks
18.25. Conclusion
19. Patching a package
19.1. Providing patches
19.2. How patches are applied
19.3. Format and licensing of the package patches
19.4. Integrating patches found on the Web
20. Download infrastructure
21. Debugging Buildroot
22. Contributing to Buildroot
22.1. Reproducing, analyzing and fixing bugs
22.2. Analyzing and fixing autobuild failures
22.3. Reviewing and testing patches
22.4. Work on items from the TODO list
22.5. Submitting patches
22.6. Reporting issues/bugs or getting help
22.7. Using the run-tests framework
23. DEVELOPERS file and get-developers
24. Release Engineering
24.1. Releases
24.2. Development
IV. Appendix
25. Makedev syntax documentation
26. Makeusers syntax documentation
27. Migrating from older Buildroot versions
27.1. Migrating to 2016.11
27.2. Migrating to 2017.08

Buildroot 2020.11 manual generated on 2020-12-02 +22:28:59 UTC from git revision 9624a001f9

The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the -COPYING +COPYING file in the Buildroot sources for the full text of this license.

Copyright © 2004-2020 The Buildroot developers

logo.png

Part I. Getting started

Chapter 1. About Buildroot

Buildroot is a tool that simplifies and automates the process of building a complete Linux system for an embedded system, using cross-compilation.

In order to achieve this, Buildroot is able to generate a diff --git a/buildroot/docs/manual/manual.pdf b/buildroot/docs/manual/manual.pdf index e60ed4617..56f54f84f 100644 Binary files a/buildroot/docs/manual/manual.pdf and b/buildroot/docs/manual/manual.pdf differ diff --git a/buildroot/docs/manual/manual.text b/buildroot/docs/manual/manual.text index 13bbcd8fc..b77db9051 100644 --- a/buildroot/docs/manual/manual.text +++ b/buildroot/docs/manual/manual.text @@ -174,13 +174,13 @@ List of Examples --------------------------------------------------------------------- -Buildroot 2020.11-rc3 manual generated on 2020-11-28 10:11:23 UTC -from git revision a418d0ac51 +Buildroot 2020.11 manual generated on 2020-12-02 22:29:04 UTC from +git revision 9624a001f9 The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id= -a418d0ac51e192adc54300f16b46b12a42b2b117] file in the Buildroot +9624a001f9d4314f8bcc9219df717d4c41fb5373] file in the Buildroot sources for the full text of this license. Copyright © 2004-2020 The Buildroot developers diff --git a/buildroot/docs/website/download.html b/buildroot/docs/website/download.html index beebbbea9..b971db39b 100644 --- a/buildroot/docs/website/download.html +++ b/buildroot/docs/website/download.html @@ -42,40 +42,40 @@

-

Latest stable release: 2020.08.2

+

Latest stable release: 2020.11

- + This and earlier releases (and their PGP signatures) can always be downloaded from http://buildroot.net/downloads/.
diff --git a/buildroot/docs/website/news.html b/buildroot/docs/website/news.html index f15637c3b..d2b5cbe06 100644 --- a/buildroot/docs/website/news.html +++ b/buildroot/docs/website/news.html @@ -9,6 +9,24 @@

News

    +
  • +
    +
    +
    +

    2020.11 released

    +

    2 December 2020

    +
    +
    +

    The stable 2020.11 release is out - Thanks to everyone + contributing and testing the release candidates. See the + CHANGES + file for more details + and go to the downloads page to pick up the + 2020.11 release.

    +
    +
    +
  • +
  • diff --git a/buildroot/package/binutils/Config.in.host b/buildroot/package/binutils/Config.in.host index b690b952d..89c6894a1 100644 --- a/buildroot/package/binutils/Config.in.host +++ b/buildroot/package/binutils/Config.in.host @@ -39,7 +39,7 @@ config BR2_BINUTILS_VERSION_2_35_X depends on !BR2_BINFMT_FLAT config BR2_BINUTILS_VERSION_ARC - bool "binutils arc (2.31)" + bool "binutils arc (2.34.50)" depends on BR2_arc config BR2_BINUTILS_VERSION_CSKY diff --git a/buildroot/package/bustle/bustle.mk b/buildroot/package/bustle/bustle.mk index 675ffb052..1dbad64ae 100644 --- a/buildroot/package/bustle/bustle.mk +++ b/buildroot/package/bustle/bustle.mk @@ -6,7 +6,7 @@ BUSTLE_VERSION = 0.7.5 BUSTLE_SITE = https://www.freedesktop.org/software/bustle/$(BUSTLE_VERSION) -BUSTLE_LICENSE = LGPL-2.1+ +BUSTLE_LICENSE = LGPL-2.1+, GPL-3.0 (binaries) BUSTLE_LICENSE_FILES = LICENSE BUSTLE_DEPENDENCIES = libglib2 libpcap host-pkgconf diff --git a/buildroot/package/docker-containerd/docker-containerd.hash b/buildroot/package/docker-containerd/docker-containerd.hash index 2ec3d042b..c5cfc137b 100644 --- a/buildroot/package/docker-containerd/docker-containerd.hash +++ b/buildroot/package/docker-containerd/docker-containerd.hash @@ -1,3 +1,3 @@ # Computed locally -sha256 d410b8efc94e4124990f01de7107223971be8c9258fc651decf9e0ba648485b5 docker-containerd-1.4.1.tar.gz +sha256 bc6d9452c700af0ebc09c0da8ddba55be4c03ac8928e72ca92d98905800c8018 docker-containerd-1.4.3.tar.gz sha256 4bbe3b885e8cd1907ab4cf9a41e862e74e24b5422297a4f2fe524e6a30ada2b4 LICENSE diff --git a/buildroot/package/docker-containerd/docker-containerd.mk b/buildroot/package/docker-containerd/docker-containerd.mk index e4a410501..c68e3818a 100644 --- a/buildroot/package/docker-containerd/docker-containerd.mk +++ b/buildroot/package/docker-containerd/docker-containerd.mk @@ -4,7 +4,7 @@ # ################################################################################ -DOCKER_CONTAINERD_VERSION = 1.4.1 +DOCKER_CONTAINERD_VERSION = 1.4.3 DOCKER_CONTAINERD_SITE = $(call github,containerd,containerd,v$(DOCKER_CONTAINERD_VERSION)) DOCKER_CONTAINERD_LICENSE = Apache-2.0 DOCKER_CONTAINERD_LICENSE_FILES = LICENSE @@ -17,7 +17,11 @@ DOCKER_CONTAINERD_LDFLAGS = \ DOCKER_CONTAINERD_BUILD_TARGETS = cmd/ctr cmd/containerd cmd/containerd-shim DOCKER_CONTAINERD_INSTALL_BINS = containerd containerd-shim -DOCKER_CONTAINERD_TAGS = apparmor + +ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) +DOCKER_CONTAINERD_DEPENDENCIES += libapparmor +DOCKER_CONTAINERD_TAGS += apparmor +endif ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) DOCKER_CONTAINERD_DEPENDENCIES += libseccomp host-pkgconf diff --git a/buildroot/package/docker-engine/docker-engine.mk b/buildroot/package/docker-engine/docker-engine.mk index 370cfdbae..7f898680b 100644 --- a/buildroot/package/docker-engine/docker-engine.mk +++ b/buildroot/package/docker-engine/docker-engine.mk @@ -17,9 +17,14 @@ DOCKER_ENGINE_LDFLAGS = \ -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ -X main.Version=$(DOCKER_ENGINE_VERSION) -DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen apparmor +DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen DOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd +ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) +DOCKER_ENGINE_DEPENDENCIES += libapparmor +DOCKER_ENGINE_TAGS += apparmor +endif + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) DOCKER_ENGINE_TAGS += seccomp DOCKER_ENGINE_DEPENDENCIES += libseccomp diff --git a/buildroot/package/gcc/Config.in.host b/buildroot/package/gcc/Config.in.host index 10688ff56..2ed159314 100644 --- a/buildroot/package/gcc/Config.in.host +++ b/buildroot/package/gcc/Config.in.host @@ -9,7 +9,7 @@ choice Select the version of gcc you wish to use. config BR2_GCC_VERSION_ARC - bool "gcc arc (9.x)" + bool "gcc arc (10.x)" # Only supported architecture depends on BR2_arc select BR2_TOOLCHAIN_GCC_AT_LEAST_9 diff --git a/buildroot/package/gcc/arc-2020.09-release/0001-arc-Refurbish-adc-sbc-patterns.patch b/buildroot/package/gcc/arc-2020.09-release/0001-arc-Refurbish-adc-sbc-patterns.patch new file mode 100644 index 000000000..3292b26a4 --- /dev/null +++ b/buildroot/package/gcc/arc-2020.09-release/0001-arc-Refurbish-adc-sbc-patterns.patch @@ -0,0 +1,243 @@ +From b92c22b144d063c4436a6693045ceb57d344c495 Mon Sep 17 00:00:00 2001 +From: Claudiu Zissulescu +Date: Wed, 11 Nov 2020 12:31:10 +0200 +Subject: [PATCH] arc: Refurbish adc/sbc patterns + +The adc/sbc patterns were unecessary spliting, remove that and +associated functions. + +gcc/ChangeLog: + +2020-10-11 Claudiu Zissulescu + + * config/arc/arc-protos.h (arc_scheduling_not_expected): Remove + it. + (arc_sets_cc_p): Likewise. + (arc_need_delay): Likewise. + * config/arc/arc.c (arc_sets_cc_p): Likewise. + (arc_need_delay): Likewise. + (arc_scheduling_not_expected): Likewise. + * config/arc/arc.md: Convert adc/sbc patterns to simple + instruction definitions. + +Signed-off-by: Claudiu Zissulescu + +Downloaded from upstream commit +https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/commit/b92c22b144d063c4436a6693045ceb57d344c495 + +Signed-off-by: Bernd Kuhls +--- + gcc/config/arc/arc-protos.h | 3 -- + gcc/config/arc/arc.c | 53 --------------------- + gcc/config/arc/arc.md | 95 +++++++++++-------------------------- + 3 files changed, 29 insertions(+), 122 deletions(-) + +diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h +index c72d78e3b9e..de4cf47c818 100644 +--- a/gcc/config/arc/arc-protos.h ++++ b/gcc/config/arc/arc-protos.h +@@ -90,10 +90,7 @@ extern void split_subsi (rtx *); + extern void arc_split_move (rtx *); + extern const char *arc_short_long (rtx_insn *insn, const char *, const char *); + extern rtx arc_regno_use_in (unsigned int, rtx); +-extern bool arc_scheduling_not_expected (void); +-extern bool arc_sets_cc_p (rtx_insn *insn); + extern int arc_label_align (rtx_insn *label); +-extern bool arc_need_delay (rtx_insn *insn); + extern bool arc_text_label (rtx_insn *insn); + + extern bool arc_short_comparison_p (rtx, int); +diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c +index 5a7b0cb6696..c3ee9181f93 100644 +--- a/gcc/config/arc/arc.c ++++ b/gcc/config/arc/arc.c +@@ -10341,59 +10341,6 @@ arc_attr_type (rtx_insn *insn) + return get_attr_type (insn); + } + +-/* Return true if insn sets the condition codes. */ +- +-bool +-arc_sets_cc_p (rtx_insn *insn) +-{ +- if (NONJUMP_INSN_P (insn)) +- if (rtx_sequence *seq = dyn_cast (PATTERN (insn))) +- insn = seq->insn (seq->len () - 1); +- return arc_attr_type (insn) == TYPE_COMPARE; +-} +- +-/* Return true if INSN is an instruction with a delay slot we may want +- to fill. */ +- +-bool +-arc_need_delay (rtx_insn *insn) +-{ +- rtx_insn *next; +- +- if (!flag_delayed_branch) +- return false; +- /* The return at the end of a function needs a delay slot. */ +- if (NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) == USE +- && (!(next = next_active_insn (insn)) +- || ((!NONJUMP_INSN_P (next) || GET_CODE (PATTERN (next)) != SEQUENCE) +- && arc_attr_type (next) == TYPE_RETURN)) +- && (!TARGET_PAD_RETURN +- || (prev_active_insn (insn) +- && prev_active_insn (prev_active_insn (insn)) +- && prev_active_insn (prev_active_insn (prev_active_insn (insn)))))) +- return true; +- if (NONJUMP_INSN_P (insn) +- ? (GET_CODE (PATTERN (insn)) == USE +- || GET_CODE (PATTERN (insn)) == CLOBBER +- || GET_CODE (PATTERN (insn)) == SEQUENCE) +- : JUMP_P (insn) +- ? (GET_CODE (PATTERN (insn)) == ADDR_VEC +- || GET_CODE (PATTERN (insn)) == ADDR_DIFF_VEC) +- : !CALL_P (insn)) +- return false; +- return num_delay_slots (insn) != 0; +-} +- +-/* Return true if the scheduling pass(es) has/have already run, +- i.e. where possible, we should try to mitigate high latencies +- by different instruction selection. */ +- +-bool +-arc_scheduling_not_expected (void) +-{ +- return cfun->machine->arc_reorg_started; +-} +- + /* Code has a minimum p2 alignment of 1, which we must restore after + an ADDR_DIFF_VEC. */ + +diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md +index f91adbc0d94..c635b69ddd5 100644 +--- a/gcc/config/arc/arc.md ++++ b/gcc/config/arc/arc.md +@@ -2847,43 +2847,25 @@ archs4x, archs4xd" + (set_attr "type" "compare") + (set_attr "length" "4,4,8")]) + +-; w/c/c comes first (rather than w/0/C_0) to prevent the middle-end +-; needlessly prioritizing the matching constraint. +-; Rcw/0/C_0 comes before w/c/L so that the lower latency conditional +-; execution is used where possible. +-(define_insn_and_split "adc" +- [(set (match_operand:SI 0 "dest_reg_operand" "=w,Rcw,w,Rcw,w") +- (plus:SI (plus:SI (ltu:SI (reg:CC_C CC_REG) (const_int 0)) +- (match_operand:SI 1 "nonmemory_operand" +- "%c,0,c,0,cCal")) +- (match_operand:SI 2 "nonmemory_operand" "c,C_0,L,I,cCal")))] ++(define_insn "adc" ++ [(set (match_operand:SI 0 "register_operand" "=r, r,r,r, r,r") ++ (plus:SI ++ (plus:SI ++ (ltu:SI (reg:CC_C CC_REG) (const_int 0)) ++ (match_operand:SI 1 "nonmemory_operand" "%r, 0,r,0,Cal,r")) ++ (match_operand:SI 2 "nonmemory_operand" "r,C_0,L,I, r,Cal")))] + "register_operand (operands[1], SImode) + || register_operand (operands[2], SImode)" + "@ +- adc %0,%1,%2 +- add.cs %0,%1,1 +- adc %0,%1,%2 +- adc %0,%1,%2 +- adc %0,%1,%2" +- ; if we have a bad schedule after sched2, split. +- "reload_completed +- && !optimize_size && (!TARGET_ARC600_FAMILY) +- && arc_scheduling_not_expected () +- && arc_sets_cc_p (prev_nonnote_insn (insn)) +- /* If next comes a return or other insn that needs a delay slot, +- expect the adc to get into the delay slot. */ +- && next_nonnote_insn (insn) +- && !arc_need_delay (next_nonnote_insn (insn)) +- /* Restore operands before emitting. */ +- && (extract_insn_cached (insn), 1)" +- [(set (match_dup 0) (match_dup 3)) +- (cond_exec +- (ltu (reg:CC_C CC_REG) (const_int 0)) +- (set (match_dup 0) (plus:SI (match_dup 0) (const_int 1))))] +- "operands[3] = simplify_gen_binary (PLUS, SImode, operands[1], operands[2]);" ++ adc\\t%0,%1,%2 ++ add.cs\\t%0,%1,1 ++ adc\\t%0,%1,%2 ++ adc\\t%0,%1,%2 ++ adc\\t%0,%1,%2 ++ adc\\t%0,%1,%2" + [(set_attr "cond" "use") + (set_attr "type" "cc_arith") +- (set_attr "length" "4,4,4,4,8")]) ++ (set_attr "length" "4,4,4,4,8,8")]) + + ; combiner-splitter cmp / scc -> cmp / adc + (define_split +@@ -3015,7 +2997,7 @@ archs4x, archs4xd" + DONE; + } + emit_insn (gen_sub_f (l0, l1, l2)); +- emit_insn (gen_sbc (h0, h1, h2, gen_rtx_REG (CCmode, CC_REG))); ++ emit_insn (gen_sbc (h0, h1, h2)); + DONE; + ") + +@@ -3030,44 +3012,25 @@ archs4x, archs4xd" + (set_attr "type" "cc_arith") + (set_attr "length" "4")]) + +-; w/c/c comes first (rather than Rcw/0/C_0) to prevent the middle-end +-; needlessly prioritizing the matching constraint. +-; Rcw/0/C_0 comes before w/c/L so that the lower latency conditional execution +-; is used where possible. +-(define_insn_and_split "sbc" +- [(set (match_operand:SI 0 "dest_reg_operand" "=w,Rcw,w,Rcw,w") +- (minus:SI (minus:SI (match_operand:SI 1 "nonmemory_operand" +- "c,0,c,0,cCal") +- (ltu:SI (match_operand:CC_C 3 "cc_use_register") +- (const_int 0))) +- (match_operand:SI 2 "nonmemory_operand" "c,C_0,L,I,cCal")))] ++(define_insn "sbc" ++ [(set (match_operand:SI 0 "dest_reg_operand" "=r,r,r,r,r,r") ++ (minus:SI ++ (minus:SI ++ (match_operand:SI 1 "nonmemory_operand" "r, 0,r,0, r,Cal") ++ (ltu:SI (reg:CC_C CC_REG) (const_int 0))) ++ (match_operand:SI 2 "nonmemory_operand" "r,C_0,L,I,Cal,r")))] + "register_operand (operands[1], SImode) + || register_operand (operands[2], SImode)" + "@ +- sbc %0,%1,%2 +- sub.cs %0,%1,1 +- sbc %0,%1,%2 +- sbc %0,%1,%2 +- sbc %0,%1,%2" +- ; if we have a bad schedule after sched2, split. +- "reload_completed +- && !optimize_size && (!TARGET_ARC600_FAMILY) +- && arc_scheduling_not_expected () +- && arc_sets_cc_p (prev_nonnote_insn (insn)) +- /* If next comes a return or other insn that needs a delay slot, +- expect the adc to get into the delay slot. */ +- && next_nonnote_insn (insn) +- && !arc_need_delay (next_nonnote_insn (insn)) +- /* Restore operands before emitting. */ +- && (extract_insn_cached (insn), 1)" +- [(set (match_dup 0) (match_dup 4)) +- (cond_exec +- (ltu (reg:CC_C CC_REG) (const_int 0)) +- (set (match_dup 0) (plus:SI (match_dup 0) (const_int -1))))] +- "operands[4] = simplify_gen_binary (MINUS, SImode, operands[1], operands[2]);" ++ sbc\\t%0,%1,%2 ++ sub.cs\\t%0,%1,1 ++ sbc\\t%0,%1,%2 ++ sbc\\t%0,%1,%2 ++ sbc\\t%0,%1,%2 ++ sbc\\t%0,%1,%2" + [(set_attr "cond" "use") + (set_attr "type" "cc_arith") +- (set_attr "length" "4,4,4,4,8")]) ++ (set_attr "length" "4,4,4,4,8,8")]) + + (define_insn "sub_f" + [(set (reg:CC CC_REG) diff --git a/buildroot/package/gnuplot/0002-without-history.patch b/buildroot/package/gnuplot/0002-without-history.patch deleted file mode 100644 index 6091da841..000000000 --- a/buildroot/package/gnuplot/0002-without-history.patch +++ /dev/null @@ -1,17 +0,0 @@ -history.c: Patch to solve the 'undefined reference to gp_read_history' - -Signed-off-by: Michael Fischer - -diff -purN gnuplot-5.4.0.org/src/history.c gnuplot-5.4.0/src/history.c ---- gnuplot-5.4.0.org/src/history.c 2019-12-10 07:22:32.000000000 +0100 -+++ gnuplot-5.4.0/src/history.c 2020-09-14 10:07:36.525441702 +0200 -@@ -91,7 +91,9 @@ write_history(char *filename) - void - read_history(char *filename) - { -- gp_read_history(filename); -+#ifdef GNUPLOT_HISTORY -+ gp_read_history(filename); -+#endif - } - diff --git a/buildroot/package/gnuplot/gnuplot.hash b/buildroot/package/gnuplot/gnuplot.hash index 260b78314..9770185c2 100644 --- a/buildroot/package/gnuplot/gnuplot.hash +++ b/buildroot/package/gnuplot/gnuplot.hash @@ -1,6 +1,6 @@ -# From https://sourceforge.net/projects/gnuplot/files/gnuplot/5.4.0/ -md5 ac586178f3b031dea82cd3890cefb21b gnuplot-5.4.0.tar.gz -sha1 b4660dff7d047a453c55fd77faba11f63bb2d5ed gnuplot-5.4.0.tar.gz +# From https://sourceforge.net/projects/gnuplot/files/gnuplot/5.4.1/ +md5 80f75b684f1175d36cd6908ff1ceb588 gnuplot-5.4.1.tar.gz +sha1 bb1cd34f8ec0357eccef70122f0fd531ced5dd29 gnuplot-5.4.1.tar.gz # Locally computed -sha256 eb4082f03a399fd1e9e2b380cf7a4f785e77023d8dcc7e17570c1b5570a49c47 gnuplot-5.4.0.tar.gz +sha256 6b690485567eaeb938c26936e5e0681cf70c856d273cc2c45fabf64d8bc6590e gnuplot-5.4.1.tar.gz sha256 895928ec0735cca1c8cec42656c7e314a065d0242813bb8693c0c1bf61fd4e4d Copyright diff --git a/buildroot/package/gnuplot/gnuplot.mk b/buildroot/package/gnuplot/gnuplot.mk index ef9ef2ac6..746831275 100644 --- a/buildroot/package/gnuplot/gnuplot.mk +++ b/buildroot/package/gnuplot/gnuplot.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPLOT_VERSION = 5.4.0 +GNUPLOT_VERSION = 5.4.1 GNUPLOT_SITE = http://downloads.sourceforge.net/project/gnuplot/gnuplot/$(GNUPLOT_VERSION) GNUPLOT_LICENSE = gnuplot license (open source) GNUPLOT_LICENSE_FILES = Copyright diff --git a/buildroot/package/gstreamer1/gst1-plugins-good/Config.in b/buildroot/package/gstreamer1/gst1-plugins-good/Config.in index 4dcf26766..67df206ee 100644 --- a/buildroot/package/gstreamer1/gst1-plugins-good/Config.in +++ b/buildroot/package/gstreamer1/gst1-plugins-good/Config.in @@ -279,6 +279,7 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_QMLGL bool "qmlgl (qt5)" depends on BR2_PACKAGE_QT5 depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5declarative + depends on BR2_PACKAGE_GST1_PLUGINS_BASE_HAS_LIB_OPENGL select BR2_PACKAGE_QT5BASE_WIDGETS select BR2_PACKAGE_QT5DECLARATIVE select BR2_PACKAGE_QT5DECLARATIVE_QUICK @@ -286,6 +287,9 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_QMLGL help QT5 plugin which includes elements qmlglsrc and qmlglsink +comment "qmlgl (qt5) needs the gst1-plugins-base opengl library" + depends on !BR2_PACKAGE_GST1_PLUGINS_BASE_HAS_LIB_OPENGL + config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SHOUT2 bool "shout2" select BR2_PACKAGE_LIBSHOUT diff --git a/buildroot/package/jemalloc/jemalloc.mk b/buildroot/package/jemalloc/jemalloc.mk index aedc1f04b..e43a4f790 100644 --- a/buildroot/package/jemalloc/jemalloc.mk +++ b/buildroot/package/jemalloc/jemalloc.mk @@ -10,6 +10,7 @@ JEMALLOC_SITE = https://github.com/jemalloc/jemalloc/releases/download/$(JEMALLO JEMALLOC_LICENSE = BSD-2-Clause JEMALLOC_LICENSE_FILES = COPYING JEMALLOC_INSTALL_STAGING = YES +JEMALLOC_CONFIG_SCRIPTS = jemalloc-config # gcc bug internal compiler error: in merge_overlapping_regs, at # regrename.c:304. This bug is fixed since gcc 6. diff --git a/buildroot/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch b/buildroot/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch new file mode 100644 index 000000000..3febac40e --- /dev/null +++ b/buildroot/package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch @@ -0,0 +1,27 @@ +From f7ee1e8c96ffbfc645487e483b928d250a7e79ec Mon Sep 17 00:00:00 2001 +From: Tobias Off +Date: Thu, 8 Oct 2020 22:37:55 +0200 +Subject: [PATCH] added #include to card.h to follow gcc10 porting + guide + +[Upstream: https://github.com/tomba/kmsxx/commit/b53f9d383c9189a897c44cd88a8fc1b871fdc8a2.patch] +Signed-off-by: Peter Seiderer +--- + kms++/inc/kms++/card.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/kms++/inc/kms++/card.h b/kms++/inc/kms++/card.h +index 90ad1f6..f055e27 100644 +--- a/kms++/inc/kms++/card.h ++++ b/kms++/inc/kms++/card.h +@@ -3,6 +3,7 @@ + #include + #include + #include ++#include + + #include "decls.h" + #include "pipeline.h" +-- +2.29.2 + diff --git a/buildroot/package/libcap/libcap.mk b/buildroot/package/libcap/libcap.mk index 2b80a3cb7..7bb8f5767 100644 --- a/buildroot/package/libcap/libcap.mk +++ b/buildroot/package/libcap/libcap.mk @@ -19,6 +19,8 @@ LIBCAP_MAKE_FLAGS = \ CROSS_COMPILE="$(TARGET_CROSS)" \ BUILD_CC="$(HOSTCC)" \ BUILD_CFLAGS="$(HOST_CFLAGS)" \ + lib=lib \ + prefix=/usr \ SHARED=$(if $(BR2_STATIC_LIBS),,yes) \ PTHREADS=$(if $(BR2_TOOLCHAIN_HAS_THREADS),yes,) @@ -38,27 +40,31 @@ endef define LIBCAP_INSTALL_STAGING_CMDS $(foreach d,$(LIBCAP_MAKE_DIRS), \ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \ - DESTDIR=$(STAGING_DIR) prefix=/usr lib=lib install + DESTDIR=$(STAGING_DIR) install ) endef define LIBCAP_INSTALL_TARGET_CMDS $(foreach d,$(LIBCAP_MAKE_DIRS), \ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \ - DESTDIR=$(TARGET_DIR) prefix=/usr lib=lib install + DESTDIR=$(TARGET_DIR) install ) endef +HOST_LIBCAP_MAKE_FLAGS = \ + DYNAMIC=yes \ + GOLANG=no \ + lib=lib \ + prefix=$(HOST_DIR) \ + RAISE_SETFCAP=no + define HOST_LIBCAP_BUILD_CMDS - $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)\ - DYNAMIC=yes \ - RAISE_SETFCAP=no GOLANG=no + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(HOST_LIBCAP_MAKE_FLAGS) endef define HOST_LIBCAP_INSTALL_CMDS - $(HOST_MAKE_ENV) $(MAKE) -C $(@D) prefix=$(HOST_DIR) \ - DYNAMIC=yes \ - RAISE_SETFCAP=no GOLANG=no lib=lib install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBCAP_MAKE_FLAGS) install endef $(eval $(generic-package)) diff --git a/buildroot/package/libplist/libplist.hash b/buildroot/package/libplist/libplist.hash index 9934ad05e..58054d0b8 100644 --- a/buildroot/package/libplist/libplist.hash +++ b/buildroot/package/libplist/libplist.hash @@ -1,4 +1,3 @@ # Locally calculated sha256 4b33f9af3f9208d54a3c3e1a8c149932513f451c98d1dd696fe42c06e30b7f03 libplist-2.1.0.tar.gz sha256 7619c753cac95d4740220223bde48a032606fcaccde5e546f9bc444c81ab356d COPYING -sha256 7619c753cac95d4740220223bde48a032606fcaccde5e546f9bc444c81ab356d COPYING diff --git a/buildroot/package/libuhttpd/0001-src-CMakeLists.txt-fix-static-build-with-a-zlib-and-.patch b/buildroot/package/libuhttpd/0001-src-CMakeLists.txt-fix-static-build-with-a-zlib-and-.patch new file mode 100644 index 000000000..289ed1aae --- /dev/null +++ b/buildroot/package/libuhttpd/0001-src-CMakeLists.txt-fix-static-build-with-a-zlib-and-.patch @@ -0,0 +1,51 @@ +From 0c2d85450e3eb77dfbe11e8612a5131c5f3f3938 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 1 Dec 2020 20:39:54 +0100 +Subject: [PATCH] src/CMakeLists.txt: fix static build with a zlib and mbedtls + +Static build with a zlib-enabled mbedtls fails on: + +[100%] Linking C executable example +/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/arm-buildroot-uclinux-uclibcgnueabi/bin/ld.real: /home/buildroot/autobuild/instance-3/output-1/host/arm-buildroot-uclinux-uclibcgnueabi/sysroot/usr/lib/libmbedtls.a(ssl_tls.c.o): in function `mbedtls_ssl_transform_free.part.24': +ssl_tls.c:(.text+0xbc6): undefined reference to `deflateEnd' + +As mbedtls does not provide a pkg-config file, search for zlib and link +with it if necessary + +Fixes: + - http://autobuild.buildroot.org/results/5891d12e90182460cde1ddfa0ca75e9fd55e3dff + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/zhaojh329/libuhttpd/pull/13] +--- + src/CMakeLists.txt | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 132f243..f00fc8f 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -57,6 +57,7 @@ else() + endif() + find_package(WolfSSL) + find_package(MbedTLS) ++ find_package(ZLIB) + + if(UHTTPD_USE_OPENSSL) + if (NOT OPENSSL_FOUND) +@@ -97,7 +98,11 @@ else() + elseif(UHTTPD_USE_MBEDTLS) + set(SSL_NAME "MbedTLS(PolarSSL)") + set(SSL_INC ${MBEDTLS_INCLUDE_DIR}) +- set(SSL_LIB ${MBEDTLS_LIBRARIES}) ++ if(ZLIB_FOUND) ++ set(SSL_LIB ${MBEDTLS_LIBRARIES} ${ZLIB_LIBRARIES}) ++ else() ++ set(SSL_LIB ${MBEDTLS_LIBRARIES}) ++ endif() + set(UHTTPD_HAVE_MBEDTLS_CONFIG 1) + endif() + +-- +2.29.2 + diff --git a/buildroot/package/libxkbcommon/libxkbcommon.hash b/buildroot/package/libxkbcommon/libxkbcommon.hash index 1725eaecf..77bb20c3e 100644 --- a/buildroot/package/libxkbcommon/libxkbcommon.hash +++ b/buildroot/package/libxkbcommon/libxkbcommon.hash @@ -1,5 +1,5 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2020-November/041659.html -sha256 0ea2f88f4472bbf8170c5a7112f5af8848a908ca15df9e9086c3de0189612b2b libxkbcommon-1.0.2.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2020-November/041660.html +sha256 a2202f851e072b84e64a395212cbd976ee18a8ee602008b0bad02a13247dbc52 libxkbcommon-1.0.3.tar.xz # License file: sha256 086caee279449369d41c1157911ec7696e707b93feba7280de757d3c470b2dfb LICENSE diff --git a/buildroot/package/libxkbcommon/libxkbcommon.mk b/buildroot/package/libxkbcommon/libxkbcommon.mk index cce5c0273..b592cd99d 100644 --- a/buildroot/package/libxkbcommon/libxkbcommon.mk +++ b/buildroot/package/libxkbcommon/libxkbcommon.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXKBCOMMON_VERSION = 1.0.2 +LIBXKBCOMMON_VERSION = 1.0.3 LIBXKBCOMMON_SITE = http://xkbcommon.org/download LIBXKBCOMMON_SOURCE = libxkbcommon-$(LIBXKBCOMMON_VERSION).tar.xz LIBXKBCOMMON_LICENSE = MIT/X11 diff --git a/buildroot/package/lynx/lynx.mk b/buildroot/package/lynx/lynx.mk index 07a3ddfcf..d115682d6 100644 --- a/buildroot/package/lynx/lynx.mk +++ b/buildroot/package/lynx/lynx.mk @@ -12,6 +12,13 @@ LYNX_LICENSE_FILES = COPYING LYNX_DEPENDENCIES = host-pkgconf $(TARGET_NLS_DEPENDENCIES) +ifeq ($(BR2_REPRODUCIBLE),y) +# configuration info leaks build paths +LYNX_CONF_OPTS += --disable-config-info +# disable build timestamp +LYNX_CFLAGS += -DNO_BUILDSTAMP +endif + ifeq ($(BR2_PACKAGE_NCURSES),y) LYNX_DEPENDENCIES += ncurses LYNX_CONF_OPTS += --with-screen=ncurses$(if $(BR2_PACKAGE_NCURSES_WCHAR),w) @@ -41,6 +48,6 @@ LYNX_DEPENDENCIES += libidn LYNX_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libidn` endif -LYNX_CONF_ENV = LIBS="$(LYNX_LIBS)" +LYNX_CONF_ENV = LIBS="$(LYNX_LIBS)" CFLAGS="$(TARGET_CFLAGS) $(LYNX_CFLAGS)" $(eval $(autotools-package)) diff --git a/buildroot/package/mariadb/mariadb.hash b/buildroot/package/mariadb/mariadb.hash index 9de97360a..a210dd9da 100644 --- a/buildroot/package/mariadb/mariadb.hash +++ b/buildroot/package/mariadb/mariadb.hash @@ -1,8 +1,6 @@ -# From https://downloads.mariadb.org/mariadb/10.3.23 -md5 473950893d29805d9384ec0ed5d7c276 mariadb-10.3.23.tar.gz -sha1 c95b6d4cff5e6d63eed05da20561802b9c83e717 mariadb-10.3.23.tar.gz -sha256 fc405022457d8eec5991b870cc1c9a07b83b551d6165c414c4d8f31523aa86ae mariadb-10.3.23.tar.gz -sha512 535cd2ce80a95b6c0a1aa559cc3275dfcd559c3a4f958fab3382923190a16e6bc5b4ad79acaa518244512ff618568c239c0edef8a701d958362ede19a29c2986 mariadb-10.3.23.tar.gz +# From https://downloads.mariadb.org/mariadb/10.3.27 +sha256 0dadc1650ab2ff40caab58210e93b106ae1e3d1a82e5b0fd92c795b8b43e4619 mariadb-10.3.27.tar.gz +sha512 1ebfdfa3ef6e13e92615ac2fb6995362ca60fe78f57ff3cf9e384517f95eaf4c701e60fe0977b1eee73889cdfe3367720da9a9bae3dd1a09a4558114ba593369 mariadb-10.3.27.tar.gz # Hash for license files sha256 a4665c1189fe31e0bbc27e9b55439df7dad6e99805407fe58d78da7aabe678f8 README.md diff --git a/buildroot/package/mariadb/mariadb.mk b/buildroot/package/mariadb/mariadb.mk index 1d0be060d..83965d043 100644 --- a/buildroot/package/mariadb/mariadb.mk +++ b/buildroot/package/mariadb/mariadb.mk @@ -4,7 +4,7 @@ # ################################################################################ -MARIADB_VERSION = 10.3.23 +MARIADB_VERSION = 10.3.27 MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library) # Tarball no longer contains LGPL license text diff --git a/buildroot/package/netsurf/0003-do-not-cross-compile-nsgenbind.patch b/buildroot/package/netsurf/0002-do-not-cross-compile-nsgenbind.patch similarity index 100% rename from buildroot/package/netsurf/0003-do-not-cross-compile-nsgenbind.patch rename to buildroot/package/netsurf/0002-do-not-cross-compile-nsgenbind.patch diff --git a/buildroot/package/netsurf/0004-fix-compilation-without-curl.patch b/buildroot/package/netsurf/0003-fix-compilation-without-curl.patch similarity index 100% rename from buildroot/package/netsurf/0004-fix-compilation-without-curl.patch rename to buildroot/package/netsurf/0003-fix-compilation-without-curl.patch diff --git a/buildroot/package/netsurf/0004-framebuffer-Fix-internal-font-generated-source-for-GCC-10.patch b/buildroot/package/netsurf/0004-framebuffer-Fix-internal-font-generated-source-for-GCC-10.patch new file mode 100644 index 000000000..da512645a --- /dev/null +++ b/buildroot/package/netsurf/0004-framebuffer-Fix-internal-font-generated-source-for-GCC-10.patch @@ -0,0 +1,37 @@ +From 434f6c3fe7d1d2c6a3e6ae6338608a4a4421ab1b Mon Sep 17 00:00:00 2001 +From: Michael Drake +Date: Fri, 13 Nov 2020 11:12:58 +0000 +Subject: framebuffer: Fix internal font generated source for GCC 10. + +[Retrieved (and backported) from: +https://git.netsurf-browser.org/netsurf.git/commit/?id=434f6c3fe7d1d2c6a3e6ae6338608a4a4421ab1b] +Signed-off-by: Fabrice Fontaine +--- + tools/convert_font.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/netsurf/frontends/framebuffer/convert_font.c b/netsurf/frontends/framebuffer/convert_font.c +index 9f5734b71..d22c85920 100644 +--- a/netsurf/frontends/framebuffer/convert_font.c ++++ b/netsurf/frontends/framebuffer/convert_font.c +@@ -290,14 +290,14 @@ static bool generate_font_header(const char *path, struct font_data *data) + + + for (s = 0; s < 4; s++) { +- fprintf(fp, "const uint8_t *%s_section_table;\n", ++ fprintf(fp, "extern const uint8_t *%s_section_table;\n", + var_lables[s]); +- fprintf(fp, "const uint16_t *%s_sections;\n", ++ fprintf(fp, "extern const uint16_t *%s_sections;\n", + var_lables[s]); + + } + +- fprintf(fp, "const uint8_t *font_glyph_data;\n"); ++ fprintf(fp, "extern const uint8_t *font_glyph_data;\n"); + + fprintf(fp, "\n\n"); + +-- +cgit v1.2.1 + diff --git a/buildroot/package/privoxy/privoxy.hash b/buildroot/package/privoxy/privoxy.hash index 84daf5c61..850208dd9 100644 --- a/buildroot/package/privoxy/privoxy.hash +++ b/buildroot/package/privoxy/privoxy.hash @@ -1,6 +1,6 @@ -# From http://sourceforge.net/projects/ijbswa/files/Sources/3.0.28%20%28stable%29/ -md5 c7e8900d5aff33d9a5fc37ac28154f21 privoxy-3.0.28-stable-src.tar.gz -sha1 fa8f9f355a48afe94afcaef31c5404b2294c1043 privoxy-3.0.28-stable-src.tar.gz +# From http://sourceforge.net/projects/ijbswa/files/Sources/3.0.28%20%29stable%29/ +md5 493a3a643247e6c8bc60725e9993d4ee privoxy-3.0.29-stable-src.tar.gz +sha1 59873a122729b1b03e1d202d663036d2b5fa1120 privoxy-3.0.29-stable-src.tar.gz # Locally computed -sha256 b5d78cc036aaadb3b7cf860e9d598d7332af468926a26e2d56167f1cb6f2824a privoxy-3.0.28-stable-src.tar.gz +sha256 25c6069efdaf577d47c257da63b03cd6d063fb790e19cc39603d82e5db72489d privoxy-3.0.29-stable-src.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/buildroot/package/privoxy/privoxy.mk b/buildroot/package/privoxy/privoxy.mk index f12d015ef..3cf1dc975 100644 --- a/buildroot/package/privoxy/privoxy.mk +++ b/buildroot/package/privoxy/privoxy.mk @@ -4,7 +4,7 @@ # ################################################################################ -PRIVOXY_VERSION = 3.0.28 +PRIVOXY_VERSION = 3.0.29 PRIVOXY_SITE = http://downloads.sourceforge.net/project/ijbswa/Sources/$(PRIVOXY_VERSION)%20%28stable%29 PRIVOXY_SOURCE = privoxy-$(PRIVOXY_VERSION)-stable-src.tar.gz # configure not shipped diff --git a/buildroot/package/runc/runc.mk b/buildroot/package/runc/runc.mk index d9e953c64..c559244e8 100644 --- a/buildroot/package/runc/runc.mk +++ b/buildroot/package/runc/runc.mk @@ -10,7 +10,12 @@ RUNC_LICENSE = Apache-2.0 RUNC_LICENSE_FILES = LICENSE RUNC_LDFLAGS = -X main.gitCommit=$(RUNC_VERSION) -RUNC_TAGS = cgo static_build apparmor +RUNC_TAGS = cgo static_build + +ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) +RUNC_DEPENDENCIES += libapparmor +RUNC_TAGS += apparmor +endif ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) RUNC_TAGS += seccomp diff --git a/buildroot/package/s390-tools/0002-osasnmpd-Makefile-fix-cross-compilation.patch b/buildroot/package/s390-tools/0002-osasnmpd-Makefile-fix-cross-compilation.patch new file mode 100644 index 000000000..8e3d1399f --- /dev/null +++ b/buildroot/package/s390-tools/0002-osasnmpd-Makefile-fix-cross-compilation.patch @@ -0,0 +1,41 @@ +From d7faa31a871d14ab02b290bdf2b2fa085766d2ac Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 27 Nov 2020 23:43:15 +0100 +Subject: [PATCH] osasnmpd/Makefile: fix cross-compilation + +Fix the following build failure by allowing the user to provide +NET_SNMP_CONFIG: + +/bin/sh: net-snmp-config: command not found +/home/buildroot/autobuild/run/instance-2/output-1/host/lib/gcc/s390x-buildroot-linux-gnu/9.3.0/../../../../s390x-buildroot-linux-gnu/bin/ld: osasnmpd.o: in function `main': +osasnmpd.c:(.text.startup+0xcc): undefined reference to `snmp_log_perror' + +Fixes: + - http://autobuild.buildroot.org/results/00796f2ebd5fb0e08ac7a05a9ee566f2bc4bd1c3 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/ibm-s390-tools/s390-tools/pull/99] +--- + osasnmpd/Makefile | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/osasnmpd/Makefile b/osasnmpd/Makefile +index 15496b2..8ce0932 100644 +--- a/osasnmpd/Makefile ++++ b/osasnmpd/Makefile +@@ -1,9 +1,10 @@ + include ../common.mak +-LDLIBS = `net-snmp-config --agent-libs` ++NET_SNMP_CONFIG = net-snmp-config ++LDLIBS = `$(NET_SNMP_CONFIG) --agent-libs` + # On some Linux systems `net-snmp-config --agent-libs` introduces -pie, + # therefore add -fPIC to prevent link failures. + ALL_CFLAGS += -fPIC +-ALL_CFLAGS += `net-snmp-config --cflags` ++ALL_CFLAGS += `$(NET_SNMP_CONFIG) --cflags` + + OBJS = ibmOSAMib.o ibmOSAMibUtil.o osasnmpd.o + +-- +2.29.2 + diff --git a/buildroot/package/s390-tools/s390-tools.mk b/buildroot/package/s390-tools/s390-tools.mk index 5a3bcffba..535caf208 100644 --- a/buildroot/package/s390-tools/s390-tools.mk +++ b/buildroot/package/s390-tools/s390-tools.mk @@ -18,9 +18,13 @@ S390_TOOLS_MAKE_OPTS = \ ifeq ($(BR2_PACKAGE_LIBCURL),y) S390_TOOLS_DEPENDENCIES += libcurl -S390_TOOLS_MAKE_OPTS += HAVE_CURL=1 +S390_TOOLS_MAKE_OPTS += \ + HAVE_CURL=1 \ + HAVE_LIBCURL=1 else -S390_TOOLS_MAKE_OPTS += HAVE_CURL=0 +S390_TOOLS_MAKE_OPTS += \ + HAVE_CURL=0 \ + HAVE_LIBCURL=0 endif ifeq ($(BR2_PACKAGE_JSON_C),y) @@ -72,9 +76,11 @@ else S390_TOOLS_MAKE_OPTS += HAVE_FUSE=0 endif -ifeq ($(BR2_PACKAGE_PERL_NET_SNMP),y) -S390_TOOLS_DEPENDENCIES += perl-net-snmp -S390_TOOLS_MAKE_OPTS += HAVE_SNMP=1 +ifeq ($(BR2_PACKAGE_NETSNMP),y) +S390_TOOLS_DEPENDENCIES += netsnmp +S390_TOOLS_MAKE_OPTS += \ + NET_SNMP_CONFIG=$(STAGING_DIR)/usr/bin/net-snmp-config \ + HAVE_SNMP=1 else S390_TOOLS_MAKE_OPTS += HAVE_SNMP=0 endif diff --git a/buildroot/package/setserial/setserial.hash b/buildroot/package/setserial/setserial.hash index ce3b369f5..991d2860a 100644 --- a/buildroot/package/setserial/setserial.hash +++ b/buildroot/package/setserial/setserial.hash @@ -1,3 +1,5 @@ # From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/s/setserial/setserial_2.17-45.3.dsc -sha256 7e4487d320ac31558563424189435d396ddf77953bb23111a17a3d1487b5794a setserial_2.17.orig.tar.gz -sha256 33db87e8a86cf12b7c97efca9e056865e71358e8cfeb3931118b2647ce1eecc6 setserial_2.17-45.3.diff.gz +sha256 7e4487d320ac31558563424189435d396ddf77953bb23111a17a3d1487b5794a setserial_2.17.orig.tar.gz +sha256 33db87e8a86cf12b7c97efca9e056865e71358e8cfeb3931118b2647ce1eecc6 setserial_2.17-45.3.diff.gz +# Locally computed +sha256 1d7e810ed28daf370def626dfd4c502f2f77d2b678f1ac72e2ba675dd6f9af0d debian/copyright diff --git a/buildroot/package/x11r7/xserver_xorg-server/0007-Fix-XkbSetDeviceInfo-and-SetDeviceIndicators-heap-ov.patch b/buildroot/package/x11r7/xserver_xorg-server/0007-Fix-XkbSetDeviceInfo-and-SetDeviceIndicators-heap-ov.patch new file mode 100644 index 000000000..8297aa8a9 --- /dev/null +++ b/buildroot/package/x11r7/xserver_xorg-server/0007-Fix-XkbSetDeviceInfo-and-SetDeviceIndicators-heap-ov.patch @@ -0,0 +1,100 @@ +From 87c64fc5b0db9f62f4e361444f4b60501ebf67b9 Mon Sep 17 00:00:00 2001 +From: Matthieu Herrb +Date: Sun, 11 Oct 2020 17:05:09 +0200 +Subject: [PATCH] Fix XkbSetDeviceInfo() and SetDeviceIndicators() heap + overflows + +ZDI-CAN 11389 / CVE-2020-25712 + +This vulnerability was discovered by: +Jan-Niklas Sohn working with Trend Micro Zero Day Initiative + +Signed-off-by: Matthieu Herrb +Signed-off-by: Peter Korsgaard +--- + xkb/xkb.c | 26 +++++++++++++++++++++++--- + 1 file changed, 23 insertions(+), 3 deletions(-) + +diff --git a/xkb/xkb.c b/xkb/xkb.c +index 8e016cd74..f54cc97f8 100644 +--- a/xkb/xkb.c ++++ b/xkb/xkb.c +@@ -6536,7 +6536,9 @@ SetDeviceIndicators(char *wire, + unsigned changed, + int num, + int *status_rtrn, +- ClientPtr client, xkbExtensionDeviceNotify * ev) ++ ClientPtr client, ++ xkbExtensionDeviceNotify * ev, ++ xkbSetDeviceInfoReq * stuff) + { + xkbDeviceLedsWireDesc *ledWire; + int i; +@@ -6557,6 +6559,11 @@ SetDeviceIndicators(char *wire, + xkbIndicatorMapWireDesc *mapWire; + XkbSrvLedInfoPtr sli; + ++ if (!_XkbCheckRequestBounds(client, stuff, ledWire, ledWire + 1)) { ++ *status_rtrn = BadLength; ++ return (char *) ledWire; ++ } ++ + namec = mapc = statec = 0; + sli = XkbFindSrvLedInfo(dev, ledWire->ledClass, ledWire->ledID, + XkbXI_IndicatorMapsMask); +@@ -6575,6 +6582,10 @@ SetDeviceIndicators(char *wire, + memset((char *) sli->names, 0, XkbNumIndicators * sizeof(Atom)); + for (n = 0, bit = 1; n < XkbNumIndicators; n++, bit <<= 1) { + if (ledWire->namesPresent & bit) { ++ if (!_XkbCheckRequestBounds(client, stuff, atomWire, atomWire + 1)) { ++ *status_rtrn = BadLength; ++ return (char *) atomWire; ++ } + sli->names[n] = (Atom) *atomWire; + if (sli->names[n] == None) + ledWire->namesPresent &= ~bit; +@@ -6592,6 +6603,10 @@ SetDeviceIndicators(char *wire, + if (ledWire->mapsPresent) { + for (n = 0, bit = 1; n < XkbNumIndicators; n++, bit <<= 1) { + if (ledWire->mapsPresent & bit) { ++ if (!_XkbCheckRequestBounds(client, stuff, mapWire, mapWire + 1)) { ++ *status_rtrn = BadLength; ++ return (char *) mapWire; ++ } + sli->maps[n].flags = mapWire->flags; + sli->maps[n].which_groups = mapWire->whichGroups; + sli->maps[n].groups = mapWire->groups; +@@ -6671,7 +6686,7 @@ _XkbSetDeviceInfoCheck(ClientPtr client, DeviceIntPtr dev, + ed.deviceID = dev->id; + wire = (char *) &stuff[1]; + if (stuff->change & XkbXI_ButtonActionsMask) { +- int nBtns, sz, i; ++ int nBtns, sz, i; + XkbAction *acts; + DeviceIntPtr kbd; + +@@ -6683,7 +6698,11 @@ _XkbSetDeviceInfoCheck(ClientPtr client, DeviceIntPtr dev, + return BadAlloc; + dev->button->xkb_acts = acts; + } ++ if (stuff->firstBtn + stuff->nBtns > nBtns) ++ return BadValue; + sz = stuff->nBtns * SIZEOF(xkbActionWireDesc); ++ if (!_XkbCheckRequestBounds(client, stuff, wire, (char *) wire + sz)) ++ return BadLength; + memcpy((char *) &acts[stuff->firstBtn], (char *) wire, sz); + wire += sz; + ed.reason |= XkbXI_ButtonActionsMask; +@@ -6704,7 +6723,8 @@ _XkbSetDeviceInfoCheck(ClientPtr client, DeviceIntPtr dev, + int status = Success; + + wire = SetDeviceIndicators(wire, dev, stuff->change, +- stuff->nDeviceLedFBs, &status, client, &ed); ++ stuff->nDeviceLedFBs, &status, client, &ed, ++ stuff); + if (status != Success) + return status; + } +-- +2.20.1 + diff --git a/buildroot/package/x11r7/xserver_xorg-server/0008-Check-SetMap-request-length-carefully.patch b/buildroot/package/x11r7/xserver_xorg-server/0008-Check-SetMap-request-length-carefully.patch new file mode 100644 index 000000000..a8b33ebf3 --- /dev/null +++ b/buildroot/package/x11r7/xserver_xorg-server/0008-Check-SetMap-request-length-carefully.patch @@ -0,0 +1,131 @@ +From 446ff2d3177087b8173fa779fa5b77a2a128988b Mon Sep 17 00:00:00 2001 +From: Matthieu Herrb +Date: Thu, 12 Nov 2020 19:15:07 +0100 +Subject: [PATCH] Check SetMap request length carefully. + +Avoid out of bounds memory accesses on too short request. + +ZDI-CAN 11572 / CVE-2020-14360 + +This vulnerability was discovered by: +Jan-Niklas Sohn working with Trend Micro Zero Day Initiative + +Signed-off-by: Matthieu Herrb +Signed-off-by: Peter Korsgaard +--- + xkb/xkb.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 92 insertions(+) + +diff --git a/xkb/xkb.c b/xkb/xkb.c +index f54cc97f8..d056c698c 100644 +--- a/xkb/xkb.c ++++ b/xkb/xkb.c +@@ -2382,6 +2382,93 @@ SetVirtualModMap(XkbSrvInfoPtr xkbi, + return (char *) wire; + } + ++#define _add_check_len(new) \ ++ if (len > UINT32_MAX - (new) || len > req_len - (new)) goto bad; \ ++ else len += new ++ ++/** ++ * Check the length of the SetMap request ++ */ ++static int ++_XkbSetMapCheckLength(xkbSetMapReq *req) ++{ ++ size_t len = sz_xkbSetMapReq, req_len = req->length << 2; ++ xkbKeyTypeWireDesc *keytype; ++ xkbSymMapWireDesc *symmap; ++ BOOL preserve; ++ int i, map_count, nSyms; ++ ++ if (req_len < len) ++ goto bad; ++ /* types */ ++ if (req->present & XkbKeyTypesMask) { ++ keytype = (xkbKeyTypeWireDesc *)(req + 1); ++ for (i = 0; i < req->nTypes; i++) { ++ _add_check_len(XkbPaddedSize(sz_xkbKeyTypeWireDesc)); ++ if (req->flags & XkbSetMapResizeTypes) { ++ _add_check_len(keytype->nMapEntries ++ * sz_xkbKTSetMapEntryWireDesc); ++ preserve = keytype->preserve; ++ map_count = keytype->nMapEntries; ++ if (preserve) { ++ _add_check_len(map_count * sz_xkbModsWireDesc); ++ } ++ keytype += 1; ++ keytype = (xkbKeyTypeWireDesc *) ++ ((xkbKTSetMapEntryWireDesc *)keytype + map_count); ++ if (preserve) ++ keytype = (xkbKeyTypeWireDesc *) ++ ((xkbModsWireDesc *)keytype + map_count); ++ } ++ } ++ } ++ /* syms */ ++ if (req->present & XkbKeySymsMask) { ++ symmap = (xkbSymMapWireDesc *)((char *)req + len); ++ for (i = 0; i < req->nKeySyms; i++) { ++ _add_check_len(sz_xkbSymMapWireDesc); ++ nSyms = symmap->nSyms; ++ _add_check_len(nSyms*sizeof(CARD32)); ++ symmap += 1; ++ symmap = (xkbSymMapWireDesc *)((CARD32 *)symmap + nSyms); ++ } ++ } ++ /* actions */ ++ if (req->present & XkbKeyActionsMask) { ++ _add_check_len(req->totalActs * sz_xkbActionWireDesc ++ + XkbPaddedSize(req->nKeyActs)); ++ } ++ /* behaviours */ ++ if (req->present & XkbKeyBehaviorsMask) { ++ _add_check_len(req->totalKeyBehaviors * sz_xkbBehaviorWireDesc); ++ } ++ /* vmods */ ++ if (req->present & XkbVirtualModsMask) { ++ _add_check_len(XkbPaddedSize(Ones(req->virtualMods))); ++ } ++ /* explicit */ ++ if (req->present & XkbExplicitComponentsMask) { ++ /* two bytes per non-zero explicit componen */ ++ _add_check_len(XkbPaddedSize(req->totalKeyExplicit * sizeof(CARD16))); ++ } ++ /* modmap */ ++ if (req->present & XkbModifierMapMask) { ++ /* two bytes per non-zero modmap component */ ++ _add_check_len(XkbPaddedSize(req->totalModMapKeys * sizeof(CARD16))); ++ } ++ /* vmodmap */ ++ if (req->present & XkbVirtualModMapMask) { ++ _add_check_len(req->totalVModMapKeys * sz_xkbVModMapWireDesc); ++ } ++ if (len == req_len) ++ return Success; ++bad: ++ ErrorF("[xkb] BOGUS LENGTH in SetMap: expected %ld got %ld\n", ++ len, req_len); ++ return BadLength; ++} ++ ++ + /** + * Check if the given request can be applied to the given device but don't + * actually do anything, except swap values when client->swapped and doswap are both true. +@@ -2642,6 +2729,11 @@ ProcXkbSetMap(ClientPtr client) + CHK_KBD_DEVICE(dev, stuff->deviceSpec, client, DixManageAccess); + CHK_MASK_LEGAL(0x01, stuff->present, XkbAllMapComponentsMask); + ++ /* first verify the request length carefully */ ++ rc = _XkbSetMapCheckLength(stuff); ++ if (rc != Success) ++ return rc; ++ + tmp = (char *) &stuff[1]; + + /* Check if we can to the SetMap on the requested device. If this +-- +2.20.1 + diff --git a/buildroot/support/misc/Vagrantfile b/buildroot/support/misc/Vagrantfile index 53f6012f6..db2a752c3 100644 --- a/buildroot/support/misc/Vagrantfile +++ b/buildroot/support/misc/Vagrantfile @@ -5,7 +5,7 @@ ################################################################################ # Buildroot version to use -RELEASE='2020.08' +RELEASE='2020.11' ### Change here for more memory/cores ### VM_MEMORY=2048