kernel: bump 5.4 to 5.4.133
authorJohn Audia <graysky@archlinux.us>
Mon, 19 Jul 2021 09:17:10 +0000 (05:17 -0400)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 25 Jul 2021 11:52:38 +0000 (13:52 +0200)
Manually rebased:
  pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch

All other patches automatically rebased.

Build system: x86_64
Build-tested: ipq806x/R7800
Run-tested: ipq806x/R7800

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
26 files changed:
include/kernel-version.mk
target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch
target/linux/bcm27xx/patches-5.4/950-0441-PCI-of-Add-inbound-resource-parsing-to-helpers.patch
target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch
target/linux/bcm27xx/patches-5.4/950-0795-media-v4l2-subdev-Introduce-get-set-_mbus_config-pad.patch
target/linux/bcm27xx/patches-5.4/950-0799-media-v4l2-subdev-Remove-s-g-_mbus_config-video-ops.patch
target/linux/generic/hack-5.4/683-NET-add-mac-address-property.patch
target/linux/generic/hack-5.4/780-drivers-net-mediatek-register-of_platform-for-every-.patch
target/linux/generic/hack-5.4/781-dsa-register-every-port-with-of_platform.patch
target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
target/linux/generic/pending-5.4/681-NET-add-mtd-mac-address-support-to-of_get_mac_addres.patch
target/linux/generic/pending-5.4/682-of_net-add-mac-address-increment-support.patch
target/linux/generic/pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch
target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch
target/linux/layerscape/patches-5.4/812-pcie-0005-MLK-20684-PCI-Disable-MSI-on-CYW4356-and-CYW4359-chi.patch
target/linux/layerscape/patches-5.4/812-pcie-0006-MLK-20716-PCI-add-quirk-for-cyw4356-to-disable-D3-mo.patch
target/linux/layerscape/patches-5.4/812-pcie-0007-PCI-Disable-MSI-on-marvel-88w9098-and-88w8997-chips.patch
target/linux/mvebu/patches-5.4/001-PCI-aardvark-Wait-for-endpoint-to-be-ready-before-tr.patch
target/linux/mvebu/patches-5.4/016-PCI-aardvark-Train-link-immediately-after-enabling-t.patch
target/linux/mvebu/patches-5.4/017-PCI-aardvark-Improve-link-training.patch
target/linux/mvebu/patches-5.4/018-PCI-aardvark-Issue-PERST-via-GPIO.patch
target/linux/mvebu/patches-5.4/019-PCI-aardvark-Add-PHY-support.patch
target/linux/mvebu/patches-5.4/024-PCI-aardvark-Don-t-touch-PCIe-registers-if-no-card-c.patch
target/linux/mvebu/patches-5.4/026-PCI-aardvark-Fix-initialization-with-old-Marvell-s-A.patch
target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch
target/linux/ramips/patches-5.4/0031-uvc-add-iPassion-iP2970-support.patch

index 5424e1a5f1c6245b55c20b76d4995888e2db585f..6dc4ad61332f34661a4ea8aaa055594be6449f70 100644 (file)
@@ -6,10 +6,10 @@ ifdef CONFIG_TESTING_KERNEL
   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
 endif
 
-LINUX_VERSION-5.4 = .132
+LINUX_VERSION-5.4 = .133
 LINUX_VERSION-5.10 = .52
 
-LINUX_KERNEL_HASH-5.4.132 = 8466adbfb3579e751ede683496df7bb20f258b5f882250f3dd82be63736d00ef
+LINUX_KERNEL_HASH-5.4.133 = 89a366fbb8784f5bc296c9f3311094e9e4cffeb6dbdf7589168cc032cb950830
 LINUX_KERNEL_HASH-5.10.52 = 769e57a0fa218589fa2f8460b8682eb784a72718c7a3d95295f382a77902ae79
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
index f70887855b9e5cd0f2cc12f67f3e67eff451c4d4..16db439b89c7c6027926f768d7c548657786010d 100644 (file)
@@ -267,7 +267,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
                goto out;
 --- a/drivers/mmc/core/core.c
 +++ b/drivers/mmc/core/core.c
