From 111c122751d84e4ea53a1553b5615b2793d276102d2076476a208292e78c1282 Mon Sep 17 00:00:00 2001 From: Guillaume GARDET Date: Wed, 17 Feb 2021 07:37:34 +0000 Subject: [PATCH] Accepting request 872955 from hardware:boot:staging - Add qemu-riscv64spl Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2021.01 * Patches added: 0031-efi_loader-Avoid-emitting-efi_var_b.patch - Drop pcm051rev3 for Phytec Wega board - Fix binary extension for sunxi based boards - Add Pinephone - Fix documentation location Update to v2021.01. Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2021.01 * Patches dropped: 0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch 0029-Revert-Fix-data-abort-caused-by-mis.patch 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch 0031-pci-brcmstb-Cleanup-controller-stat.patch * Patches added: 0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch 0029-pci-brcmstb-Cleanup-controller-stat.patch 0030-fs-btrfs-Select-SHA256-in-Kconfig.patch OBS-URL: https://build.opensuse.org/request/show/872955 OBS-URL: https://build.opensuse.org/package/show/hardware:boot/u-boot?expand=0&rev=127 --- ...-XXX-openSUSE-XXX-Prepend-partition-.patch | 8 +- ...-Revert-Revert-omap3-Use-raw-SPL-by-.patch | 2 +- ...-rpi-Use-firmware-provided-device-tr.patch | 12 +- ...-Temp-workaround-for-Chromebook-snow.patch | 2 +- ...-tools-zynqmpbif-Add-support-for-loa.patch | 2 +- ...-boo-1123170-Remove-ubifs-support-fr.patch | 8 +- ...-boo-1144161-Remove-nand-mtd-spi-dfu.patch | 6 +- 0008-Kconfig-add-btrfs-to-distro-boot.patch | 4 +- ...-configs-Re-sync-with-CONFIG_DISTRO_.patch | 16 +- 0010-configs-am335x_evm-disable-BTRFS.patch | 8 +- ...-sunxi-dts-OrangePi-Zero-Add-SPI-ali.patch | 2 +- ...-sunxi-dts-OrangePi-Zero-Enable-SPI-.patch | 2 +- ...-sunxi-Enable-SPI-support-on-Orange-.patch | 2 +- ...-Disable-CONFIG_CMD_BTRFS-in-xilinx_.patch | 8 +- ...-rpi-Add-identifier-for-the-new-RPi4.patch | 12 +- 0016-rpi-Add-identifier-for-the-new-CM4.patch | 6 +- ...-pci-pcie-brcmstb-Fix-inbound-window.patch | 5 +- 0018-dm-Introduce-xxx_get_dma_range.patch | 40 ++--- ...-dm-test-Add-test-case-for-dev_get_d.patch | 23 ++- ...-dm-Introduce-DMA-constraints-into-t.patch | 36 ++--- ...-dm-test-Add-test-case-for-dev-dma_o.patch | 31 ++-- ...-dm-Introduce-dev_phys_to_bus-dev_bu.patch | 12 +- ...-dm-test-Add-test-case-for-dev_phys_.patch | 16 +- ...-xhci-translate-virtual-addresses-in.patch | 91 ++++++----- ...-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch | 33 ++-- ...-configs-rpi4-Enable-DM_DMA-across-a.patch | 11 +- ...-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch | 9 +- ...-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch | 2 +- ...-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch | 33 ---- ...-Revert-Fix-data-abort-caused-by-mis.patch | 37 ----- ...-pci-brcmstb-Cleanup-controller-stat.patch | 2 +- 0030-fs-btrfs-Select-SHA256-in-Kconfig.patch | 31 ++++ ...-efi_loader-Avoid-emitting-efi_var_b.patch | 148 ++++++++++++++++++ _multibuild | 3 +- u-boot-2020.10.tar.bz2 | 3 - u-boot-2020.10.tar.bz2.sig | Bin 458 -> 0 bytes u-boot-2021.01.tar.bz2 | 3 + u-boot-2021.01.tar.bz2.sig | Bin 0 -> 458 bytes u-boot.changes | 45 ++++++ u-boot.spec | 56 ++++--- update_git.sh | 6 +- 41 files changed, 445 insertions(+), 331 deletions(-) rename 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch => 0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch (93%) delete mode 100644 0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch delete mode 100644 0029-Revert-Fix-data-abort-caused-by-mis.patch rename 0031-pci-brcmstb-Cleanup-controller-stat.patch => 0029-pci-brcmstb-Cleanup-controller-stat.patch (96%) create mode 100644 0030-fs-btrfs-Select-SHA256-in-Kconfig.patch create mode 100644 0031-efi_loader-Avoid-emitting-efi_var_b.patch delete mode 100644 u-boot-2020.10.tar.bz2 delete mode 100644 u-boot-2020.10.tar.bz2.sig create mode 100644 u-boot-2021.01.tar.bz2 create mode 100644 u-boot-2021.01.tar.bz2.sig diff --git a/0001-XXX-openSUSE-XXX-Prepend-partition-.patch b/0001-XXX-openSUSE-XXX-Prepend-partition-.patch index a62605b..b93bad5 100644 --- a/0001-XXX-openSUSE-XXX-Prepend-partition-.patch +++ b/0001-XXX-openSUSE-XXX-Prepend-partition-.patch @@ -1,4 +1,4 @@ -From ccd4f771c00d944160654731d27f3654ec5edcc0 Mon Sep 17 00:00:00 2001 +From da36e129a526f1a7921c7971013d3f5918c504a3 Mon Sep 17 00:00:00 2001 From: Guillaume GARDET Date: Wed, 13 Apr 2016 13:44:29 +0200 Subject: [PATCH] XXX openSUSE XXX: Prepend partition 3 (and 4 for chromebook @@ -12,10 +12,10 @@ Subject: [PATCH] XXX openSUSE XXX: Prepend partition 3 (and 4 for chromebook 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h -index fc0935fa21..f9cda052e1 100644 +index c9862260a3..39e3247d41 100644 --- a/include/config_distro_bootcmd.h +++ b/include/config_distro_bootcmd.h -@@ -141,7 +141,7 @@ +@@ -145,7 +145,7 @@ "load ${devtype} ${devnum}:${distro_bootpart} " \ "${fdt_addr_r} ${prefix}${efi_fdtfile}\0" \ \ @@ -24,7 +24,7 @@ index fc0935fa21..f9cda052e1 100644 "scan_dev_for_efi=" \ "setenv efi_fdtfile ${fdtfile}; " \ BOOTENV_EFI_SET_FDTFILE_FALLBACK \ -@@ -466,7 +466,7 @@ +@@ -472,7 +472,7 @@ "scan_dev_for_boot_part=" \ "part list ${devtype} ${devnum} -bootable devplist; " \ "env exists devplist || setenv devplist 1; " \ diff --git a/0002-Revert-Revert-omap3-Use-raw-SPL-by-.patch b/0002-Revert-Revert-omap3-Use-raw-SPL-by-.patch index 0e02923..49aac2a 100644 --- a/0002-Revert-Revert-omap3-Use-raw-SPL-by-.patch +++ b/0002-Revert-Revert-omap3-Use-raw-SPL-by-.patch @@ -1,4 +1,4 @@ -From 0e5ee623eb68459199c41161e67bffe422e89096 Mon Sep 17 00:00:00 2001 +From 34515ca90618bb0545ce360abb91b6037b1546e3 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 2 May 2016 23:25:07 +0200 Subject: [PATCH] Revert "Revert "omap3: Use raw SPL by default for mmc1"" diff --git a/0003-rpi-Use-firmware-provided-device-tr.patch b/0003-rpi-Use-firmware-provided-device-tr.patch index 5cbd823..184a680 100644 --- a/0003-rpi-Use-firmware-provided-device-tr.patch +++ b/0003-rpi-Use-firmware-provided-device-tr.patch @@ -1,4 +1,4 @@ -From e3661467c146494f9a2bbdaa7ae25e9f07c6d24a Mon Sep 17 00:00:00 2001 +From 2f2b5324682ebf078c78372e74ce759b3620e4bc Mon Sep 17 00:00:00 2001 From: Guillaume Gardet Date: Fri, 18 Sep 2020 15:27:37 +0200 Subject: [PATCH] rpi: Use firmware provided device tree @@ -28,7 +28,7 @@ Signed-off-by: Guillaume Gardet 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/configs/rpi_0_w_defconfig b/configs/rpi_0_w_defconfig -index bba5e12b12..0241f4c6d3 100644 +index 93d790aae6..cae50fa2ab 100644 --- a/configs/rpi_0_w_defconfig +++ b/configs/rpi_0_w_defconfig @@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y @@ -41,7 +41,7 @@ index bba5e12b12..0241f4c6d3 100644 CONFIG_SYS_RELOC_GD_ENV_ADDR=y CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y diff --git a/configs/rpi_2_defconfig b/configs/rpi_2_defconfig -index 1c2bbb29ce..9573e475f4 100644 +index 33f27cf09f..e546c3e7be 100644 --- a/configs/rpi_2_defconfig +++ b/configs/rpi_2_defconfig @@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y @@ -54,7 +54,7 @@ index 1c2bbb29ce..9573e475f4 100644 CONFIG_SYS_RELOC_GD_ENV_ADDR=y CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y diff --git a/configs/rpi_3_32b_defconfig b/configs/rpi_3_32b_defconfig -index b8a3d17f43..252df994e6 100644 +index cdc67cb3ac..2256ad1fc1 100644 --- a/configs/rpi_3_32b_defconfig +++ b/configs/rpi_3_32b_defconfig @@ -18,7 +18,7 @@ CONFIG_CMD_GPIO=y @@ -67,7 +67,7 @@ index b8a3d17f43..252df994e6 100644 CONFIG_SYS_RELOC_GD_ENV_ADDR=y CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y diff --git a/configs/rpi_3_defconfig b/configs/rpi_3_defconfig -index 9b281a4f15..1e9ee6122e 100644 +index 7075d39d10..4a34d35898 100644 --- a/configs/rpi_3_defconfig +++ b/configs/rpi_3_defconfig @@ -18,7 +18,7 @@ CONFIG_CMD_GPIO=y @@ -80,7 +80,7 @@ index 9b281a4f15..1e9ee6122e 100644 CONFIG_SYS_RELOC_GD_ENV_ADDR=y CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y diff --git a/configs/rpi_defconfig b/configs/rpi_defconfig -index b5ad53c37b..223fc03275 100644 +index bba36ca7fc..98728fc8c0 100644 --- a/configs/rpi_defconfig +++ b/configs/rpi_defconfig @@ -17,7 +17,7 @@ CONFIG_CMD_GPIO=y diff --git a/0004-Temp-workaround-for-Chromebook-snow.patch b/0004-Temp-workaround-for-Chromebook-snow.patch index f14f38f..ede7d2c 100644 --- a/0004-Temp-workaround-for-Chromebook-snow.patch +++ b/0004-Temp-workaround-for-Chromebook-snow.patch @@ -1,4 +1,4 @@ -From 19be21a06d5b85f6be87c1ccd2631aff79e0e416 Mon Sep 17 00:00:00 2001 +From ec7b043f9c2b0cb4e7ff2a9ae808456b310375c9 Mon Sep 17 00:00:00 2001 From: Guillaume GARDET Date: Mon, 9 Apr 2018 10:28:26 +0200 Subject: [PATCH] Temp workaround for Chromebook snow to avoid the 'unable to diff --git a/0005-tools-zynqmpbif-Add-support-for-loa.patch b/0005-tools-zynqmpbif-Add-support-for-loa.patch index 737c8fc..087a647 100644 --- a/0005-tools-zynqmpbif-Add-support-for-loa.patch +++ b/0005-tools-zynqmpbif-Add-support-for-loa.patch @@ -1,4 +1,4 @@ -From c7f8d2ca5bf0464a9164f84b264dc39cd1e655ee Mon Sep 17 00:00:00 2001 +From 45f65400eede913d46a21868122678753305a294 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Thu, 26 Apr 2018 13:30:32 +0200 Subject: [PATCH] tools: zynqmpbif: Add support for load=after diff --git a/0006-boo-1123170-Remove-ubifs-support-fr.patch b/0006-boo-1123170-Remove-ubifs-support-fr.patch index 970de25..a2b46f2 100644 --- a/0006-boo-1123170-Remove-ubifs-support-fr.patch +++ b/0006-boo-1123170-Remove-ubifs-support-fr.patch @@ -1,4 +1,4 @@ -From 8731159e77b49b6d89cc4ae5364dfe10ffacc49e Mon Sep 17 00:00:00 2001 +From 6c0413e2528f4fc699c01f47e60fcf2d16b5fc75 Mon Sep 17 00:00:00 2001 From: Guillaume Gardet Date: Fri, 18 Sep 2020 15:28:41 +0200 Subject: [PATCH] boo#1123170: Remove ubifs support from omap3_beagle to keep a @@ -10,10 +10,10 @@ Subject: [PATCH] boo#1123170: Remove ubifs support from omap3_beagle to keep a 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig -index 1447dab344..86c2435b62 100644 +index 514bc01b1f..f232df0e41 100644 --- a/configs/omap3_beagle_defconfig +++ b/configs/omap3_beagle_defconfig -@@ -43,7 +43,6 @@ CONFIG_CMD_FS_UUID=y +@@ -41,7 +41,6 @@ CONFIG_CMD_FS_UUID=y CONFIG_CMD_MTDPARTS=y CONFIG_MTDIDS_DEFAULT="nand0=omap2-nand.0" CONFIG_MTDPARTS_DEFAULT="mtdparts=omap2-nand.0:512k(spl),1920k(u-boot),128k(u-boot-env),128k(dtb),6m(kernel),-(rootfs)" @@ -21,7 +21,7 @@ index 1447dab344..86c2435b62 100644 # CONFIG_ISO_PARTITION is not set # CONFIG_SPL_EFI_PARTITION is not set CONFIG_SPL_PARTITION_UUIDS=y -@@ -78,6 +77,8 @@ CONFIG_SYS_NAND_BUSWIDTH_16BIT=y +@@ -77,6 +76,8 @@ CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y CONFIG_SYS_NAND_U_BOOT_OFFS=0x80000 CONFIG_DM_ETH=y diff --git a/0007-boo-1144161-Remove-nand-mtd-spi-dfu.patch b/0007-boo-1144161-Remove-nand-mtd-spi-dfu.patch index 902111a..3f97cf7 100644 --- a/0007-boo-1144161-Remove-nand-mtd-spi-dfu.patch +++ b/0007-boo-1144161-Remove-nand-mtd-spi-dfu.patch @@ -1,4 +1,4 @@ -From cb0db60f92f6ac66898888dea5fbeef784b59354 Mon Sep 17 00:00:00 2001 +From f9fb8e59d10feb1fd5866864f8dd9994b1d60306 Mon Sep 17 00:00:00 2001 From: Guillaume Gardet Date: Fri, 18 Sep 2020 15:29:27 +0200 Subject: [PATCH] boo#1144161: Remove nand/mtd/spi/dfu/fastboot support from @@ -9,10 +9,10 @@ Subject: [PATCH] boo#1144161: Remove nand/mtd/spi/dfu/fastboot support from 1 file changed, 2 insertions(+), 29 deletions(-) diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig -index 0d814530d4..78202a55c7 100644 +index eb5a299bbc..c615c54b1c 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig -@@ -17,25 +17,16 @@ CONFIG_ARCH_MISC_INIT=y +@@ -16,25 +16,16 @@ CONFIG_ARCH_MISC_INIT=y CONFIG_SPL_FIT_IMAGE_TINY=y CONFIG_SPL_ETH_SUPPORT=y # CONFIG_SPL_FS_EXT4 is not set diff --git a/0008-Kconfig-add-btrfs-to-distro-boot.patch b/0008-Kconfig-add-btrfs-to-distro-boot.patch index f9dbfa4..26b0e6d 100644 --- a/0008-Kconfig-add-btrfs-to-distro-boot.patch +++ b/0008-Kconfig-add-btrfs-to-distro-boot.patch @@ -1,4 +1,4 @@ -From 063a11190ec974996e4e6b827974db15d9bc47d3 Mon Sep 17 00:00:00 2001 +From 5b3fe80ea3daebde777533fc40bd071c860438b0 Mon Sep 17 00:00:00 2001 From: Matthias Brugger Date: Fri, 17 Jan 2020 20:59:02 +0100 Subject: [PATCH] Kconfig: add btrfs to distro boot @@ -13,7 +13,7 @@ Signed-off-by: Matthias Brugger 1 file changed, 1 insertion(+) diff --git a/Kconfig b/Kconfig -index 883e3f71d0..bdfd7b7078 100644 +index 6dc20ed25b..35e8dc7bad 100644 --- a/Kconfig +++ b/Kconfig @@ -143,6 +143,7 @@ config DISTRO_DEFAULTS diff --git a/0009-configs-Re-sync-with-CONFIG_DISTRO_.patch b/0009-configs-Re-sync-with-CONFIG_DISTRO_.patch index 9f6cb2b..5f7e2cf 100644 --- a/0009-configs-Re-sync-with-CONFIG_DISTRO_.patch +++ b/0009-configs-Re-sync-with-CONFIG_DISTRO_.patch @@ -1,4 +1,4 @@ -From 4738cf1c8ebce2343671591663eedc394813da43 Mon Sep 17 00:00:00 2001 +From 0901a320eb56b18739af922493ef17916daa1d80 Mon Sep 17 00:00:00 2001 From: Matthias Brugger Date: Wed, 29 Jan 2020 09:56:06 +0100 Subject: [PATCH] configs: Re-sync with CONFIG_DISTRO_DEFAULTS @@ -18,10 +18,10 @@ Signed-off-by: Matthias Brugger 5 files changed, 2 insertions(+), 4 deletions(-) diff --git a/configs/sandbox64_defconfig b/configs/sandbox64_defconfig -index c3ca796d51..9c102948c0 100644 +index 5fbbfd7236..1afe9a4665 100644 --- a/configs/sandbox64_defconfig +++ b/configs/sandbox64_defconfig -@@ -75,7 +75,6 @@ CONFIG_CMD_REGULATOR=y +@@ -77,7 +77,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AES=y CONFIG_CMD_TPM=y CONFIG_CMD_TPM_TEST=y @@ -30,10 +30,10 @@ index c3ca796d51..9c102948c0 100644 CONFIG_CMD_CRAMFS=y CONFIG_CMD_EXT4_WRITE=y diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig -index 6e9f029cc9..92ffe48432 100644 +index f1ec701a9f..5bc9186d6e 100644 --- a/configs/sandbox_defconfig +++ b/configs/sandbox_defconfig -@@ -87,7 +87,6 @@ CONFIG_CMD_REGULATOR=y +@@ -90,7 +90,6 @@ CONFIG_CMD_REGULATOR=y CONFIG_CMD_AES=y CONFIG_CMD_TPM=y CONFIG_CMD_TPM_TEST=y @@ -42,7 +42,7 @@ index 6e9f029cc9..92ffe48432 100644 CONFIG_CMD_CRAMFS=y CONFIG_CMD_EXT4_WRITE=y diff --git a/configs/socfpga_arria10_defconfig b/configs/socfpga_arria10_defconfig -index 8fdd21c0d3..61d8c3f7c4 100644 +index fdad9bd7b4..560ce858f2 100644 --- a/configs/socfpga_arria10_defconfig +++ b/configs/socfpga_arria10_defconfig @@ -55,3 +55,5 @@ CONFIG_USB=y @@ -52,7 +52,7 @@ index 8fdd21c0d3..61d8c3f7c4 100644 +# CONFIG_CMD_BTRFS is not set +# CONFIG_FS_BTRFS is not set diff --git a/configs/turris_mox_defconfig b/configs/turris_mox_defconfig -index c63c9d24ed..934fccc533 100644 +index 66dc2473d6..906d79a5c3 100644 --- a/configs/turris_mox_defconfig +++ b/configs/turris_mox_defconfig @@ -36,7 +36,6 @@ CONFIG_CMD_TFTPPUT=y @@ -64,7 +64,7 @@ index c63c9d24ed..934fccc533 100644 CONFIG_MAC_PARTITION=y CONFIG_ENV_OVERWRITE=y diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig -index 536be77ca7..e834f92828 100644 +index 4b8843d7be..7f021e7003 100644 --- a/configs/turris_omnia_defconfig +++ b/configs/turris_omnia_defconfig @@ -50,7 +50,6 @@ CONFIG_CMD_CACHE=y diff --git a/0010-configs-am335x_evm-disable-BTRFS.patch b/0010-configs-am335x_evm-disable-BTRFS.patch index c79a9da..266a7e0 100644 --- a/0010-configs-am335x_evm-disable-BTRFS.patch +++ b/0010-configs-am335x_evm-disable-BTRFS.patch @@ -1,4 +1,4 @@ -From f6c178cc6540fc57888e06c36f1813910f5432ed Mon Sep 17 00:00:00 2001 +From 880d8bd547bf71fd91216d2725455fc373dd981a Mon Sep 17 00:00:00 2001 From: Matthias Brugger Date: Wed, 29 Jan 2020 10:26:43 +0100 Subject: [PATCH] configs: am335x_evm: disable BTRFS @@ -11,12 +11,12 @@ Signed-off-by: Matthias Brugger 1 file changed, 2 insertions(+) diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig -index 78202a55c7..1d32f9589a 100644 +index c615c54b1c..62db21203d 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig -@@ -66,3 +66,5 @@ CONFIG_DYNAMIC_CRC_TABLE=y +@@ -65,3 +65,5 @@ CONFIG_WDT=y + CONFIG_DYNAMIC_CRC_TABLE=y CONFIG_RSA=y CONFIG_LZO=y - # CONFIG_OF_LIBFDT_OVERLAY is not set +# CONFIG_CMD_BTRFS is not set +# CONFIG_FS_BTRFS is not set diff --git a/0011-sunxi-dts-OrangePi-Zero-Add-SPI-ali.patch b/0011-sunxi-dts-OrangePi-Zero-Add-SPI-ali.patch index 7462858..bd41f4b 100644 --- a/0011-sunxi-dts-OrangePi-Zero-Add-SPI-ali.patch +++ b/0011-sunxi-dts-OrangePi-Zero-Add-SPI-ali.patch @@ -1,4 +1,4 @@ -From c47d520bbeedb976159c3f3fb2e4c490b1b56d83 Mon Sep 17 00:00:00 2001 +From 96d142c3738348da1ea98e39a8bbaf5c4a640692 Mon Sep 17 00:00:00 2001 From: Michal Suchanek Date: Tue, 29 Sep 2020 10:13:33 +0200 Subject: [PATCH] sunxi: dts: OrangePi Zero: Add SPI aliases to make bus usable diff --git a/0012-sunxi-dts-OrangePi-Zero-Enable-SPI-.patch b/0012-sunxi-dts-OrangePi-Zero-Enable-SPI-.patch index 7f07724..a6f2c37 100644 --- a/0012-sunxi-dts-OrangePi-Zero-Enable-SPI-.patch +++ b/0012-sunxi-dts-OrangePi-Zero-Enable-SPI-.patch @@ -1,4 +1,4 @@ -From 6b1054580c7d2fce12c3aea4a4fe7874dad54684 Mon Sep 17 00:00:00 2001 +From b1098dbd2cc344dd9c2df14d7dfab0eb0a107959 Mon Sep 17 00:00:00 2001 From: Michal Suchanek Date: Mon, 28 Sep 2020 23:02:01 +0200 Subject: [PATCH] sunxi: dts: OrangePi Zero: Enable SPI flash. diff --git a/0013-sunxi-Enable-SPI-support-on-Orange-.patch b/0013-sunxi-Enable-SPI-support-on-Orange-.patch index cda0252..de971db 100644 --- a/0013-sunxi-Enable-SPI-support-on-Orange-.patch +++ b/0013-sunxi-Enable-SPI-support-on-Orange-.patch @@ -1,4 +1,4 @@ -From cb19bc680c9353acb48d0f90f3e91292701ef1bb Mon Sep 17 00:00:00 2001 +From 415d7b01833b5c4271a9f7c209b82a5e9198ff21 Mon Sep 17 00:00:00 2001 From: Michal Suchanek Date: Mon, 28 Sep 2020 23:02:02 +0200 Subject: [PATCH] sunxi: Enable SPI support on Orange Pi Zero diff --git a/0014-Disable-CONFIG_CMD_BTRFS-in-xilinx_.patch b/0014-Disable-CONFIG_CMD_BTRFS-in-xilinx_.patch index b24da06..0dd9cbe 100644 --- a/0014-Disable-CONFIG_CMD_BTRFS-in-xilinx_.patch +++ b/0014-Disable-CONFIG_CMD_BTRFS-in-xilinx_.patch @@ -1,4 +1,4 @@ -From a8517eab022f355186354858721b54a4747b3a8a Mon Sep 17 00:00:00 2001 +From 42719d4568f2aec214e5d096fe0e096ba2000265 Mon Sep 17 00:00:00 2001 From: Guillaume Gardet Date: Wed, 18 Nov 2020 13:42:04 +0000 Subject: [PATCH] Disable CONFIG_CMD_BTRFS in xilinx_zynqmp_virt_defconfig to @@ -9,12 +9,12 @@ Subject: [PATCH] Disable CONFIG_CMD_BTRFS in xilinx_zynqmp_virt_defconfig to 1 file changed, 1 insertion(+) diff --git a/configs/xilinx_zynqmp_virt_defconfig b/configs/xilinx_zynqmp_virt_defconfig -index a0984c8045..ab1889ab13 100644 +index e400cd4702..a490f04de3 100644 --- a/configs/xilinx_zynqmp_virt_defconfig +++ b/configs/xilinx_zynqmp_virt_defconfig -@@ -52,6 +52,7 @@ CONFIG_CMD_TFTPPUT=y - CONFIG_CMD_TIME=y +@@ -59,6 +59,7 @@ CONFIG_CMD_TIME=y CONFIG_CMD_TIMER=y + CONFIG_CMD_TPM=y CONFIG_CMD_EXT4_WRITE=y +# CONFIG_CMD_BTRFS is not set CONFIG_CMD_MTDPARTS=y diff --git a/0015-rpi-Add-identifier-for-the-new-RPi4.patch b/0015-rpi-Add-identifier-for-the-new-RPi4.patch index 70330e8..ec4d093 100644 --- a/0015-rpi-Add-identifier-for-the-new-RPi4.patch +++ b/0015-rpi-Add-identifier-for-the-new-RPi4.patch @@ -1,6 +1,6 @@ -From 2fc18b303627de11d9c397a9cc3f6c678dc063a8 Mon Sep 17 00:00:00 2001 +From e9db4aca83892ceba98c7712b91e31ada2ae2010 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Mon, 16 Nov 2020 11:25:11 +0100 +Date: Tue, 12 Jan 2021 13:55:19 +0100 Subject: [PATCH] rpi: Add identifier for the new RPi400 The Raspberry Pi Foundation released the new RPi400 which we want to @@ -8,12 +8,8 @@ detect, so we can enable Ethernet on it and know the correct device tree file name. Signed-off-by: Nicolas Saenz Julienne - ---- - -Changes since v1: - - The RPi Foundation introduced a RPi400 specific device tree, so use - that file name instead of the fallback (RPi4b). +Reviewed-by: Peter Robinson +Tested-by: Peter Robinson --- board/raspberrypi/rpi/rpi.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/0016-rpi-Add-identifier-for-the-new-CM4.patch b/0016-rpi-Add-identifier-for-the-new-CM4.patch index 3d45dcc..aa2e7fd 100644 --- a/0016-rpi-Add-identifier-for-the-new-CM4.patch +++ b/0016-rpi-Add-identifier-for-the-new-CM4.patch @@ -1,6 +1,6 @@ -From 16c55dcf5b5f757f7847204e010c1fbbde1c9875 Mon Sep 17 00:00:00 2001 +From b47e23c6f7a461ff3943d17ff7b6f23af27d5130 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Wed, 18 Nov 2020 16:48:39 +0100 +Date: Tue, 12 Jan 2021 13:55:20 +0100 Subject: [PATCH] rpi: Add identifier for the new CM4 The Raspberry Pi Foundation released the new Compute Module 4 which we @@ -12,6 +12,8 @@ IO board has an Ethernet port. But that might not be the case when using custom ones. Signed-off-by: Nicolas Saenz Julienne +Reviewed-by: Peter Robinson +Tested-by: Peter Robinson --- board/raspberrypi/rpi/rpi.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/0017-pci-pcie-brcmstb-Fix-inbound-window.patch b/0017-pci-pcie-brcmstb-Fix-inbound-window.patch index 10db2c6..ed84608 100644 --- a/0017-pci-pcie-brcmstb-Fix-inbound-window.patch +++ b/0017-pci-pcie-brcmstb-Fix-inbound-window.patch @@ -1,6 +1,6 @@ -From 79de6d0785678f2f7c14566ee4e526ef180634a5 Mon Sep 17 00:00:00 2001 +From ce6a449a4b8721a295915187e5fa9fab0b686b3b Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Tue, 17 Nov 2020 17:50:33 +0100 +Date: Tue, 12 Jan 2021 13:55:21 +0100 Subject: [PATCH] pci: pcie-brcmstb: Fix inbound window configurations So far we've assumed a fixed configuration for inbound windows as we had @@ -17,6 +17,7 @@ firmware load operation, which is handled by the co-processor after u-boot has correctly configured the PCIe controller). Signed-off-by: Nicolas Saenz Julienne +Tested-by: Peter Robinson --- drivers/pci/pcie_brcmstb.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/0018-dm-Introduce-xxx_get_dma_range.patch b/0018-dm-Introduce-xxx_get_dma_range.patch index 4677c0b..0e5089b 100644 --- a/0018-dm-Introduce-xxx_get_dma_range.patch +++ b/0018-dm-Introduce-xxx_get_dma_range.patch @@ -1,6 +1,6 @@ -From 7b53f3bae226443173c035d99c2fb67d994be285 Mon Sep 17 00:00:00 2001 +From c655ed2fd2cfa3a70783402a4cab78bbd0277858 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Tue, 17 Nov 2020 17:49:54 +0100 +Date: Tue, 12 Jan 2021 13:55:22 +0100 Subject: [PATCH] dm: Introduce xxx_get_dma_range() Add the following functions to get a specific device's DMA ranges: @@ -14,17 +14,7 @@ spaces. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v2: - - Return ENOENT instead of ENODEV - - Refcount of nodes - -Changes since v1: - - Fix wrong arguments in of_get_dma_range()'s call to of_translate_dma_address() - - Fix build in SPL/TPL and no LIBFDT supprt - - Add missing declaration in 'core/read.c' - - Address Matthias' comments +Tested-by: Peter Robinson --- common/fdt_support.c | 73 +++++++++++++++++++++++++++++++++++++++ drivers/core/of_addr.c | 78 ++++++++++++++++++++++++++++++++++++++++++ @@ -37,10 +27,10 @@ Changes since v1: 8 files changed, 234 insertions(+) diff --git a/common/fdt_support.c b/common/fdt_support.c -index a565b470f8..023757bd0e 100644 +index 5ae75df3c6..bf855d26c8 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c -@@ -1347,6 +1347,79 @@ u64 fdt_translate_dma_address(const void *blob, int node_offset, +@@ -1342,6 +1342,79 @@ u64 fdt_translate_dma_address(const void *blob, int node_offset, return __of_translate_address(blob, node_offset, in_addr, "dma-ranges"); } @@ -210,10 +200,10 @@ index ca34d84922..703bc3e3f5 100644 const __be32 *addrp, u64 size, unsigned int flags, const char *name, struct resource *r) diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c -index d02d8d33fe..d4e69b0074 100644 +index a68076bf35..15470d4875 100644 --- a/drivers/core/ofnode.c +++ b/drivers/core/ofnode.c -@@ -888,6 +888,15 @@ u64 ofnode_translate_dma_address(ofnode node, const fdt32_t *in_addr) +@@ -911,6 +911,15 @@ u64 ofnode_translate_dma_address(ofnode node, const fdt32_t *in_addr) return fdt_translate_dma_address(gd->fdt_blob, ofnode_to_offset(node), in_addr); } @@ -230,10 +220,10 @@ index d02d8d33fe..d4e69b0074 100644 { if (ofnode_is_np(node)) diff --git a/drivers/core/read.c b/drivers/core/read.c -index 86f3f88170..333e011fef 100644 +index 076125824c..0994fbd979 100644 --- a/drivers/core/read.c +++ b/drivers/core/read.c -@@ -337,6 +337,12 @@ u64 dev_translate_dma_address(const struct udevice *dev, const fdt32_t *in_addr) +@@ -338,6 +338,12 @@ u64 dev_translate_dma_address(const struct udevice *dev, const fdt32_t *in_addr) return ofnode_translate_dma_address(dev_ofnode(dev), in_addr); } @@ -275,10 +265,10 @@ index 3fa1ffce81..ee21d5cf4f 100644 * of_get_address() - obtain an address from a node * diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h -index 8df2facf99..d1be553b37 100644 +index ced7f6ffb2..dc3dd84d9f 100644 --- a/include/dm/ofnode.h +++ b/include/dm/ofnode.h -@@ -915,6 +915,22 @@ u64 ofnode_translate_address(ofnode node, const fdt32_t *in_addr); +@@ -939,6 +939,22 @@ u64 ofnode_translate_address(ofnode node, const fdt32_t *in_addr); */ u64 ofnode_translate_dma_address(ofnode node, const fdt32_t *in_addr); @@ -302,10 +292,10 @@ index 8df2facf99..d1be553b37 100644 * ofnode_device_is_compatible() - check if the node is compatible with compat * diff --git a/include/dm/read.h b/include/dm/read.h -index 67db94adfc..6ee7099bd4 100644 +index 0585eb1228..46e902c57d 100644 --- a/include/dm/read.h +++ b/include/dm/read.h -@@ -662,6 +662,21 @@ u64 dev_translate_address(const struct udevice *dev, const fdt32_t *in_addr); +@@ -664,6 +664,21 @@ u64 dev_translate_address(const struct udevice *dev, const fdt32_t *in_addr); u64 dev_translate_dma_address(const struct udevice *dev, const fdt32_t *in_addr); @@ -327,7 +317,7 @@ index 67db94adfc..6ee7099bd4 100644 /** * dev_read_alias_highest_id - Get highest alias id for the given stem * @stem: Alias stem to be examined -@@ -1002,6 +1017,12 @@ static inline u64 dev_translate_dma_address(const struct udevice *dev, +@@ -1004,6 +1019,12 @@ static inline u64 dev_translate_dma_address(const struct udevice *dev, return ofnode_translate_dma_address(dev_ofnode(dev), in_addr); } @@ -341,7 +331,7 @@ index 67db94adfc..6ee7099bd4 100644 { if (!CONFIG_IS_ENABLED(OF_LIBFDT)) diff --git a/include/fdt_support.h b/include/fdt_support.h -index 9684cffe80..963c917445 100644 +index dbbac0fb6a..46eb1dbbb2 100644 --- a/include/fdt_support.h +++ b/include/fdt_support.h @@ -260,6 +260,20 @@ u64 fdt_translate_address(const void *blob, int node_offset, diff --git a/0019-dm-test-Add-test-case-for-dev_get_d.patch b/0019-dm-test-Add-test-case-for-dev_get_d.patch index ffe55ec..7304f51 100644 --- a/0019-dm-test-Add-test-case-for-dev_get_d.patch +++ b/0019-dm-test-Add-test-case-for-dev_get_d.patch @@ -1,6 +1,6 @@ -From 8cc51dc21c710f48692ba6fa1b51f9da3f7de9ca Mon Sep 17 00:00:00 2001 +From f0b29f058d70dee8b1173da0559a3e16da919950 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Tue, 15 Dec 2020 13:51:16 +0100 +Date: Tue, 12 Jan 2021 13:55:23 +0100 Subject: [PATCH] dm: test: Add test case for dev_get_dma_ranges() Introduce some new nodes in sandbox's test device-tree and dm tests in @@ -8,10 +8,7 @@ order to validate dev_get_dma_range(). Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v3: - - Use ut_assertok() instead of ut_assert(!func()) +Tested-by: Peter Robinson --- arch/sandbox/dts/test.dts | 17 ++++++++++++++ test/dm/Makefile | 1 + @@ -20,11 +17,11 @@ Changes since v3: create mode 100644 test/dm/read.c diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts -index 9f45c48e4e..c0ac4a793c 100644 +index f3b766271d..3a3b51f83b 100644 --- a/arch/sandbox/dts/test.dts +++ b/arch/sandbox/dts/test.dts -@@ -270,6 +270,23 @@ - compatible = "denx,u-boot-devres-test"; +@@ -292,6 +292,23 @@ + test5-gpios = <&gpio_a 19>; }; + mmio-bus@0 { @@ -48,12 +45,12 @@ index 9f45c48e4e..c0ac4a793c 100644 compatible = "denx,u-boot-acpi-test"; acpi-ssdt-test-data = "ab"; diff --git a/test/dm/Makefile b/test/dm/Makefile -index 864c8d0b4c..3cf5c0f2ca 100644 +index 46e076ed09..5c52d8b6ea 100644 --- a/test/dm/Makefile +++ b/test/dm/Makefile -@@ -12,6 +12,7 @@ obj-$(CONFIG_UT_DM) += test-uclass.o - # Tests for particular subsystems - when enabling driver model for a new - # subsystem you must add sandbox tests here. +@@ -15,6 +15,7 @@ obj-$(CONFIG_UT_DM) += test-fdt.o + obj-$(CONFIG_UT_DM) += test-uclass.o + obj-$(CONFIG_UT_DM) += core.o +obj-$(CONFIG_UT_DM) += read.o ifneq ($(CONFIG_SANDBOX),) diff --git a/0020-dm-Introduce-DMA-constraints-into-t.patch b/0020-dm-Introduce-DMA-constraints-into-t.patch index c7ebe88..7cf1254 100644 --- a/0020-dm-Introduce-DMA-constraints-into-t.patch +++ b/0020-dm-Introduce-DMA-constraints-into-t.patch @@ -1,6 +1,6 @@ -From 8d35d23d658c1a50b591f67951a5c24890687fea Mon Sep 17 00:00:00 2001 +From d327db89d06e0532645a2ec5151aaca7299939fd Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Thu, 19 Nov 2020 17:17:24 +0100 +Date: Tue, 12 Jan 2021 13:55:24 +0100 Subject: [PATCH] dm: Introduce DMA constraints into the core device model Calculating the DMA offset between a bus address space and CPU's every @@ -13,23 +13,7 @@ it. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v4: - - Use macros to access dma_offset - -Changes since v3: - - Comment functions and struct variables - - Correct typos - -Changes since v2: - - Return/Fail on error - - Add config option - - use ulong instead for u64 for dev->dma_offset - -Changes since v1: - - Update commit message so as to explain better the reasoning behind - this +Tested-by: Peter Robinson --- drivers/core/Kconfig | 10 ++++++++++ drivers/core/device.c | 41 +++++++++++++++++++++++++++++++++++++++++ @@ -37,10 +21,10 @@ Changes since v1: 3 files changed, 64 insertions(+) diff --git a/drivers/core/Kconfig b/drivers/core/Kconfig -index 00d1d80dc3..ea90cecc86 100644 +index ffae6f9795..295cf2dd00 100644 --- a/drivers/core/Kconfig +++ b/drivers/core/Kconfig -@@ -99,6 +99,16 @@ config SPL_DM_SEQ_ALIAS +@@ -113,6 +113,16 @@ config SPL_DM_SEQ_ALIAS numbered devices (e.g. serial0 = &serial0). This feature can be disabled if it is not required, to save code space in SPL. @@ -58,10 +42,10 @@ index 00d1d80dc3..ea90cecc86 100644 bool "Support register maps" depends on DM diff --git a/drivers/core/device.c b/drivers/core/device.c -index 355dbd147a..d41dab88da 100644 +index 4b3dcb3b37..788ce6046a 100644 --- a/drivers/core/device.c +++ b/drivers/core/device.c -@@ -402,6 +402,43 @@ fail: +@@ -421,6 +421,43 @@ fail: return ret; } @@ -83,7 +67,7 @@ index 355dbd147a..d41dab88da 100644 + u64 size = 0; + int ret; + -+ if (!CONFIG_IS_ENABLED(DM_DMA) || !parent || !dev_of_valid(parent)) ++ if (!CONFIG_IS_ENABLED(DM_DMA) || !parent || !dev_has_of_node(parent)) + return 0; + + /* @@ -105,7 +89,7 @@ index 355dbd147a..d41dab88da 100644 int device_probe(struct udevice *dev) { const struct driver *drv; -@@ -463,6 +500,10 @@ int device_probe(struct udevice *dev) +@@ -482,6 +519,10 @@ int device_probe(struct udevice *dev) goto fail; } @@ -117,7 +101,7 @@ index 355dbd147a..d41dab88da 100644 if (ret) goto fail; diff --git a/include/dm/device.h b/include/dm/device.h -index 953706cf52..9d4670424b 100644 +index 5bef484247..b27889af01 100644 --- a/include/dm/device.h +++ b/include/dm/device.h @@ -138,6 +138,8 @@ enum { diff --git a/0021-dm-test-Add-test-case-for-dev-dma_o.patch b/0021-dm-test-Add-test-case-for-dev-dma_o.patch index 185c912..3a8e0dc 100644 --- a/0021-dm-test-Add-test-case-for-dev-dma_o.patch +++ b/0021-dm-test-Add-test-case-for-dev-dma_o.patch @@ -1,16 +1,13 @@ -From 612c8faa01d20895eff45b9681c6406b6daf7035 Mon Sep 17 00:00:00 2001 +From 763aa398ef98782c2801611b9918ea84375b2b79 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Mon, 14 Dec 2020 20:45:19 +0100 +Date: Tue, 12 Jan 2021 13:55:25 +0100 Subject: [PATCH] dm: test: Add test case for dev->dma_offset Add test to validate dev->dma_offset is properly set on devices. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v3: - - Use ut_assertok() instead of ut_assert(!func()) +Tested-by: Peter Robinson --- arch/sandbox/dts/test.dts | 4 ++++ configs/sandbox64_defconfig | 1 + @@ -21,10 +18,10 @@ Changes since v3: 6 files changed, 38 insertions(+) diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts -index c0ac4a793c..ff5d65a522 100644 +index 3a3b51f83b..78f0100282 100644 --- a/arch/sandbox/dts/test.dts +++ b/arch/sandbox/dts/test.dts -@@ -285,6 +285,10 @@ +@@ -307,6 +307,10 @@ #address-cells = <1>; #size-cells = <1>; compatible = "denx,u-boot-test-bus"; @@ -36,10 +33,10 @@ index c0ac4a793c..ff5d65a522 100644 acpi_test1: acpi-test { diff --git a/configs/sandbox64_defconfig b/configs/sandbox64_defconfig -index 9c102948c0..6cd0c3b19e 100644 +index 1afe9a4665..f250723827 100644 --- a/configs/sandbox64_defconfig +++ b/configs/sandbox64_defconfig -@@ -91,6 +91,7 @@ CONFIG_ENV_EXT4_DEVICE_AND_PART="0:0" +@@ -93,6 +93,7 @@ CONFIG_ENV_EXT4_DEVICE_AND_PART="0:0" CONFIG_BOOTP_SEND_HOSTNAME=y CONFIG_NETCONSOLE=y CONFIG_IP_DEFRAG=y @@ -48,10 +45,10 @@ index 9c102948c0..6cd0c3b19e 100644 CONFIG_SYSCON=y CONFIG_DEVRES=y diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig -index 92ffe48432..10132088c6 100644 +index 5bc9186d6e..e40f619e75 100644 --- a/configs/sandbox_defconfig +++ b/configs/sandbox_defconfig -@@ -104,6 +104,7 @@ CONFIG_ENV_EXT4_DEVICE_AND_PART="0:0" +@@ -107,6 +107,7 @@ CONFIG_ENV_EXT4_DEVICE_AND_PART="0:0" CONFIG_BOOTP_SEND_HOSTNAME=y CONFIG_NETCONSOLE=y CONFIG_IP_DEFRAG=y @@ -60,7 +57,7 @@ index 92ffe48432..10132088c6 100644 CONFIG_SYSCON=y CONFIG_DEVRES=y diff --git a/configs/sandbox_flattree_defconfig b/configs/sandbox_flattree_defconfig -index dd93167e1b..528e6d4ff0 100644 +index edca7f1808..f5923bf713 100644 --- a/configs/sandbox_flattree_defconfig +++ b/configs/sandbox_flattree_defconfig @@ -75,6 +75,7 @@ CONFIG_ENV_EXT4_DEVICE_AND_PART="0:0" @@ -72,10 +69,10 @@ index dd93167e1b..528e6d4ff0 100644 CONFIG_SYSCON=y CONFIG_DEVRES=y diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig -index 6d8e827aeb..c8b62eba21 100644 +index 479f0226e3..0a4815770c 100644 --- a/configs/sandbox_spl_defconfig +++ b/configs/sandbox_spl_defconfig -@@ -93,6 +93,7 @@ CONFIG_BOOTP_SEND_HOSTNAME=y +@@ -94,6 +94,7 @@ CONFIG_BOOTP_SEND_HOSTNAME=y CONFIG_NETCONSOLE=y CONFIG_IP_DEFRAG=y CONFIG_SPL_DM=y @@ -84,10 +81,10 @@ index 6d8e827aeb..c8b62eba21 100644 CONFIG_SPL_REGMAP=y CONFIG_SYSCON=y diff --git a/test/dm/core.c b/test/dm/core.c -index 8ed5bf7370..c079655b4d 100644 +index 6f380a574c..8ca49d09ee 100644 --- a/test/dm/core.c +++ b/test/dm/core.c -@@ -906,3 +906,33 @@ static int dm_test_inactive_child(struct unit_test_state *uts) +@@ -1066,3 +1066,33 @@ static int dm_test_inactive_child(struct unit_test_state *uts) return 0; } DM_TEST(dm_test_inactive_child, UT_TESTF_SCAN_PDATA); diff --git a/0022-dm-Introduce-dev_phys_to_bus-dev_bu.patch b/0022-dm-Introduce-dev_phys_to_bus-dev_bu.patch index eb58783..7022b8a 100644 --- a/0022-dm-Introduce-dev_phys_to_bus-dev_bu.patch +++ b/0022-dm-Introduce-dev_phys_to_bus-dev_bu.patch @@ -1,6 +1,6 @@ -From 71105045bc57b3fa5a9970d98c59f56ab06cbf80 Mon Sep 17 00:00:00 2001 +From c9ac0a0da12755016d1fbfe2a31bab0ddcdddfda Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Thu, 19 Nov 2020 17:15:31 +0100 +Date: Tue, 12 Jan 2021 13:55:26 +0100 Subject: [PATCH] dm: Introduce dev_phys_to_bus()/dev_bus_to_phys() These functions, instead of relying on hard-coded platform-specific @@ -14,13 +14,7 @@ device model. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass Reviewed-by: Stefan Roese - ---- -Changes since v4: - - Introduce macros for !DM case to make API usage cleaner - -Changes since v2: - - Use CONFIG_DM_DMA +Tested-by: Peter Robinson --- include/phys2bus.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/0023-dm-test-Add-test-case-for-dev_phys_.patch b/0023-dm-test-Add-test-case-for-dev_phys_.patch index bfda5e8..8235682 100644 --- a/0023-dm-test-Add-test-case-for-dev_phys_.patch +++ b/0023-dm-test-Add-test-case-for-dev_phys_.patch @@ -1,6 +1,6 @@ -From 1c7fb1ce2ac1c98d3a0747020751b6062530bfce Mon Sep 17 00:00:00 2001 +From f169928dad5b95413fefc3749e54a39bf481c401 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Mon, 14 Dec 2020 21:04:04 +0100 +Date: Tue, 12 Jan 2021 13:55:27 +0100 Subject: [PATCH] dm: test: Add test case for dev_phys_to_bus()/dev_bus_to_phys() @@ -9,11 +9,7 @@ test to validate dev_phys_to_bus()/dev_bus_to_phys(). Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v3: - - Use ut_assertok() instead of ut_assert(!func()) - - Use ut_assert_addr() +Tested-by: Peter Robinson --- test/dm/Makefile | 1 + test/dm/phys2bus.c | 37 +++++++++++++++++++++++++++++++++++++ @@ -21,11 +17,11 @@ Changes since v3: create mode 100644 test/dm/phys2bus.c diff --git a/test/dm/Makefile b/test/dm/Makefile -index 3cf5c0f2ca..bc955ad291 100644 +index 5c52d8b6ea..ac86abaa88 100644 --- a/test/dm/Makefile +++ b/test/dm/Makefile -@@ -13,6 +13,7 @@ obj-$(CONFIG_UT_DM) += test-uclass.o - # subsystem you must add sandbox tests here. +@@ -16,6 +16,7 @@ obj-$(CONFIG_UT_DM) += test-uclass.o + obj-$(CONFIG_UT_DM) += core.o obj-$(CONFIG_UT_DM) += read.o +obj-$(CONFIG_UT_DM) += phys2bus.o diff --git a/0024-xhci-translate-virtual-addresses-in.patch b/0024-xhci-translate-virtual-addresses-in.patch index 19c0c56..80146e9 100644 --- a/0024-xhci-translate-virtual-addresses-in.patch +++ b/0024-xhci-translate-virtual-addresses-in.patch @@ -1,6 +1,6 @@ -From 16bb2e3d352e5be135ef9ec30c86042f18f2fb0f Mon Sep 17 00:00:00 2001 +From bc8e6db54d2f5a51b2e74af47a79a0a366f3c611 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Tue, 17 Nov 2020 17:52:02 +0100 +Date: Tue, 12 Jan 2021 13:55:28 +0100 Subject: [PATCH] xhci: translate virtual addresses into the bus's address space @@ -16,26 +16,16 @@ limitations, and make sure we don't break non DM users. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass Reviewed-by: Stefan Roese - ---- -Changes since v5: - - Fix bulk transfers - -Changes since v4: - - Introduce macro to access ctrl->dev - - No need to make code conditional on DM_DMA with new macros - -Changes since v3: - - Don't call phys_to_bus()/bus_to_phys(), we only support DM +Tested-by: Peter Robinson --- drivers/usb/host/xhci-mem.c | 45 +++++++++++++++++++----------------- - drivers/usb/host/xhci-ring.c | 11 +++++---- + drivers/usb/host/xhci-ring.c | 13 +++++++---- drivers/usb/host/xhci.c | 4 ++-- include/usb/xhci.h | 20 +++++++++++++++- - 4 files changed, 52 insertions(+), 28 deletions(-) + 4 files changed, 53 insertions(+), 29 deletions(-) diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c -index 1da0524aa0..e01b943f22 100644 +index b002d6f166..83147d51b5 100644 --- a/drivers/usb/host/xhci-mem.c +++ b/drivers/usb/host/xhci-mem.c @@ -110,7 +110,7 @@ static void xhci_scratchpad_free(struct xhci_ctrl *ctrl) @@ -67,7 +57,7 @@ index 1da0524aa0..e01b943f22 100644 prev->trbs[TRBS_PER_SEGMENT-1].link.segment_ptr = cpu_to_le64(val_64); -@@ -305,7 +305,8 @@ static struct xhci_segment *xhci_segment_alloc(void) +@@ -304,7 +304,8 @@ static struct xhci_segment *xhci_segment_alloc(void) * @param link_trbs flag to indicate whether to link the trbs or NOT * @return pointer to the newly created RING */ @@ -77,7 +67,7 @@ index 1da0524aa0..e01b943f22 100644 { struct xhci_ring *ring; struct xhci_segment *prev; -@@ -328,12 +329,12 @@ struct xhci_ring *xhci_ring_alloc(unsigned int num_segs, bool link_trbs) +@@ -327,12 +328,12 @@ struct xhci_ring *xhci_ring_alloc(unsigned int num_segs, bool link_trbs) next = xhci_segment_alloc(); BUG_ON(!next); @@ -92,7 +82,7 @@ index 1da0524aa0..e01b943f22 100644 if (link_trbs) { /* See section 4.9.2.1 and 6.4.4.1 */ prev->trbs[TRBS_PER_SEGMENT-1].link.control |= -@@ -355,6 +356,7 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) +@@ -354,6 +355,7 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) struct xhci_hccr *hccr = ctrl->hccr; struct xhci_hcor *hcor = ctrl->hcor; struct xhci_scratchpad *scratchpad; @@ -100,7 +90,7 @@ index 1da0524aa0..e01b943f22 100644 int num_sp; uint32_t page_size; void *buf; -@@ -372,8 +374,9 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) +@@ -371,8 +373,9 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) scratchpad->sp_array = xhci_malloc(num_sp * sizeof(u64)); if (!scratchpad->sp_array) goto fail_sp2; @@ -112,7 +102,7 @@ index 1da0524aa0..e01b943f22 100644 xhci_flush_cache((uintptr_t)&ctrl->dcbaa->dev_context_ptrs[0], sizeof(ctrl->dcbaa->dev_context_ptrs[0])); -@@ -394,8 +397,8 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) +@@ -393,8 +396,8 @@ static int xhci_scratchpad_alloc(struct xhci_ctrl *ctrl) xhci_flush_cache((uintptr_t)buf, num_sp * page_size); for (i = 0; i < num_sp; i++) { @@ -123,7 +113,7 @@ index 1da0524aa0..e01b943f22 100644 } xhci_flush_cache((uintptr_t)scratchpad->sp_array, -@@ -487,9 +490,9 @@ int xhci_alloc_virt_device(struct xhci_ctrl *ctrl, unsigned int slot_id) +@@ -484,9 +487,9 @@ int xhci_alloc_virt_device(struct xhci_ctrl *ctrl, unsigned int slot_id) } /* Allocate endpoint 0 ring */ @@ -135,7 +125,7 @@ index 1da0524aa0..e01b943f22 100644 /* Point to output device context in dcbaa. */ ctrl->dcbaa->dev_context_ptrs[slot_id] = cpu_to_le64(byte_64); -@@ -526,15 +529,15 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, +@@ -522,15 +525,15 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, return -ENOMEM; } @@ -154,16 +144,16 @@ index 1da0524aa0..e01b943f22 100644 val_64 = xhci_readq(&hcor->or_crcr); val_64 = (val_64 & (u64) CMD_RING_RSVD_BITS) | (trb_64 & (u64) ~CMD_RING_RSVD_BITS) | -@@ -555,7 +558,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, +@@ -551,7 +554,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, ctrl->ir_set = &ctrl->run_regs->ir_set[0]; /* Event ring does not maintain link TRB */ - ctrl->event_ring = xhci_ring_alloc(ERST_NUM_SEGS, false); + ctrl->event_ring = xhci_ring_alloc(ctrl, ERST_NUM_SEGS, false); - ctrl->erst.entries = (struct xhci_erst_entry *) - xhci_malloc(sizeof(struct xhci_erst_entry) * ERST_NUM_SEGS); + ctrl->erst.entries = xhci_malloc(sizeof(struct xhci_erst_entry) * + ERST_NUM_SEGS); -@@ -564,8 +567,8 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, +@@ -560,8 +563,8 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, for (val = 0, seg = ctrl->event_ring->first_seg; val < ERST_NUM_SEGS; val++) { @@ -173,7 +163,7 @@ index 1da0524aa0..e01b943f22 100644 entry->seg_addr = cpu_to_le64(trb_64); entry->seg_size = cpu_to_le32(TRBS_PER_SEGMENT); entry->rsvd = 0; -@@ -574,7 +577,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, +@@ -570,7 +573,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, xhci_flush_cache((uintptr_t)ctrl->erst.entries, ERST_NUM_SEGS * sizeof(struct xhci_erst_entry)); @@ -182,7 +172,7 @@ index 1da0524aa0..e01b943f22 100644 /* Update HC event ring dequeue pointer */ xhci_writeq(&ctrl->ir_set->erst_dequeue, -@@ -589,7 +592,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, +@@ -585,7 +588,7 @@ int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, /* this is the event ring segment table pointer */ val_64 = xhci_readq(&ctrl->ir_set->erst_base); val_64 &= ERST_PTR_MASK; @@ -191,9 +181,9 @@ index 1da0524aa0..e01b943f22 100644 xhci_writeq(&ctrl->ir_set->erst_base, val_64); -@@ -857,7 +860,7 @@ void xhci_setup_addressable_virt_dev(struct xhci_ctrl *ctrl, - cpu_to_le32(((0 & MAX_BURST_MASK) << MAX_BURST_SHIFT) | - ((3 & ERROR_COUNT_MASK) << ERROR_COUNT_SHIFT)); +@@ -848,7 +851,7 @@ void xhci_setup_addressable_virt_dev(struct xhci_ctrl *ctrl, + /* EP 0 can handle "burst" sizes of 1, so Max Burst Size field is 0 */ + ep0_ctx->ep_info2 |= cpu_to_le32(MAX_BURST(0) | ERROR_COUNT(3)); - trb_64 = virt_to_phys(virt_dev->eps[0].ring->first_seg->trbs); + trb_64 = xhci_virt_to_bus(ctrl, virt_dev->eps[0].ring->first_seg->trbs); @@ -201,7 +191,7 @@ index 1da0524aa0..e01b943f22 100644 /* diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c -index 092ed6eaf1..27e7a39571 100644 +index d708fc928b..6b31ad4398 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, @@ -219,7 +209,7 @@ index 092ed6eaf1..27e7a39571 100644 fields[0] = lower_32_bits(val_64); fields[1] = upper_32_bits(val_64); fields[2] = 0; -@@ -399,7 +402,7 @@ void xhci_acknowledge_event(struct xhci_ctrl *ctrl) +@@ -401,7 +404,7 @@ void xhci_acknowledge_event(struct xhci_ctrl *ctrl) /* Inform the hardware */ xhci_writeq(&ctrl->ir_set->erst_dequeue, @@ -228,16 +218,25 @@ index 092ed6eaf1..27e7a39571 100644 } /** -@@ -577,7 +580,7 @@ int xhci_bulk_tx(struct usb_device *udev, unsigned long pipe, +@@ -579,7 +582,7 @@ int xhci_bulk_tx(struct usb_device *udev, unsigned long pipe, u64 addr; int ret; u32 trb_fields[4]; - u64 val_64 = virt_to_phys(buffer); + u64 val_64 = xhci_virt_to_bus(ctrl, buffer); + void *last_transfer_trb_addr; + int available_length; - 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, +@@ -723,7 +726,7 @@ again: + return -ETIMEDOUT; + } + +- if ((uintptr_t)(le64_to_cpu(event->trans_event.buffer)) ++ if ((uintptr_t)(le64_to_cpu(xhci_bus_to_virt(ctrl, event->trans_event.buffer))) + != (uintptr_t)last_transfer_trb_addr) { + available_length -= + (int)EVENT_TRB_LEN(le32_to_cpu(event->trans_event.transfer_len)); +@@ -884,7 +887,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; @@ -247,10 +246,10 @@ index 092ed6eaf1..27e7a39571 100644 trb_fields[0] = lower_32_bits(buf_64); trb_fields[1] = upper_32_bits(buf_64); diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c -index 126dabc11b..6b4dce9bca 100644 +index 7080f8fabe..d27ac01c83 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -606,7 +606,7 @@ static int xhci_set_configuration(struct usb_device *udev) +@@ -604,7 +604,7 @@ static int xhci_set_configuration(struct usb_device *udev) ep_ctx[ep_index] = xhci_get_ep_ctx(ctrl, in_ctx, ep_index); /* Allocate the ep rings */ @@ -259,7 +258,7 @@ index 126dabc11b..6b4dce9bca 100644 if (!virt_dev->eps[ep_index].ring) return -ENOMEM; -@@ -631,7 +631,7 @@ static int xhci_set_configuration(struct usb_device *udev) +@@ -628,7 +628,7 @@ static int xhci_set_configuration(struct usb_device *udev) cpu_to_le32(MAX_BURST(max_burst) | ERROR_COUNT(err_count)); @@ -269,7 +268,7 @@ index 126dabc11b..6b4dce9bca 100644 virt_dev->eps[ep_index].ring->cycle_state); diff --git a/include/usb/xhci.h b/include/usb/xhci.h -index 7d34103fd5..048149fb11 100644 +index e1d382369a..8d95e213b0 100644 --- a/include/usb/xhci.h +++ b/include/usb/xhci.h @@ -16,6 +16,7 @@ @@ -280,8 +279,8 @@ index 7d34103fd5..048149fb11 100644 #include #include #include -@@ -1229,6 +1230,12 @@ struct xhci_ctrl { - int rootdev; +@@ -1221,6 +1222,12 @@ struct xhci_ctrl { + #define XHCI_MTK_HOST BIT(0) }; +#if CONFIG_IS_ENABLED(DM_USB) @@ -293,7 +292,7 @@ index 7d34103fd5..048149fb11 100644 unsigned long trb_addr(struct xhci_segment *seg, union xhci_trb *trb); struct xhci_input_control_ctx *xhci_get_input_control_ctx(struct xhci_container_ctx *ctx); -@@ -1258,7 +1265,8 @@ int xhci_check_maxpacket(struct usb_device *udev); +@@ -1250,7 +1257,8 @@ int xhci_check_maxpacket(struct usb_device *udev); void xhci_flush_cache(uintptr_t addr, u32 type_len); void xhci_inval_cache(uintptr_t addr, u32 type_len); void xhci_cleanup(struct xhci_ctrl *ctrl); @@ -303,7 +302,7 @@ index 7d34103fd5..048149fb11 100644 int xhci_alloc_virt_device(struct xhci_ctrl *ctrl, unsigned int slot_id); int xhci_mem_init(struct xhci_ctrl *ctrl, struct xhci_hccr *hccr, struct xhci_hcor *hcor); -@@ -1286,4 +1294,14 @@ extern struct dm_usb_ops xhci_usb_ops; +@@ -1278,4 +1286,14 @@ extern struct dm_usb_ops xhci_usb_ops; struct xhci_ctrl *xhci_get_ctrl(struct usb_device *udev); diff --git a/0025-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch b/0025-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch index 59d580b..624b945 100644 --- a/0025-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch +++ b/0025-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch @@ -1,6 +1,6 @@ -From 9d5e73021a5778a29855140e50aa5309e7611618 Mon Sep 17 00:00:00 2001 +From 8c9cce2f60aa7ded50f42c7de363f7d6af91c66a Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Thu, 19 Nov 2020 16:39:00 +0100 +Date: Tue, 12 Jan 2021 13:55:29 +0100 Subject: [PATCH] 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() @@ -8,21 +8,14 @@ when relevant. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass - ---- -Changes since v4: - - Introduce mmc->dev access macros to avoid ifdefs - - No need to create mmc_phys_to_bus() - -Changes since v3: - - Don't call phys_to_bus()/bus_to_phys(), we only support DM +Tested-by: Peter Robinson --- drivers/mmc/sdhci.c | 12 +++++++----- include/mmc.h | 6 ++++++ 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c -index 7673219fb3..874b686750 100644 +index 0628934312..62e4f53b8b 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -14,12 +14,12 @@ @@ -39,7 +32,7 @@ index 7673219fb3..874b686750 100644 static void sdhci_reset(struct sdhci_host *host, u8 mask) { -@@ -124,6 +124,7 @@ static void sdhci_prepare_adma_table(struct sdhci_host *host, +@@ -73,6 +73,7 @@ static void sdhci_transfer_pio(struct sdhci_host *host, struct mmc_data *data) static void sdhci_prepare_dma(struct sdhci_host *host, struct mmc_data *data, int *is_aligned, int trans_bytes) { @@ -47,7 +40,7 @@ index 7673219fb3..874b686750 100644 unsigned char ctrl; void *buf; -@@ -154,8 +155,8 @@ static void sdhci_prepare_dma(struct sdhci_host *host, struct mmc_data *data, +@@ -103,8 +104,8 @@ static void sdhci_prepare_dma(struct sdhci_host *host, struct mmc_data *data, mmc_get_dma_dir(data)); if (host->flags & USE_SDMA) { @@ -55,10 +48,10 @@ index 7673219fb3..874b686750 100644 - SDHCI_DMA_ADDRESS); + dma_addr = dev_phys_to_bus(mmc_to_dev(host->mmc), host->start_addr); + sdhci_writel(host, dma_addr, SDHCI_DMA_ADDRESS); - } else if (host->flags & (USE_ADMA | USE_ADMA64)) { - sdhci_prepare_adma_table(host, data); - -@@ -209,8 +210,9 @@ static int sdhci_transfer_data(struct sdhci_host *host, struct mmc_data *data) + } + #if CONFIG_IS_ENABLED(MMC_SDHCI_ADMA) + else if (host->flags & (USE_ADMA | USE_ADMA64)) { +@@ -162,8 +163,9 @@ static int sdhci_transfer_data(struct sdhci_host *host, struct mmc_data *data) start_addr &= ~(SDHCI_DEFAULT_BOUNDARY_SIZE - 1); start_addr += SDHCI_DEFAULT_BOUNDARY_SIZE; @@ -71,11 +64,11 @@ index 7673219fb3..874b686750 100644 } if (timeout-- > 0) diff --git a/include/mmc.h b/include/mmc.h -index 82562193cc..d3f6c955d6 100644 +index 1d377e0281..c12c7a0b5c 100644 --- a/include/mmc.h +++ b/include/mmc.h -@@ -699,6 +699,12 @@ struct mmc { - u32 quirks; +@@ -736,6 +736,12 @@ struct mmc { + u8 hs400_tuning; }; +#if CONFIG_IS_ENABLED(DM_MMC) diff --git a/0026-configs-rpi4-Enable-DM_DMA-across-a.patch b/0026-configs-rpi4-Enable-DM_DMA-across-a.patch index 1c57382..aeeedc6 100644 --- a/0026-configs-rpi4-Enable-DM_DMA-across-a.patch +++ b/0026-configs-rpi4-Enable-DM_DMA-across-a.patch @@ -1,6 +1,6 @@ -From b8247b786c889b0141854d8a745409b7dd131d81 Mon Sep 17 00:00:00 2001 +From 27d0b40ed0c1f997635ee216cfe199081fb5112e Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Tue, 15 Dec 2020 13:35:34 +0100 +Date: Tue, 12 Jan 2021 13:55:30 +0100 Subject: [PATCH] configs: rpi4: Enable DM_DMA across all RPi4 configurations The DM_DMA option is needed in order to translate physical address into @@ -8,6 +8,7 @@ bus addresses on a per-device basis. Signed-off-by: Nicolas Saenz Julienne Reviewed-by: Simon Glass +Tested-by: Peter Robinson --- configs/rpi_4_32b_defconfig | 1 + configs/rpi_4_defconfig | 1 + @@ -15,7 +16,7 @@ Reviewed-by: Simon Glass 3 files changed, 3 insertions(+) diff --git a/configs/rpi_4_32b_defconfig b/configs/rpi_4_32b_defconfig -index 4a88448e9d..e6c038e750 100644 +index 5ddd838fd5..0a5d3ff8cd 100644 --- a/configs/rpi_4_32b_defconfig +++ b/configs/rpi_4_32b_defconfig @@ -22,6 +22,7 @@ CONFIG_OF_BOARD=y @@ -27,7 +28,7 @@ index 4a88448e9d..e6c038e750 100644 CONFIG_DM_KEYBOARD=y CONFIG_DM_MMC=y diff --git a/configs/rpi_4_defconfig b/configs/rpi_4_defconfig -index 71f95ed8f7..e8d6fb7e85 100644 +index 2590d0a696..b61cdc05f1 100644 --- a/configs/rpi_4_defconfig +++ b/configs/rpi_4_defconfig @@ -22,6 +22,7 @@ CONFIG_OF_BOARD=y @@ -39,7 +40,7 @@ index 71f95ed8f7..e8d6fb7e85 100644 CONFIG_DM_KEYBOARD=y CONFIG_DM_MMC=y diff --git a/configs/rpi_arm64_defconfig b/configs/rpi_arm64_defconfig -index 4ce8469f43..7d837a9e93 100644 +index 2639219a1a..4125a1feba 100644 --- a/configs/rpi_arm64_defconfig +++ b/configs/rpi_arm64_defconfig @@ -20,6 +20,7 @@ CONFIG_CMD_FS_UUID=y diff --git a/0027-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch b/0027-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch index c17be3b..85b86b2 100644 --- a/0027-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch +++ b/0027-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch @@ -1,6 +1,6 @@ -From 83e81b4e04c3ef65402f161283a4b3faa50748c7 Mon Sep 17 00:00:00 2001 +From c324f9b25039bb271365363f1c4959fcd245797d Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne -Date: Mon, 21 Dec 2020 13:41:08 +0100 +Date: Tue, 12 Jan 2021 13:55:31 +0100 Subject: [PATCH] video: arm: rpi: Add brcm,bcm2711-hdmi0 compatible The 'brcm,bcm2711-hdmi0' compatible string is used on RPi4 instead of @@ -9,10 +9,7 @@ instead of VC4). This has no functional change as far as u-boot driver is concerned. So simply add the compatible string. Signed-off-by: Nicolas Saenz Julienne - ---- -Changes since v3: - - Add this patch +Tested-by: Peter Robinson --- drivers/video/bcm2835.c | 1 + 1 file changed, 1 insertion(+) diff --git a/0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch b/0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch similarity index 93% rename from 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch rename to 0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch index fe92f34..604e571 100644 --- a/0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch +++ b/0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch @@ -1,4 +1,4 @@ -From 3b24be6bc5ac356b99a4c0441c64b599acb35c13 Mon Sep 17 00:00:00 2001 +From 38b6c858e17884d5f4ccfb1a65ce1d5f6819188e Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne Date: Thu, 14 Jan 2021 16:49:00 +0100 Subject: [PATCH] usb: xhci-pci: Add DM_FLAG_OS_PREPARE flag diff --git a/0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch b/0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch deleted file mode 100644 index 93e9b6f..0000000 --- a/0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 09332b4c60063e0f0f975f80211d2554eb18389f Mon Sep 17 00:00:00 2001 -From: Stefan Roese -Date: Mon, 24 Aug 2020 13:04:37 +0200 -Subject: [PATCH] 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 27e7a39571..af8a12fc21 100644 ---- a/drivers/usb/host/xhci-ring.c -+++ b/drivers/usb/host/xhci-ring.c -@@ -729,8 +729,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); diff --git a/0029-Revert-Fix-data-abort-caused-by-mis.patch b/0029-Revert-Fix-data-abort-caused-by-mis.patch deleted file mode 100644 index fe66202..0000000 --- a/0029-Revert-Fix-data-abort-caused-by-mis.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 2b3131bde95b261cd67f99a520b16936a5f50ea2 Mon Sep 17 00:00:00 2001 -From: Marek Vasut -Date: Mon, 19 Oct 2020 23:40:26 +0200 -Subject: [PATCH] Revert "Fix data abort caused by mis-aligning FIT data" - -This reverts commit eb39d8ba5f0d1468b01b89a2a464d18612d3ea76. -The commit breaks booting of fitImage by SPL, the system simply hangs. -This is because on arm32, the fitImage and all of its content can be -aligned to 4 bytes and U-Boot expects just that. - -Signed-off-by: Marek Vasut -Cc: Reuben Dowle -Cc: Tom Rini -Signed-off-by: Marek Vasut ---- - common/spl/spl_fit.c | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - -diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c -index a8bfd388b1..365104fe02 100644 ---- a/common/spl/spl_fit.c -+++ b/common/spl/spl_fit.c -@@ -349,12 +349,9 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, - - /* - * Use the address following the image as target address for the -- * device tree. Load address is aligned to 8 bytes to match the required -- * alignment specified for linux arm [1] and arm 64 [2] booting -- * [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/arm/booting.rst#n126 -- * [2]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/arm64/booting.rst#n45 -+ * device tree. - */ -- image_info.load_addr = ALIGN(spl_image->load_addr + spl_image->size, 8); -+ image_info.load_addr = spl_image->load_addr + spl_image->size; - - /* Figure out which device tree the board wants to use */ - node = spl_fit_get_image_node(fit, images, FIT_FDT_PROP, index++); diff --git a/0031-pci-brcmstb-Cleanup-controller-stat.patch b/0029-pci-brcmstb-Cleanup-controller-stat.patch similarity index 96% rename from 0031-pci-brcmstb-Cleanup-controller-stat.patch rename to 0029-pci-brcmstb-Cleanup-controller-stat.patch index 67a02fc..5b1193e 100644 --- a/0031-pci-brcmstb-Cleanup-controller-stat.patch +++ b/0029-pci-brcmstb-Cleanup-controller-stat.patch @@ -1,4 +1,4 @@ -From 8566f4fb6d707b40121a02b081dadb558ae9ce66 Mon Sep 17 00:00:00 2001 +From 9b76a8d285bac34d64d8c544931625bcaa83dfaa Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne Date: Thu, 14 Jan 2021 16:49:01 +0100 Subject: [PATCH] pci: brcmstb: Cleanup controller state before handover diff --git a/0030-fs-btrfs-Select-SHA256-in-Kconfig.patch b/0030-fs-btrfs-Select-SHA256-in-Kconfig.patch new file mode 100644 index 0000000..f65672f --- /dev/null +++ b/0030-fs-btrfs-Select-SHA256-in-Kconfig.patch @@ -0,0 +1,31 @@ +From f3d0d5e548431be08036b4671d750f73a1a258d4 Mon Sep 17 00:00:00 2001 +From: Matthias Brugger +Date: Wed, 27 Jan 2021 10:42:30 +0100 +Subject: [PATCH] fs: btrfs: Select SHA256 in Kconfig + +Since commit 565a4147d17a ("fs: btrfs: Add more checksum algorithms") +btrfs uses the sha256 checksum algorithm. But Kconfig lacks to select +it. This leads to compilation errors: +fs/built-in.o: In function `hash_sha256': +fs/btrfs/crypto/hash.c:25: undefined reference to `sha256_starts' +fs/btrfs/crypto/hash.c:26: undefined reference to `sha256_update' +fs/btrfs/crypto/hash.c:27: undefined reference to `sha256_finish' + +Signed-off-by: Matthias Brugger +Reviewed-by: Qu Wenruo +--- + fs/btrfs/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/fs/btrfs/Kconfig b/fs/btrfs/Kconfig +index f302b1fbef..2a32f42ad1 100644 +--- a/fs/btrfs/Kconfig ++++ b/fs/btrfs/Kconfig +@@ -4,6 +4,7 @@ config FS_BTRFS + select LZO + select ZSTD + select RBTREE ++ select SHA256 + help + This provides a single-device read-only BTRFS support. BTRFS is a + next-generation Linux file system based on the copy-on-write diff --git a/0031-efi_loader-Avoid-emitting-efi_var_b.patch b/0031-efi_loader-Avoid-emitting-efi_var_b.patch new file mode 100644 index 0000000..f3d4bfd --- /dev/null +++ b/0031-efi_loader-Avoid-emitting-efi_var_b.patch @@ -0,0 +1,148 @@ +From 3ed82e218b5aabdc5956c5ad4a70d609034a6a2d Mon Sep 17 00:00:00 2001 +From: Ilias Apalodimas +Date: Sat, 16 Jan 2021 17:28:04 +0200 +Subject: [PATCH] efi_loader: Avoid emitting efi_var_buf to .GOT + +Atish reports that on RISC-V, accessing the EFI variables causes +a kernel panic. An objdump of the file verifies that, since the +global pointer for efi_var_buf ends up in .GOT section which is +not mapped in virtual address space for Linux. + + + +0000000000000084 : + 84: 715d addi sp,sp,-80 + +* objdump -dr +0000000000000086 <.LCFI2>: + 86: e0a2 sd s0,64(sp) + 88: fc26 sd s1,56(sp) + 8a: e486 sd ra,72(sp) + 8c: f84a sd s2,48(sp) + 8e: f44e sd s3,40(sp) + 90: f052 sd s4,32(sp) + 92: ec56 sd s5,24(sp) + 94: 00000497 auipc s1,0x0 + 94: R_RISCV_GOT_HI20 efi_var_buf + 98: 0004b483 ld s1,0(s1) # 94 <.LCFI2+0xe> + 98: R_RISCV_PCREL_LO12_I .L0 + 98: R_RISCV_RELAX *ABS* + +* objdump -t +0000000000000084 g F .text.efi_runtime 00000000000000b8 efi_var_mem_find + +With the patch applied: + +* objdump -dr +0000000000000086 <.LCFI2>: + 86: e0a2 sd s0,64(sp) + 88: fc26 sd s1,56(sp) + 8a: e486 sd ra,72(sp) + 8c: f84a sd s2,48(sp) + 8e: f44e sd s3,40(sp) + 90: f052 sd s4,32(sp) + 92: ec56 sd s5,24(sp) + 94: 00000497 auipc s1,0x0 + 94: R_RISCV_PCREL_HI20 .LANCHOR0 + 94: R_RISCV_RELAX *ABS* + 98: 00048493 mv s1,s1 + 98: R_RISCV_PCREL_LO12_I .L0 + 98: R_RISCV_RELAX *ABS* + +* objdump -t +0000000000000008 l O .data.efi_runtime 0000000000000008 efi_var_buf + +On arm64 this works, because there's no .GOT entries for this +and everything is converted to relative references. + +* objdump -dr (identical pre-post patch, only the new function shows up) +00000000000000b4 : + b4: aa0003ee mov x14, x0 + b8: 9000000a adrp x10, 0 + b8: R_AARCH64_ADR_PREL_PG_HI21 .data.efi_runtime + bc: 91000140 add x0, x10, #0x0 + bc: R_AARCH64_ADD_ABS_LO12_NC .data.efi_runtime + c0: aa0103ed mov x13, x1 + c4: 79400021 ldrh w1, [x1] + c8: aa0203eb mov x11, x2 + cc: f9400400 ldr x0, [x0, #8] + d0: b940100c ldr w12, [x0, #16] + d4: 8b0c000c add x12, x0, x12 + +So let's switch efi_var_buf to static and create a helper function for +anyone that needs to update it. + +Fixes: e01aed47d6a0 ("efi_loader: Enable run-time variable support for tee based variables") +Reported-by: Atish Patra +Tested-by: Atish Patra +Signed-off-by: Ilias Apalodimas +Reviewed-by: Heinrich Schuchardt +(cherry picked from commit 53e54bf50d285597c1553cdf2bd0e646fcd4dd60) +Signed-off-by: Matthias Brugger +--- + include/efi_variable.h | 11 +++++++++++ + lib/efi_loader/efi_var_mem.c | 13 ++++++++++++- + lib/efi_loader/efi_variable_tee.c | 2 +- + 3 files changed, 24 insertions(+), 2 deletions(-) + +diff --git a/include/efi_variable.h b/include/efi_variable.h +index bf5076233e..4623a64142 100644 +--- a/include/efi_variable.h ++++ b/include/efi_variable.h +@@ -306,4 +306,15 @@ efi_status_t __efi_runtime EFIAPI + efi_get_next_variable_name_runtime(efi_uintn_t *variable_name_size, + u16 *variable_name, efi_guid_t *guid); + ++/** ++ * efi_var_buf_update() - udpate memory buffer for variables ++ * ++ * @var_buf: source buffer ++ * ++ * This function copies to the memory buffer for UEFI variables. Call this ++ * function in ExitBootServices() if memory backed variables are only used ++ * at runtime to fill the buffer. ++ */ ++void efi_var_buf_update(struct efi_var_file *var_buf); ++ + #endif +diff --git a/lib/efi_loader/efi_var_mem.c b/lib/efi_loader/efi_var_mem.c +index d155f25f60..3d335a8274 100644 +--- a/lib/efi_loader/efi_var_mem.c ++++ b/lib/efi_loader/efi_var_mem.c +@@ -10,7 +10,13 @@ + #include + #include + +-struct efi_var_file __efi_runtime_data *efi_var_buf; ++/* ++ * The variables efi_var_file and efi_var_entry must be static to avoid ++ * referencing them via the global offset table (section .got). The GOT ++ * is neither mapped as EfiRuntimeServicesData nor do we support its ++ * relocation during SetVirtualAddressMap(). ++ */ ++static struct efi_var_file __efi_runtime_data *efi_var_buf; + static struct efi_var_entry __efi_runtime_data *efi_current_var; + + /** +@@ -339,3 +345,8 @@ efi_get_next_variable_name_mem(efi_uintn_t *variable_name_size, + + return EFI_SUCCESS; + } ++ ++void efi_var_buf_update(struct efi_var_file *var_buf) ++{ ++ memcpy(efi_var_buf, var_buf, EFI_VAR_BUF_SIZE); ++} +diff --git a/lib/efi_loader/efi_variable_tee.c b/lib/efi_loader/efi_variable_tee.c +index b8808fdeca..51920bcb51 100644 +--- a/lib/efi_loader/efi_variable_tee.c ++++ b/lib/efi_loader/efi_variable_tee.c +@@ -702,7 +702,7 @@ void efi_variables_boot_exit_notify(void) + if (ret != EFI_SUCCESS) + log_err("Can't populate EFI variables. No runtime variables will be available\n"); + else +- memcpy(efi_var_buf, var_buf, len); ++ efi_var_buf_update(var_buf); + free(var_buf); + + /* Update runtime service table */ diff --git a/_multibuild b/_multibuild index 454f470..61b02fc 100644 --- a/_multibuild +++ b/_multibuild @@ -62,15 +62,16 @@ p2771-0000-500 p3450-0000 paz00 - pcm051rev3 pine64plus pinebook pinebook-pro-rk3399 pineh64 + pinephone poplar qemu-ppce500 qemu-riscv64 qemu-riscv64smode + qemu-riscv64spl rock-pi-4-rk3399 rock64-rk3328 rock960-rk3399 diff --git a/u-boot-2020.10.tar.bz2 b/u-boot-2020.10.tar.bz2 deleted file mode 100644 index 76ea052..0000000 --- a/u-boot-2020.10.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d481bbdc05c0ee74908ec2f56a6daa53166cc6a78a0e4fac2ac5d025770a622 -size 15784894 diff --git a/u-boot-2020.10.tar.bz2.sig b/u-boot-2020.10.tar.bz2.sig deleted file mode 100644 index e71d5bc1f782e548940001038346def18e8455eff6c0ed27bc402ccf380fe844..0000000000000000000000000000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 458 zcmV;*0X6=K0mlRY0SW*y79j*0Jb!TDkE<64fSbP*d^!J?G`B1T0$+PLyAvFAa%pa9 zKx=Pqb9HQMZ!TkRZ2$@h5EOhl|CThjEJ2V9|3EG$N76p@)DOacPY9))(c3rFi1%{n zo=^w9i~QKH-GbJ9eJz~i!?|%gr=Wd1iW**cxlj+Qns9Gg?VEcUx)vOVx_v_S%Zk|% zJpp6ToheyojiFk7y>6bYw=NshUx+`#WW*6-C|>FOCeJe32#xN~6Ycoxk|(=Yqq9Dg zk1kyx2`b?(u z84P0|jlK}*N@S1)xKoL1{=K`&acCM$V+bkaTF+y&X=vSC5F38y?gJITmjC(NosIp& zVueoE-Pz~khX>-J2{-76il8p$`$kxW)&e>)@}WXpcbjs|0F?S&HG|TK=rO#vV>z5w zy0JfB3rG~L2NTqvO=2QqMKpw78O-n5*>m6(CxwHZ!_$~4E;}(JA=UTH{=jDg*y6CO z*ycjTFuaKSC z=EGyhe3>6;pb&)Q%9drQhlu^uyqs^W+{L)2Yh?S&Qd9o1ANb5pGc8okkT40mnonY_ z`f$B-5;#E5Ed_CD^`6twa^PSwtUs*m?TU7p$wscllcmI^lg5LN)Yl0@>8O<(0v^AGMi~4wyhr3;O|f3k096tQL%`YhwHjJw)sVy1F|*>)p3QBF?ZBg?^2kWac2hs zJq< + +- Add qemu-riscv64spl + +Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2021.01 +* Patches added: + 0031-efi_loader-Avoid-emitting-efi_var_b.patch + +------------------------------------------------------------------- +Tue Feb 16 16:17:09 UTC 2021 - Matthias Brugger + +- Drop pcm051rev3 for Phytec Wega board + +------------------------------------------------------------------- +Mon Feb 15 12:10:19 UTC 2021 - Matthias Brugger + +- Fix binary extension for sunxi based boards + +------------------------------------------------------------------- +Thu Feb 11 08:10:45 UTC 2021 - Adrian Campos Garrido + +- Add Pinephone + +------------------------------------------------------------------- +Wed Jan 27 11:10:45 UTC 2021 - Matthias Brugger + +- Fix documentation location + +------------------------------------------------------------------- +Wed Jan 27 10:34:51 UTC 2021 - Matthias Brugger + +Update to v2021.01. + +Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2021.01 +* Patches dropped: + 0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch + 0029-Revert-Fix-data-abort-caused-by-mis.patch + 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch + 0031-pci-brcmstb-Cleanup-controller-stat.patch +* Patches added: + 0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch + 0029-pci-brcmstb-Cleanup-controller-stat.patch + 0030-fs-btrfs-Select-SHA256-in-Kconfig.patch + ------------------------------------------------------------------- Tue Jan 19 12:50:57 UTC 2021 - Matthias Brugger diff --git a/u-boot.spec b/u-boot.spec index 85dff39..ae6546e 100644 --- a/u-boot.spec +++ b/u-boot.spec @@ -84,7 +84,7 @@ %define is_a64 1 %define is_armv8 1 %define sunxi_spl 1 -%define binext .itb +%define binext .img %endif %if "%target" == "mt7623nbpir2" @@ -95,13 +95,18 @@ %define is_h5 1 %define is_armv8 1 %define sunxi_spl 1 -%define binext .itb +%define binext .img %endif %if "%target" == "pineh64" %define is_h6 1 %define is_armv8 1 %define sunxi_spl 1 -%define binext .itb +%define binext .img +%endif +%if "%target" == "pinephone" +%define is_armv8 1 +%define is_a64 1 +%define sunxi_spl 1 %endif %if "%target" == "bananapi" || "%target" == "cubieboard" || "%target" == "cubieboard2" || "%target" == "cubietruck" || "%target" == "melea1000" || "%target" == "a10-olinuxino-lime" || "%target" == "a13-olinuxino" || "%target" == "a13-olinuxinom" || "%target" == "a20-olinuxino-lime" || "%target" == "a20-olinuxino-lime2" || "%target" == "a20-olinuxinomicro" || "%target" == "nanopineo" || "%target" == "orangepipc" || "%target" == "hyundaia7hd" || "%target" == "lamobor1" || "%target" == "bananapim2plush3" || "%target" == "bananapim2zero" || "%target" == "orangepizero" %define is_armv7 1 @@ -126,7 +131,7 @@ %define is_armv7 1 %define binext .img %endif -%if "%target" == "omap3beagle" || "%target" == "omap4panda" || "%target" == "am335xevm" || "%target" == "pcm051rev3" +%if "%target" == "omap3beagle" || "%target" == "omap4panda" || "%target" == "am335xevm" %define x_loader 1 %define is_armv7 1 %define binext .img @@ -161,9 +166,9 @@ %define is_armv7 1 %define binext .img %endif -%if "%target" == "qemu-riscv64" || "%target" == "qemu-riscv64smode" || "%target" == "sifivefu540" +%if "%target" == "qemu-riscv64" || "%target" == "qemu-riscv64smode" || "%target" == "qemu-riscv64spl" || "%target" == "sifivefu540" %define is_riscv64 1 -%if "%target" == "sifivefu540" +%if "%target" == "qemu-riscv64spl" || "%target" == "sifivefu540" %define binext .itb %endif %endif @@ -171,7 +176,7 @@ %define is_ppc 1 %endif # archive_version differs from version for RC version only -%define archive_version 2020.10 +%define archive_version 2021.01 %if "%{target}" == "" ExclusiveArch: do_not_build %else @@ -203,7 +208,7 @@ ExclusiveArch: do_not_build %endif %bcond_with uboot_atf %bcond_with uboot_atf_pine64 -Version: 2020.10 +Version: 2021.01 Release: 0 Summary: The U-Boot firmware for the %target platform License: GPL-2.0-only @@ -242,10 +247,10 @@ Patch0024: 0024-xhci-translate-virtual-addresses-in.patch Patch0025: 0025-mmc-Introduce-mmc_phys_to_bus-mmc_b.patch Patch0026: 0026-configs-rpi4-Enable-DM_DMA-across-a.patch Patch0027: 0027-video-arm-rpi-Add-brcm-bcm2711-hdmi.patch -Patch0028: 0028-usb-xhci-xhci_bulk_tx-Don-t-BUG-whe.patch -Patch0029: 0029-Revert-Fix-data-abort-caused-by-mis.patch -Patch0030: 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch -Patch0031: 0031-pci-brcmstb-Cleanup-controller-stat.patch +Patch0028: 0028-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch +Patch0029: 0029-pci-brcmstb-Cleanup-controller-stat.patch +Patch0030: 0030-fs-btrfs-Select-SHA256-in-Kconfig.patch +Patch0031: 0031-efi_loader-Avoid-emitting-efi_var_b.patch # Patches: end BuildRequires: bc BuildRequires: bison @@ -256,6 +261,7 @@ BuildRequires: flex BuildRequires: libopenssl-devel BuildRequires: pkgconfig BuildRequires: python3-devel +BuildRequires: python3-setuptools BuildRequires: swig BuildRequires: pkgconfig(sdl) Conflicts: u-boot-loader @@ -323,6 +329,9 @@ BuildRequires: zynqmp-dts # For mountpoint Requires(post): util-linux %endif +%if "%{name}" == "u-boot-qemu-riscv64spl" +BuildRequires: opensbi >= 0.7 +%endif %if "%{name}" == "u-boot-sifivefu540" BuildRequires: opensbi-sifivefu540 >= 0.7 %endif @@ -368,6 +377,7 @@ This package contains: mkimage- a tool that creates kernel bootable images for U-Boot. %else + %package doc Summary: Documentation for the U-Boot Firmware Group: Documentation/Other @@ -393,9 +403,14 @@ make %{?_smp_mflags} CFLAGS="%{optflags}" tools-only export SOURCE_DATE_EPOCH=$(date -d "$(head -n 2 %{_sourcedir}/u-boot.changes | tail -n 1 | cut -d- -f1 )" +%s) %if 0%{?is_a64} || 0%{?is_h5} export BL31=%{_datadir}/arm-trusted-firmware-sun50i_a64/bl31.bin +export SCP=/dev/null %endif %if 0%{?is_h6} export BL31=%{_datadir}/arm-trusted-firmware-sun50i_h6/bl31.bin +export SCP=/dev/null +%endif +%if "%{name}" == "u-boot-qemu-riscv64spl" +export OPENSBI=%{_datadir}/opensbi/opensbi.bin %endif %if "%{name}" == "u-boot-sifivefu540" export OPENSBI=%{_datadir}/opensbi/opensbi-sifive-fu540.bin @@ -442,12 +457,6 @@ make %{?_smp_mflags} CROSS_COMPILE= HOSTCFLAGS="%{optflags}" \ all %endif -%ifarch aarch64 -%if %sunxi_spl == 1 -cat spl/sunxi-spl.bin u-boot.itb > u-boot-sunxi-with-spl.bin -%endif -%endif - %if "%{name}" == "u-boot-snow" || "%{name}" == "u-boot-spring" # Chromebook ARM (snow) and HP Chromebook 11 (spring) need a uImage format export TEXT_START=$(awk '$NF == "_start" { printf "0x"$1 }' System.map) @@ -560,7 +569,7 @@ echo -e "\nkernel_address=0x11000000" >> %{buildroot}%{uboot_dir}/ubootconfig.tx %if "%{name}" == "u-boot-rpi4" || "%{name}" == "u-boot-rpiarm64" echo -e "# Boot in AArch64 mode\narm_64bit=1" > %{buildroot}%{uboot_dir}/ubootconfig.txt %endif -%if "%{name}" == "u-boot-sifivefu540" +%if "%{name}" == "u-boot-qemu-riscv64spl" || "%{name}" == "u-boot-sifivefu540" install -D -m 0644 spl/u-boot-spl.bin %{buildroot}%{uboot_dir}/u-boot-spl.bin %endif @@ -584,6 +593,7 @@ fi %if %tools_only %files tools %else + %files %endif %defattr(-,root,root) @@ -606,9 +616,11 @@ fi %files doc %defattr(-,root,root) # Generic documents -%doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands -%doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns -%doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi +%doc doc/develop/index.rst +%doc doc/usage/index.rst doc/usage/netconsole.rst +%doc doc/README.JFFS2 doc/README.JFFS2_NAND +%doc doc/README.autoboot doc/README.console doc/README.dns +%doc doc/README.hwconfig doc/README.nand doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST # Copy some useful kermit scripts as well diff --git a/update_git.sh b/update_git.sh index e4e1668..a5e6081 100644 --- a/update_git.sh +++ b/update_git.sh @@ -12,9 +12,9 @@ set -e GIT_TREE=git://github.com/openSUSE/u-boot.git -GIT_LOCAL_TREE=~/git/u-boot-opensuse -GIT_BRANCH=tumbleweed-2020.10 -GIT_UPSTREAM_TAG=v2020.10 +GIT_LOCAL_TREE=~/src/opensuse/u-boot +GIT_BRANCH=tumbleweed-2021.01 +GIT_UPSTREAM_TAG=v2021.01 GIT_DIR=/dev/shm/u-boot-factory-git-dir CMP_DIR=/dev/shm/u-boot-factory-cmp-dir