kernel: bump 5.15 to 5.15.146
authorJohn Audia <therealgraysky@proton.me>
Fri, 5 Jan 2024 20:40:08 +0000 (15:40 -0500)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 8 Jan 2024 22:15:35 +0000 (23:15 +0100)
Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.146

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit 37bb3893929fc3277e7d26ff0012d86526c98b77)
[Refresh on top of OpenWrt 23.05]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
14 files changed:
include/kernel-5.15
target/linux/bcm27xx/patches-5.15/950-0030-Revert-Bluetooth-Always-request-for-user-confirmatio.patch
target/linux/bcm27xx/patches-5.15/950-0208-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
target/linux/bcm47xx/patches-5.15/209-b44-register-adm-switch.patch
target/linux/bcm47xx/patches-5.15/210-b44_phy_fix.patch
target/linux/gemini/patches-5.15/0001-usb-host-fotg2-add-Gemini-specific-handling.patch
target/linux/generic/backport-5.15/797-v5.17-net-usb-ax88179_178a-add-TSO-feature.patch
target/linux/generic/backport-5.15/828-v6.4-0003-of-Rename-of_modalias_node.patch
target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch
target/linux/generic/hack-5.15/780-usb-net-MeigLink_modem_support.patch
target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
target/linux/generic/pending-5.15/760-net-core-add-optional-threading-for-backlog-processi.patch
target/linux/mediatek/patches-5.15/432-drivers-spi-Add-support-for-dynamic-calibration.patch
target/linux/mediatek/patches-5.15/850-v6.0-i2c-move-drivers-from-strlcpy-to-strscpy.patch

index 2948d10bdc34b546a9e25aad5422debe0f2c2793..f8ecac57422bfeaef06575a30c9b31b0bd68fe65 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.15 = .145
-LINUX_KERNEL_HASH-5.15.145 = b2a49d87605f3a9491581150315e22337c1afb599efc1e2737481be3a2d6d620
+LINUX_VERSION-5.15 = .146
+LINUX_KERNEL_HASH-5.15.146 = 5a807a5fa2a80ada957d8079681dfb5cc196ec26f43244d1c8a4fd7af592d192
index 9541eb149f457db09da100a4986c50c2d3f9926b..c1925ba890c1d04bde406863f3fa9626f2702781 100644 (file)
@@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/net/bluetooth/smp.c
 +++ b/net/bluetooth/smp.c
-@@ -2207,7 +2207,7 @@ mackey_and_ltk:
+@@ -2214,7 +2214,7 @@ mackey_and_ltk:
        if (err)
                return SMP_UNSPECIFIED;
  
