kernel: bump 6.1 to 6.1.43
authorJohn Audia <therealgraysky@proton.me>
Thu, 10 Aug 2023 00:39:02 +0000 (20:39 -0400)
committerJohn Audia <therealgraysky@proton.me>
Thu, 10 Aug 2023 00:39:20 +0000 (20:39 -0400)
1. Disable Ampere errata fix in target/linux/generic/config-6.1

2. Update kernel Changelog: https://lore.kernel.org/stable/2023061431-modular-data-8489@gregkh/

Manually rebased:
        bcm27xx/patches-6.1/950-0359-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
        bcm27xx/patches-6.1/950-0362-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch
        bcm27xx/patches-6.1/950-0390-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch
        bcm27xx/patches-6.1/950-0469-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch
        bcm27xx/patches-6.1/950-0520-xhci-constrain-XHCI_VLI_HUB_TT_QUIRK-to-old-firmware.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
14 files changed:
include/kernel-6.1
target/linux/bcm27xx/patches-6.1/950-0327-usb-xhci-workaround-for-bogus-SET_DEQ_PENDING-endpoi.patch
target/linux/bcm27xx/patches-6.1/950-0359-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
target/linux/bcm27xx/patches-6.1/950-0361-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch
target/linux/bcm27xx/patches-6.1/950-0362-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch
target/linux/bcm27xx/patches-6.1/950-0390-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch
target/linux/bcm27xx/patches-6.1/950-0392-usb-xhci-rework-XHCI_VLI_SS_BULK_OUT_BUG-quirk.patch
target/linux/bcm27xx/patches-6.1/950-0438-usb-xhci-account-for-num_trbs_free-when-invalidating.patch
target/linux/bcm27xx/patches-6.1/950-0469-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch
target/linux/bcm27xx/patches-6.1/950-0520-xhci-constrain-XHCI_VLI_HUB_TT_QUIRK-to-old-firmware.patch
target/linux/generic/config-6.1
target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch
target/linux/generic/pending-6.1/351-irqchip-bcm-6345-l1-request-memory-region.patch
target/linux/mediatek/patches-6.1/901-arm-add-cmdline-override.patch