-@@ -1922,7 +1922,8 @@ EXPORT_SYMBOL(mmc_erase);
+@@ -1925,7 +1925,8 @@ EXPORT_SYMBOL(mmc_erase);
  int mmc_can_erase(struct mmc_card *card)
  {
        if ((card->host->caps & MMC_CAP_ERASE) &&
index 6e04d425bf388e3651f4414571d2b3bb276476e1..86ef1212302bae852f90fe3ba7eea59d5a883b22 100644 (file)
@@ -82,7 +82,7 @@ Cc: linux-rockchip@lists.infradead.org
  
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -1049,7 +1049,8 @@ static int advk_pcie_probe(struct platfo
+@@ -1060,7 +1060,8 @@ static int advk_pcie_probe(struct platfo
                return ret;
        }
  
index 8acdba434e755e7ffedea56562c5efa09c67efa8..89fd58dca0889e6f1d86b34d3a49c40c4c52b220 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
  #define MAX_TUNING_LOOP 40
  
-@@ -2758,7 +2758,7 @@ static void sdhci_timeout_timer(struct t
+@@ -2762,7 +2762,7 @@ static void sdhci_timeout_timer(struct t
        spin_lock_irqsave(&host->lock, flags);
  
        if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
@@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                       mmc_hostname(host->mmc));
                sdhci_dumpregs(host);
  
-@@ -2780,7 +2780,7 @@ static void sdhci_timeout_data_timer(str
+@@ -2784,7 +2784,7 @@ static void sdhci_timeout_data_timer(str
  
        if (host->data || host->data_cmd ||
            (host->cmd && sdhci_data_line_cmd(host->cmd))) {
index 910828421be5e9491d45f2f2046926686de8d168..30ca593bccc0af62d22466c82520c114682df97e 100644 (file)
@@ -20,7 +20,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
 
 --- a/include/media/v4l2-subdev.h
 +++ b/include/media/v4l2-subdev.h
-@@ -670,6 +670,29 @@ struct v4l2_subdev_pad_config {
+@@ -674,6 +674,29 @@ struct v4l2_subdev_pad_config {
   *
   * @set_frame_desc: set the low level media bus frame parameters, @fd array
   *                  may be adjusted by the subdev driver to device capabilities.
@@ -50,7 +50,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
   */
  struct v4l2_subdev_pad_ops {
        int (*init_cfg)(struct v4l2_subdev *sd,
-@@ -710,6 +733,10 @@ struct v4l2_subdev_pad_ops {
+@@ -714,6 +737,10 @@ struct v4l2_subdev_pad_ops {
                              struct v4l2_mbus_frame_desc *fd);
        int (*set_frame_desc)(struct v4l2_subdev *sd, unsigned int pad,
                              struct v4l2_mbus_frame_desc *fd);
index a7186da342890afdf3a2e21bfc2c085f736ad464..0986fa63f543110ad77ff532f1853992459d6586 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
 
 --- a/include/media/v4l2-subdev.h
 +++ b/include/media/v4l2-subdev.h
-@@ -402,12 +402,6 @@ struct v4l2_mbus_frame_desc {
+@@ -406,12 +406,6 @@ struct v4l2_mbus_frame_desc {
   *
   * @query_dv_timings: callback for VIDIOC_QUERY_DV_TIMINGS() ioctl handler code.
   *
@@ -30,7 +30,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
   * @s_rx_buffer: set a host allocated memory buffer for the subdev. The subdev
   *    can adjust @size to a lower value and must not write more data to the
   *    buffer starting at @data than the original value of @size.
-@@ -435,10 +429,6 @@ struct v4l2_subdev_video_ops {
+@@ -439,10 +433,6 @@ struct v4l2_subdev_video_ops {
                        struct v4l2_dv_timings *timings);
        int (*query_dv_timings)(struct v4l2_subdev *sd,
                        struct v4l2_dv_timings *timings);
index de561c5336c3f7678ee33fad00dc36a57ad62faf..f0418dbb703afb42246e6ea040936ad8d20932d7 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
 
 --- a/drivers/of/of_net.c
 +++ b/drivers/of/of_net.c
-@@ -61,6 +61,7 @@ static void *of_get_mac_addr_nvmem(struc
+@@ -55,6 +55,7 @@ static void *of_get_mac_addr_nvmem(struc
        void *mac;
        u8 nvmem_mac[ETH_ALEN];
        struct platform_device *pdev = of_find_device_by_node(np);
@@ -26,7 +26,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  
        if (!pdev) {
                *err = -ENODEV;
-@@ -78,10 +79,29 @@ static void *of_get_mac_addr_nvmem(struc
+@@ -72,10 +73,29 @@ static void *of_get_mac_addr_nvmem(struc
        put_device(&pdev->dev);
        if (!mac) {
                *err = -ENOMEM;
index d1383cc2d12168f16fc902fdd4bc801b8a0ceda3..09b413ea97fdba3e6965dc8801dcd986d9487343 100644 (file)
@@ -14,11 +14,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
  drivers/net/ethernet/mediatek/mtk_eth_soc.c | 2 ++
  1 file changed, 2 insertions(+)
 
-diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-index ed4eacef17ce..666803817540 100644
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -3015,6 +3015,8 @@ static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
+@@ -3034,6 +3034,8 @@ static int mtk_add_mac(struct mtk_eth *e
        eth->netdev[id]->dev.of_node = np;
  
        eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH - MTK_RX_ETH_HLEN;
@@ -27,6 +25,3 @@ index ed4eacef17ce..666803817540 100644
  
        return 0;
  
--- 
-2.31.1
-
index f9a684c093eb4cc747c2352d7c83483f5629bc3f..bd7e190bff2336171f32cb09a00accf263108968 100644 (file)
@@ -15,8 +15,6 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
  net/dsa/dsa2.c | 2 +
  1 file changed, 2 insertion(+)
 
-diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c
-index b71e87909f0e..55bbc1a769ca 100644
 --- a/net/dsa/dsa2.c
 +++ b/net/dsa/dsa2.c
 @@ -14,6 +14,7 @@
@@ -27,7 +25,7 @@ index b71e87909f0e..55bbc1a769ca 100644
  #include <net/devlink.h>
  
  #include "dsa_priv.h"
-@@ -392,6 +392,7 @@ static int dsa_port_setup(struct dsa_port *dp)
+@@ -318,6 +319,7 @@ static int dsa_port_setup(struct dsa_por
                        break;
                devlink_port_registered = true;
  
@@ -35,6 +33,3 @@ index b71e87909f0e..55bbc1a769ca 100644
                dp->mac = of_get_mac_address(dp->dn);
                err = dsa_slave_create(dp);
                if (err)
--- 
-2.31.1
-
index 8871f3457a574f02afbcdb0c199a1b44edc9b7dd..4839ac5e70e5e26c5df97ac05e634003efb1e2d7 100644 (file)
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (netif_elide_gro(skb->dev))
                goto normal;
  
-@@ -7284,6 +7287,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -7291,6 +7294,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,
-@@ -7334,6 +7379,7 @@ static int __netdev_upper_dev_link(struc
+@@ -7341,6 +7386,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);
-@@ -7427,6 +7473,7 @@ void netdev_upper_dev_unlink(struct net_
+@@ -7434,6 +7480,7 @@ void netdev_upper_dev_unlink(struct net_
  
        __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);
  
-@@ -8157,6 +8204,7 @@ int dev_set_mac_address(struct net_devic
+@@ -8164,6 +8211,7 @@ int dev_set_mac_address(struct net_devic
        if (err)
                return err;
        dev->addr_assign_type = NET_ADDR_SET;
index 44a6b6a0476f268ac6e3fbf15ecea925f7e369cd..01f940dec7d8a208c71bb3cdfde6b36b6e657ddf 100644 (file)
@@ -15,8 +15,6 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
  drivers/of/of_net.c | 75 ++++++++++++++++++++++++++++++++++++++++++++-
  1 file changed, 74 insertions(+), 1 deletion(-)
 
-diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
-index 6e411821583e..f072e2509cc9 100644
 --- a/drivers/of/of_net.c
 +++ b/drivers/of/of_net.c
 @@ -11,6 +11,7 @@
@@ -27,7 +25,7 @@ index 6e411821583e..f072e2509cc9 100644
  
  /**
   * of_get_phy_mode - Get phy mode for given device_node
-@@ -45,7 +46,7 @@ int of_get_phy_mode(struct device_node *np, phy_interface_t *interface)
+@@ -39,7 +40,7 @@ int of_get_phy_mode(struct device_node *
  }
  EXPORT_SYMBOL_GPL(of_get_phy_mode);
  
@@ -36,7 +34,7 @@ index 6e411821583e..f072e2509cc9 100644
  {
        struct property *pp = of_find_property(np, name, NULL);
  
-@@ -78,6 +79,70 @@ static const void *of_get_mac_addr_nvmem(struct device_node *np)
+@@ -72,6 +73,70 @@ static const void *of_get_mac_addr_nvmem
        return mac;
  }
  
@@ -107,7 +105,7 @@ index 6e411821583e..f072e2509cc9 100644
  /**
   * Search the device tree for the best MAC address to use.  'mac-address' is
   * checked first, because that is supposed to contain to "most recent" MAC
-@@ -98,6 +163,10 @@ static const void *of_get_mac_addr_nvmem(struct device_node *np)
+@@ -92,6 +157,10 @@ static const void *of_get_mac_addr_nvmem
   * this case, the real MAC is in 'local-mac-address', and 'mac-address' exists
   * but is all zeros.
   *
@@ -118,7 +116,7 @@ index 6e411821583e..f072e2509cc9 100644
   * Return: Will be a valid pointer on success and ERR_PTR in case of error.
  */
  const void *of_get_mac_address(struct device_node *np)
-@@ -116,6 +185,10 @@ const void *of_get_mac_address(struct device_node *np)
+@@ -110,6 +179,10 @@ const void *of_get_mac_address(struct de
        if (addr)
                return addr;
  
@@ -129,6 +127,3 @@ index 6e411821583e..f072e2509cc9 100644
        return of_get_mac_addr_nvmem(np);
  }
  EXPORT_SYMBOL(of_get_mac_address);
--- 
-2.30.2
-
index 1c08e23699460030d840cbf056a17c8f4afc56a4..81f946ff7fee5f4b8e2503b037dfe56737a421bf 100644 (file)
@@ -18,11 +18,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
  drivers/of/of_net.c | 59 ++++++++++++++++++++++++++++++++++-----------
  1 file changed, 45 insertions(+), 14 deletions(-)
 
-diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
-index f072e2509cc9..0dbd1f7ef396 100644
 --- a/drivers/of/of_net.c
 +++ b/drivers/of/of_net.c
-@@ -55,31 +55,36 @@ static void *of_get_mac_addr(struct device_node *np, const char *name)
+@@ -49,31 +49,36 @@ static void *of_get_mac_addr(struct devi
        return NULL;
  }
  
@@ -67,7 +65,7 @@ index f072e2509cc9..0dbd1f7ef396 100644
  {
  #ifdef CONFIG_MTD
        struct device_node *mtd_np = NULL;
-@@ -167,28 +172,54 @@ static const void *of_get_mac_address_mtd(struct device_node *np)
+@@ -161,28 +166,54 @@ free:
   * If a mtd-mac-address property exists, try to fetch the MAC address from the
   * specified mtd device, and store it as a 'mac-address' property
   *
@@ -128,6 +126,3 @@ index f072e2509cc9..0dbd1f7ef396 100644
 +      return addr;
  }
  EXPORT_SYMBOL(of_get_mac_address);
--- 
-2.30.2
-
index b30482468bb0e24096589e6c63c495199fd71050..7c9726b8250925f2dbe0573837d73f42785b1d6f 100644 (file)
@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        local_irq_save(flags);
        ____napi_schedule(this_cpu_ptr(&softnet_data), n);
        local_irq_restore(flags);
-@@ -5978,6 +5984,11 @@ EXPORT_SYMBOL(napi_schedule_prep);
+@@ -5982,6 +5988,10 @@ EXPORT_SYMBOL(napi_schedule_prep);
   */
  void __napi_schedule_irqoff(struct napi_struct *n)
  {
@@ -115,11 +115,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 +              queue_work(napi_workq, &n->work);
 +              return;
 +      }
-+
-       ____napi_schedule(this_cpu_ptr(&softnet_data), n);
- }
- EXPORT_SYMBOL(__napi_schedule_irqoff);
-@@ -6239,9 +6250,89 @@ static void init_gro_hash(struct napi_st
+       if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+               ____napi_schedule(this_cpu_ptr(&softnet_data), n);
+       else
+@@ -6246,9 +6256,89 @@ static void init_gro_hash(struct napi_st
        napi->gro_bitmask = 0;
  }
  
@@ -209,7 +208,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        INIT_LIST_HEAD(&napi->poll_list);
        hrtimer_init(&napi->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED);
        napi->timer.function = napi_watchdog;
-@@ -6258,6 +6349,7 @@ void netif_napi_add(struct net_device *d
+@@ -6265,6 +6355,7 @@ void netif_napi_add(struct net_device *d
  #ifdef CONFIG_NETPOLL
        napi->poll_owner = -1;
  #endif
@@ -217,7 +216,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        set_bit(NAPI_STATE_SCHED, &napi->state);
        set_bit(NAPI_STATE_NPSVC, &napi->state);
        list_add_rcu(&napi->dev_list, &dev->napi_list);
-@@ -6298,6 +6390,7 @@ static void flush_gro_hash(struct napi_s
+@@ -6305,6 +6396,7 @@ static void flush_gro_hash(struct napi_s
  void netif_napi_del(struct napi_struct *napi)
  {
        might_sleep();
@@ -225,7 +224,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (napi_hash_del(napi))
                synchronize_net();
        list_del_init(&napi->dev_list);
-@@ -6310,50 +6403,18 @@ EXPORT_SYMBOL(netif_napi_del);
+@@ -6317,50 +6409,18 @@ EXPORT_SYMBOL(netif_napi_del);
  
  static int napi_poll(struct napi_struct *n, struct list_head *repoll)
  {
@@ -239,8 +238,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        have = netpoll_poll_lock(n);
  
 -      weight = n->weight;
-+      work = __napi_poll(n, &do_repoll);
+-
 -      /* This NAPI_STATE_SCHED test is for avoiding a race
 -       * with netpoll's poll_napi().  Only the entity which
 -       * obtains the lock and sees NAPI_STATE_SCHED set will
@@ -254,7 +252,8 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 -      }
 -
 -      WARN_ON_ONCE(work > weight);
--
++      work = __napi_poll(n, &do_repoll);
 -      if (likely(work < weight))
 -              goto out_unlock;
 -
@@ -280,7 +279,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        /* Some drivers may have called napi_schedule
         * prior to exhausting their budget.
-@@ -10333,6 +10394,10 @@ static int __init net_dev_init(void)
+@@ -10340,6 +10400,10 @@ static int __init net_dev_init(void)
                sd->backlog.weight = weight_p;
        }
  
index 3f89103fa2ad0e384442bbfa7abe36adfd05d7fd..c840a7e2c67a8e213ba401dd70bbd4b32eeacb5b 100644 (file)
@@ -25,7 +25,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -205,6 +205,7 @@ static void quirk_mmio_always_on(struct
+@@ -206,6 +206,7 @@ static void quirk_mmio_always_on(struct
  DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID,
                                PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on);
  
@@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * The Mellanox Tavor device gives false positive parity errors.  Mark this
   * device with a broken_parity_status to allow PCI scanning code to "skip"
-@@ -3320,6 +3321,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
+@@ -3321,6 +3322,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
  
@@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
   * To work around this, query the size it should be configured to by the
-@@ -3345,6 +3348,8 @@ static void quirk_intel_ntb(struct pci_d
+@@ -3346,6 +3349,8 @@ static void quirk_intel_ntb(struct pci_d
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
  
@@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * Some BIOS implementations leave the Intel GPU interrupts enabled, even
   * though no one is handling them (e.g., if the i915 driver is never
-@@ -3383,6 +3388,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+@@ -3384,6 +3389,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
  
index 5a00cf765f2c8bd2bc2f2b639783ab1843604486..5163f5fd9590bab8578bbe7bea09bdc77b5ccc4c 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
 
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -2523,6 +2523,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
+@@ -2524,6 +2524,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT3364, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
index cb81748844b49d84da55e40a2eeec93025c5d6ed..1f9eb5c83c49654763bee214bd031342b176767a 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
 
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -1356,6 +1356,10 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR
+@@ -1357,6 +1357,10 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR
     occur when mode detecting */
  DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR_ID_VIA, PCI_ANY_ID,
                                PCI_CLASS_STORAGE_IDE, 8, quirk_no_ata_d3);
index 835b5cedb9a300e112a2d4b5302b9cf6b5061f9e..98d556386d952f272547f1eaedb849d171f4f903 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
 
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -2529,6 +2529,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
+@@ -2530,6 +2530,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ec, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
index 2df33061579ced2925a59347b8bfbee7c8632d98..31f5accab6833031c9b0885d2d1b92d7c7774ec1 100644 (file)
@@ -33,7 +33,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
 
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -338,6 +338,14 @@ static void advk_pcie_setup_hw(struct ad
+@@ -349,6 +349,14 @@ static void advk_pcie_setup_hw(struct ad
        reg |= PIO_CTRL_ADDR_WIN_DISABLE;
        advk_writel(pcie, reg, PIO_CTRL);
  
index c9e49ac2f1051700f220b1333e236daf910bff05..3ff0dcb16630a343530f338233f33ec36972b22b 100644 (file)
@@ -29,7 +29,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
 
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -300,11 +300,6 @@ static void advk_pcie_setup_hw(struct ad
+@@ -311,11 +311,6 @@ static void advk_pcie_setup_hw(struct ad
        reg |= LANE_COUNT_1;
        advk_writel(pcie, reg, PCIE_CORE_CTRL0_REG);
  
@@ -41,7 +41,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
        /* Enable MSI */
        reg = advk_readl(pcie, PCIE_CORE_CTRL2_REG);
        reg |= PCIE_CORE_CTRL2_MSI_ENABLE;
-@@ -346,7 +341,15 @@ static void advk_pcie_setup_hw(struct ad
+@@ -357,7 +352,15 @@ static void advk_pcie_setup_hw(struct ad
         */
        msleep(PCI_PM_D3COLD_WAIT);
  
index 19d0a5d5134d340cb14884e4e15b24111c571a2e..e3a38740c3961a0e276c79d152ae0963d4bcf128 100644 (file)
@@ -42,7 +42,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  #define     PCIE_CORE_LINK_WIDTH_SHIFT                                20
  #define PCIE_CORE_ERR_CAPCTL_REG                              0x118
  #define     PCIE_CORE_ERR_CAPCTL_ECRC_CHK_TX                  BIT(5)
-@@ -201,6 +202,7 @@ struct advk_pcie {
+@@ -202,6 +203,7 @@ struct advk_pcie {
        struct mutex msi_used_lock;
        u16 msi_msg;
        int root_bus_nr;
@@ -50,7 +50,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
        struct pci_bridge_emul bridge;
  };
  
-@@ -225,20 +227,16 @@ static int advk_pcie_link_up(struct advk
+@@ -226,20 +228,16 @@ static int advk_pcie_link_up(struct advk
  
  static int advk_pcie_wait_for_link(struct advk_pcie *pcie)
  {
@@ -72,7 +72,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
        return -ETIMEDOUT;
  }
  
-@@ -253,6 +251,85 @@ static void advk_pcie_wait_for_retrain(s
+@@ -254,6 +252,85 @@ static void advk_pcie_wait_for_retrain(s
        }
  }
  
@@ -158,7 +158,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  static void advk_pcie_setup_hw(struct advk_pcie *pcie)
  {
        u32 reg;
-@@ -288,12 +365,6 @@ static void advk_pcie_setup_hw(struct ad
+@@ -299,12 +376,6 @@ static void advk_pcie_setup_hw(struct ad
                PCIE_CORE_CTRL2_TD_ENABLE;
        advk_writel(pcie, reg, PCIE_CORE_CTRL2_REG);
  
@@ -171,7 +171,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
        /* Set lane X1 */
        reg = advk_readl(pcie, PCIE_CORE_CTRL0_REG);
        reg &= ~LANE_CNT_MSK;
-@@ -341,20 +412,7 @@ static void advk_pcie_setup_hw(struct ad
+@@ -352,20 +423,7 @@ static void advk_pcie_setup_hw(struct ad
         */
        msleep(PCI_PM_D3COLD_WAIT);
  
@@ -193,7 +193,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  
        reg = advk_readl(pcie, PCIE_CORE_CMD_STATUS_REG);
        reg |= PCIE_CORE_CMD_MEM_ACCESS_EN |
-@@ -1066,6 +1124,12 @@ static int advk_pcie_probe(struct platfo
+@@ -1077,6 +1135,12 @@ static int advk_pcie_probe(struct platfo
                return ret;
        }
  
index 0f2dab600b631d4d09c09723c5790e5069e090fd..fde01fa98742abcc9e9b48a70b125d596ca9905e 100644 (file)
@@ -48,7 +48,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  #include <linux/of_pci.h>
  
  #include "../pci.h"
-@@ -204,6 +206,7 @@ struct advk_pcie {
+@@ -205,6 +207,7 @@ struct advk_pcie {
        int root_bus_nr;
        int link_gen;
        struct pci_bridge_emul bridge;
@@ -56,7 +56,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  };
  
  static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg)
-@@ -330,10 +333,31 @@ err:
+@@ -331,10 +334,31 @@ err:
        dev_err(dev, "link never came up\n");
  }
  
@@ -88,7 +88,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
        /* Set to Direct mode */
        reg = advk_readl(pcie, CTRL_CONFIG_REG);
        reg &= ~(CTRL_MODE_MASK << CTRL_MODE_SHIFT);
-@@ -406,7 +430,8 @@ static void advk_pcie_setup_hw(struct ad
+@@ -417,7 +441,8 @@ static void advk_pcie_setup_hw(struct ad
  
        /*
         * PERST# signal could have been asserted by pinctrl subsystem before
@@ -98,7 +98,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
         * fundamental reset. As required by PCI Express spec a delay for at
         * least 100ms after such a reset before link training is needed.
         */
-@@ -1124,6 +1149,22 @@ static int advk_pcie_probe(struct platfo
+@@ -1135,6 +1160,22 @@ static int advk_pcie_probe(struct platfo
                return ret;
        }
  
index 640e4eb57c103023fb4a2c05a821cf7687fd0920..edff5c4a9c39d68b15a7c61c3f44665084903f68 100644 (file)
@@ -56,7 +56,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
  #define PCIE_MSG_LOG_REG                      (CONTROL_BASE_ADDR + 0x30)
  #define PCIE_ISR0_REG                         (CONTROL_BASE_ADDR + 0x40)
  #define PCIE_MSG_PM_PME_MASK                  BIT(7)
-@@ -207,6 +210,7 @@ struct advk_pcie {
+@@ -208,6 +211,7 @@ struct advk_pcie {
        int link_gen;
        struct pci_bridge_emul bridge;
        struct gpio_desc *reset_gpio;
@@ -64,7 +64,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
  };
  
  static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg)
-@@ -358,6 +362,11 @@ static void advk_pcie_setup_hw(struct ad
+@@ -359,6 +363,11 @@ static void advk_pcie_setup_hw(struct ad
  
        advk_pcie_issue_perst(pcie);
  
@@ -76,7 +76,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
        /* Set to Direct mode */
        reg = advk_readl(pcie, CTRL_CONFIG_REG);
        reg &= ~(CTRL_MODE_MASK << CTRL_MODE_SHIFT);
-@@ -1114,6 +1123,62 @@ out_release_res:
+@@ -1125,6 +1134,62 @@ out_release_res:
        return err;
  }
  
@@ -139,7 +139,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
  static int advk_pcie_probe(struct platform_device *pdev)
  {
        struct device *dev = &pdev->dev;
-@@ -1171,6 +1236,10 @@ static int advk_pcie_probe(struct platfo
+@@ -1182,6 +1247,10 @@ static int advk_pcie_probe(struct platfo
        else
                pcie->link_gen = ret;
  
index dfc068c8cb8f17c54c839b887cda0fcf9de224e8..04803c90d84a1310ac87ab3035f567fcdbaf16c0 100644 (file)
@@ -34,7 +34,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
 
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -639,6 +639,13 @@ static bool advk_pcie_valid_device(struc
+@@ -650,6 +650,13 @@ static bool advk_pcie_valid_device(struc
        if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0)
                return false;
  
index 41fed6aded73da42d98088f2a544ece71cc06188..ff67c9c02fb1322d08aa8088dc560567bc27569d 100644 (file)
@@ -31,7 +31,7 @@ Cc: <stable@vger.kernel.org> # 5.8+: ea17a0f153af: phy: marvell: comphy: Convert
 
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -1154,7 +1154,9 @@ static int advk_pcie_enable_phy(struct a
+@@ -1165,7 +1165,9 @@ static int advk_pcie_enable_phy(struct a
        }
  
        ret = phy_power_on(pcie->phy);
index c19e4cf90d05b634daad07c5e464bcf08bf032e5..086fc0ab967c37297fb9877a90efc65c51949293 100644 (file)
@@ -21,8 +21,8 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
 +#include <linux/of.h>
  #include <linux/platform_data/x86/apple.h>
  #include <linux/pm_runtime.h>
- #include <linux/switchtec.h>
-@@ -5714,3 +5715,34 @@ static void apex_pci_fixup_class(struct
+ #include <linux/suspend.h>
+@@ -5725,3 +5726,34 @@ static void apex_pci_fixup_class(struct
  }
  DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
                               PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
index dbeee8a78b6fbfd8210ceeda72f39f998db505ca..306ae6cfdacb6461e0c039a81208f6ca62b8ba79 100644 (file)
@@ -64,7 +64,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  
  #include <media/v4l2-common.h>
  
-@@ -1156,9 +1161,149 @@ static void uvc_video_decode_data(struct
+@@ -1183,9 +1188,149 @@ static void uvc_video_decode_data(struct
        uvc_urb->async_operations++;
  }
  
@@ -214,7 +214,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        /* Mark the buffer as done if the EOF marker is set. */
        if (data[1] & UVC_STREAM_EOF && buf->bytesused != 0) {
                uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n");
-@@ -1715,6 +1860,8 @@ static int uvc_init_video_isoc(struct uv
+@@ -1742,6 +1887,8 @@ static int uvc_init_video_isoc(struct uv
        if (npackets == 0)
                return -ENOMEM;