@@ -33,7 +33,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
                if (hcon->out) {
                        sc_dhkey_check(smp);
                        SMP_ALLOW_CMD(smp, SMP_CMD_DHKEY_CHECK);
-@@ -2222,9 +2222,6 @@ mackey_and_ltk:
+@@ -2229,9 +2229,6 @@ mackey_and_ltk:
        confirm_hint = 0;
  
  confirm:
index b668a94790f9d22414a7d7ed71fb8d69be53c9da..c26aa9f1d2ca3599034fa5deac130952821ad9b2 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -3480,6 +3480,7 @@ static int __spi_validate_bits_per_word(
+@@ -3492,6 +3492,7 @@ static int __spi_validate_bits_per_word(
   */
  int spi_setup(struct spi_device *spi)
  {
@@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
        unsigned        bad_bits, ugly_bits;
        int             status;
  
-@@ -3501,6 +3502,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3513,6 +3514,14 @@ int spi_setup(struct spi_device *spi)
                (SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
                 SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
                return -EINVAL;
index 7728ec10942fd3e0c35b48ce5275200f3191d7c7..772e905ecb7602ed5c371f9c364278c160b2c07e 100644 (file)
@@ -19,7 +19,7 @@ Subject: [PATCH 210/210] b44: register adm switch
  
  #include <linux/uaccess.h>
  #include <asm/io.h>
-@@ -2243,6 +2245,69 @@ static void b44_adjust_link(struct net_d
+@@ -2245,6 +2247,69 @@ static void b44_adjust_link(struct net_d
        }
  }
  
@@ -89,7 +89,7 @@ Subject: [PATCH 210/210] b44: register adm switch
  static int b44_register_phy_one(struct b44 *bp)
  {
        __ETHTOOL_DECLARE_LINK_MODE_MASK(mask) = { 0, };
-@@ -2279,6 +2344,9 @@ static int b44_register_phy_one(struct b
+@@ -2281,6 +2346,9 @@ static int b44_register_phy_one(struct b
        if (!mdiobus_is_registered_device(bp->mii_bus, bp->phy_addr) &&
            (sprom->boardflags_lo & (B44_BOARDFLAG_ROBO | B44_BOARDFLAG_ADM))) {
  
@@ -99,7 +99,7 @@ Subject: [PATCH 210/210] b44: register adm switch
                dev_info(sdev->dev,
                         "could not find PHY at %i, use fixed one\n",
                         bp->phy_addr);
-@@ -2473,6 +2541,7 @@ static void b44_remove_one(struct ssb_de
+@@ -2475,6 +2543,7 @@ static void b44_remove_one(struct ssb_de
        unregister_netdev(dev);
        if (bp->flags & B44_FLAG_EXTERNAL_PHY)
                b44_unregister_phy_one(bp);
index bedebc415e73e50e46190487f50fb341a70e4a65..ca7123f2a399c6b9efd8aca3f5fde6b90cc3d8f0 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/broadcom/b44.c
 +++ b/drivers/net/ethernet/broadcom/b44.c
-@@ -429,10 +429,34 @@ static void b44_wap54g10_workaround(stru
+@@ -430,10 +430,34 @@ static void b44_wap54g10_workaround(stru
  error:
        pr_warn("PHY: cannot reset MII transceiver isolate bit\n");
  }
@@ -35,7 +35,7 @@
  #endif
  
  static int b44_setup_phy(struct b44 *bp)
-@@ -441,6 +465,7 @@ static int b44_setup_phy(struct b44 *bp)
+@@ -442,6 +466,7 @@ static int b44_setup_phy(struct b44 *bp)
        int err;
  
        b44_wap54g10_workaround(bp);
@@ -43,7 +43,7 @@
  
        if (bp->flags & B44_FLAG_EXTERNAL_PHY)
                return 0;
-@@ -2173,6 +2198,8 @@ static int b44_get_invariants(struct b44
+@@ -2175,6 +2200,8 @@ static int b44_get_invariants(struct b44
         * valid PHY address. */
        bp->phy_addr &= 0x1F;
  
index 6fb59efd1a33978bbc4d0a8937f7100108e02c2c..2d806e9191e1f34fb3d77c4e4061e7afebe475e3 100644 (file)
@@ -43,7 +43,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
  
  #include <asm/byteorder.h>
  #include <asm/irq.h>
-@@ -5557,6 +5561,72 @@ static void fotg210_init(struct fotg210_
+@@ -5554,6 +5558,72 @@ static void fotg210_init(struct fotg210_
  }
  
  /*
@@ -116,7 +116,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
   * fotg210_hcd_probe - initialize faraday FOTG210 HCDs
   *
   * Allocates basic resources for this USB host controller, and
-@@ -5633,6 +5703,12 @@ static int fotg210_hcd_probe(struct plat
+@@ -5630,6 +5700,12 @@ static int fotg210_hcd_probe(struct plat
  
        fotg210_init(fotg210);
  
index a2168aaba5f6459b9242f78c3473fefb27281ced..598fa05e9bf00c21051ed5c9289a80ffbe5c1800 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/usb/ax88179_178a.c
 +++ b/drivers/net/usb/ax88179_178a.c
-@@ -1377,11 +1377,12 @@ static int ax88179_bind(struct usbnet *d
+@@ -1363,11 +1363,12 @@ static int ax88179_bind(struct usbnet *d
        dev->mii.phy_id = 0x03;
        dev->mii.supports_gmii = 1;
  
@@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Enable checksum offload */
        *tmp = AX_RXCOE_IP | AX_RXCOE_TCP | AX_RXCOE_UDP |
-@@ -1587,17 +1588,19 @@ ax88179_tx_fixup(struct usbnet *dev, str
+@@ -1573,17 +1574,19 @@ ax88179_tx_fixup(struct usbnet *dev, str
  {
        u32 tx_hdr1, tx_hdr2;
        int frame_size = dev->maxpacket;
@@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        if ((skb_header_cloned(skb) || headroom < 0) &&
            pskb_expand_head(skb, headroom < 0 ? 8 : 0, 0, GFP_ATOMIC)) {
                dev_kfree_skb_any(skb);
-@@ -1608,6 +1611,8 @@ ax88179_tx_fixup(struct usbnet *dev, str
+@@ -1594,6 +1597,8 @@ ax88179_tx_fixup(struct usbnet *dev, str
        put_unaligned_le32(tx_hdr1, ptr);
        put_unaligned_le32(tx_hdr2, ptr + 4);
  
index 6c205217018b525ba9cafc3e567b7f5aa1aef4f0..855d45311e627a0e0a75b55b8372533f05f431a2 100644 (file)
@@ -148,7 +148,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
   * of_find_node_by_phandle - Find a node given a phandle
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -2128,8 +2128,8 @@ of_register_spi_device(struct spi_contro
+@@ -2140,8 +2140,8 @@ of_register_spi_device(struct spi_contro
        }
  
        /* Select device driver */
index ac9a161b5f5915449850866c2e3049edabdfcd8a..b5a20de21bf16dd8ca7b411ad9186c79e7e37fc0 100644 (file)
@@ -116,7 +116,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        help
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -3597,6 +3597,11 @@ static int xmit_one(struct sk_buff *skb,
+@@ -3600,6 +3600,11 @@ static int xmit_one(struct sk_buff *skb,
        if (dev_nit_active(dev))
                dev_queue_xmit_nit(skb, dev);
  
index 60f02f71436e6cbfad65bfd116430602e636d8b8..0060fbbd2addc2cffcedb48540d29acc77a003b8 100644 (file)
@@ -43,7 +43,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
  
  #define QUECTEL_VENDOR_ID                     0x2c7c
  /* These Quectel products use Quectel's vendor ID */
-@@ -1146,6 +1151,11 @@ static const struct usb_device_id option
+@@ -1147,6 +1152,11 @@ static const struct usb_device_id option
        { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x0023)}, /* ONYX 3G device */
        { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9000), /* SIMCom SIM5218 */
          .driver_info = NCTRL(0) | NCTRL(1) | NCTRL(2) | NCTRL(3) | RSVD(4) },
@@ -55,7 +55,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
        /* Quectel products using Qualcomm vendor ID */
        { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC15)},
        { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC20),
-@@ -1187,6 +1197,11 @@ static const struct usb_device_id option
+@@ -1188,6 +1198,11 @@ static const struct usb_device_id option
          .driver_info = ZLP },
        { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
          .driver_info = RSVD(4) },
index 46856e1552fa062463e364a98041e7dd4f27616f..77d6f84256d6804527a6ed975bb576c371b1ea37 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        __u8                    inner_protocol_type:1;
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -6074,6 +6074,9 @@ static enum gro_result dev_gro_receive(s
+@@ -6077,6 +6077,9 @@ static enum gro_result dev_gro_receive(s
        int same_flow;
        int grow;
  
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (netif_elide_gro(skb->dev))
                goto normal;
  
-@@ -8088,6 +8091,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -8091,6 +8094,48 @@ static void __netdev_adjacent_dev_unlink
                                           &upper_dev->adj_list.lower);
  }
  
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  static int __netdev_upper_dev_link(struct net_device *dev,
                                   struct net_device *upper_dev, bool master,
                                   void *upper_priv, void *upper_info,
-@@ -8139,6 +8184,7 @@ static int __netdev_upper_dev_link(struc
+@@ -8142,6 +8187,7 @@ static int __netdev_upper_dev_link(struc
        if (ret)
                return ret;
  
@@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
                                            &changeupper_info.info);
        ret = notifier_to_errno(ret);
-@@ -8235,6 +8281,7 @@ static void __netdev_upper_dev_unlink(st
+@@ -8238,6 +8284,7 @@ static void __netdev_upper_dev_unlink(st
  
        __netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
  
@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
                                      &changeupper_info.info);
  
-@@ -9054,6 +9101,7 @@ int dev_set_mac_address(struct net_devic
+@@ -9057,6 +9104,7 @@ int dev_set_mac_address(struct net_devic
        if (err)
                return err;
        dev->addr_assign_type = NET_ADDR_SET;
index 62daef91b1506e6e947d3dc260f8de497715c3f2..2f6e96b768752837f1bbd0e395322d6a64e024bc 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #endif
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
-@@ -4583,7 +4583,7 @@ static int rps_ipi_queued(struct softnet
+@@ -4586,7 +4586,7 @@ static int rps_ipi_queued(struct softnet
  #ifdef CONFIG_RPS
        struct softnet_data *mysd = this_cpu_ptr(&softnet_data);
  
@@ -39,7 +39,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                sd->rps_ipi_next = mysd->rps_ipi_list;
                mysd->rps_ipi_list = sd;
  
-@@ -5764,6 +5764,8 @@ static DEFINE_PER_CPU(struct work_struct
+@@ -5767,6 +5767,8 @@ static DEFINE_PER_CPU(struct work_struct
  /* Network device is going away, flush any packets still pending */
  static void flush_backlog(struct work_struct *work)
  {
@@ -48,7 +48,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        struct sk_buff *skb, *tmp;
        struct softnet_data *sd;
  
-@@ -5779,9 +5781,18 @@ static void flush_backlog(struct work_st
+@@ -5782,9 +5784,18 @@ static void flush_backlog(struct work_st
                        input_queue_head_incr(sd);
                }
        }
@@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
                if (skb->dev->reg_state == NETREG_UNREGISTERING) {
                        __skb_unlink(skb, &sd->process_queue);
-@@ -5789,7 +5800,18 @@ static void flush_backlog(struct work_st
+@@ -5792,7 +5803,18 @@ static void flush_backlog(struct work_st
                        input_queue_head_incr(sd);
                }
        }
@@ -86,7 +86,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  }
  
  static bool flush_required(int cpu)
-@@ -6472,6 +6494,7 @@ static int process_backlog(struct napi_s
+@@ -6475,6 +6497,7 @@ static int process_backlog(struct napi_s
  
                local_irq_disable();
                rps_lock(sd);
@@ -94,7 +94,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                if (skb_queue_empty(&sd->input_pkt_queue)) {
                        /*
                         * Inline a custom version of __napi_complete().
-@@ -6481,7 +6504,8 @@ static int process_backlog(struct napi_s
+@@ -6484,7 +6507,8 @@ static int process_backlog(struct napi_s
                         * We can use a plain write instead of clear_bit(),
                         * and we dont need an smp_mb() memory barrier.
                         */
@@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                        again = false;
                } else {
                        skb_queue_splice_tail_init(&sd->input_pkt_queue,
-@@ -6898,6 +6922,57 @@ int dev_set_threaded(struct net_device *
+@@ -6901,6 +6925,57 @@ int dev_set_threaded(struct net_device *
  }
  EXPORT_SYMBOL(dev_set_threaded);
  
@@ -162,7 +162,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  void netif_napi_add(struct net_device *dev, struct napi_struct *napi,
                    int (*poll)(struct napi_struct *, int), int weight)
  {
-@@ -11378,6 +11453,9 @@ static int dev_cpu_dead(unsigned int old
+@@ -11381,6 +11456,9 @@ static int dev_cpu_dead(unsigned int old
        raise_softirq_irqoff(NET_TX_SOFTIRQ);
        local_irq_enable();
  
@@ -172,7 +172,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #ifdef CONFIG_RPS
        remsd = oldsd->rps_ipi_list;
        oldsd->rps_ipi_list = NULL;
-@@ -11717,6 +11795,7 @@ static int __init net_dev_init(void)
+@@ -11720,6 +11798,7 @@ static int __init net_dev_init(void)
                sd->cpu = i;
  #endif
  
index 4c980e9438d1eec11586d53fd5fedc0c94b2ef7a..e795eda3b2b77f2bb3f409273776ed2eca1d44e2 100644 (file)
@@ -11,7 +11,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -1234,6 +1234,70 @@ static int spi_transfer_wait(struct spi_
+@@ -1246,6 +1246,70 @@ static int spi_transfer_wait(struct spi_
        return 0;
  }
  
@@ -82,7 +82,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
  static void _spi_transfer_delay_ns(u32 ns)
  {
        if (!ns)
-@@ -2021,6 +2085,75 @@ void spi_flush_queue(struct spi_controll
+@@ -2033,6 +2097,75 @@ void spi_flush_queue(struct spi_controll
  /*-------------------------------------------------------------------------*/
  
  #if defined(CONFIG_OF)
@@ -158,7 +158,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
  static int of_spi_parse_dt(struct spi_controller *ctlr, struct spi_device *spi,
                           struct device_node *nc)
  {
-@@ -2139,6 +2272,10 @@ of_register_spi_device(struct spi_contro
+@@ -2151,6 +2284,10 @@ of_register_spi_device(struct spi_contro
        if (rc)
                goto err_out;
  
index 69f2d2a545dcf470c10766dda0906ed4173be3a6..d5c8a4e3008b598a18e04d707456da2e5180fce2 100644 (file)
@@ -72,7 +72,7 @@ Signed-off-by: Wolfram Sang <wsa@kernel.org>
        idev->adapter.dev.parent = &pdev->dev;
 --- a/drivers/i2c/busses/i2c-aspeed.c
 +++ b/drivers/i2c/busses/i2c-aspeed.c
-@@ -1028,7 +1028,7 @@ static int aspeed_i2c_probe_bus(struct p
+@@ -1044,7 +1044,7 @@ static int aspeed_i2c_probe_bus(struct p
        bus->adap.algo = &aspeed_i2c_algo;
        bus->adap.dev.parent = &pdev->dev;
        bus->adap.dev.of_node = pdev->dev.of_node;