index 0bcf420f4270f954b8a0062343c4de4fab7cc617..372de1676717c9e7b0c5cacef6e8edbd66a0ad3f 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.1 = .42
-LINUX_KERNEL_HASH-6.1.42 = aaf8261b551c8b76b81eab8780b446e88cea4d551ae517ac3a9b2dbdbd381ed3
+LINUX_VERSION-6.1 = .43
+LINUX_KERNEL_HASH-6.1.43 = 245248470a62d4e94b46f753afc01e19e45b9e6f3a0fa06e7f5da21fe845a808
index 6b2f3a9ad13623490a187501c39a45ce82887c9d..db15c65809ff32f0a07609ad26abea0feefc914e 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -697,9 +697,9 @@ deq_found:
+@@ -674,9 +674,9 @@ deq_found:
        }
  
        if ((ep->ep_state & SET_DEQ_PENDING)) {
index b90f9f7d8b8e8d2e2fa10061e0a9adf4177a5d46..f5e57172b4ea60da6af1c09cb45454b61ebcdff9 100644 (file)
@@ -22,17 +22,21 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -296,6 +296,7 @@ static void xhci_pci_quirks(struct devic
-       if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
+@@ -293,8 +293,10 @@ static void xhci_pci_quirks(struct devic
+                       pdev->device == 0x3432)
+               xhci->quirks |= XHCI_BROKEN_STREAMS;
+-      if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483)
++      if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
                xhci->quirks |= XHCI_LPM_SUPPORT;
-               xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
 +              xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
-       }
++      }
  
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
+               pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) {
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -687,6 +687,15 @@ static int xhci_move_dequeue_past_td(str
+@@ -664,6 +664,15 @@ static int xhci_move_dequeue_past_td(str
        } while (!cycle_found || !td_last_trb_found);
  
  deq_found:
index 8b78e640616272b7402df848b307669224f19988..8e033b751d5f7884c23ccf0a31cab072537f1403 100644 (file)
@@ -204,7 +204,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                xhci_err(xhci, "Tried to move enqueue past ring segment\n");
                return;
        }
-@@ -3123,7 +3126,7 @@ irqreturn_t xhci_irq(struct usb_hcd *hcd
+@@ -3100,7 +3103,7 @@ irqreturn_t xhci_irq(struct usb_hcd *hcd
         * that clears the EHB.
         */
        while (xhci_handle_event(xhci) > 0) {
@@ -213,7 +213,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                        continue;
                xhci_update_erst_dequeue(xhci, event_ring_deq);
                event_ring_deq = xhci->event_ring->dequeue;
-@@ -3265,7 +3268,8 @@ static int prepare_ring(struct xhci_hcd
+@@ -3242,7 +3245,8 @@ static int prepare_ring(struct xhci_hcd
                }
        }
  
index df2cc5d79b63ff070739b656d749b7df8812beed..98cd413151a0b2b397e01d175f28f0855d405797 100644 (file)
@@ -53,9 +53,9 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                        cycle_state, type, max_packet, flags);
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -297,6 +297,7 @@ static void xhci_pci_quirks(struct devic
+@@ -296,6 +296,7 @@ static void xhci_pci_quirks(struct devic
+       if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
                xhci->quirks |= XHCI_LPM_SUPPORT;
-               xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
                xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
 +              xhci->quirks |= XHCI_VLI_TRB_CACHE_BUG;
        }
index 7ec1e3843e3970ced3c2dc749a3e9f837eb95db3..5ae9808cddf3227b40eee0e6767f2e06e6662d7b 100644 (file)
@@ -26,8 +26,8 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -298,6 +298,7 @@ static void xhci_pci_quirks(struct devic
-               xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
+@@ -297,6 +297,7 @@ static void xhci_pci_quirks(struct devic
+               xhci->quirks |= XHCI_LPM_SUPPORT;
                xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
                xhci->quirks |= XHCI_VLI_TRB_CACHE_BUG;
 +              xhci->quirks |= XHCI_VLI_SS_BULK_OUT_BUG;
@@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -3578,14 +3578,15 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3555,14 +3555,15 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
        unsigned int num_trbs;
        unsigned int start_cycle, num_sgs = 0;
        unsigned int enqd_len, block_len, trb_buff_len, full_len;
@@ -54,7 +54,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        full_len = urb->transfer_buffer_length;
        /* If we have scatter/gather list, we use it. */
        if (urb->num_sgs && !(urb->transfer_flags & URB_DMA_MAP_SINGLE)) {
-@@ -3622,6 +3623,17 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3599,6 +3600,17 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
        start_cycle = ring->cycle_state;
        send_addr = addr;
  
@@ -72,7 +72,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        /* Queue the TRBs, even if they are zero-length */
        for (enqd_len = 0; first_trb || enqd_len < full_len;
                        enqd_len += trb_buff_len) {
-@@ -3634,6 +3646,11 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3611,6 +3623,11 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
                if (enqd_len + trb_buff_len > full_len)
                        trb_buff_len = full_len - enqd_len;
  
index cb1389b40283e393c33c70b08650f97c4defb748..b2e7903df11d8dae541f578228e514d1f1b0cc75 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -3578,7 +3578,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3555,7 +3555,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
        unsigned int num_trbs;
        unsigned int start_cycle, num_sgs = 0;
        unsigned int enqd_len, block_len, trb_buff_len, full_len;
@@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        u32 field, length_field, remainder, maxpacket;
        u64 addr, send_addr;
  
-@@ -3624,14 +3624,9 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3601,14 +3601,9 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
        send_addr = addr;
  
        if (xhci->quirks & XHCI_VLI_SS_BULK_OUT_BUG &&
@@ -40,7 +40,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        }
  
        /* Queue the TRBs, even if they are zero-length */
-@@ -3646,7 +3641,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3623,7 +3618,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
                if (enqd_len + trb_buff_len > full_len)
                        trb_buff_len = full_len - enqd_len;
  
index e67561ce095821b7ec12c972547994df581bab41..f604759c2ff29e5e7d503feb6e2cff5dd3b1957d 100644 (file)
@@ -31,7 +31,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -1035,11 +1035,13 @@ static int xhci_invalidate_cancelled_tds
+@@ -1012,11 +1012,13 @@ static int xhci_invalidate_cancelled_tds
                                                 td->urb->stream_id, td->urb,
                                                 cached_td->urb->stream_id, cached_td->urb);
                                cached_td = td;
@@ -45,7 +45,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                }
        }
  
-@@ -1287,10 +1289,7 @@ static void update_ring_for_set_deq_comp
+@@ -1264,10 +1266,7 @@ static void update_ring_for_set_deq_comp
                unsigned int ep_index)
  {
        union xhci_trb *dequeue_temp;
@@ -56,7 +56,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        dequeue_temp = ep_ring->dequeue;
  
        /* If we get two back-to-back stalls, and the first stalled transfer
-@@ -1305,8 +1304,6 @@ static void update_ring_for_set_deq_comp
+@@ -1282,8 +1281,6 @@ static void update_ring_for_set_deq_comp
        }
  
        while (ep_ring->dequeue != dev->eps[ep_index].queued_deq_ptr) {
@@ -65,7 +65,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                ep_ring->dequeue++;
                if (trb_is_link(ep_ring->dequeue)) {
                        if (ep_ring->dequeue ==
-@@ -1316,15 +1313,10 @@ static void update_ring_for_set_deq_comp
+@@ -1293,15 +1290,10 @@ static void update_ring_for_set_deq_comp
                        ep_ring->dequeue = ep_ring->deq_seg->trbs;
                }
                if (ep_ring->dequeue == dequeue_temp) {
index 29f4ce16849f41c2268440d01eb12bb9e0bb7065..e7a512b4bf30a81d5153297852b81a8f8f0353c3 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -299,6 +299,7 @@ static void xhci_pci_quirks(struct devic
+@@ -298,6 +298,7 @@ static void xhci_pci_quirks(struct devic
                xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
                xhci->quirks |= XHCI_VLI_TRB_CACHE_BUG;
                xhci->quirks |= XHCI_VLI_SS_BULK_OUT_BUG;
@@ -40,7 +40,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
-@@ -3555,6 +3555,48 @@ static int xhci_align_td(struct xhci_hcd
+@@ -3532,6 +3532,48 @@ static int xhci_align_td(struct xhci_hcd
        return 1;
  }
  
@@ -89,7 +89,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
  /* This is very similar to what ehci-q.c qtd_fill() does */
  int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags,
                struct urb *urb, int slot_id, unsigned int ep_index)
-@@ -3723,6 +3765,8 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
+@@ -3700,6 +3742,8 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
        }
  
        check_trb_math(urb, enqd_len);
@@ -98,7 +98,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        giveback_first_trb(xhci, slot_id, ep_index, urb->stream_id,
                        start_cycle, start_trb);
        return 0;
-@@ -3858,6 +3902,8 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
+@@ -3835,6 +3879,8 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
                        /* Event on completion */
                        field | TRB_IOC | TRB_TYPE(TRB_STATUS) | ep_ring->cycle_state);
  
index 662f2d360cf8e23fc4a48b34ddc4d5662acd2fd7..b35584c78661a2a817b5cb7ac8fa43bb5d660cd7 100644 (file)
@@ -41,7 +41,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
  static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
  {
        struct pci_dev                  *pdev = to_pci_dev(dev);
-@@ -299,7 +311,8 @@ static void xhci_pci_quirks(struct devic
+@@ -298,7 +310,8 @@ static void xhci_pci_quirks(struct devic
                xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
                xhci->quirks |= XHCI_VLI_TRB_CACHE_BUG;
                xhci->quirks |= XHCI_VLI_SS_BULK_OUT_BUG;
index 8ba82f4222780fefcc7366840cdbc82536ef7a2b..52a283237f0d9af4e4e094596ca5fd2b6d1711ab 100644 (file)
@@ -181,6 +181,7 @@ CONFIG_ALLOW_DEV_COREDUMP=y
 # CONFIG_AMD_XGBE_HAVE_ECC is not set
 # CONFIG_AMIGA_PARTITION is not set
 # CONFIG_AMILO_RFKILL is not set
+# CONFIG_AMPERE_ERRATUM_AC03_CPU_38 is not set
 # CONFIG_AMT is not set
 # CONFIG_ANDROID is not set
 # CONFIG_ANDROID_BINDER_IPC is not set
index 64241c4801b6d86ec67b962e490944bf70063768..9ec5b539d393ccda1893c4a6f7d89a36eb03ceb5 100644 (file)
@@ -29,7 +29,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
  
  #define QUECTEL_VENDOR_ID                     0x2c7c
  /* These Quectel products use Quectel's vendor ID */
-@@ -1177,6 +1179,11 @@ static const struct usb_device_id option
+@@ -1179,6 +1181,11 @@ static const struct usb_device_id option
          .driver_info = ZLP },
        { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
          .driver_info = RSVD(4) },
index 91654cc294c31f741cca8c16f601071c7a638f34..2675ca47910de9cd246b67d168f93bd1ebf46144 100644 (file)
@@ -91,7 +91,7 @@ Acked-by: Florian Fainelli <f.fainelli@gmail.com>
 
 --- a/drivers/irqchip/irq-bcm6345-l1.c
 +++ b/drivers/irqchip/irq-bcm6345-l1.c
-@@ -257,6 +257,9 @@ static int __init bcm6345_l1_init_one(st
+@@ -253,6 +253,9 @@ static int __init bcm6345_l1_init_one(st
        if (!cpu->map_base)
                return -ENOMEM;
  
@@ -101,7 +101,7 @@ Acked-by: Florian Fainelli <f.fainelli@gmail.com>
        for (i = 0; i < n_words; i++) {
                cpu->enable_cache[i] = 0;
                __raw_writel(0, cpu->map_base + reg_enable(intc, i));
-@@ -335,8 +338,7 @@ static int __init bcm6345_l1_of_init(str
+@@ -331,8 +334,7 @@ static int __init bcm6345_l1_of_init(str
        for_each_cpu(idx, &intc->cpumask) {
                struct bcm6345_l1_cpu *cpu = intc->cpus[idx];
  
index 602bac5d3d48cb77f2b148114c40b59d41bc0149..8e6c4363283386db688716915df9408c0c135316 100644 (file)
@@ -37,7 +37,7 @@
         * CONFIG_CMDLINE is meant to be a default in case nothing else
 --- a/arch/arm64/Kconfig
 +++ b/arch/arm64/Kconfig
-@@ -2202,6 +2202,14 @@ config CMDLINE_FORCE
+@@ -2221,6 +2221,14 @@ config CMDLINE_FORCE
  
  endchoice