kernel: bump 5.4 to 5.4.191

Merged upstream:
 apm821xx/patches-5.4/150-ata-sata_dwc_460ex-Fix-crash-due-to-OOB-write.patch

Similar patch merged upstream:
 bcm27xx/patches-5.4/950-0210-usb-xhci-Disable-the-XHCI-5-second-timeout.patch

Manually adapted:
 layerscape/patches-5.4/801-audio-0008-Revert-ASoC-Remove-dev_err-usage-after-platform_get_.patch

Compile-tested: armvirt/64
Run-tested: armvirt/64

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
Hauke Mehrtens 2022-05-09 18:18:20 +00:00
parent b4ea8e1089
commit e0bdf83972
60 changed files with 113 additions and 219 deletions

View File

@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
LINUX_VERSION-5.4 = .188
LINUX_VERSION-5.4 = .191
LINUX_KERNEL_HASH-5.4.188 = 9fbc8bfdc28c9fce2307bdf7cf1172c9819df673397a411c40a5c3d0a570fdbc
LINUX_KERNEL_HASH-5.4.191 = 288ca85fcdad18e950ccbe3d640594ee36d5aac226321ed935076fadb0cc0a3a
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -1,65 +0,0 @@
From ba068938e629eb1a8b423a54405233e685cedb78 Mon Sep 17 00:00:00 2001
Message-Id: <ba068938e629eb1a8b423a54405233e685cedb78.1647594132.git.chunkeey@gmail.com>
From: Christian Lamparter <chunkeey@gmail.com>
Date: Thu, 17 Mar 2022 21:29:28 +0100
Subject: [PATCH v1 1/2] ata: sata_dwc_460ex: Fix crash due to OOB write
To: linux-ide@vger.kernel.org
Cc: Damien Le Moal <damien.lemoal@opensource.wdc.com>,
Jens Axboe <axboe@kernel.dk>,
Tejun Heo <tj@kernel.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
the driver uses libata's "tag" values from in various arrays.
Since the mentioned patch bumped the ATA_TAG_INTERNAL to 32,
the value of the SATA_DWC_QCMD_MAX needs to be bumped to 33.
Otherwise ATA_TAG_INTERNAL cause a crash like this:
| BUG: Kernel NULL pointer dereference at 0x00000000
| Faulting instruction address: 0xc03ed4b8
| Oops: Kernel access of bad area, sig: 11 [#1]
| BE PAGE_SIZE=4K PowerPC 44x Platform
| CPU: 0 PID: 362 Comm: scsi_eh_1 Not tainted 5.4.163 #0
| NIP: c03ed4b8 LR: c03d27e8 CTR: c03ed36c
| REGS: cfa59950 TRAP: 0300 Not tainted (5.4.163)
| MSR: 00021000 <CE,ME> CR: 42000222 XER: 00000000
| DEAR: 00000000 ESR: 00000000
| GPR00: c03d27e8 cfa59a08 cfa55fe0 00000000 0fa46bc0 [...]
| [..]
| NIP [c03ed4b8] sata_dwc_qc_issue+0x14c/0x254
| LR [c03d27e8] ata_qc_issue+0x1c8/0x2dc
| Call Trace:
| [cfa59a08] [c003f4e0] __cancel_work_timer+0x124/0x194 (unreliable)
| [cfa59a78] [c03d27e8] ata_qc_issue+0x1c8/0x2dc
| [cfa59a98] [c03d2b3c] ata_exec_internal_sg+0x240/0x524
| [cfa59b08] [c03d2e98] ata_exec_internal+0x78/0xe0
| [cfa59b58] [c03d30fc] ata_read_log_page.part.38+0x1dc/0x204
| [cfa59bc8] [c03d324c] ata_identify_page_supported+0x68/0x130
| [...]
this is because sata_dwc_dma_xfer_complete() NULLs the
dma_pending's next neighbour "chan" (a *dma_chan struct) in
this '32' case right here (line ~735):
> hsdevp->dma_pending[tag] = SATA_DWC_DMA_PENDING_NONE;
Then the next time, a dma gets issued; dma_dwc_xfer_setup() passes
the NULL'd hsdevp->chan to the dmaengine_slave_config() which then
causes the crash.
Reported-by: ticerex (OpenWrt Forum)
Fixes: 28361c403683c ("libata: add extra internal command")
Cc: stable@kernel.org # 4.18+
Link: https://forum.openwrt.org/t/my-book-live-duo-reboot-loop/122464
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
---
--- a/drivers/ata/sata_dwc_460ex.c
+++ b/drivers/ata/sata_dwc_460ex.c
@@ -145,7 +145,7 @@ struct sata_dwc_device {
#endif
};
-#define SATA_DWC_QCMD_MAX 32
+#define SATA_DWC_QCMD_MAX 33
struct sata_dwc_device_port {
struct sata_dwc_device *hsdev;

View File

@ -23,7 +23,7 @@ produce a noisy warning.
xhci->quirks |= XHCI_RESET_ON_RESUME;
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -427,10 +427,14 @@ static int xhci_try_enable_msi(struct us
@@ -425,10 +425,14 @@ static int xhci_try_enable_msi(struct us
free_irq(hcd->irq, hcd);
hcd->irq = 0;
@ -43,7 +43,7 @@ produce a noisy warning.
hcd->msi_enabled = 1;
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1887,6 +1887,7 @@ struct xhci_hcd {
@@ -1890,6 +1890,7 @@ struct xhci_hcd {
struct xhci_hub usb2_rhub;
struct xhci_hub usb3_rhub;
/* support xHCI 1.0 spec USB2 hardware LPM */

View File

@ -799,7 +799,7 @@
*sum = csum_fold(csum_partial(diff, sizeof(diff),
--- a/include/linux/etherdevice.h
+++ b/include/linux/etherdevice.h
@@ -489,7 +489,7 @@ static inline bool is_etherdev_addr(cons
@@ -488,7 +488,7 @@ static inline bool is_etherdev_addr(cons
* @b: Pointer to Ethernet header
*
* Compare two Ethernet headers, returns 0 if equal.
@ -808,7 +808,7 @@
* aligned OR the platform can handle unaligned access. This is the
* case for all packets coming into netif_receive_skb or similar
* entry points.
@@ -512,11 +512,12 @@ static inline unsigned long compare_ethe
@@ -511,11 +511,12 @@ static inline unsigned long compare_ethe
fold |= *(unsigned long *)(a + 6) ^ *(unsigned long *)(b + 6);
return fold;
#else

View File

@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -8514,8 +8514,6 @@ int alloc_contig_range(unsigned long sta
@@ -8521,8 +8521,6 @@ int alloc_contig_range(unsigned long sta
/* Make sure the range is really isolated. */
if (test_pages_isolated(outer_start, end, false)) {

View File

@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -710,7 +710,7 @@ config SND_SOC_HDAC_HDA
@@ -715,7 +715,7 @@ config SND_SOC_HDAC_HDA
select SND_HDA
config SND_SOC_ICS43432

View File

@ -20,7 +20,7 @@ Subject: [PATCH] ASoC: Add support for Rpi-DAC
select SND_SOC_PCM3008
select SND_SOC_PCM3060_I2C if I2C
select SND_SOC_PCM3060_SPI if SPI_MASTER
@@ -980,6 +981,10 @@ config SND_SOC_RT5616
@@ -985,6 +986,10 @@ config SND_SOC_RT5616
tristate "Realtek RT5616 CODEC"
depends on I2C

View File

@ -35,7 +35,7 @@ Some code to load the driver based on device-tree-overlays was missing. This is
select SND_SOC_TLV320AIC26 if SPI_MASTER
select SND_SOC_TLV320AIC31XX if I2C
select SND_SOC_TLV320AIC32X4_I2C if I2C && COMMON_CLK
@@ -1143,6 +1144,9 @@ config SND_SOC_TFA9879
@@ -1148,6 +1149,9 @@ config SND_SOC_TFA9879
tristate "NXP Semiconductors TFA9879 amplifier"
depends on I2C

View File

@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -5749,6 +5749,9 @@ int __init cgroup_init_early(void)
@@ -5788,6 +5788,9 @@ int __init cgroup_init_early(void)
return 0;
}
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
/**
* cgroup_init - cgroup initialization
*
@@ -5787,6 +5790,12 @@ int __init cgroup_init(void)
@@ -5826,6 +5829,12 @@ int __init cgroup_init(void)
mutex_unlock(&cgroup_mutex);
@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
@@ -6196,6 +6205,10 @@ static int __init cgroup_disable(char *s
@@ -6235,6 +6244,10 @@ static int __init cgroup_disable(char *s
strcmp(token, ss->legacy_name))
continue;
@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
static_branch_disable(cgroup_subsys_enabled_key[i]);
pr_info("Disabling %s control group subsystem\n",
ss->name);
@@ -6205,6 +6218,31 @@ static int __init cgroup_disable(char *s
@@ -6244,6 +6257,31 @@ static int __init cgroup_disable(char *s
}
__setup("cgroup_disable=", cgroup_disable);

View File

@ -226,7 +226,7 @@ Signed-off-by: Hui Wang <hui.wang@canonical.com>
select SND_SOC_JZ4740_CODEC
select SND_SOC_JZ4725B_CODEC
select SND_SOC_LM4857 if I2C
@@ -1497,4 +1498,8 @@ config SND_SOC_TPA6130A2
@@ -1502,4 +1503,8 @@ config SND_SOC_TPA6130A2
tristate "Texas Instruments TPA6130A2 headphone amplifier"
depends on I2C

View File

@ -1,29 +0,0 @@
From a71750c83a6f1f2f7c22864bbb4e62af5e70c214 Mon Sep 17 00:00:00 2001
From: Tim Gover <tim.gover@raspberrypi.org>
Date: Fri, 22 Mar 2019 09:47:14 +0000
Subject: [PATCH] usb: xhci: Disable the XHCI 5 second timeout
If the VL805 EEPROM has not been programmed then boot will hang for five
seconds. The timeout seems to be arbitrary and is an unecessary
delay on the first boot. Remove the timeout.
This is common code and probably can't be upstreamed unless the timeout
can be configurable somehow or perhaps the XHCI driver can be skipped
on the first boot.
---
drivers/usb/host/xhci.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -196,8 +196,9 @@ int xhci_reset(struct xhci_hcd *xhci)
if (xhci->quirks & XHCI_INTEL_HOST)
udelay(1000);
+ // Hack: reduce handshake timeout from 10s 0.5s due to unprogrammed vl805
ret = xhci_handshake(&xhci->op_regs->command,
- CMD_RESET, 0, 10 * 1000 * 1000);
+ CMD_RESET, 0, 500 * 1000);
if (ret)
return ret;

View 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
@@ -1475,6 +1475,103 @@ command_cleanup:
@@ -1472,6 +1472,103 @@ command_cleanup:
}
/*
@ -119,7 +119,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
*/
@@ -5376,6 +5473,7 @@ static const struct hc_driver xhci_hc_dr
@@ -5373,6 +5470,7 @@ static const struct hc_driver xhci_hc_dr
.endpoint_reset = xhci_endpoint_reset,
.check_bandwidth = xhci_check_bandwidth,
.reset_bandwidth = xhci_reset_bandwidth,

View File

@ -80,7 +80,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
/*
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1877,6 +1877,7 @@ struct xhci_hcd {
@@ -1880,6 +1880,7 @@ struct xhci_hcd {
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)

View File

@ -47,7 +47,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
val);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1653,8 +1653,8 @@ struct urb_priv {
@@ -1656,8 +1656,8 @@ struct urb_priv {
* Each segment table entry is 4*32bits long. 1K seems like an ok size:
* (1K bytes * 8bytes/bit) / (4*32 bits) = 64 segment entries in the table,
* meaning 64 ring segments.

View File

@ -12,7 +12,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -398,7 +398,7 @@ int dma_direct_supported(struct device *
@@ -399,7 +399,7 @@ int dma_direct_supported(struct device *
if (IS_ENABLED(CONFIG_ZONE_DMA))
min_mask = DMA_BIT_MASK(ARCH_ZONE_DMA_BITS);
else

View File

@ -87,7 +87,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
(default "off")
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -267,6 +267,9 @@ static void bcm54xx_adjust_rxrefclk(stru
@@ -268,6 +268,9 @@ static void bcm54xx_adjust_rxrefclk(stru
static int bcm54xx_config_init(struct phy_device *phydev)
{
int reg, err, val;
@ -97,7 +97,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
reg = phy_read(phydev, MII_BCM54XX_ECR);
if (reg < 0)
@@ -318,6 +321,8 @@ static int bcm54xx_config_init(struct ph
@@ -319,6 +322,8 @@ static int bcm54xx_config_init(struct ph
bcm54xx_phydsp_config(phydev);
@ -106,7 +106,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org>
/* Encode link speed into LED1 and LED3 pair (green/amber).
* Also flash these two LEDs on activity. This means configuring
* them for MULTICOLOR and encoding link/activity into them.
@@ -327,8 +332,8 @@ static int bcm54xx_config_init(struct ph
@@ -328,8 +333,8 @@ static int bcm54xx_config_init(struct ph
bcm_phy_write_shadow(phydev, BCM5482_SHD_LEDS1, val);
val = BCM_LED_MULTICOLOR_IN_PHASE |

View File

@ -11,7 +11,7 @@ releases.
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -268,7 +268,7 @@ static int bcm54xx_config_init(struct ph
@@ -269,7 +269,7 @@ static int bcm54xx_config_init(struct ph
{
int reg, err, val;
u32 led_modes[] = {BCM_LED_MULTICOLOR_LINK_ACT,
@ -20,7 +20,7 @@ releases.
struct device_node *np = phydev->mdio.dev.of_node;
reg = phy_read(phydev, MII_BCM54XX_ECR);
@@ -323,10 +323,6 @@ static int bcm54xx_config_init(struct ph
@@ -324,10 +324,6 @@ static int bcm54xx_config_init(struct ph
of_property_read_u32_array(np, "led-modes", led_modes, 2);

View File

@ -65,7 +65,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arm64_dma32_phys_limit = max_zone_phys(32);
--- a/arch/powerpc/include/asm/page.h
+++ b/arch/powerpc/include/asm/page.h
@@ -334,13 +334,4 @@ struct vm_area_struct;
@@ -338,13 +338,4 @@ struct vm_area_struct;
#endif /* __ASSEMBLY__ */
#include <asm/slice.h>
@ -184,7 +184,7 @@ Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
return GFP_DMA;
if (*phys_mask <= DMA_BIT_MASK(32))
return GFP_DMA32;
@@ -396,7 +395,7 @@ int dma_direct_supported(struct device *
@@ -397,7 +396,7 @@ int dma_direct_supported(struct device *
u64 min_mask;
if (IS_ENABLED(CONFIG_ZONE_DMA))

View 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
@@ -1525,7 +1525,8 @@ static int advk_pcie_probe(struct platfo
@@ -1523,7 +1523,8 @@ static int advk_pcie_probe(struct platfo
return ret;
}
@ -402,7 +402,7 @@ Cc: linux-rockchip@lists.infradead.org
}
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -2281,6 +2281,7 @@ struct irq_domain;
@@ -2282,6 +2282,7 @@ struct irq_domain;
struct irq_domain *pci_host_bridge_of_msi_domain(struct pci_bus *bus);
int pci_parse_request_of_pci_ranges(struct device *dev,
struct list_head *resources,
@ -410,7 +410,7 @@ Cc: linux-rockchip@lists.infradead.org
struct resource **bus_range);
/* Arch may override this (weak) */
@@ -2289,9 +2290,11 @@ struct device_node *pcibios_get_phb_of_n
@@ -2290,9 +2291,11 @@ struct device_node *pcibios_get_phb_of_n
#else /* CONFIG_OF */
static inline struct irq_domain *
pci_host_bridge_of_msi_domain(struct pci_bus *bus) { return NULL; }

View File

@ -84,7 +84,7 @@ Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -326,7 +326,7 @@ static inline bool dma_direct_possible(s
@@ -327,7 +327,7 @@ static inline bool dma_direct_possible(s
size_t size)
{
return swiotlb_force != SWIOTLB_FORCE &&
@ -93,7 +93,7 @@ Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
}
dma_addr_t dma_direct_map_page(struct device *dev, struct page *page,
@@ -375,7 +375,7 @@ dma_addr_t dma_direct_map_resource(struc
@@ -376,7 +376,7 @@ dma_addr_t dma_direct_map_resource(struc
{
dma_addr_t dma_addr = paddr;
@ -104,7 +104,7 @@ Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
}
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -682,7 +682,7 @@ bool swiotlb_map(struct device *dev, phy
@@ -683,7 +683,7 @@ bool swiotlb_map(struct device *dev, phy
/* Ensure that the address returned is DMA'ble */
*dma_addr = __phys_to_dma(dev, *phys);

View File

@ -271,7 +271,7 @@ Signed-off-by: Christoph Hellwig <hch@lst.de>
u64 dma_direct_get_required_mask(struct device *dev);
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
@@ -697,7 +697,7 @@ static inline int dma_coerce_mask_and_co
@@ -705,7 +705,7 @@ static inline int dma_coerce_mask_and_co
*/
static inline bool dma_addressing_limited(struct device *dev)
{

View File

@ -168,7 +168,7 @@ Signed-off-by: AMuszkat <ariel.muszkat@gmail.com>
select SND_SOC_MAX98088 if I2C
select SND_SOC_MAX98090 if I2C
select SND_SOC_MAX98095 if I2C
@@ -732,6 +733,13 @@ config SND_SOC_LOCHNAGAR_SC
@@ -737,6 +738,13 @@ config SND_SOC_LOCHNAGAR_SC
This driver support the sound card functionality of the Cirrus
Logic Lochnagar audio development board.

View File

@ -39,7 +39,7 @@ Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
{
DEFINE_DMA_BUF_EXPORT_INFO(exp_info);
struct file *memfd = NULL;
@@ -172,6 +174,7 @@ static long udmabuf_create(const struct
@@ -176,6 +178,7 @@ static long udmabuf_create(const struct
exp_info.priv = ubuf;
exp_info.flags = O_RDWR;
@ -47,7 +47,7 @@ Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
buf = dma_buf_export(&exp_info);
if (IS_ERR(buf)) {
ret = PTR_ERR(buf);
@@ -209,7 +212,7 @@ static long udmabuf_ioctl_create(struct
@@ -213,7 +216,7 @@ static long udmabuf_ioctl_create(struct
list.offset = create.offset;
list.size = create.size;
@ -56,7 +56,7 @@ Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
}
static long udmabuf_ioctl_create_list(struct file *filp, unsigned long arg)
@@ -228,7 +231,7 @@ static long udmabuf_ioctl_create_list(st
@@ -232,7 +235,7 @@ static long udmabuf_ioctl_create_list(st
if (IS_ERR(list))
return PTR_ERR(list);

View File

@ -51,7 +51,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1880,6 +1880,7 @@ struct xhci_hcd {
@@ -1883,6 +1883,7 @@ struct xhci_hcd {
#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(36)
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
#define XHCI_DISABLE_SPARSE BIT_ULL(38)

View File

@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -213,7 +213,8 @@ static void bcm54xx_adjust_rxrefclk(stru
@@ -214,7 +214,8 @@ static void bcm54xx_adjust_rxrefclk(stru
/* Abort if we are using an untested phy. */
if (BRCM_PHY_MODEL(phydev) != PHY_ID_BCM57780 &&
BRCM_PHY_MODEL(phydev) != PHY_ID_BCM50610 &&
@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
return;
val = bcm_phy_read_shadow(phydev, BCM54XX_SHD_SCR3);
@@ -620,13 +621,21 @@ static struct phy_driver broadcom_driver
@@ -641,13 +642,21 @@ static struct phy_driver broadcom_driver
.config_intr = bcm_phy_config_intr,
}, {
.phy_id = PHY_ID_BCM54210E,
@ -49,7 +49,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
.phy_id = PHY_ID_BCM5461,
.phy_id_mask = 0xfffffff0,
.name = "Broadcom BCM5461",
@@ -754,7 +763,8 @@ module_phy_driver(broadcom_drivers);
@@ -775,7 +784,8 @@ module_phy_driver(broadcom_drivers);
static struct mdio_device_id __maybe_unused broadcom_tbl[] = {
{ PHY_ID_BCM5411, 0xfffffff0 },
{ PHY_ID_BCM5421, 0xfffffff0 },

View File

@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -43,6 +43,11 @@ static int bcm54210e_config_init(struct
@@ -44,6 +44,11 @@ static int bcm54210e_config_init(struct
return 0;
}
@ -22,7 +22,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
static int bcm54612e_config_init(struct phy_device *phydev)
{
int reg;
@@ -304,6 +309,10 @@ static int bcm54xx_config_init(struct ph
@@ -305,6 +310,10 @@ static int bcm54xx_config_init(struct ph
err = bcm54210e_config_init(phydev);
if (err)
return err;

View File

@ -90,7 +90,7 @@ it on BCM4708 family.
/*
* Reset a halted HC.
*
@@ -608,10 +651,20 @@ static int xhci_init(struct usb_hcd *hcd
@@ -606,10 +649,20 @@ static int xhci_init(struct usb_hcd *hcd
static int xhci_run_finished(struct xhci_hcd *xhci)
{
@ -114,7 +114,7 @@ it on BCM4708 family.
xhci->shared_hcd->state = HC_STATE_RUNNING;
xhci->cmd_ring_state = CMD_RING_STATE_RUNNING;
@@ -621,6 +674,10 @@ static int xhci_run_finished(struct xhci
@@ -619,6 +672,10 @@ static int xhci_run_finished(struct xhci
xhci_dbg_trace(xhci, trace_xhci_dbg_init,
"Finished xhci_run for USB3 roothub");
return 0;
@ -127,7 +127,7 @@ it on BCM4708 family.
/*
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1877,6 +1877,7 @@ struct xhci_hcd {
@@ -1880,6 +1880,7 @@ struct xhci_hcd {
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)

View File

@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -4926,6 +4926,80 @@ static int mv88e6xxx_port_mdb_del(struct
@@ -4927,6 +4927,80 @@ static int mv88e6xxx_port_mdb_del(struct
return err;
}
@ -106,7 +106,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static int mv88e6xxx_port_egress_floods(struct dsa_switch *ds, int port,
bool unicast, bool multicast)
{
@@ -4980,6 +5054,8 @@ static const struct dsa_switch_ops mv88e
@@ -4981,6 +5055,8 @@ static const struct dsa_switch_ops mv88e
.port_mdb_prepare = mv88e6xxx_port_mdb_prepare,
.port_mdb_add = mv88e6xxx_port_mdb_add,
.port_mdb_del = mv88e6xxx_port_mdb_del,

View File

@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -4993,7 +4993,7 @@ static void mv88e6xxx_port_mirror_del(st
@@ -4994,7 +4994,7 @@ static void mv88e6xxx_port_mirror_del(st
if (chip->info->ops->set_egress_port(chip,
direction,
dsa_upstream_port(ds,

View File

@ -8,7 +8,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
@@ -1168,6 +1168,73 @@ static struct mtd_info * __init open_mtd
@@ -1161,6 +1161,73 @@ static struct mtd_info * __init open_mtd
return mtd;
}
@ -82,7 +82,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void)
{
int err, i, k;
@@ -1251,6 +1318,12 @@ static int __init ubi_init(void)
@@ -1244,6 +1311,12 @@ static int __init ubi_init(void)
}
}

View File

@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (ret < 0)
goto out;
@@ -564,6 +570,17 @@ full_scan:
@@ -566,6 +572,17 @@ full_scan:
return err;
}

View File

@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/*
* Get the required data from the packet.
*/
@@ -1130,7 +1136,7 @@ int nf_conntrack_tcp_packet(struct nf_co
@@ -1139,7 +1145,7 @@ int nf_conntrack_tcp_packet(struct nf_co
IP_CT_TCP_FLAG_DATA_UNACKNOWLEDGED &&
timeouts[new_state] > timeouts[TCP_CONNTRACK_UNACK])
timeout = timeouts[TCP_CONNTRACK_UNACK];

View File

@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
@@ -3296,6 +3298,7 @@ static int packet_create(struct net *net
@@ -3301,6 +3303,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
@@ -3939,6 +3942,16 @@ packet_setsockopt(struct socket *sock, i
@@ -3944,6 +3947,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
default:
return -ENOPROTOOPT;
}
@@ -3995,6 +4008,13 @@ static int packet_getsockopt(struct sock
@@ -4000,6 +4013,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;

View File

@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5080,6 +5080,7 @@ static int mv88e6xxx_register_switch(str
@@ -5081,6 +5081,7 @@ static int mv88e6xxx_register_switch(str
ds->ops = &mv88e6xxx_switch_ops;
ds->ageing_time_min = chip->info->age_time_coeff;
ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;

View File

@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
/**
* ata_build_rw_tf - Build ATA taskfile for given read/write request
* @tf: Target ATA taskfile
@@ -5152,6 +5165,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
@@ -5155,6 +5168,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (tag < 0)
return NULL;
}
@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
qc = __ata_qc_from_tag(ap, tag);
qc->tag = qc->hw_tag = tag;
@@ -6088,6 +6104,9 @@ struct ata_port *ata_port_alloc(struct a
@@ -6091,6 +6107,9 @@ struct ata_port *ata_port_alloc(struct a
ap->stats.unhandled_irq = 1;
ap->stats.idle_irq = 1;
#endif
@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
ata_sff_port_init(ap);
return ap;
@@ -6123,6 +6142,12 @@ static void ata_host_release(struct kref
@@ -6126,6 +6145,12 @@ static void ata_host_release(struct kref
kfree(ap->pmp_link);
kfree(ap->slave_link);
@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
kfree(ap);
host->ports[i] = NULL;
}
@@ -6586,7 +6611,23 @@ int ata_host_register(struct ata_host *h
@@ -6589,7 +6614,23 @@ int ata_host_register(struct ata_host *h
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
host->ports[i]->local_port_no = i + 1;
}

View File

@ -15,7 +15,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -206,6 +206,18 @@
@@ -207,6 +207,18 @@
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
};

View File

@ -56,7 +56,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
};
};
@@ -353,6 +354,12 @@
@@ -354,6 +355,12 @@
regulator;
};

View File

@ -59,7 +59,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
#interrupt-cells = <2>;
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -201,6 +201,7 @@
@@ -202,6 +202,7 @@
compatible = "qcom,ipq4019-pinctrl";
reg = <0x01000000 0x300000>;
gpio-controller;

View File

@ -23,7 +23,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -166,6 +166,7 @@
@@ -167,6 +167,7 @@
<1 4 0xf08>,
<1 1 0xf08>;
clock-frequency = <48000000>;

View File

@ -21,7 +21,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -577,5 +577,33 @@
@@ -578,5 +578,33 @@
"legacy";
status = "disabled";
};

View File

@ -13,7 +13,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -209,6 +209,16 @@
@@ -210,6 +210,16 @@
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
};

View File

@ -15,7 +15,7 @@ Reviewed-by: Vinod Koul <vkoul@kernel.org>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -615,5 +615,79 @@
@@ -616,5 +616,79 @@
reg = <4>;
};
};

View File

@ -13,7 +13,7 @@ Cc: Luka Perkov <luka.perkov@sartura.hr>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -190,7 +190,7 @@
@@ -191,7 +191,7 @@
reg = <0x1800000 0x60000>;
};
@ -22,7 +22,7 @@ Cc: Luka Perkov <luka.perkov@sartura.hr>
compatible = "qcom,prng";
reg = <0x22000 0x140>;
clocks = <&gcc GCC_PRNG_AHB_CLK>;
@@ -310,7 +310,7 @@
@@ -311,7 +311,7 @@
status = "disabled";
};
@ -31,7 +31,7 @@ Cc: Luka Perkov <luka.perkov@sartura.hr>
compatible = "qcom,crypto-v5.1";
reg = <0x08e3a000 0x6000>;
clocks = <&gcc GCC_CRYPTO_AHB_CLK>,
@@ -396,7 +396,7 @@
@@ -397,7 +397,7 @@
dma-names = "rx", "tx";
};

View File

@ -14,7 +14,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
@@ -616,6 +616,29 @@
@@ -617,6 +617,29 @@
};
};

View File

@ -20,7 +20,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
/ {
#address-cells = <1>;
@@ -597,22 +598,39 @@
@@ -598,22 +599,39 @@
ethphy0: ethernet-phy@0 {
reg = <0>;

View File

@ -25,7 +25,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
};
cpus {
@@ -657,6 +659,64 @@
@@ -658,6 +660,64 @@
status = "disabled";
};

View File

@ -5480,7 +5480,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
(transaction layer end-to-end CRC checking).
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -1392,6 +1392,8 @@ void pci_walk_bus(struct pci_bus *top, i
@@ -1393,6 +1393,8 @@ void pci_walk_bus(struct pci_bus *top, i
void *userdata);
int pci_cfg_space_size(struct pci_dev *dev);
unsigned char pci_bus_max_busnr(struct pci_bus *bus);

View File

@ -87,7 +87,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
}
/**
@@ -3901,6 +3917,7 @@ static int cgroup_add_file(struct cgroup
@@ -3924,6 +3940,7 @@ static int cgroup_add_file(struct cgroup
{
char name[CGROUP_FILE_NAME_MAX];
struct kernfs_node *kn;
@ -95,7 +95,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
struct lock_class_key *key = NULL;
int ret;
@@ -3931,6 +3948,14 @@ static int cgroup_add_file(struct cgroup
@@ -3954,6 +3971,14 @@ static int cgroup_add_file(struct cgroup
spin_unlock_irq(&cgroup_file_kn_lock);
}

View File

@ -89,7 +89,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
}
/**
@@ -3917,7 +3901,6 @@ static int cgroup_add_file(struct cgroup
@@ -3940,7 +3924,6 @@ static int cgroup_add_file(struct cgroup
{
char name[CGROUP_FILE_NAME_MAX];
struct kernfs_node *kn;
@ -97,7 +97,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
struct lock_class_key *key = NULL;
int ret;
@@ -3948,14 +3931,6 @@ static int cgroup_add_file(struct cgroup
@@ -3971,14 +3954,6 @@ static int cgroup_add_file(struct cgroup
spin_unlock_irq(&cgroup_file_kn_lock);
}

View File

@ -35,7 +35,7 @@ Signed-off-by: Han Xu <han.xu@nxp.com>
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
@@ -576,7 +576,7 @@ static int io_init(struct ubi_device *ub
@@ -572,7 +572,7 @@ static int io_init(struct ubi_device *ub
dbg_gen("sizeof(struct ubi_ainf_peb) %zu", sizeof(struct ubi_ainf_peb));
dbg_gen("sizeof(struct ubi_wl_entry) %zu", sizeof(struct ubi_wl_entry));

View File

@ -86,42 +86,30 @@ This reverts commit cf9441adb1a35506d7606866c382b9d8614169b5.
if (err) {
--- a/sound/soc/codecs/msm8916-wcd-analog.c
+++ b/sound/soc/codecs/msm8916-wcd-analog.c
@@ -1195,8 +1195,10 @@ static int pm8916_wcd_analog_spmi_probe(
}
@@ -1196,6 +1196,7 @@ static int pm8916_wcd_analog_spmi_probe(
irq = platform_get_irq_byname(pdev, "mbhc_switch_int");
- if (irq < 0)
+ if (irq < 0) {
if (irq < 0) {
+ dev_err(dev, "failed to get mbhc switch irq\n");
return irq;
+ }
ret = devm_request_threaded_irq(dev, irq, NULL,
pm8916_mbhc_switch_irq_handler,
@@ -1208,8 +1210,10 @@ static int pm8916_wcd_analog_spmi_probe(
ret = irq;
goto err_disable_clk;
}
@@ -1211,6 +1212,7 @@ static int pm8916_wcd_analog_spmi_probe(
if (priv->mbhc_btn_enabled) {
irq = platform_get_irq_byname(pdev, "mbhc_but_press_det");
- if (irq < 0)
+ if (irq < 0) {
if (irq < 0) {
+ dev_err(dev, "failed to get button press irq\n");
return irq;
+ }
ret = devm_request_threaded_irq(dev, irq, NULL,
mbhc_btn_press_irq_handler,
@@ -1220,8 +1224,10 @@ static int pm8916_wcd_analog_spmi_probe(
dev_err(dev, "cannot request mbhc button press irq\n");
ret = irq;
goto err_disable_clk;
}
@@ -1225,6 +1227,7 @@ static int pm8916_wcd_analog_spmi_probe(
irq = platform_get_irq_byname(pdev, "mbhc_but_rel_det");
- if (irq < 0)
+ if (irq < 0) {
if (irq < 0) {
+ dev_err(dev, "failed to get button release irq\n");
return irq;
+ }
ret = devm_request_threaded_irq(dev, irq, NULL,
mbhc_btn_release_irq_handler,
ret = irq;
goto err_disable_clk;
}
--- a/sound/soc/codecs/twl6040.c
+++ b/sound/soc/codecs/twl6040.c
@@ -1108,8 +1108,10 @@ static int twl6040_probe(struct snd_soc_
@ -278,7 +266,7 @@ This reverts commit cf9441adb1a35506d7606866c382b9d8614169b5.
if (ret) {
--- a/sound/soc/mxs/mxs-saif.c
+++ b/sound/soc/mxs/mxs-saif.c
@@ -790,8 +790,12 @@ static int mxs_saif_probe(struct platfor
@@ -793,8 +793,12 @@ static int mxs_saif_probe(struct platfor
return PTR_ERR(saif->base);
irq = platform_get_irq(pdev, 0);

View File

@ -229,7 +229,7 @@ Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
* fall back to INTx or other interrupts, e.g., a system shared
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -2024,6 +2024,7 @@ static inline void pcibios_penalize_isa_
@@ -2025,6 +2025,7 @@ static inline void pcibios_penalize_isa_
int pcibios_alloc_irq(struct pci_dev *dev);
void pcibios_free_irq(struct pci_dev *dev);
resource_size_t pcibios_default_alignment(void);

View File

@ -24,7 +24,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
--- a/drivers/usb/host/xhci-hub.c
+++ b/drivers/usb/host/xhci-hub.c
@@ -1422,6 +1422,15 @@ int xhci_hub_control(struct usb_hcd *hcd
@@ -1425,6 +1425,15 @@ int xhci_hub_control(struct usb_hcd *hcd
/* 4.19.6 Port Test Modes (USB2 Test Mode) */
if (hcd->speed != HCD_USB2)
goto error;
@ -174,7 +174,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
* bursts that are required to move all packets in this TD. Only SuperSpeed
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -5403,6 +5403,7 @@ static const struct hc_driver xhci_hc_dr
@@ -5401,6 +5401,7 @@ static const struct hc_driver xhci_hc_dr
.disable_usb3_lpm_timeout = xhci_disable_usb3_lpm_timeout,
.find_raw_port_number = xhci_find_raw_port_number,
.clear_tt_buffer_complete = xhci_clear_tt_buffer_complete,
@ -184,7 +184,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
void xhci_init_driver(struct hc_driver *drv,
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -2154,6 +2154,16 @@ int xhci_find_raw_port_number(struct usb
@@ -2157,6 +2157,16 @@ int xhci_find_raw_port_number(struct usb
struct xhci_hub *xhci_get_rhub(struct usb_hcd *hcd);
void xhci_hc_died(struct xhci_hcd *xhci);

View File

@ -21,7 +21,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -193,7 +193,7 @@ int xhci_reset(struct xhci_hcd *xhci)
@@ -193,7 +193,7 @@ int xhci_reset(struct xhci_hcd *xhci, u6
* Without this delay, the subsequent HC register access,
* may result in a system hang very rarely.
*/
@ -29,10 +29,10 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
+ if (xhci->quirks & (XHCI_INTEL_HOST | XHCI_CDNS_HOST))
udelay(1000);
ret = xhci_handshake(&xhci->op_regs->command,
ret = xhci_handshake(&xhci->op_regs->command, CMD_RESET, 0, timeout_us);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1877,6 +1877,7 @@ struct xhci_hcd {
@@ -1880,6 +1880,7 @@ struct xhci_hcd {
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)

View File

@ -24,7 +24,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -5424,6 +5424,8 @@ void xhci_init_driver(struct hc_driver *
@@ -5422,6 +5422,8 @@ void xhci_init_driver(struct hc_driver *
drv->check_bandwidth = over->check_bandwidth;
if (over->reset_bandwidth)
drv->reset_bandwidth = over->reset_bandwidth;
@ -35,7 +35,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
EXPORT_SYMBOL_GPL(xhci_init_driver);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1920,6 +1920,7 @@ struct xhci_driver_overrides {
@@ -1923,6 +1923,7 @@ struct xhci_driver_overrides {
int (*start)(struct usb_hcd *hcd);
int (*check_bandwidth)(struct usb_hcd *, struct usb_device *);
void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *);

View File

@ -16,7 +16,7 @@ Signed-off-by: Li Jun <jun.li@nxp.com>
--- a/drivers/usb/host/xhci-hub.c
+++ b/drivers/usb/host/xhci-hub.c
@@ -1740,7 +1740,8 @@ static bool xhci_port_missing_cas_quirk(
@@ -1743,7 +1743,8 @@ static bool xhci_port_missing_cas_quirk(
return false;
if (((portsc & PORT_PLS_MASK) != XDEV_POLLING) &&

View File

@ -19,7 +19,7 @@
},
[PORT_NPCM] = {
.name = "Nuvoton 16550",
@@ -2598,6 +2598,11 @@ serial8250_do_set_termios(struct uart_po
@@ -2610,6 +2610,11 @@ serial8250_do_set_termios(struct uart_po
unsigned long flags;
unsigned int baud, quot, frac = 0;

View File

@ -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);
@@ -1495,6 +1504,62 @@ out_release_res:
@@ -1493,6 +1502,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;
@@ -1627,6 +1692,10 @@ static int advk_pcie_probe(struct platfo
@@ -1625,6 +1690,10 @@ static int advk_pcie_probe(struct platfo
else
pcie->link_gen = ret;

View 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
@@ -1528,7 +1528,9 @@ static int advk_pcie_enable_phy(struct a
@@ -1526,7 +1526,9 @@ static int advk_pcie_enable_phy(struct a
}
ret = phy_power_on(pcie->phy);

View File

@ -15,7 +15,7 @@
/* initialize internal qc */
qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL);
@@ -5159,6 +5167,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
@@ -5162,6 +5170,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
return NULL;
@ -25,7 +25,7 @@
/* libsas case */
if (ap->flags & ATA_FLAG_SAS_HOST) {
tag = ata_sas_allocate_tag(ap);
@@ -5204,6 +5215,8 @@ void ata_qc_free(struct ata_queued_cmd *
@@ -5207,6 +5218,8 @@ void ata_qc_free(struct ata_queued_cmd *
qc->tag = ATA_TAG_POISON;
if (ap->flags & ATA_FLAG_SAS_HOST)
ata_sas_free_tag(tag, ap);