Selaa lähdekoodia

kernel: bump 6.1 to 6.1.43

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 <[email protected]>
John Audia 2 vuotta sitten
vanhempi
sitoutus
549e710fc0

+ 2 - 2
include/kernel-6.1

@@ -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

+ 1 - 1
target/linux/bcm27xx/patches-6.1/950-0327-usb-xhci-workaround-for-bogus-SET_DEQ_PENDING-endpoi.patch

@@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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)) {

+ 9 - 5
target/linux/bcm27xx/patches-6.1/950-0359-xhci-quirks-add-link-TRB-quirk-for-VL805.patch

@@ -22,17 +22,21 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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:

+ 2 - 2
target/linux/bcm27xx/patches-6.1/950-0361-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch

@@ -204,7 +204,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
  		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 <[email protected]>
  			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
  		}
  	}
  

+ 2 - 2
target/linux/bcm27xx/patches-6.1/950-0362-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch

@@ -53,9 +53,9 @@ Signed-off-by: Jonathan Bell <[email protected]>
  			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;
  	}

+ 5 - 5
target/linux/bcm27xx/patches-6.1/950-0390-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch

@@ -26,8 +26,8 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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 <[email protected]>
  	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 <[email protected]>
  	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 <[email protected]>
  	/* 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;
  

+ 3 - 3
target/linux/bcm27xx/patches-6.1/950-0392-usb-xhci-rework-XHCI_VLI_SS_BULK_OUT_BUG-quirk.patch

@@ -13,7 +13,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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 <[email protected]>
  	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 <[email protected]>
  	}
  
  	/* 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;
  

+ 4 - 4
target/linux/bcm27xx/patches-6.1/950-0438-usb-xhci-account-for-num_trbs_free-when-invalidating.patch

@@ -31,7 +31,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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 <[email protected]>
  		}
  	}
  
-@@ -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 <[email protected]>
  	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 <[email protected]>
  		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) {

+ 4 - 4
target/linux/bcm27xx/patches-6.1/950-0469-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch

@@ -30,7 +30,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
 
 --- 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 <[email protected]>
  	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 <[email protected]>
  /* 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 <[email protected]>
  	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);
  

+ 1 - 1
target/linux/bcm27xx/patches-6.1/950-0520-xhci-constrain-XHCI_VLI_HUB_TT_QUIRK-to-old-firmware.patch

@@ -41,7 +41,7 @@ Signed-off-by: Jonathan Bell <[email protected]>
  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;

+ 1 - 0
target/linux/generic/config-6.1

@@ -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

+ 1 - 1
target/linux/generic/hack-6.1/780-usb-net-MeigLink_modem_support.patch

@@ -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) },

+ 2 - 2
target/linux/generic/pending-6.1/351-irqchip-bcm-6345-l1-request-memory-region.patch

@@ -91,7 +91,7 @@ Acked-by: Florian Fainelli <[email protected]>
 
 --- 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 <[email protected]>
  	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];
  

+ 1 - 1
target/linux/mediatek/patches-6.1/901-arm-add-cmdline-override.patch

@@ -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