kernel: bump 5.15 to 5.15.75
authorJohn Audia <therealgraysky@proton.me>
Wed, 26 Oct 2022 22:31:12 +0000 (18:31 -0400)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 30 Oct 2022 16:54:59 +0000 (17:54 +0100)
Removed upstreamed:
   bcm27xx/patches-5.15/950-0446-drm-vc4-Fix-timings-for-VEC-modes.patch[1]

Manually rebased:
   patches-5.15/950-0600-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
   bcm27xx/patches-5.15/950-0606-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch
   bcm27xx/patches-5.15/950-0717-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch
   bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch

All other patches automatically rebased

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.75&id=2810061452f9b748b096ad023d318690ca519aa3

Build system: x86_64
Build-tested: bcm2711/RPi4B, mt7622/RT3200
Run-tested: bcm2711/RPi4B, mt7622/RT3200

Signed-off-by: John Audia <therealgraysky@proton.me>
57 files changed:
include/kernel-5.15
target/linux/apm821xx/patches-5.15/900-powerpc-bootwrapper-force-gzip-as-mkimage-s-compress.patch
target/linux/ath79/patches-5.15/910-unaligned_access_hacks.patch
target/linux/bcm27xx/patches-5.15/950-0046-Register-the-clocks-early-during-the-boot-process-so.patch
target/linux/bcm27xx/patches-5.15/950-0048-clk-bcm2835-Mark-used-PLLs-and-dividers-CRITICAL.patch
target/linux/bcm27xx/patches-5.15/950-0049-clk-bcm2835-Add-claim-clocks-property.patch
target/linux/bcm27xx/patches-5.15/950-0050-clk-bcm2835-Read-max-core-clock-from-firmware.patch
target/linux/bcm27xx/patches-5.15/950-0134-clk-clk-bcm2835-Use-zd-when-printing-size_t.patch
target/linux/bcm27xx/patches-5.15/950-0147-clk-bcm2835-Don-t-wait-for-pllh-lock.patch
target/linux/bcm27xx/patches-5.15/950-0149-clk-bcm2835-Add-support-for-setting-leaf-clock-rates.patch
target/linux/bcm27xx/patches-5.15/950-0150-clk-bcm2835-Allow-reparenting-leaf-clocks-while-they.patch
target/linux/bcm27xx/patches-5.15/950-0152-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
target/linux/bcm27xx/patches-5.15/950-0159-clk-bcm2835-Avoid-null-pointer-exception.patch
target/linux/bcm27xx/patches-5.15/950-0166-xhci-Use-more-event-ring-segment-table-entries.patch
target/linux/bcm27xx/patches-5.15/950-0186-clk-bcm2835-Disable-v3d-clock.patch
target/linux/bcm27xx/patches-5.15/950-0190-Initialise-rpi-firmware-before-clk-bcm2835.patch
target/linux/bcm27xx/patches-5.15/950-0208-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
target/linux/bcm27xx/patches-5.15/950-0404-clk-bcm2835-Pass-DT-node-to-rpi_firmware_get.patch
target/linux/bcm27xx/patches-5.15/950-0446-drm-vc4-Fix-timings-for-VEC-modes.patch [deleted file]
target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch
target/linux/bcm27xx/patches-5.15/950-0471-sound-usb-call-usb_autopm_get_interface-for-devices-.patch
target/linux/bcm27xx/patches-5.15/950-0550-clk-bcm2835-Remove-VEC-clock-support.patch
target/linux/bcm27xx/patches-5.15/950-0551-drm-vc4-Add-support-for-gamma-on-BCM2711.patch
target/linux/bcm27xx/patches-5.15/950-0555-drm-vc4-Relax-VEC-modeline-requirements-and-add-prog.patch
target/linux/bcm27xx/patches-5.15/950-0569-drm-vc4-Only-add-gamma-properties-once.patch
target/linux/bcm27xx/patches-5.15/950-0600-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
target/linux/bcm27xx/patches-5.15/950-0605-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch
target/linux/bcm27xx/patches-5.15/950-0606-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch
target/linux/bcm27xx/patches-5.15/950-0654-drm-vc4-Disable-Gamma-control-on-HVS5-due-to-issues-.patch
target/linux/bcm27xx/patches-5.15/950-0717-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch
target/linux/bcm27xx/patches-5.15/950-0741-drm-vc4-hvs-Use-pointer-to-HVS-in-HVS_READ-and-HVS_W.patch
target/linux/bcm27xx/patches-5.15/950-0742-drm-vc4-hvs-Defer-dlist-slots-deallocation.patch
target/linux/bcm27xx/patches-5.15/950-0753-drm-vc4-Fix-out-of-order-frames-during-asynchronous-.patch
target/linux/bcm27xx/patches-5.15/950-0805-drm-vc4-Force-trigger-of-dlist-update-on-margins-cha.patch
target/linux/bcm27xx/patches-5.15/950-0807-Revert-drm-vc4-hvs-Defer-dlist-slots-deallocation.patch
target/linux/bcm27xx/patches-5.15/950-0873-clk-bcm2835-use-subsys_initcall-for-the-clock-driver.patch
target/linux/bcm27xx/patches-5.15/950-0898-drm-vc4-Consolidate-Hardware-Revision-Check.patch
target/linux/bcm27xx/patches-5.15/950-0905-drm-vc4-crtc-Use-an-union-to-store-the-page-flip-cal.patch
target/linux/bcm27xx/patches-5.15/950-0906-drm-vc4-crtc-Move-the-BO-handling-out-of-common-page.patch
target/linux/bcm27xx/patches-5.15/950-0907-drm-vc4-crtc-Move-the-BO-Handling-out-of-Common-Page.patch
target/linux/bcm27xx/patches-5.15/950-0908-drm-vc4-crtc-Don-t-call-into-BO-Handling-on-Async-Pa.patch
target/linux/bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch
target/linux/generic/backport-5.15/821-v5.16-Bluetooth-btusb-Support-public-address-configuration.patch
target/linux/generic/hack-5.15/661-kernel-ct-size-the-hashtable-more-adequately.patch
target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch
target/linux/generic/hack-5.15/760-net-usb-r8152-add-LED-configuration-from-OF.patch
target/linux/generic/pending-5.15/655-increase_skb_pad.patch
target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
target/linux/ipq40xx/patches-5.15/301-arm-compressed-add-appended-DTB-section.patch
target/linux/ipq40xx/patches-5.15/400-mmc-sdhci-sdhci-msm-use-sdhci_set_clock-instead-of-s.patch
target/linux/mediatek/patches-5.15/200-phy-phy-mtk-tphy-Add-hifsys-support.patch
target/linux/mediatek/patches-5.15/410-bt-mtk-serial-fix.patch
target/linux/mediatek/patches-5.15/801-phy-phy-mtk-tphy-Add-PCIe-2-lane-efuse-support.patch
target/linux/mediatek/patches-5.15/802-phy-phy-mtk-tphy-add-auto-load-valid-check-mechanism.patch
target/linux/mpc85xx/patches-5.15/100-powerpc-85xx-tl-wdr4900-v1-support.patch
target/linux/mpc85xx/patches-5.15/900-powerpc-bootwrapper-disable-uImage-generation.patch
target/linux/oxnas/patches-5.15/100-oxnas-clk-plla-pllb.patch

index bd2e9f1dd3af5c6ff9a86c813c9c4a1b3a54427f..29d8f91385b598ab6bfbcbf67d7e40cf3bd05ba8 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.15 = .74
-LINUX_KERNEL_HASH-5.15.74 = 2c1539a2f85b835c36c4a07c8270b52b0bec38fdda7339477d07f0c3af8c4265
+LINUX_VERSION-5.15 = .75
+LINUX_KERNEL_HASH-5.15.75 = d9a65bdd3659ccf55acf42268a27f7989b1500815ae51223aadbad9aeec45fc6
index 3a9f48d0abd7299bc1fc621cc4db808d33adfa68..1ba8a45cb62ad94f6627310efc12ab0e3191499f 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
 
 --- a/arch/powerpc/boot/Makefile
 +++ b/arch/powerpc/boot/Makefile
-@@ -257,7 +257,7 @@ compressor-$(CONFIG_KERNEL_LZO) := lzo
+@@ -258,7 +258,7 @@ compressor-$(CONFIG_KERNEL_LZO) := lzo
  
  # args (to if_changed): 1 = (this rule), 2 = platform, 3 = dts 4=dtb 5=initrd
  quiet_cmd_wrap        = WRAP    $@
index f5d3a5ed589929335fad45b896f59847f81d2450..84ee47a115a5409bd8eed80a03659e08c144c853 100644 (file)
@@ -215,7 +215,7 @@ SVN-Revision: 35130
  #define UDP_CORK      1       /* Never send partially complete segments */
 --- a/net/netfilter/nf_conntrack_core.c
 +++ b/net/netfilter/nf_conntrack_core.c
