Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package u-boot for openSUSE:Factory checked in at 2021-01-19 16:01:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/u-boot (Old) and /work/SRC/openSUSE:Factory/.u-boot.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "u-boot" Tue Jan 19 16:01:20 2021 rev:142 rq:864331 version:2020.10 Changes: -------- --- /work/SRC/openSUSE:Factory/u-boot/u-boot.changes 2021-01-08 17:38:34.852722333 +0100 +++ /work/SRC/openSUSE:Factory/.u-boot.new.28504/u-boot.changes 2021-01-19 16:01:37.975329048 +0100 @@ -1,0 +2,17 @@ +Tue Jan 19 12:50:57 UTC 2021 - Matthias Brugger <mbrug...@suse.com> + +Fix USB in RPi4 and RPi400 (jsc@OPENSUSE-13 bsc#1180336) + +Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2020.10 +* Patches added: + 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch + 0031-pci-brcmstb-Cleanup-controller-stat.patch + +------------------------------------------------------------------- +Mon Jan 18 10:43:24 UTC 2021 - Guillaume GARDET <guillaume.gar...@opensuse.org> + +Patch queue updated from git://github.com/openSUSE/u-boot.git tumbleweed-2020.10 +* Patches added: + 0029-Revert-Fix-data-abort-caused-by-mis.patch - boo#1180728 + +------------------------------------------------------------------- New: ---- 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 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ u-boot.spec ++++++ --- /var/tmp/diff_new_pack.Lws4Ze/_old 2021-01-19 16:01:39.227330939 +0100 +++ /var/tmp/diff_new_pack.Lws4Ze/_new 2021-01-19 16:01:39.231330946 +0100 @@ -243,6 +243,9 @@ 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 # Patches: end BuildRequires: bc BuildRequires: bison ++++++ 0029-Revert-Fix-data-abort-caused-by-mis.patch ++++++ >From 2b3131bde95b261cd67f99a520b16936a5f50ea2 Mon Sep 17 00:00:00 2001 From: Marek Vasut <ma...@denx.de> 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 <ma...@denx.de> Cc: Reuben Dowle <reuben.do...@4rf.com> Cc: Tom Rini <tr...@konsulko.com> Signed-off-by: Marek Vasut <ma...@denx.de> --- 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++); ++++++ 0030-usb-xhci-pci-Add-DM_FLAG_OS_PREPARE.patch ++++++ >From 3b24be6bc5ac356b99a4c0441c64b599acb35c13 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne <nsaenzjulie...@suse.de> Date: Thu, 14 Jan 2021 16:49:00 +0100 Subject: [PATCH] usb: xhci-pci: Add DM_FLAG_OS_PREPARE flag The PCIe bus the controller is connected to might need to be removed prior the handover. Make sure xhci-pci is also removed so as to avoid unexpected timeouts or hangs. Signed-off-by: Nicolas Saenz Julienne <nsaenzjulie...@suse.de> --- drivers/usb/host/xhci-pci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c index 9fb6d2f763..19f8fb4458 100644 --- a/drivers/usb/host/xhci-pci.c +++ b/drivers/usb/host/xhci-pci.c @@ -61,7 +61,7 @@ U_BOOT_DRIVER(xhci_pci) = { .ops = &xhci_usb_ops, .platdata_auto_alloc_size = sizeof(struct usb_platdata), .priv_auto_alloc_size = sizeof(struct xhci_ctrl), - .flags = DM_FLAG_ALLOC_PRIV_DMA, + .flags = DM_FLAG_OS_PREPARE | DM_FLAG_ALLOC_PRIV_DMA, }; static struct pci_device_id xhci_pci_supported[] = { ++++++ 0031-pci-brcmstb-Cleanup-controller-stat.patch ++++++ >From 8566f4fb6d707b40121a02b081dadb558ae9ce66 Mon Sep 17 00:00:00 2001 From: Nicolas Saenz Julienne <nsaenzjulie...@suse.de> Date: Thu, 14 Jan 2021 16:49:01 +0100 Subject: [PATCH] pci: brcmstb: Cleanup controller state before handover Make sure we handover the PCIe controller in a clean state. Some of the devices hanging from the PCIe bus might need to be properly reset through #PERST in order for Linux to be able to initialize them. This is specially important in order to properly initialize Raspberry Pi 4 B and 400's USB chip. Signed-off-by: Nicolas Saenz Julienne <nsaenzjulie...@suse.de> --- drivers/pci/pcie_brcmstb.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/drivers/pci/pcie_brcmstb.c b/drivers/pci/pcie_brcmstb.c index f6e8ad0d0a..c87a5dce4d 100644 --- a/drivers/pci/pcie_brcmstb.c +++ b/drivers/pci/pcie_brcmstb.c @@ -577,6 +577,24 @@ static int brcm_pcie_probe(struct udevice *dev) return 0; } +static int brcm_pcie_remove(struct udevice *dev) +{ + struct brcm_pcie *pcie = dev_get_priv(dev); + void __iomem *base = pcie->base; + + /* Assert fundamental reset */ + setbits_le32(base + PCIE_RGR1_SW_INIT_1, RGR1_SW_INIT_1_PERST_MASK); + + /* Turn off SerDes */ + setbits_le32(base + PCIE_MISC_HARD_PCIE_HARD_DEBUG, + PCIE_HARD_DEBUG_SERDES_IDDQ_MASK); + + /* Shutdown bridge */ + setbits_le32(base + PCIE_RGR1_SW_INIT_1, RGR1_SW_INIT_1_INIT_MASK); + + return 0; +} + static int brcm_pcie_ofdata_to_platdata(struct udevice *dev) { struct brcm_pcie *pcie = dev_get_priv(dev); @@ -616,6 +634,8 @@ U_BOOT_DRIVER(pcie_brcm_base) = { .ops = &brcm_pcie_ops, .of_match = brcm_pcie_ids, .probe = brcm_pcie_probe, + .remove = brcm_pcie_remove, .ofdata_to_platdata = brcm_pcie_ofdata_to_platdata, .priv_auto_alloc_size = sizeof(struct brcm_pcie), + .flags = DM_FLAG_OS_PREPARE, };