-@@ -305,8 +305,8 @@ nf_ct_get_tuple(const struct sk_buff *sk
+@@ -308,8 +308,8 @@ nf_ct_get_tuple(const struct sk_buff *sk
  
        switch (l3num) {
        case NFPROTO_IPV4:
@@ -737,7 +737,7 @@ SVN-Revision: 35130
                                       | TCPOLEN_TIMESTAMP))
 --- a/net/xfrm/xfrm_input.c
 +++ b/net/xfrm/xfrm_input.c
-@@ -165,8 +165,8 @@ int xfrm_parse_spi(struct sk_buff *skb,
+@@ -166,8 +166,8 @@ int xfrm_parse_spi(struct sk_buff *skb,
        if (!pskb_may_pull(skb, hlen))
                return -EINVAL;
  
index 8dd6abdfdb57c3276992baf0f0d1604139c26280..195e25e059cdfa096010d4748b90ee830a42bf30 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2289,8 +2289,15 @@ static int bcm2835_clk_probe(struct plat
+@@ -2320,8 +2320,15 @@ static int bcm2835_clk_probe(struct plat
        if (ret)
                return ret;
  
@@ -30,7 +30,7 @@ Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
  }
  
  static const struct cprman_plat_data cprman_bcm2835_plat_data = {
-@@ -2316,7 +2323,11 @@ static struct platform_driver bcm2835_cl
+@@ -2347,7 +2354,11 @@ static struct platform_driver bcm2835_cl
        .probe          = bcm2835_clk_probe,
  };
  
index 8f004a80d916926712894e4cab71c06d5092a21e..561f827a532f00a62a2e73ce61441b8134b3458f 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1378,6 +1378,11 @@ bcm2835_register_pll_divider(struct bcm2
+@@ -1408,6 +1408,11 @@ bcm2835_register_pll_divider(struct bcm2
        divider->div.hw.init = &init;
        divider->div.table = NULL;
  
index 809b571c5232d47c1025bf45da766d374130e962..f2b8c85d4ce3ce69172d1cbe485c910f4d90f543 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1306,6 +1306,8 @@ static const struct clk_ops bcm2835_vpu_
+@@ -1336,6 +1336,8 @@ static const struct clk_ops bcm2835_vpu_
        .debug_init = bcm2835_clock_debug_init,
  };
  
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman,
                                           const void *data)
  {
-@@ -1323,6 +1325,9 @@ static struct clk_hw *bcm2835_register_p
+@@ -1353,6 +1355,9 @@ static struct clk_hw *bcm2835_register_p
        init.ops = &bcm2835_pll_clk_ops;
        init.flags = pll_data->flags | CLK_IGNORE_UNUSED;
  
@@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        pll = kzalloc(sizeof(*pll), GFP_KERNEL);
        if (!pll)
                return NULL;
-@@ -1378,9 +1383,11 @@ bcm2835_register_pll_divider(struct bcm2
+@@ -1408,9 +1413,11 @@ bcm2835_register_pll_divider(struct bcm2
        divider->div.hw.init = &init;
        divider->div.table = NULL;
  
@@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        }
  
        divider->cprman = cprman;
-@@ -1437,6 +1444,15 @@ static struct clk_hw *bcm2835_register_c
+@@ -1467,6 +1474,15 @@ static struct clk_hw *bcm2835_register_c
        init.flags = clock_data->flags | CLK_IGNORE_UNUSED;
  
        /*
@@ -67,7 +67,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
         * Pass the CLK_SET_RATE_PARENT flag if we are allowed to propagate
         * rate changes on at least of the parents.
         */
-@@ -2215,6 +2231,8 @@ static const struct bcm2835_clk_desc clk
+@@ -2246,6 +2262,8 @@ static const struct bcm2835_clk_desc clk
                .ctl_reg = CM_PERIICTL),
  };
  
@@ -76,7 +76,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  /*
   * Permanently take a reference on the parent of the SDRAM clock.
   *
-@@ -2234,6 +2252,19 @@ static int bcm2835_mark_sdc_parent_criti
+@@ -2265,6 +2283,19 @@ static int bcm2835_mark_sdc_parent_criti
        return clk_prepare_enable(parent);
  }
  
@@ -96,7 +96,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  static int bcm2835_clk_probe(struct platform_device *pdev)
  {
        struct device *dev = &pdev->dev;
-@@ -2243,6 +2274,7 @@ static int bcm2835_clk_probe(struct plat
+@@ -2274,6 +2305,7 @@ static int bcm2835_clk_probe(struct plat
        const size_t asize = ARRAY_SIZE(clk_desc_array);
        const struct cprman_plat_data *pdata;
        size_t i;
@@ -104,7 +104,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        int ret;
  
        pdata = of_device_get_match_data(&pdev->dev);
-@@ -2261,6 +2293,13 @@ static int bcm2835_clk_probe(struct plat
+@@ -2292,6 +2324,13 @@ static int bcm2835_clk_probe(struct plat
        if (IS_ERR(cprman->regs))
                return PTR_ERR(cprman->regs);
  
index cfa152c2f6b5b2eb5da3f5380ec076cd1cf1de72..6d67d29ac8b50a168d5041da7c2386c1276f90fd 100644 (file)
@@ -25,7 +25,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -35,6 +35,7 @@
+@@ -36,6 +36,7 @@
  #include <linux/platform_device.h>
  #include <linux/slab.h>
  #include <dt-bindings/clock/bcm2835.h>
@@ -33,7 +33,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  
  #define CM_PASSWORD           0x5a000000
  
-@@ -295,6 +296,8 @@
+@@ -296,6 +297,8 @@
  #define SOC_BCM2711           BIT(1)
  #define SOC_ALL                       (SOC_BCM2835 | SOC_BCM2711)
  
@@ -42,7 +42,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  /*
   * Names of clocks used within the driver that need to be replaced
   * with an external parent's name.  This array is in the order that
-@@ -313,6 +316,7 @@ static const char *const cprman_parent_n
+@@ -314,6 +317,7 @@ static const char *const cprman_parent_n
  struct bcm2835_cprman {
        struct device *dev;
        void __iomem *regs;
@@ -50,8 +50,8 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        spinlock_t regs_lock; /* spinlock for all clocks */
        unsigned int soc;
  
-@@ -1010,6 +1014,30 @@ static unsigned long bcm2835_clock_get_r
-       return bcm2835_clock_rate_from_divisor(clock, parent_rate, div);
+@@ -1040,6 +1044,30 @@ static unsigned long bcm2835_clock_get_r
+       return rate;
  }
  
 +static unsigned long bcm2835_clock_get_rate_vpu(struct clk_hw *hw,
@@ -81,7 +81,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  static void bcm2835_clock_wait_busy(struct bcm2835_clock *clock)
  {
        struct bcm2835_cprman *cprman = clock->cprman;
-@@ -1298,7 +1326,7 @@ static int bcm2835_vpu_clock_is_on(struc
+@@ -1328,7 +1356,7 @@ static int bcm2835_vpu_clock_is_on(struc
   */
  static const struct clk_ops bcm2835_vpu_clock_clk_ops = {
        .is_prepared = bcm2835_vpu_clock_is_on,
@@ -90,7 +90,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        .set_rate = bcm2835_clock_set_rate,
        .determine_rate = bcm2835_clock_determine_rate,
        .set_parent = bcm2835_clock_set_parent,
-@@ -2273,6 +2301,7 @@ static int bcm2835_clk_probe(struct plat
+@@ -2304,6 +2332,7 @@ static int bcm2835_clk_probe(struct plat
        const struct bcm2835_clk_desc *desc;
        const size_t asize = ARRAY_SIZE(clk_desc_array);
        const struct cprman_plat_data *pdata;
@@ -98,7 +98,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        size_t i;
        u32 clk_id;
        int ret;
-@@ -2293,6 +2322,14 @@ static int bcm2835_clk_probe(struct plat
+@@ -2324,6 +2353,14 @@ static int bcm2835_clk_probe(struct plat
        if (IS_ERR(cprman->regs))
                return PTR_ERR(cprman->regs);
  
index a7c0f52876ef99ffad5d8aad7d97dc4cd1033e42..b005799e749bd729fe9d31fdb0a92a516dac6fa5 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2376,7 +2376,7 @@ static int bcm2835_clk_probe(struct plat
+@@ -2407,7 +2407,7 @@ static int bcm2835_clk_probe(struct plat
                return ret;
  
        /* note that we have registered all the clocks */
index 7ee8aa7cbb3e26c11124b65c762689004140f5d0..2db6f605251a8be6a84042a5999bf62ba9f325e7 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -644,15 +644,17 @@ static int bcm2835_pll_on(struct clk_hw
+@@ -647,15 +647,17 @@ static int bcm2835_pll_on(struct clk_hw
        spin_unlock(&cprman->regs_lock);
  
        /* Wait for the PLL to lock. */
index f35ca3f3a84e94eaf1c477ee81ac5bee6e44d947..40523ef55281d82f08f4b29ea1ad470fe6f19d20 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1109,15 +1109,19 @@ static int bcm2835_clock_set_rate(struct
+@@ -1139,15 +1139,19 @@ static int bcm2835_clock_set_rate(struct
  
        spin_lock(&cprman->regs_lock);
  
@@ -42,7 +42,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
        ctl |= (div & CM_DIV_FRAC_MASK) ? CM_FRAC : 0;
        cprman_write(cprman, data->ctl_reg, ctl);
  
-@@ -1493,7 +1497,7 @@ static struct clk_hw *bcm2835_register_c
+@@ -1523,7 +1527,7 @@ static struct clk_hw *bcm2835_register_c
                init.ops = &bcm2835_vpu_clock_clk_ops;
        } else {
                init.ops = &bcm2835_clock_clk_ops;
index 4caf953cede5707ff79acf1a2387345a10fe40ef..ee9bcc8517b5414e8258f8dbb457c9a7fabe8819 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1098,8 +1098,10 @@ static int bcm2835_clock_on(struct clk_h
+@@ -1128,8 +1128,10 @@ static int bcm2835_clock_on(struct clk_h
        return 0;
  }
  
@@ -28,7 +28,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
  {
        struct bcm2835_clock *clock = bcm2835_clock_from_hw(hw);
        struct bcm2835_cprman *cprman = clock->cprman;
-@@ -1121,6 +1123,11 @@ static int bcm2835_clock_set_rate(struct
+@@ -1151,6 +1153,11 @@ static int bcm2835_clock_set_rate(struct
                bcm2835_clock_wait_busy(clock);
        }
  
@@ -40,7 +40,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
        ctl &= ~CM_FRAC;
        ctl |= (div & CM_DIV_FRAC_MASK) ? CM_FRAC : 0;
        cprman_write(cprman, data->ctl_reg, ctl);
-@@ -1132,6 +1139,12 @@ static int bcm2835_clock_set_rate(struct
+@@ -1162,6 +1169,12 @@ static int bcm2835_clock_set_rate(struct
        return 0;
  }
  
@@ -53,7 +53,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
  static bool
  bcm2835_clk_is_pllc(struct clk_hw *hw)
  {
-@@ -1315,6 +1328,7 @@ static const struct clk_ops bcm2835_cloc
+@@ -1345,6 +1358,7 @@ static const struct clk_ops bcm2835_cloc
        .unprepare = bcm2835_clock_off,
        .recalc_rate = bcm2835_clock_get_rate,
        .set_rate = bcm2835_clock_set_rate,
@@ -61,7 +61,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
        .determine_rate = bcm2835_clock_determine_rate,
        .set_parent = bcm2835_clock_set_parent,
        .get_parent = bcm2835_clock_get_parent,
-@@ -1497,7 +1511,6 @@ static struct clk_hw *bcm2835_register_c
+@@ -1527,7 +1541,6 @@ static struct clk_hw *bcm2835_register_c
                init.ops = &bcm2835_vpu_clock_clk_ops;
        } else {
                init.ops = &bcm2835_clock_clk_ops;
index 7fec7cb5569b8946729be52ec5f7408f5a29fcc4..85f3e610adee2f46d48920d2c227ad5d0b151a67 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
 
 --- a/drivers/usb/host/xhci.c
 +++ b/drivers/usb/host/xhci.c
-@@ -1611,6 +1611,109 @@ command_cleanup:
+@@ -1612,6 +1612,109 @@ command_cleanup:
  }
  
  /*
@@ -125,7 +125,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
   * non-error returns are a promise to giveback() the urb later
   * we drop ownership so next owner (or urb unlink) can get it
   */
-@@ -5436,6 +5539,7 @@ static const struct hc_driver xhci_hc_dr
+@@ -5437,6 +5540,7 @@ static const struct hc_driver xhci_hc_dr
        .endpoint_reset =       xhci_endpoint_reset,
        .check_bandwidth =      xhci_check_bandwidth,
        .reset_bandwidth =      xhci_reset_bandwidth,
index 092c7ecffcd383be9b59bd0a2deda0a71c1d005d..ce32b6689c40d28337d9b430f8d74ed73a1bedd2 100644 (file)
@@ -12,7 +12,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2304,9 +2304,11 @@ static bool bcm2835_clk_is_claimed(const
+@@ -2335,9 +2335,11 @@ static bool bcm2835_clk_is_claimed(const
        int i;
  
        for (i = 0; i < ARRAY_SIZE(clk_desc_array); i++) {
index e3f72fe95ec0079aa2d532df0ce69005cbbff44e..b3f8240db238c3041cdd57fc1898515caf5d7d41 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
 
 --- a/drivers/usb/host/xhci-mem.c
 +++ b/drivers/usb/host/xhci-mem.c
-@@ -2511,9 +2511,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
+@@ -2516,9 +2516,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
         * Event ring setup: Allocate a normal ring, but also setup
         * the event ring segment table (ERST).  Section 4.9.3.
         */
@@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
        if (!xhci->event_ring)
                goto fail;
        if (xhci_check_trb_in_td_math(xhci) < 0)
-@@ -2526,7 +2528,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
+@@ -2531,7 +2533,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
        /* set ERST count with the number of entries in the segment table */
        val = readl(&xhci->ir_set->erst_size);
        val &= ERST_SIZE_MASK;
index 21189080a7738529f3eb1eed1c547e4f4912e21a..230f423bfb9371a8ee3a8bcc38318974c2ad7c35 100644 (file)
@@ -12,7 +12,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1735,16 +1735,12 @@ static const struct bcm2835_clk_desc clk
+@@ -1765,16 +1765,12 @@ static const struct bcm2835_clk_desc clk
                .hold_mask = CM_PLLA_HOLDCORE,
                .fixed_divider = 1,
                .flags = CLK_SET_RATE_PARENT),
@@ -35,7 +35,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
        [BCM2835_PLLA_DSI0]     = REGISTER_PLL_DIV(
                SOC_ALL,
                .name = "plla_dsi0",
-@@ -2045,14 +2041,12 @@ static const struct bcm2835_clk_desc clk
+@@ -2075,14 +2071,12 @@ static const struct bcm2835_clk_desc clk
                .int_bits = 6,
                .frac_bits = 0,
                .tcnt_mux = 3),
index 1f7c5a2e35c6d6c4dbfda28c305279e867e7d4c1..96451c9c75141b6e460204f36f0c83b596b27116 100644 (file)
@@ -25,7 +25,7 @@ Co-authored-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2423,7 +2423,7 @@ static int __init __bcm2835_clk_driver_i
+@@ -2454,7 +2454,7 @@ static int __init __bcm2835_clk_driver_i
  {
        return platform_driver_register(&bcm2835_clk_driver);
  }
index 7a72dc85764eef85b91eb478b0e2c383fea46dfc..b668a94790f9d22414a7d7ed71fb8d69be53c9da 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -3478,6 +3478,7 @@ static int __spi_validate_bits_per_word(
+@@ -3480,6 +3480,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;
  
-@@ -3499,6 +3500,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3501,6 +3502,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 d0c4afe577fa2933ab05255a0708c473b0e389b8..7f7ffa8ffdeedf89ffd84f72fbf2cb1a7f53b3bc 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2339,7 +2339,7 @@ static int bcm2835_clk_probe(struct plat
+@@ -2370,7 +2370,7 @@ static int bcm2835_clk_probe(struct plat
  
        fw_node = of_parse_phandle(dev->of_node, "firmware", 0);
        if (fw_node) {
diff --git a/target/linux/bcm27xx/patches-5.15/950-0446-drm-vc4-Fix-timings-for-VEC-modes.patch b/target/linux/bcm27xx/patches-5.15/950-0446-drm-vc4-Fix-timings-for-VEC-modes.patch
deleted file mode 100644 (file)
index 56b635d..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-From 3edc6e2d440803dfe22288c3ea7d77b4ab934ec8 Mon Sep 17 00:00:00 2001
-From: Mateusz Kwiatkowski <kfyatek+publicgit@gmail.com>
-Date: Thu, 15 Jul 2021 01:07:30 +0200
-Subject: [PATCH] drm/vc4: Fix timings for VEC modes
-
-This commit fixes vertical timings of the VEC (composite output) modes
-to accurately represent the 525-line ("NTSC") and 625-line ("PAL") ITU-R
-standards.
-
-Previous timings were actually defined as 502 and 601 lines, resulting
-in non-standard 62.69 Hz and 52 Hz signals being generated,
-respectively.
-
-Changes to vc4_crtc.c have also been made, to make the PixelValve
-vertical timings accurately correspond to the DRM modeline in interlaced
-modes. The resulting VERTA/VERTB register values have been verified
-against the reference values set by the Raspberry Pi firmware.
-
-Signed-off-by: Mateusz Kwiatkowski <kfyatek+publicgit@gmail.com>
----
- drivers/gpu/drm/vc4/vc4_crtc.c | 70 +++++++++++++++++++++-------------
- drivers/gpu/drm/vc4/vc4_vec.c  |  4 +-
- 2 files changed, 45 insertions(+), 29 deletions(-)
-
---- a/drivers/gpu/drm/vc4/vc4_crtc.c
-+++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -318,8 +318,14 @@ static void vc4_crtc_config_pv(struct dr
-       bool is_dsi = (vc4_encoder->type == VC4_ENCODER_TYPE_DSI0 ||
-                      vc4_encoder->type == VC4_ENCODER_TYPE_DSI1);
-       bool is_dsi1 = vc4_encoder->type == VC4_ENCODER_TYPE_DSI1;
-+      bool is_vec = vc4_encoder->type == VC4_ENCODER_TYPE_VEC;
-       u32 format = is_dsi1 ? PV_CONTROL_FORMAT_DSIV_24 : PV_CONTROL_FORMAT_24;
-       u8 ppc = pv_data->pixels_per_clock;
-+
-+      u16 vert_bp = mode->crtc_vtotal - mode->crtc_vsync_end;
-+      u16 vert_sync = mode->crtc_vsync_end - mode->crtc_vsync_start;
-+      u16 vert_fp = mode->crtc_vsync_start - mode->crtc_vdisplay;
-+
-       bool debug_dump_regs = false;
-       if (debug_dump_regs) {
-@@ -343,49 +349,59 @@ static void vc4_crtc_config_pv(struct dr
-                  VC4_SET_FIELD(mode->hdisplay * pixel_rep / ppc,
-                                PV_HORZB_HACTIVE));
--      CRTC_WRITE(PV_VERTA,
--                 VC4_SET_FIELD(mode->crtc_vtotal - mode->crtc_vsync_end +
--                               interlace,
--                               PV_VERTA_VBP) |
--                 VC4_SET_FIELD(mode->crtc_vsync_end - mode->crtc_vsync_start,
--                               PV_VERTA_VSYNC));
--      CRTC_WRITE(PV_VERTB,
--                 VC4_SET_FIELD(mode->crtc_vsync_start - mode->crtc_vdisplay,
--                               PV_VERTB_VFP) |
--                 VC4_SET_FIELD(mode->crtc_vdisplay, PV_VERTB_VACTIVE));
--
-       if (interlace) {
-+              bool odd_field_first = false;
-+              u32 field_delay = mode->htotal * pixel_rep / (2 * ppc);
-+              u16 vert_bp_even = vert_bp;
-+              u16 vert_fp_even = vert_fp;
-+
-+              if (is_vec) {
-+                      /* VEC (composite output) */
-+                      ++field_delay;
-+                      if (mode->htotal == 858) {
-+                              /* 525-line mode (NTSC or PAL-M) */
-+                              odd_field_first = true;
-+                      }
-+              }
-+
-+              if (odd_field_first)
-+                      ++vert_fp_even;
-+              else
-+                      ++vert_bp;
-+
-               CRTC_WRITE(PV_VERTA_EVEN,
--                         VC4_SET_FIELD(mode->crtc_vtotal -
--                                       mode->crtc_vsync_end,
--                                       PV_VERTA_VBP) |
--                         VC4_SET_FIELD(mode->crtc_vsync_end -
--                                       mode->crtc_vsync_start,
--                                       PV_VERTA_VSYNC));
-+                         VC4_SET_FIELD(vert_bp_even, PV_VERTA_VBP) |
-+                         VC4_SET_FIELD(vert_sync, PV_VERTA_VSYNC));
-               CRTC_WRITE(PV_VERTB_EVEN,
--                         VC4_SET_FIELD(mode->crtc_vsync_start -
--                                       mode->crtc_vdisplay,
--                                       PV_VERTB_VFP) |
-+                         VC4_SET_FIELD(vert_fp_even, PV_VERTB_VFP) |
-                          VC4_SET_FIELD(mode->crtc_vdisplay, PV_VERTB_VACTIVE));
--              /* We set up first field even mode for HDMI.  VEC's
--               * NTSC mode would want first field odd instead, once
--               * we support it (to do so, set ODD_FIRST and put the
--               * delay in VSYNCD_EVEN instead).
-+              /* We set up first field even mode for HDMI and VEC's PAL.
-+               * For NTSC, we need first field odd.
-                */
-               CRTC_WRITE(PV_V_CONTROL,
-                          PV_VCONTROL_CONTINUOUS |
-                          (is_dsi ? PV_VCONTROL_DSI : 0) |
-                          PV_VCONTROL_INTERLACE |
--                         VC4_SET_FIELD(mode->htotal * pixel_rep / (2 * ppc),
--                                       PV_VCONTROL_ODD_DELAY));
--              CRTC_WRITE(PV_VSYNCD_EVEN, 0);
-+                         (odd_field_first
-+                                 ? PV_VCONTROL_ODD_FIRST
-+                                 : VC4_SET_FIELD(field_delay,
-+                                                 PV_VCONTROL_ODD_DELAY)));
-+              CRTC_WRITE(PV_VSYNCD_EVEN,
-+                         (odd_field_first ? field_delay : 0));
-       } else {
-               CRTC_WRITE(PV_V_CONTROL,
-                          PV_VCONTROL_CONTINUOUS |
-                          (is_dsi ? PV_VCONTROL_DSI : 0));
-       }
-+      CRTC_WRITE(PV_VERTA,
-+                 VC4_SET_FIELD(vert_bp, PV_VERTA_VBP) |
-+                 VC4_SET_FIELD(vert_sync, PV_VERTA_VSYNC));
-+      CRTC_WRITE(PV_VERTB,
-+                 VC4_SET_FIELD(vert_fp, PV_VERTB_VFP) |
-+                 VC4_SET_FIELD(mode->crtc_vdisplay, PV_VERTB_VACTIVE));
-+
-       if (is_dsi)
-               CRTC_WRITE(PV_HACT_ACT, mode->hdisplay * pixel_rep);
---- a/drivers/gpu/drm/vc4/vc4_vec.c
-+++ b/drivers/gpu/drm/vc4/vc4_vec.c
-@@ -256,7 +256,7 @@ static void vc4_vec_ntsc_j_mode_set(stru
- static const struct drm_display_mode ntsc_mode = {
-       DRM_MODE("720x480", DRM_MODE_TYPE_DRIVER, 13500,
-                720, 720 + 14, 720 + 14 + 64, 720 + 14 + 64 + 60, 0,
--               480, 480 + 3, 480 + 3 + 3, 480 + 3 + 3 + 16, 0,
-+               480, 480 + 7, 480 + 7 + 6, 525, 0,
-                DRM_MODE_FLAG_INTERLACE)
- };
-@@ -278,7 +278,7 @@ static void vc4_vec_pal_m_mode_set(struc
- static const struct drm_display_mode pal_mode = {
-       DRM_MODE("720x576", DRM_MODE_TYPE_DRIVER, 13500,
-                720, 720 + 20, 720 + 20 + 64, 720 + 20 + 64 + 60, 0,
--               576, 576 + 2, 576 + 2 + 3, 576 + 2 + 3 + 20, 0,
-+               576, 576 + 4, 576 + 4 + 6, 625, 0,
-                DRM_MODE_FLAG_INTERLACE)
- };
index 9f0aa6fcd475d5421813719914e2ba3e361f076a..c1f31d65dca502d3b916733edbcd5ea40b95503e 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/sound/usb/quirks.c
 +++ b/sound/usb/quirks.c
-@@ -1925,6 +1925,8 @@ static const struct usb_audio_quirk_flag
+@@ -1883,6 +1883,8 @@ static const struct usb_audio_quirk_flag
                   QUIRK_FLAG_GENERIC_IMPLICIT_FB),
        DEVICE_FLG(0x2b53, 0x0031, /* Fiero SC-01 (firmware v1.1.0) */
                   QUIRK_FLAG_GENERIC_IMPLICIT_FB),
index b19516319613db4227e93f90f5c2ccf839204221..5ca57a6b0a1a89bcd8b3afe655234e80a441f10a 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
 
 --- a/sound/usb/card.c
 +++ b/sound/usb/card.c
-@@ -825,8 +825,14 @@ static int usb_audio_probe(struct usb_in
+@@ -843,8 +843,14 @@ static int usb_audio_probe(struct usb_in
        if (ignore_ctl_error)
                chip->quirk_flags |= QUIRK_FLAG_IGNORE_CTL_ERROR;
  
index dc198ebbcc18e341b1b17d8d3e398fe95f8019f7..b85b2474b23d215f16e32b960669eb7d4831736c 100644 (file)
@@ -10,9 +10,9 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2208,21 +2208,6 @@ static const struct bcm2835_clk_desc clk
-               .frac_bits = 12,
-               .tcnt_mux = 28),
+@@ -2239,21 +2239,6 @@ static const struct bcm2835_clk_desc clk
+               .tcnt_mux = 28,
+               .round_up = true),
  
 -      /* TV encoder clock.  Only operating frequency is 108Mhz.  */
 -      [BCM2835_CLOCK_VEC]     = REGISTER_PER_CLK(
index 38fbdd0aa1c045f0bba33056f0686506fcaf858a..555636515c3f65177eb8a5d1e39b9bf12ef4e199 100644 (file)
@@ -24,7 +24,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -1164,19 +1164,42 @@ int vc4_crtc_init(struct drm_device *drm
+@@ -1148,19 +1148,42 @@ int vc4_crtc_init(struct drm_device *drm
  
        if (!vc4->hvs->hvs5) {
                drm_mode_crtc_set_gamma_size(crtc, ARRAY_SIZE(vc4_crtc->lut_r));
index 51fac0e0d41e6f2c5fc3c483b98ac72176a5d12c..72c5c2085d0004c3f0bb7983032818d91af9b6ab 100644 (file)
@@ -17,14 +17,14 @@ Signed-off-by: Mateusz Kwiatkowski <kfyatek+publicgit@gmail.com>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -410,6 +410,7 @@ static void vc4_crtc_config_pv(struct dr
+@@ -401,6 +401,7 @@ static void vc4_crtc_config_pv(struct dr
                CRTC_WRITE(PV_V_CONTROL,
                           PV_VCONTROL_CONTINUOUS |
                           (is_dsi ? PV_VCONTROL_DSI : 0));
 +              CRTC_WRITE(PV_VSYNCD_EVEN, 0);
        }
  
-       CRTC_WRITE(PV_VERTA,
+       if (is_dsi)
 --- a/drivers/gpu/drm/vc4/vc4_vec.c
 +++ b/drivers/gpu/drm/vc4/vc4_vec.c
 @@ -423,18 +423,11 @@ static int vc4_vec_connector_atomic_chec
index 0c7e76d46393ae277bb63cd911bb45027a995bda..0ad28fa0e1707c3d30140e6cc2a8f58bd5178de7 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -1196,7 +1196,7 @@ int vc4_crtc_init(struct drm_device *drm
+@@ -1180,7 +1180,7 @@ int vc4_crtc_init(struct drm_device *drm
                /* We support CTM, but only for one CRTC at a time. It's therefore
                 * implemented as private driver state in vc4_kms, not here.
                 */
index 87de92c62a2a69fb0ed583778bb7a2aaeb20b524..6c2840d6338438c4619bae3f4539f4a0bc5bd07b 100644 (file)
@@ -50,11 +50,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        addr = xhci_trb_virt_to_dma(new_seg, new_deq);
 --- a/drivers/usb/host/xhci.h
 +++ b/drivers/usb/host/xhci.h
-@@ -1903,6 +1903,7 @@ struct xhci_hcd {
- #define XHCI_NO_SOFT_RETRY    BIT_ULL(40)
+@@ -1904,6 +1904,7 @@ struct xhci_hcd {
  #define XHCI_BROKEN_D3COLD    BIT_ULL(41)
  #define XHCI_EP_CTX_BROKEN_DCS        BIT_ULL(42)
-+#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(43)
+ #define XHCI_SUSPEND_RESUME_CLKS      BIT_ULL(43)
++#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
  
        unsigned int            num_active_eps;
        unsigned int            limit_active_eps;
index e6d2bcebb5f6810df785dfb6198cef3b9f3becab..2b7435368ae1891d193e2102c69126c85935cdc5 100644 (file)
@@ -145,7 +145,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        if (ret)
                return -ENOMEM;
  
-@@ -1811,7 +1815,7 @@ int xhci_alloc_erst(struct xhci_hcd *xhc
+@@ -1816,7 +1820,7 @@ int xhci_alloc_erst(struct xhci_hcd *xhc
        for (val = 0; val < evt_ring->num_segs; val++) {
                entry = &erst->entries[val];
                entry->seg_addr = cpu_to_le64(seg->dma);
index 5c64c9881dbca27c640102b1691dbeef2d813e96..39ddab76e8563f7c8e8c493094e60975508bc7d4 100644 (file)
@@ -63,11 +63,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
 --- a/drivers/usb/host/xhci.h
 +++ b/drivers/usb/host/xhci.h
-@@ -1905,6 +1905,7 @@ struct xhci_hcd {
- #define XHCI_BROKEN_D3COLD    BIT_ULL(41)
+@@ -1906,6 +1906,7 @@ struct xhci_hcd {
  #define XHCI_EP_CTX_BROKEN_DCS        BIT_ULL(42)
- #define XHCI_AVOID_DQ_ON_LINK BIT_ULL(43)
-+#define XHCI_VLI_TRB_CACHE_BUG        BIT_ULL(44)
+ #define XHCI_SUSPEND_RESUME_CLKS      BIT_ULL(43)
+ #define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
++#define XHCI_VLI_TRB_CACHE_BUG        BIT_ULL(45)
  
        unsigned int            num_active_eps;
        unsigned int            limit_active_eps;
index 80edae5cf547239a4e5d9e9cca08f6a9a14d4b58..91363766aaf2964dc5ea22fecc00340af817cacd 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -1182,15 +1182,9 @@ int vc4_crtc_init(struct drm_device *drm
+@@ -1166,15 +1166,9 @@ int vc4_crtc_init(struct drm_device *drm
  
        if (!vc4->hvs->hvs5) {
                drm_mode_crtc_set_gamma_size(crtc, ARRAY_SIZE(vc4_crtc->lut_r));
index 74c8a4db9841a25d54f444c83daedd33e5a40159..ab68debd2f35302b49e68d469a3bd5b6a459b98b 100644 (file)
@@ -86,11 +86,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
                        first_trb = false;
 --- a/drivers/usb/host/xhci.h
 +++ b/drivers/usb/host/xhci.h
-@@ -1906,6 +1906,7 @@ struct xhci_hcd {
- #define XHCI_EP_CTX_BROKEN_DCS        BIT_ULL(42)
- #define XHCI_AVOID_DQ_ON_LINK BIT_ULL(43)
- #define XHCI_VLI_TRB_CACHE_BUG        BIT_ULL(44)
-+#define XHCI_VLI_SS_BULK_OUT_BUG      BIT_ULL(45)
+@@ -1907,6 +1907,7 @@ struct xhci_hcd {
+ #define XHCI_SUSPEND_RESUME_CLKS      BIT_ULL(43)
+ #define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
+ #define XHCI_VLI_TRB_CACHE_BUG        BIT_ULL(45)
++#define XHCI_VLI_SS_BULK_OUT_BUG      BIT_ULL(46)
  
        unsigned int            num_active_eps;
        unsigned int            limit_active_eps;
index 5fd8ea995aab8c8e9e3511f60bf4f8342b4e4205..aa82f3c7e153c93e03064308c467d124e2493100 100644 (file)
@@ -45,7 +45,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                        *hpos += mode->crtc_htotal / 2;
        }
  
-@@ -449,6 +451,7 @@ static void vc4_crtc_config_pv(struct dr
+@@ -433,6 +435,7 @@ static void vc4_crtc_config_pv(struct dr
  static void require_hvs_enabled(struct drm_device *dev)
  {
        struct vc4_dev *vc4 = to_vc4_dev(dev);
@@ -53,7 +53,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
        WARN_ON_ONCE((HVS_READ(SCALER_DISPCTRL) & SCALER_DISPCTRL_ENABLE) !=
                     SCALER_DISPCTRL_ENABLE);
-@@ -462,6 +465,7 @@ static int vc4_crtc_disable(struct drm_c
+@@ -446,6 +449,7 @@ static int vc4_crtc_disable(struct drm_c
        struct vc4_encoder *vc4_encoder = to_vc4_encoder(encoder);
        struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc);
        struct drm_device *dev = crtc->dev;
@@ -61,7 +61,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        int ret;
  
        CRTC_WRITE(PV_V_CONTROL,
-@@ -491,7 +495,7 @@ static int vc4_crtc_disable(struct drm_c
+@@ -475,7 +479,7 @@ static int vc4_crtc_disable(struct drm_c
                vc4_encoder->post_crtc_disable(encoder, state);
  
        vc4_crtc_pixelvalve_reset(crtc);
@@ -70,7 +70,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
        if (vc4_encoder && vc4_encoder->post_crtc_powerdown)
                vc4_encoder->post_crtc_powerdown(encoder, state);
-@@ -517,6 +521,7 @@ static struct drm_encoder *vc4_crtc_get_
+@@ -501,6 +505,7 @@ static struct drm_encoder *vc4_crtc_get_
  int vc4_crtc_disable_at_boot(struct drm_crtc *crtc)
  {
        struct drm_device *drm = crtc->dev;
@@ -78,7 +78,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc);
        enum vc4_encoder_type encoder_type;
        const struct vc4_pv_data *pv_data;
-@@ -538,7 +543,7 @@ int vc4_crtc_disable_at_boot(struct drm_
+@@ -522,7 +527,7 @@ int vc4_crtc_disable_at_boot(struct drm_
        if (!(CRTC_READ(PV_V_CONTROL) & PV_VCONTROL_VIDEN))
                return 0;
  
@@ -87,7 +87,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        if (channel < 0)
                return 0;
  
-@@ -754,6 +759,7 @@ static void vc4_crtc_handle_page_flip(st
+@@ -738,6 +743,7 @@ static void vc4_crtc_handle_page_flip(st
        struct drm_crtc *crtc = &vc4_crtc->base;
        struct drm_device *dev = crtc->dev;
        struct vc4_dev *vc4 = to_vc4_dev(dev);
@@ -95,7 +95,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        u32 chan = vc4_crtc->current_hvs_channel;
        unsigned long flags;
  
-@@ -772,7 +778,7 @@ static void vc4_crtc_handle_page_flip(st
+@@ -756,7 +762,7 @@ static void vc4_crtc_handle_page_flip(st
                 * the CRTC and encoder already reconfigured, leading to
                 * underruns. This can be seen when reconfiguring the CRTC.
                 */
index c6efd540adc551d2789fa08056211beac20852f2..8f699626402b68bdb61bd4eaad39f57c78192bf3 100644 (file)
@@ -80,7 +80,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -959,14 +959,8 @@ void vc4_crtc_destroy_state(struct drm_c
+@@ -943,14 +943,8 @@ void vc4_crtc_destroy_state(struct drm_c
        struct vc4_dev *vc4 = to_vc4_dev(crtc->dev);
        struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(state);
  
index a5505849e6db1baeb97de2f95d87ef53d9219ab6..1f765aeb047dc0849e34ba993299d3f06bc58f11 100644 (file)
@@ -37,7 +37,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -813,6 +813,7 @@ struct vc4_async_flip_state {
+@@ -797,6 +797,7 @@ struct vc4_async_flip_state {
        struct drm_pending_vblank_event *event;
  
        struct vc4_seqno_cb cb;
@@ -45,7 +45,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  };
  
  /* Called when the V3D execution for the BO being flipped to is done, so that
-@@ -858,6 +859,39 @@ vc4_async_page_flip_complete(struct vc4_
+@@ -842,6 +843,39 @@ vc4_async_page_flip_complete(struct vc4_
        kfree(flip_state);
  }
  
@@ -85,7 +85,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  /* Implements async (non-vblank-synced) page flips.
   *
   * The page flip ioctl needs to return immediately, so we grab the
-@@ -918,8 +952,7 @@ static int vc4_async_page_flip(struct dr
+@@ -902,8 +936,7 @@ static int vc4_async_page_flip(struct dr
         */
        drm_atomic_set_fb_for_plane(plane->state, fb);
  
index 44fb34b37bfe91594a07a0f23f23da52bd902176..7ff4c0f06fb8d22d6c3d10e09c6048ea8d611f0f 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -728,10 +728,16 @@ static int vc4_crtc_atomic_check(struct
+@@ -712,10 +712,16 @@ static int vc4_crtc_atomic_check(struct
                if (conn_state->crtc != crtc)
                        continue;
  
index 65eddde794f5e7557219307d4cf933e00bae0d90..9a14da02b1830388a9cb4d52b2c92ad489c22017 100644 (file)
@@ -13,7 +13,7 @@ This reverts commit e99a1b69da07ee3b89a6b8005b854e6c04bfb450.
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -998,8 +998,14 @@ void vc4_crtc_destroy_state(struct drm_c
+@@ -982,8 +982,14 @@ void vc4_crtc_destroy_state(struct drm_c
        struct vc4_dev *vc4 = to_vc4_dev(crtc->dev);
        struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(state);
  
index 6ab0df5954ca100e1ae0390a2edbdbdb332dd2d4..8557609376f3eaacddff2daae6dfa470443a06d1 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Alberto Solavagione <albertosolavagione30@gmail.com>
 
 --- a/drivers/clk/bcm/clk-bcm2835.c
 +++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -2408,7 +2408,11 @@ static int __init __bcm2835_clk_driver_i
+@@ -2439,7 +2439,11 @@ static int __init __bcm2835_clk_driver_i
  {
        return platform_driver_register(&bcm2835_clk_driver);
  }
index ac22a96c3f96f2543bd4200ab73b3cbfb04648d0..8699bed008ec9c2096895c1d31ccea6e71fa341a 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                        return fifo_len_bytes - 3 * HVS_FIFO_LATENCY_PIX - 1;
  
                return fifo_len_bytes - 3 * HVS_FIFO_LATENCY_PIX;
-@@ -425,7 +425,7 @@ static void vc4_crtc_config_pv(struct dr
+@@ -409,7 +409,7 @@ static void vc4_crtc_config_pv(struct dr
        if (is_dsi)
                CRTC_WRITE(PV_HACT_ACT, mode->hdisplay * pixel_rep);
  
@@ -41,7 +41,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                CRTC_WRITE(PV_MUX_CFG,
                           VC4_SET_FIELD(PV_MUX_CFG_RGB_PIXEL_MUX_MODE_NO_SWAP,
                                         PV_MUX_CFG_RGB_PIXEL_MUX_MODE));
-@@ -883,7 +883,7 @@ static int vc4_async_set_fence_cb(struct
+@@ -867,7 +867,7 @@ static int vc4_async_set_fence_cb(struct
        struct vc4_dev *vc4 = to_vc4_dev(dev);
        struct dma_fence *fence;
  
@@ -50,7 +50,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                struct vc4_bo *bo = to_vc4_bo(&cma_bo->base);
  
                return vc4_queue_seqno_cb(dev, &flip_state->cb, bo->seqno,
-@@ -1225,13 +1225,13 @@ int vc4_crtc_init(struct drm_device *drm
+@@ -1209,13 +1209,13 @@ int vc4_crtc_init(struct drm_device *drm
                                  crtc_funcs, NULL);
        drm_crtc_helper_add(crtc, crtc_helper_funcs);
  
index ef92e7b2aa490aa4aacb8c0091886b6cda0943a2..9d03e60f5a1c99fdfe5955968ed6469cb2737482 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -818,18 +818,18 @@ struct vc4_async_flip_state {
+@@ -802,18 +802,18 @@ struct vc4_async_flip_state {
        struct drm_framebuffer *old_fb;
        struct drm_pending_vblank_event *event;
  
@@ -39,7 +39,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        struct drm_crtc *crtc = flip_state->crtc;
        struct drm_device *dev = crtc->dev;
        struct drm_plane *plane = crtc->primary;
-@@ -865,13 +865,21 @@ vc4_async_page_flip_complete(struct vc4_
+@@ -849,13 +849,21 @@ vc4_async_page_flip_complete(struct vc4_
        kfree(flip_state);
  }
  
@@ -63,7 +63,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        dma_fence_put(fence);
  }
  
-@@ -886,14 +894,14 @@ static int vc4_async_set_fence_cb(struct
+@@ -870,14 +878,14 @@ static int vc4_async_set_fence_cb(struct
        if (!vc4->is_vc5) {
                struct vc4_bo *bo = to_vc4_bo(&cma_bo->base);
  
index 958f4e8d38be5659c3b05623e7e194904f554a43..a3a291d97eea51ae5e90f57ea609a8db2a22f659 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -846,21 +846,8 @@ vc4_async_page_flip_complete(struct vc4_
+@@ -830,21 +830,8 @@ vc4_async_page_flip_complete(struct vc4_
        drm_crtc_vblank_put(crtc);
        drm_framebuffer_put(flip_state->fb);
  
@@ -38,7 +38,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
        kfree(flip_state);
  }
-@@ -869,8 +856,27 @@ static void vc4_async_page_flip_seqno_co
+@@ -853,8 +840,27 @@ static void vc4_async_page_flip_seqno_co
  {
        struct vc4_async_flip_state *flip_state =
                container_of(cb, struct vc4_async_flip_state, cb.seqno);
index d3b680a56c5329648c4ed260151817fcf80d1cb5..1c60667be64f74a54558c3c2b8466a2a750a050d 100644 (file)
@@ -20,7 +20,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -912,40 +912,19 @@ static int vc4_async_set_fence_cb(struct
+@@ -896,40 +896,19 @@ static int vc4_async_set_fence_cb(struct
        return 0;
  }
  
@@ -67,7 +67,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  
        drm_framebuffer_get(fb);
        flip_state->fb = fb;
-@@ -978,6 +957,48 @@ static int vc4_async_page_flip(struct dr
+@@ -962,6 +941,48 @@ static int vc4_async_page_flip(struct dr
        return 0;
  }
  
index 96941cb20f93b9a81349fe83efeb32ecc14758b9..c935dda7c307786b6e860371705a93309f4fd976 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_crtc.c
 +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -999,16 +999,31 @@ static int vc4_async_page_flip(struct dr
+@@ -983,16 +983,31 @@ static int vc4_async_page_flip(struct dr
        return 0;
  }
  
index 285dd8df84a929e95255817fd969aebd43ffdad4..239c140c9bec1a4e895160048d5216eaf8106f7b 100644 (file)
@@ -127,10 +127,10 @@ it on BCM4708 family.
  /*
 --- a/drivers/usb/host/xhci.h
 +++ b/drivers/usb/host/xhci.h
-@@ -1903,6 +1903,7 @@ struct xhci_hcd {
- #define XHCI_NO_SOFT_RETRY    BIT_ULL(40)
+@@ -1904,6 +1904,7 @@ struct xhci_hcd {
  #define XHCI_BROKEN_D3COLD    BIT_ULL(41)
  #define XHCI_EP_CTX_BROKEN_DCS        BIT_ULL(42)
+ #define XHCI_SUSPEND_RESUME_CLKS      BIT_ULL(43)
 +#define XHCI_FAKE_DOORBELL    BIT_ULL(44)
  
        unsigned int            num_active_eps;
index feaabc9d11fed2f3006e255131782da22274fc3d..daa3cac4eff5c81b6d0d02ac3770efe043a2ccca 100644 (file)
@@ -41,7 +41,7 @@ Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
  static void btusb_mtk_wmt_recv(struct urb *urb)
  {
        struct hci_dev *hdev = urb->context;
-@@ -3900,6 +3917,7 @@ static int btusb_probe(struct usb_interf
+@@ -3914,6 +3931,7 @@ static int btusb_probe(struct usb_interf
                hdev->shutdown = btusb_mtk_shutdown;
                hdev->manufacturer = 70;
                hdev->cmd_timeout = btusb_mtk_cmd_timeout;
index 134e2100c84d416dd8ae0eaf919c1fb25e6068f2..683aa8a8df35f551c9429163f727295c41ffbf21 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
 
 --- a/net/netfilter/nf_conntrack_core.c
 +++ b/net/netfilter/nf_conntrack_core.c
-@@ -2727,7 +2727,7 @@ int nf_conntrack_init_start(void)
+@@ -2735,7 +2735,7 @@ int nf_conntrack_init_start(void)
  
        if (!nf_conntrack_htable_size) {
                nf_conntrack_htable_size
index 206e16cb1743ec6899a6db20d00da146bf1efce8..81993e35691cfaf191fefb36718986cd2c42eb96 100644 (file)
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
   */
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2852,6 +2852,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2854,6 +2854,10 @@ static inline int pskb_trim(struct sk_bu
        return (len < skb->len) ? __pskb_trim(skb, len) : 0;
  }
  
@@ -82,7 +82,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  /**
   *    pskb_trim_unique - remove end from a paged unique (not cloned) buffer
   *    @skb: buffer to alter
-@@ -3002,16 +3006,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -3004,16 +3008,6 @@ static inline struct sk_buff *dev_alloc_
  }
  
  
index c54332f71c4aa2a0830ea2d391b1729d43c24c32..2ac9dcf07dda9d91fc78538c5b8fbf3fd71f12bc 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  #include <linux/crc32.h>
  #include <linux/if_vlan.h>
  #include <linux/uaccess.h>
-@@ -6861,6 +6862,22 @@ static void rtl_tally_reset(struct r8152
+@@ -6863,6 +6864,22 @@ static void rtl_tally_reset(struct r8152
        ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
  }
  
@@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  static void r8152b_init(struct r8152 *tp)
  {
        u32 ocp_data;
-@@ -6902,6 +6919,8 @@ static void r8152b_init(struct r8152 *tp
+@@ -6904,6 +6921,8 @@ static void r8152b_init(struct r8152 *tp
        ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
        ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
        ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
@@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  }
  
  static void r8153_init(struct r8152 *tp)
-@@ -7042,6 +7061,8 @@ static void r8153_init(struct r8152 *tp)
+@@ -7044,6 +7063,8 @@ static void r8153_init(struct r8152 *tp)
                tp->coalesce = COALESCE_SLOW;
                break;
        }
@@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  }
  
  static void r8153b_init(struct r8152 *tp)
-@@ -7124,6 +7145,8 @@ static void r8153b_init(struct r8152 *tp
+@@ -7126,6 +7147,8 @@ static void r8153b_init(struct r8152 *tp
        rtl_tally_reset(tp);
  
        tp->coalesce = 15000;   /* 15 us */
index 7fc1c588b3b8ea8bc85d5e1b15c9436853e4e063..d1bb72d3535a684e8aff538048074bbd77122888 100644 (file)
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2818,7 +2818,7 @@ static inline int pskb_network_may_pull(
+@@ -2820,7 +2820,7 @@ static inline int pskb_network_may_pull(
   * NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
   */
  #ifndef NET_SKB_PAD
index 41190fcfd43a909bc314b25be1a8d6756ef755c3..72938abd37699183858ba7f6097f954e36f8c1bc 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #endif
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -891,6 +891,7 @@ struct sk_buff {
+@@ -892,6 +892,7 @@ struct sk_buff {
  #ifdef CONFIG_IPV6_NDISC_NODETYPE
        __u8                    ndisc_nodetype:2;
  #endif
index 99e33632c4ce9aaab727f836d95d2042b6823b2a..0448574e7e5e0eec38d6978d767ec3c26ba10972 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
 
 --- a/arch/arm/boot/compressed/vmlinux.lds.S
 +++ b/arch/arm/boot/compressed/vmlinux.lds.S
-@@ -101,6 +101,13 @@ SECTIONS
+@@ -103,6 +103,13 @@ SECTIONS
  
    _edata = .;
  
@@ -40,7 +40,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
    /*
     * The image_end section appears after any additional loadable sections
     * that the linker may decide to insert in the binary image.  Having
-@@ -138,4 +145,4 @@ SECTIONS
+@@ -140,4 +147,4 @@ SECTIONS
  
    ARM_ASSERTS
  }
index 23fef71b2b486c115d1b0c67680e3ff08c9b50f4..3a3be91709eb97a7d8147749432543106bffc857 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
 
 --- a/drivers/mmc/host/sdhci-msm.c
 +++ b/drivers/mmc/host/sdhci-msm.c
-@@ -2446,7 +2446,7 @@ MODULE_DEVICE_TABLE(of, sdhci_msm_dt_mat
+@@ -2447,7 +2447,7 @@ MODULE_DEVICE_TABLE(of, sdhci_msm_dt_mat
  
  static const struct sdhci_ops sdhci_msm_ops = {
        .reset = sdhci_msm_reset,
index 860728f02dc74898d9528e1cf6329561943aa44f..cfb0556d1efd9cf8db002f294318f786fb9a232b 100644 (file)
@@ -47,7 +47,7 @@ Subject: [PATCH] phy: phy-mtk-tphy: Add hifsys-support
        tmp = readl(u3_banks->phya + U3P_U3_PHYA_DA_REG0);
        tmp &= ~(P3A_RG_XTAL_EXT_PE1H | P3A_RG_XTAL_EXT_PE2H);
        tmp |= P3A_RG_XTAL_EXT_PE1H_VAL(0x2) | P3A_RG_XTAL_EXT_PE2H_VAL(0x2);
-@@ -1436,6 +1446,16 @@ static int mtk_tphy_probe(struct platfor
+@@ -1437,6 +1447,16 @@ static int mtk_tphy_probe(struct platfor
                                         &tphy->src_coef);
        }
  
index a5836a826847b550d6c5e9b97ad465cfe5fd1073..e61b3dd94cb9922a61d88425138bb0d9736c4686 100644 (file)
@@ -19,7 +19,7 @@
        },
        [PORT_NPCM] = {
                .name           = "Nuvoton 16550",
-@@ -2745,6 +2745,11 @@ serial8250_do_set_termios(struct uart_po
+@@ -2748,6 +2748,11 @@ serial8250_do_set_termios(struct uart_po
        unsigned long flags;
        unsigned int baud, quot, frac = 0;
  
index 4c2fd18b3bd67798877a390be6473e6a6f7a7429..691a7c0398e46b653ce98b75c4213927290e0998 100644 (file)
@@ -84,7 +84,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
  static void phy_parse_property(struct mtk_tphy *tphy,
                                struct mtk_phy_instance *instance)
  {
-@@ -1143,6 +1186,40 @@ static int phy_efuse_get(struct mtk_tphy
+@@ -1144,6 +1187,40 @@ static int phy_efuse_get(struct mtk_tphy
  
                dev_dbg(dev, "u3 efuse - intr %x, rx_imp %x, tx_imp %x\n",
                        instance->efuse_intr, instance->efuse_rx_imp,instance->efuse_tx_imp);
@@ -125,7 +125,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                break;
        default:
                dev_err(dev, "no sw efuse for type %d\n", instance->type);
-@@ -1174,6 +1251,31 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1175,6 +1252,31 @@ static void phy_efuse_set(struct mtk_phy
                writel(tmp, u2_banks->com + U3P_USBPHYACR1);
                break;
        case PHY_TYPE_USB3:
@@ -157,7 +157,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
        case PHY_TYPE_PCIE:
                tmp = readl(u3_banks->phyd + U3P_U3_PHYD_RSV);
                tmp |= P3D_RG_EFUSE_AUTO_LOAD_DIS;
-@@ -1195,6 +1297,34 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1196,6 +1298,34 @@ static void phy_efuse_set(struct mtk_phy
                tmp &= ~P3A_RG_IEXT_INTR;
                tmp |= P3A_RG_IEXT_INTR_VAL(instance->efuse_intr);
                writel(tmp, u3_banks->phya + U3P_U3_PHYA_REG0);
@@ -192,7 +192,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                break;
        default:
                dev_warn(dev, "no sw efuse for type %d\n", instance->type);
-@@ -1334,6 +1464,9 @@ static struct phy *mtk_phy_xlate(struct
+@@ -1335,6 +1465,9 @@ static struct phy *mtk_phy_xlate(struct
        case MTK_PHY_V3:
                phy_v2_banks_init(tphy, instance);
                break;
@@ -202,7 +202,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
        default:
                dev_err(dev, "phy version is not supported\n");
                return ERR_PTR(-EINVAL);
-@@ -1374,6 +1507,12 @@ static const struct mtk_phy_pdata tphy_v
+@@ -1375,6 +1508,12 @@ static const struct mtk_phy_pdata tphy_v
        .version = MTK_PHY_V3,
  };
  
@@ -215,7 +215,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
  static const struct mtk_phy_pdata mt8173_pdata = {
        .avoid_rx_sen_degradation = true,
        .version = MTK_PHY_V1,
-@@ -1393,6 +1532,7 @@ static const struct of_device_id mtk_tph
+@@ -1394,6 +1533,7 @@ static const struct of_device_id mtk_tph
        { .compatible = "mediatek,generic-tphy-v1", .data = &tphy_v1_pdata },
        { .compatible = "mediatek,generic-tphy-v2", .data = &tphy_v2_pdata },
        { .compatible = "mediatek,generic-tphy-v3", .data = &tphy_v3_pdata },
index 67580f1e11b8df16bbcd73bfe8bf6d85aeaaafc1..3b8285bf479ab0cce7beb0a47fc3c92e539893cf 100644 (file)
@@ -27,7 +27,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
        u32 efuse_intr_ln1;
        u32 efuse_tx_imp_ln1;
        u32 efuse_rx_imp_ln1;
-@@ -1125,6 +1129,7 @@ static int phy_efuse_get(struct mtk_tphy
+@@ -1126,6 +1130,7 @@ static int phy_efuse_get(struct mtk_tphy
  {
        struct device *dev = &instance->phy->dev;
        int ret = 0;
@@ -35,7 +35,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
  
        /* tphy v1 doesn't support sw efuse, skip it */
        if (!tphy->pdata->sw_efuse_supported) {
-@@ -1139,6 +1144,20 @@ static int phy_efuse_get(struct mtk_tphy
+@@ -1140,6 +1145,20 @@ static int phy_efuse_get(struct mtk_tphy
  
        switch (instance->type) {
        case PHY_TYPE_USB2:
@@ -56,7 +56,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                ret = nvmem_cell_read_variable_le_u32(dev, "intr", &instance->efuse_intr);
                if (ret) {
                        dev_err(dev, "fail to get u2 intr efuse, %d\n", ret);
-@@ -1157,6 +1176,20 @@ static int phy_efuse_get(struct mtk_tphy
+@@ -1158,6 +1177,20 @@ static int phy_efuse_get(struct mtk_tphy
  
        case PHY_TYPE_USB3:
        case PHY_TYPE_PCIE:
@@ -77,7 +77,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                ret = nvmem_cell_read_variable_le_u32(dev, "intr", &instance->efuse_intr);
                if (ret) {
                        dev_err(dev, "fail to get u3 intr efuse, %d\n", ret);
-@@ -1190,6 +1223,20 @@ static int phy_efuse_get(struct mtk_tphy
+@@ -1191,6 +1224,20 @@ static int phy_efuse_get(struct mtk_tphy
                if (tphy->pdata->version != MTK_PHY_V4)
                        break;
  
@@ -98,7 +98,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                ret = nvmem_cell_read_variable_le_u32(dev, "intr_ln1", &instance->efuse_intr_ln1);
                if (ret) {
                        dev_err(dev, "fail to get u3 lane1 intr efuse, %d\n", ret);
-@@ -1241,6 +1288,10 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1242,6 +1289,10 @@ static void phy_efuse_set(struct mtk_phy
  
        switch (instance->type) {
        case PHY_TYPE_USB2:
@@ -109,7 +109,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                tmp = readl(u2_banks->misc + U3P_MISC_REG1);
                tmp |= MR1_EFUSE_AUTO_LOAD_DIS;
                writel(tmp, u2_banks->misc + U3P_MISC_REG1);
-@@ -1251,6 +1302,10 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1252,6 +1303,10 @@ static void phy_efuse_set(struct mtk_phy
                writel(tmp, u2_banks->com + U3P_USBPHYACR1);
                break;
        case PHY_TYPE_USB3:
@@ -120,7 +120,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                tmp = readl(u3_banks->phyd + U3P_U3_PHYD_RSV);
                tmp |= P3D_RG_EFUSE_AUTO_LOAD_DIS;
                writel(tmp, u3_banks->phyd + U3P_U3_PHYD_RSV);
-@@ -1277,6 +1332,10 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1278,6 +1333,10 @@ static void phy_efuse_set(struct mtk_phy
  
                break;
        case PHY_TYPE_PCIE:
@@ -131,7 +131,7 @@ Signed-off-by: Zhanyong Wang <zhanyong.wang@mediatek.com>
                tmp = readl(u3_banks->phyd + U3P_U3_PHYD_RSV);
                tmp |= P3D_RG_EFUSE_AUTO_LOAD_DIS;
                writel(tmp, u3_banks->phyd + U3P_U3_PHYD_RSV);
-@@ -1297,9 +1356,12 @@ static void phy_efuse_set(struct mtk_phy
+@@ -1298,9 +1357,12 @@ static void phy_efuse_set(struct mtk_phy
                tmp &= ~P3A_RG_IEXT_INTR;
                tmp |= P3A_RG_IEXT_INTR_VAL(instance->efuse_intr);
                writel(tmp, u3_banks->phya + U3P_U3_PHYA_REG0);
index e981ac85e4b7f2661be3c2f3ba08773ae0dfa76a..e1e817c1f2017155c648765ed7f5aacb7534d46b 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
 
 --- a/arch/powerpc/boot/Makefile
 +++ b/arch/powerpc/boot/Makefile
-@@ -162,6 +162,7 @@ src-plat-$(CONFIG_PPC_PSERIES) += pserie
+@@ -163,6 +163,7 @@ src-plat-$(CONFIG_PPC_PSERIES) += pserie
  src-plat-$(CONFIG_PPC_POWERNV) += pseries-head.S
  src-plat-$(CONFIG_PPC_IBM_CELL_BLADE) += pseries-head.S
  src-plat-$(CONFIG_MVME7100) += motload-head.S mvme7100.c
@@ -27,7 +27,7 @@ Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
  
  src-plat-$(CONFIG_PPC_MICROWATT) += fixed-head.S microwatt.c
  
-@@ -342,7 +343,7 @@ image-$(CONFIG_TQM8548)                    += cuImage.tqm
+@@ -343,7 +344,7 @@ image-$(CONFIG_TQM8548)                    += cuImage.tqm
  image-$(CONFIG_TQM8555)                       += cuImage.tqm8555
  image-$(CONFIG_TQM8560)                       += cuImage.tqm8560
  image-$(CONFIG_KSI8560)                       += cuImage.ksi8560
index c81ab7fcc20a0fc090f0bfd1cdd4841cb0e194a6..ea5f5ab0624b22acd901e2473b904c2402b164c6 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
 
 --- a/arch/powerpc/boot/Makefile
 +++ b/arch/powerpc/boot/Makefile
-@@ -271,7 +271,6 @@ image-$(CONFIG_PPC_CHRP)           += zImage.chrp
+@@ -272,7 +272,6 @@ image-$(CONFIG_PPC_CHRP)           += zImage.chrp
  image-$(CONFIG_PPC_EFIKA)             += zImage.chrp
  image-$(CONFIG_PPC_PMAC)              += zImage.pmac
  image-$(CONFIG_PPC_HOLLY)             += dtbImage.holly
@@ -24,7 +24,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  image-$(CONFIG_EPAPR_BOOT)            += zImage.epapr
  
  #
-@@ -403,15 +402,6 @@ $(obj)/dtbImage.%: vmlinux $(wrapperbits
+@@ -404,15 +403,6 @@ $(obj)/dtbImage.%: vmlinux $(wrapperbits
  $(obj)/vmlinux.strip: vmlinux
        $(STRIP) -s -R .comment $< -o $@
  
index 6c795c1d25f202c5f03d947c77eae7eddb88af03..f609f1b12abce639128fa91ceb641943cc03de9c 100644 (file)
  static inline struct clk_oxnas_gate *to_clk_oxnas_gate(struct clk_hw *hw)
  {
        return container_of(hw, struct clk_oxnas_gate, hw);
-@@ -249,3 +401,42 @@ static struct platform_driver oxnas_stdc
+@@ -251,3 +403,42 @@ static struct platform_driver oxnas_stdc
        },
  };
  builtin_platform_driver(oxnas_stdclk_driver);