mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-18 16:40:29 +00:00
kernel: bump 5.4 to 5.4.137
Manually rebased generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch All others updated automatically. Compile-tested on: ramips/mt7621, armvirt/32 Runtime-tested on: ramips/mt7621, armvirt/32 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
a205de5594
commit
2d5ee43dc6
@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
|
||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||
endif
|
||||
|
||||
LINUX_VERSION-5.4 = .132
|
||||
LINUX_VERSION-5.4 = .137
|
||||
|
||||
LINUX_KERNEL_HASH-5.4.132 = 8466adbfb3579e751ede683496df7bb20f258b5f882250f3dd82be63736d00ef
|
||||
LINUX_KERNEL_HASH-5.4.137 = f09e5e366ce5d8bde887cda229ef17138fd1653706a702221f934f99aaa31f7c
|
||||
|
||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||
|
@ -43,7 +43,7 @@ produce a noisy warning.
|
||||
hcd->msi_enabled = 1;
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1883,6 +1883,7 @@ struct xhci_hcd {
|
||||
@@ -1884,6 +1884,7 @@ struct xhci_hcd {
|
||||
struct xhci_hub usb2_rhub;
|
||||
struct xhci_hub usb3_rhub;
|
||||
/* support xHCI 1.0 spec USB2 hardware LPM */
|
||||
|
@ -214,7 +214,7 @@
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/ipv6.h>
|
||||
#include <linux/icmpv6.h>
|
||||
@@ -849,10 +850,10 @@ static void tcp_v6_send_response(const s
|
||||
@@ -864,10 +865,10 @@ static void tcp_v6_send_response(const s
|
||||
topt = (__be32 *)(t1 + 1);
|
||||
|
||||
if (tsecr) {
|
||||
|
@ -1040,7 +1040,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
}
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -5321,7 +5321,7 @@ static void port_event(struct usb_hub *h
|
||||
@@ -5369,7 +5369,7 @@ static void port_event(struct usb_hub *h
|
||||
port_dev->over_current_count++;
|
||||
port_over_current_notify(port_dev);
|
||||
|
||||
|
@ -234,7 +234,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
static int bcm2708_fb_register(struct bcm2708_fb *fb)
|
||||
--- a/drivers/video/fbdev/core/fbmem.c
|
||||
+++ b/drivers/video/fbdev/core/fbmem.c
|
||||
@@ -1076,6 +1076,30 @@ fb_blank(struct fb_info *info, int blank
|
||||
@@ -1074,6 +1074,30 @@ fb_blank(struct fb_info *info, int blank
|
||||
}
|
||||
EXPORT_SYMBOL(fb_blank);
|
||||
|
||||
@ -265,7 +265,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
|
||||
unsigned long arg)
|
||||
{
|
||||
@@ -1084,6 +1108,7 @@ static long do_fb_ioctl(struct fb_info *
|
||||
@@ -1082,6 +1106,7 @@ static long do_fb_ioctl(struct fb_info *
|
||||
struct fb_fix_screeninfo fix;
|
||||
struct fb_cmap cmap_from;
|
||||
struct fb_cmap_user cmap;
|
||||
@ -273,7 +273,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
void __user *argp = (void __user *)arg;
|
||||
long ret = 0;
|
||||
|
||||
@@ -1159,6 +1184,15 @@ static long do_fb_ioctl(struct fb_info *
|
||||
@@ -1157,6 +1182,15 @@ static long do_fb_ioctl(struct fb_info *
|
||||
unlock_fb_info(info);
|
||||
console_unlock();
|
||||
break;
|
||||
@ -289,7 +289,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
default:
|
||||
lock_fb_info(info);
|
||||
fb = info->fbops;
|
||||
@@ -1304,6 +1338,7 @@ static long fb_compat_ioctl(struct file
|
||||
@@ -1302,6 +1336,7 @@ static long fb_compat_ioctl(struct file
|
||||
case FBIOPAN_DISPLAY:
|
||||
case FBIOGET_CON2FBMAP:
|
||||
case FBIOPUT_CON2FBMAP:
|
||||
|
@ -267,7 +267,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
|
||||
goto out;
|
||||
--- a/drivers/mmc/core/core.c
|
||||
+++ b/drivers/mmc/core/core.c
|
||||
@@ -1922,7 +1922,8 @@ EXPORT_SYMBOL(mmc_erase);
|
||||
@@ -1925,7 +1925,8 @@ EXPORT_SYMBOL(mmc_erase);
|
||||
int mmc_can_erase(struct mmc_card *card)
|
||||
{
|
||||
if ((card->host->caps & MMC_CAP_ERASE) &&
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
@@ -2149,7 +2149,7 @@ static void bcmgenet_init_tx_ring(struct
|
||||
@@ -2150,7 +2150,7 @@ static void bcmgenet_init_tx_ring(struct
|
||||
|
||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
|
||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
|
||||
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
/* Disable rate control for now */
|
||||
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
||||
TDMA_FLOW_PERIOD);
|
||||
@@ -3573,9 +3573,12 @@ static int bcmgenet_probe(struct platfor
|
||||
@@ -3574,9 +3574,12 @@ static int bcmgenet_probe(struct platfor
|
||||
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
||||
|
||||
/* Set default coalescing parameters */
|
||||
|
@ -37,7 +37,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
|
||||
--- a/drivers/usb/host/xhci-ring.c
|
||||
+++ b/drivers/usb/host/xhci-ring.c
|
||||
@@ -527,7 +527,10 @@ void xhci_find_new_dequeue_state(struct
|
||||
@@ -550,7 +550,10 @@ void xhci_find_new_dequeue_state(struct
|
||||
struct xhci_virt_ep *ep = &dev->eps[ep_index];
|
||||
struct xhci_ring *ep_ring;
|
||||
struct xhci_segment *new_seg;
|
||||
@ -48,7 +48,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
dma_addr_t addr;
|
||||
u64 hw_dequeue;
|
||||
bool cycle_found = false;
|
||||
@@ -565,7 +568,28 @@ void xhci_find_new_dequeue_state(struct
|
||||
@@ -588,7 +591,28 @@ void xhci_find_new_dequeue_state(struct
|
||||
hw_dequeue = xhci_get_hw_deq(xhci, dev, ep_index, stream_id);
|
||||
new_seg = ep_ring->deq_seg;
|
||||
new_deq = ep_ring->dequeue;
|
||||
@ -80,7 +80,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
/*
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1873,6 +1873,7 @@ struct xhci_hcd {
|
||||
@@ -1874,6 +1874,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)
|
||||
|
@ -38,7 +38,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
||||
{
|
||||
/* MIPS chips strapped for BE will automagically configure the
|
||||
@@ -1995,6 +1999,11 @@ static void reset_umac(struct bcmgenet_p
|
||||
@@ -1996,6 +2000,11 @@ static void reset_umac(struct bcmgenet_p
|
||||
bcmgenet_rbuf_ctrl_set(priv, 0);
|
||||
udelay(10);
|
||||
|
||||
|
@ -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
|
||||
@@ -1649,8 +1649,8 @@ struct urb_priv {
|
||||
@@ -1650,8 +1650,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.
|
||||
|
@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
@@ -3474,7 +3474,7 @@ static int bcmgenet_probe(struct platfor
|
||||
@@ -3475,7 +3475,7 @@ static int bcmgenet_probe(struct platfor
|
||||
priv = netdev_priv(dev);
|
||||
priv->irq0 = platform_get_irq(pdev, 0);
|
||||
priv->irq1 = platform_get_irq(pdev, 1);
|
||||
|
@ -82,7 +82,7 @@ Cc: linux-rockchip@lists.infradead.org
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -1049,7 +1049,8 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1060,7 +1060,8 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
|
||||
#define MAX_TUNING_LOOP 40
|
||||
|
||||
@@ -2758,7 +2758,7 @@ static void sdhci_timeout_timer(struct t
|
||||
@@ -2762,7 +2762,7 @@ static void sdhci_timeout_timer(struct t
|
||||
spin_lock_irqsave(&host->lock, flags);
|
||||
|
||||
if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
|
||||
@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
mmc_hostname(host->mmc));
|
||||
sdhci_dumpregs(host);
|
||||
|
||||
@@ -2780,7 +2780,7 @@ static void sdhci_timeout_data_timer(str
|
||||
@@ -2784,7 +2784,7 @@ static void sdhci_timeout_data_timer(str
|
||||
|
||||
if (host->data || host->data_cmd ||
|
||||
(host->cmd && sdhci_data_line_cmd(host->cmd))) {
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
|
||||
|
||||
--- a/include/media/v4l2-subdev.h
|
||||
+++ b/include/media/v4l2-subdev.h
|
||||
@@ -670,6 +670,29 @@ struct v4l2_subdev_pad_config {
|
||||
@@ -674,6 +674,29 @@ struct v4l2_subdev_pad_config {
|
||||
*
|
||||
* @set_frame_desc: set the low level media bus frame parameters, @fd array
|
||||
* may be adjusted by the subdev driver to device capabilities.
|
||||
@ -50,7 +50,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
|
||||
*/
|
||||
struct v4l2_subdev_pad_ops {
|
||||
int (*init_cfg)(struct v4l2_subdev *sd,
|
||||
@@ -710,6 +733,10 @@ struct v4l2_subdev_pad_ops {
|
||||
@@ -714,6 +737,10 @@ struct v4l2_subdev_pad_ops {
|
||||
struct v4l2_mbus_frame_desc *fd);
|
||||
int (*set_frame_desc)(struct v4l2_subdev *sd, unsigned int pad,
|
||||
struct v4l2_mbus_frame_desc *fd);
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
|
||||
|
||||
--- a/include/media/v4l2-subdev.h
|
||||
+++ b/include/media/v4l2-subdev.h
|
||||
@@ -402,12 +402,6 @@ struct v4l2_mbus_frame_desc {
|
||||
@@ -406,12 +406,6 @@ struct v4l2_mbus_frame_desc {
|
||||
*
|
||||
* @query_dv_timings: callback for VIDIOC_QUERY_DV_TIMINGS() ioctl handler code.
|
||||
*
|
||||
@ -30,7 +30,7 @@ Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
|
||||
* @s_rx_buffer: set a host allocated memory buffer for the subdev. The subdev
|
||||
* can adjust @size to a lower value and must not write more data to the
|
||||
* buffer starting at @data than the original value of @size.
|
||||
@@ -435,10 +429,6 @@ struct v4l2_subdev_video_ops {
|
||||
@@ -439,10 +433,6 @@ struct v4l2_subdev_video_ops {
|
||||
struct v4l2_dv_timings *timings);
|
||||
int (*query_dv_timings)(struct v4l2_subdev *sd,
|
||||
struct v4l2_dv_timings *timings);
|
||||
|
@ -24,16 +24,16 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||
@@ -2790,7 +2790,7 @@ static void bcmgenet_set_hw_addr(struct
|
||||
@@ -2791,7 +2791,7 @@ static void bcmgenet_set_hw_addr(struct
|
||||
}
|
||||
|
||||
/* Returns a reusable dma control register value */
|
||||
-static u32 bcmgenet_dma_disable(struct bcmgenet_priv *priv)
|
||||
+static u32 bcmgenet_dma_disable(struct bcmgenet_priv *priv, bool flush_rx)
|
||||
{
|
||||
unsigned int i;
|
||||
u32 reg;
|
||||
u32 dma_ctrl;
|
||||
@@ -2809,6 +2809,14 @@ static u32 bcmgenet_dma_disable(struct b
|
||||
@@ -2816,6 +2816,14 @@ static u32 bcmgenet_dma_disable(struct b
|
||||
udelay(10);
|
||||
bcmgenet_umac_writel(priv, 0, UMAC_TX_FLUSH);
|
||||
|
||||
@ -48,9 +48,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
return dma_ctrl;
|
||||
}
|
||||
|
||||
@@ -2910,8 +2918,8 @@ static int bcmgenet_open(struct net_devi
|
||||
bcmgenet_ext_writel(priv, reg, EXT_EXT_PWR_MGMT);
|
||||
}
|
||||
@@ -2911,8 +2919,8 @@ static int bcmgenet_open(struct net_devi
|
||||
|
||||
bcmgenet_set_hw_addr(priv, dev->dev_addr);
|
||||
|
||||
- /* Disable RX/TX DMA and flush TX queues */
|
||||
- dma_ctrl = bcmgenet_dma_disable(priv);
|
||||
@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
/* Reinitialize TDMA and RDMA and SW housekeeping */
|
||||
ret = bcmgenet_init_dma(priv);
|
||||
@@ -3671,7 +3679,7 @@ static int bcmgenet_resume(struct device
|
||||
@@ -3665,7 +3673,7 @@ static int bcmgenet_resume(struct device
|
||||
bcmgenet_power_up(priv, GENET_POWER_WOL_MAGIC);
|
||||
|
||||
/* Disable RX/TX DMA and flush TX queues */
|
||||
|
@ -32,7 +32,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
|
||||
--- a/drivers/usb/host/xhci-ring.c
|
||||
+++ b/drivers/usb/host/xhci-ring.c
|
||||
@@ -624,6 +624,16 @@ void xhci_find_new_dequeue_state(struct
|
||||
@@ -647,6 +647,16 @@ void xhci_find_new_dequeue_state(struct
|
||||
|
||||
} while (!cycle_found || !td_last_trb_found);
|
||||
|
||||
@ -51,7 +51,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1876,6 +1876,7 @@ struct xhci_hcd {
|
||||
@@ -1877,6 +1877,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)
|
||||
|
@ -127,7 +127,7 @@ it on BCM4708 family.
|
||||
/*
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1873,6 +1873,7 @@ struct xhci_hcd {
|
||||
@@ -1874,6 +1874,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)
|
||||
|
@ -84,7 +84,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
--- a/arch/arm/boot/dts/gemini.dtsi
|
||||
+++ b/arch/arm/boot/dts/gemini.dtsi
|
||||
@@ -356,7 +356,7 @@
|
||||
@@ -357,7 +357,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
@ -93,7 +93,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
compatible = "cortina,gemini-pata", "faraday,ftide010";
|
||||
reg = <0x63000000 0x1000>;
|
||||
interrupts = <4 IRQ_TYPE_EDGE_RISING>;
|
||||
@@ -365,9 +365,11 @@
|
||||
@@ -366,9 +366,11 @@
|
||||
clock-names = "PCLK";
|
||||
sata = <&sata>;
|
||||
status = "disabled";
|
||||
@ -106,7 +106,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
compatible = "cortina,gemini-pata", "faraday,ftide010";
|
||||
reg = <0x63400000 0x1000>;
|
||||
interrupts = <5 IRQ_TYPE_EDGE_RISING>;
|
||||
@@ -376,6 +378,8 @@
|
||||
@@ -377,6 +379,8 @@
|
||||
clock-names = "PCLK";
|
||||
sata = <&sata>;
|
||||
status = "disabled";
|
||||
|
@ -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
|
||||
@@ -4922,6 +4922,80 @@ static int mv88e6xxx_port_mdb_del(struct
|
||||
@@ -4926,6 +4926,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)
|
||||
{
|
||||
@@ -4976,6 +5050,8 @@ static const struct dsa_switch_ops mv88e
|
||||
@@ -4980,6 +5054,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,
|
||||
|
@ -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
|
||||
@@ -4989,7 +4989,7 @@ static void mv88e6xxx_port_mirror_del(st
|
||||
@@ -4993,7 +4993,7 @@ static void mv88e6xxx_port_mirror_del(st
|
||||
if (chip->info->ops->set_egress_port(chip,
|
||||
direction,
|
||||
dsa_upstream_port(ds,
|
||||
|
@ -499,6 +499,7 @@ CONFIG_BASE_SMALL=0
|
||||
# CONFIG_BATTERY_MAX17040 is not set
|
||||
# CONFIG_BATTERY_MAX17042 is not set
|
||||
# CONFIG_BATTERY_MAX1721X is not set
|
||||
# CONFIG_BATTERY_RT5033 is not set
|
||||
# CONFIG_BATTERY_SBS is not set
|
||||
# CONFIG_BAYCOM_EPP is not set
|
||||
# CONFIG_BAYCOM_PAR is not set
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (netif_elide_gro(skb->dev))
|
||||
goto normal;
|
||||
|
||||
@@ -7284,6 +7287,48 @@ static void __netdev_adjacent_dev_unlink
|
||||
@@ -7291,6 +7294,48 @@ static void __netdev_adjacent_dev_unlink
|
||||
&upper_dev->adj_list.lower);
|
||||
}
|
||||
|
||||
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
static int __netdev_upper_dev_link(struct net_device *dev,
|
||||
struct net_device *upper_dev, bool master,
|
||||
void *upper_priv, void *upper_info,
|
||||
@@ -7334,6 +7379,7 @@ static int __netdev_upper_dev_link(struc
|
||||
@@ -7341,6 +7386,7 @@ static int __netdev_upper_dev_link(struc
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||
&changeupper_info.info);
|
||||
ret = notifier_to_errno(ret);
|
||||
@@ -7427,6 +7473,7 @@ void netdev_upper_dev_unlink(struct net_
|
||||
@@ -7434,6 +7480,7 @@ void netdev_upper_dev_unlink(struct net_
|
||||
|
||||
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
||||
|
||||
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||
&changeupper_info.info);
|
||||
|
||||
@@ -8157,6 +8204,7 @@ int dev_set_mac_address(struct net_devic
|
||||
@@ -8164,6 +8211,7 @@ int dev_set_mac_address(struct net_devic
|
||||
if (err)
|
||||
return err;
|
||||
dev->addr_assign_type = NET_ADDR_SET;
|
||||
|
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
local_irq_save(flags);
|
||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||
local_irq_restore(flags);
|
||||
@@ -5978,6 +5984,11 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
||||
@@ -5982,6 +5988,11 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
||||
*/
|
||||
void __napi_schedule_irqoff(struct napi_struct *n)
|
||||
{
|
||||
@ -116,10 +116,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if (!IS_ENABLED(CONFIG_PREEMPT_RT))
|
||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||
}
|
||||
EXPORT_SYMBOL(__napi_schedule_irqoff);
|
||||
@@ -6239,9 +6250,89 @@ static void init_gro_hash(struct napi_st
|
||||
else
|
||||
@@ -6246,9 +6257,89 @@ static void init_gro_hash(struct napi_st
|
||||
napi->gro_bitmask = 0;
|
||||
}
|
||||
|
||||
@ -209,7 +209,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
INIT_LIST_HEAD(&napi->poll_list);
|
||||
hrtimer_init(&napi->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED);
|
||||
napi->timer.function = napi_watchdog;
|
||||
@@ -6258,6 +6349,7 @@ void netif_napi_add(struct net_device *d
|
||||
@@ -6265,6 +6356,7 @@ void netif_napi_add(struct net_device *d
|
||||
#ifdef CONFIG_NETPOLL
|
||||
napi->poll_owner = -1;
|
||||
#endif
|
||||
@ -217,7 +217,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
set_bit(NAPI_STATE_SCHED, &napi->state);
|
||||
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
||||
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
||||
@@ -6298,6 +6390,7 @@ static void flush_gro_hash(struct napi_s
|
||||
@@ -6305,6 +6397,7 @@ static void flush_gro_hash(struct napi_s
|
||||
void netif_napi_del(struct napi_struct *napi)
|
||||
{
|
||||
might_sleep();
|
||||
@ -225,7 +225,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (napi_hash_del(napi))
|
||||
synchronize_net();
|
||||
list_del_init(&napi->dev_list);
|
||||
@@ -6310,50 +6403,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
||||
@@ -6317,50 +6410,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
||||
|
||||
static int napi_poll(struct napi_struct *n, struct list_head *repoll)
|
||||
{
|
||||
@ -280,7 +280,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
/* Some drivers may have called napi_schedule
|
||||
* prior to exhausting their budget.
|
||||
@@ -10333,6 +10394,10 @@ static int __init net_dev_init(void)
|
||||
@@ -10340,6 +10401,10 @@ static int __init net_dev_init(void)
|
||||
sd->backlog.weight = weight_p;
|
||||
}
|
||||
|
||||
|
@ -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
|
||||
@@ -5076,6 +5076,7 @@ static int mv88e6xxx_register_switch(str
|
||||
@@ -5080,6 +5080,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;
|
||||
|
@ -25,7 +25,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
|
||||
--- a/drivers/pci/quirks.c
|
||||
+++ b/drivers/pci/quirks.c
|
||||
@@ -205,6 +205,7 @@ static void quirk_mmio_always_on(struct
|
||||
@@ -206,6 +206,7 @@ static void quirk_mmio_always_on(struct
|
||||
DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID,
|
||||
PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on);
|
||||
|
||||
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* The Mellanox Tavor device gives false positive parity errors. Mark this
|
||||
* device with a broken_parity_status to allow PCI scanning code to "skip"
|
||||
@@ -3320,6 +3321,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
@@ -3321,6 +3322,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
|
||||
|
||||
@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
|
||||
* To work around this, query the size it should be configured to by the
|
||||
@@ -3345,6 +3348,8 @@ static void quirk_intel_ntb(struct pci_d
|
||||
@@ -3346,6 +3349,8 @@ static void quirk_intel_ntb(struct pci_d
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
|
||||
|
||||
@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* Some BIOS implementations leave the Intel GPU interrupts enabled, even
|
||||
* though no one is handling them (e.g., if the i915 driver is never
|
||||
@@ -3383,6 +3388,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
||||
@@ -3384,6 +3389,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
|
||||
|
||||
|
@ -702,7 +702,7 @@ binding
|
||||
};
|
||||
|
||||
pmu {
|
||||
@@ -560,15 +559,126 @@
|
||||
@@ -559,15 +558,126 @@
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
@ -831,7 +831,7 @@ binding
|
||||
};
|
||||
|
||||
i2c1: i2c@2010000 {
|
||||
@@ -579,7 +689,7 @@
|
||||
@@ -578,7 +688,7 @@
|
||||
reg = <0x0 0x2010000 0x0 0x10000>;
|
||||
interrupts = <0 34 0x4>; /* Level high type */
|
||||
clock-names = "i2c";
|
||||
@ -840,7 +840,7 @@ binding
|
||||
};
|
||||
|
||||
i2c2: i2c@2020000 {
|
||||
@@ -590,7 +700,7 @@
|
||||
@@ -589,7 +699,7 @@
|
||||
reg = <0x0 0x2020000 0x0 0x10000>;
|
||||
interrupts = <0 35 0x4>; /* Level high type */
|
||||
clock-names = "i2c";
|
||||
@ -849,7 +849,7 @@ binding
|
||||
};
|
||||
|
||||
i2c3: i2c@2030000 {
|
||||
@@ -601,7 +711,7 @@
|
||||
@@ -600,7 +710,7 @@
|
||||
reg = <0x0 0x2030000 0x0 0x10000>;
|
||||
interrupts = <0 35 0x4>; /* Level high type */
|
||||
clock-names = "i2c";
|
||||
@ -858,7 +858,7 @@ binding
|
||||
};
|
||||
|
||||
ifc: ifc@2240000 {
|
||||
@@ -633,8 +743,8 @@
|
||||
@@ -632,8 +742,8 @@
|
||||
pcie1: pcie@3400000 {
|
||||
compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie";
|
||||
reg-names = "regs", "config";
|
||||
@ -869,7 +869,7 @@ binding
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
@@ -642,6 +752,7 @@
|
||||
@@ -641,6 +751,7 @@
|
||||
num-viewport = <6>;
|
||||
bus-range = <0x0 0xff>;
|
||||
msi-parent = <&its>;
|
||||
@ -877,7 +877,7 @@ binding
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-map-mask = <0 0 0 7>;
|
||||
interrupt-map = <0000 0 0 1 &gic 0 0 0 109 4>,
|
||||
@@ -654,8 +765,8 @@
|
||||
@@ -653,8 +764,8 @@
|
||||
pcie2: pcie@3500000 {
|
||||
compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie";
|
||||
reg-names = "regs", "config";
|
||||
@ -888,7 +888,7 @@ binding
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
@@ -663,6 +774,7 @@
|
||||
@@ -662,6 +773,7 @@
|
||||
num-viewport = <6>;
|
||||
bus-range = <0x0 0xff>;
|
||||
msi-parent = <&its>;
|
||||
@ -896,7 +896,7 @@ binding
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-map-mask = <0 0 0 7>;
|
||||
interrupt-map = <0000 0 0 1 &gic 0 0 0 114 4>,
|
||||
@@ -675,8 +787,8 @@
|
||||
@@ -674,8 +786,8 @@
|
||||
pcie3: pcie@3600000 {
|
||||
compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie";
|
||||
reg-names = "regs", "config";
|
||||
@ -907,7 +907,7 @@ binding
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
@@ -684,6 +796,7 @@
|
||||
@@ -683,6 +795,7 @@
|
||||
num-viewport = <256>;
|
||||
bus-range = <0x0 0xff>;
|
||||
msi-parent = <&its>;
|
||||
@ -915,7 +915,7 @@ binding
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-map-mask = <0 0 0 7>;
|
||||
interrupt-map = <0000 0 0 1 &gic 0 0 0 119 4>,
|
||||
@@ -696,8 +809,8 @@
|
||||
@@ -695,8 +808,8 @@
|
||||
pcie4: pcie@3700000 {
|
||||
compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie";
|
||||
reg-names = "regs", "config";
|
||||
@ -926,7 +926,7 @@ binding
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
@@ -705,6 +818,7 @@
|
||||
@@ -704,6 +817,7 @@
|
||||
num-viewport = <6>;
|
||||
bus-range = <0x0 0xff>;
|
||||
msi-parent = <&its>;
|
||||
@ -934,7 +934,7 @@ binding
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-map-mask = <0 0 0 7>;
|
||||
interrupt-map = <0000 0 0 1 &gic 0 0 0 124 4>,
|
||||
@@ -754,11 +868,22 @@
|
||||
@@ -753,11 +867,22 @@
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
};
|
||||
|
||||
|
@ -146,7 +146,7 @@ Signed-off-by: Yuantian Tang <andy.tang@nxp.com>
|
||||
|
||||
timer: timer {
|
||||
compatible = "arm,armv8-timer";
|
||||
@@ -907,3 +872,36 @@
|
||||
@@ -906,3 +871,36 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -27,7 +27,7 @@ Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
|
||||
tmu: tmu@1f80000 {
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -834,8 +834,9 @@
|
||||
@@ -833,8 +833,9 @@
|
||||
};
|
||||
|
||||
serdes1: serdes@1ea0000 {
|
||||
|
@ -98,7 +98,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -820,6 +820,7 @@
|
||||
@@ -819,6 +819,7 @@
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
@ -106,7 +106,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
};
|
||||
|
||||
usb1: usb3@3110000 {
|
||||
@@ -831,6 +832,7 @@
|
||||
@@ -830,6 +831,7 @@
|
||||
snps,quirk-frame-length-adjustment = <0x20>;
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
|
@ -117,7 +117,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
*
|
||||
* Abhimanyu Saini <abhimanyu.saini@nxp.com>
|
||||
*
|
||||
@@ -525,7 +525,7 @@
|
||||
@@ -524,7 +524,7 @@
|
||||
};
|
||||
|
||||
/* TODO: WRIOP (CCSR?) */
|
||||
@ -126,7 +126,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
* E-MDIO1: 0x1_6000
|
||||
*/
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
@@ -538,7 +538,7 @@
|
||||
@@ -537,7 +537,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -135,7 +135,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
* E-MDIO2: 0x1_7000
|
||||
*/
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
@@ -550,7 +550,7 @@
|
||||
@@ -549,7 +549,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -144,7 +144,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c07000 0x0 0x1000>;
|
||||
device_type = "mdio";
|
||||
@@ -560,7 +560,7 @@
|
||||
@@ -559,7 +559,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -153,7 +153,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c0b000 0x0 0x1000>;
|
||||
device_type = "mdio";
|
||||
@@ -570,7 +570,7 @@
|
||||
@@ -569,7 +569,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -162,7 +162,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c0f000 0x0 0x1000>;
|
||||
device_type = "mdio";
|
||||
@@ -580,7 +580,7 @@
|
||||
@@ -579,7 +579,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -171,7 +171,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c13000 0x0 0x1000>;
|
||||
device_type = "mdio";
|
||||
@@ -590,7 +590,7 @@
|
||||
@@ -589,7 +589,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -180,7 +180,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
status = "disabled";
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c17000 0x0 0x1000>;
|
||||
@@ -601,7 +601,7 @@
|
||||
@@ -600,7 +600,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -189,7 +189,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
status = "disabled";
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c1b000 0x0 0x1000>;
|
||||
@@ -612,7 +612,7 @@
|
||||
@@ -611,7 +611,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -198,7 +198,7 @@ Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
|
||||
status = "disabled";
|
||||
compatible = "fsl,fman-memac-mdio";
|
||||
reg = <0x0 0x8c1f000 0x0 0x1000>;
|
||||
@@ -623,7 +623,7 @@
|
||||
@@ -622,7 +622,7 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
|
@ -260,7 +260,7 @@ Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
|
||||
phy-handle = <&mdio0_phy12>;
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -550,90 +550,6 @@
|
||||
@@ -549,90 +549,6 @@
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
@ -351,7 +351,7 @@ Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
|
||||
i2c0: i2c@2000000 {
|
||||
status = "disabled";
|
||||
compatible = "fsl,vf610-i2c", "fsl,ls208xa-vf610-i2c";
|
||||
@@ -835,12 +751,6 @@
|
||||
@@ -834,12 +750,6 @@
|
||||
snps,host-vbus-glitches;
|
||||
};
|
||||
|
||||
|
@ -276,7 +276,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com>
|
||||
};
|
||||
|
||||
cpu: cpus {
|
||||
@@ -757,9 +758,16 @@
|
||||
@@ -756,9 +757,16 @@
|
||||
interrupts = <0 12 4>;
|
||||
};
|
||||
|
||||
|
@ -34,7 +34,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com>
|
||||
ftm_alarm0: timer@2800000 {
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -762,6 +762,7 @@
|
||||
@@ -761,6 +761,7 @@
|
||||
compatible = "fsl,ls208xa-rcpm", "fsl,qoriq-rcpm-2.1+";
|
||||
reg = <0x0 0x1e34040 0x0 0x18>;
|
||||
#fsl,rcpm-wakeup-cells = <6>;
|
||||
|
@ -110,7 +110,7 @@ Reviewed-by: Leo Li <leo.li@nxp.com>
|
||||
dr_mode = "host";
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -730,7 +730,7 @@
|
||||
@@ -729,7 +729,7 @@
|
||||
|
||||
usb0: usb3@3100000 {
|
||||
status = "disabled";
|
||||
@ -119,7 +119,7 @@ Reviewed-by: Leo Li <leo.li@nxp.com>
|
||||
reg = <0x0 0x3100000 0x0 0x10000>;
|
||||
interrupts = <0 80 0x4>; /* Level high type */
|
||||
dr_mode = "host";
|
||||
@@ -742,7 +742,7 @@
|
||||
@@ -741,7 +741,7 @@
|
||||
|
||||
usb1: usb3@3110000 {
|
||||
status = "disabled";
|
||||
|
@ -122,7 +122,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -738,6 +738,7 @@
|
||||
@@ -737,6 +737,7 @@
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
snps,host-vbus-glitches;
|
||||
@ -130,7 +130,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
};
|
||||
|
||||
usb1: usb3@3110000 {
|
||||
@@ -750,6 +751,7 @@
|
||||
@@ -749,6 +750,7 @@
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
snps,host-vbus-glitches;
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
|
||||
};
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -610,16 +610,16 @@
|
||||
@@ -609,16 +609,16 @@
|
||||
};
|
||||
|
||||
qspi: spi@20c0000 {
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
|
||||
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
|
||||
@@ -738,7 +738,6 @@
|
||||
@@ -737,7 +737,6 @@
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
snps,host-vbus-glitches;
|
||||
@ -26,7 +26,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
||||
};
|
||||
|
||||
usb1: usb3@3110000 {
|
||||
@@ -751,7 +750,6 @@
|
||||
@@ -750,7 +749,6 @@
|
||||
snps,dis_rxdet_inp3_quirk;
|
||||
snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
|
||||
snps,host-vbus-glitches;
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
|
||||
--- a/drivers/pci/quirks.c
|
||||
+++ b/drivers/pci/quirks.c
|
||||
@@ -2523,6 +2523,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
||||
@@ -2524,6 +2524,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT3364, quirk_disable_all_msi);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
|
||||
|
||||
--- a/drivers/pci/quirks.c
|
||||
+++ b/drivers/pci/quirks.c
|
||||
@@ -1356,6 +1356,10 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR
|
||||
@@ -1357,6 +1357,10 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR
|
||||
occur when mode detecting */
|
||||
DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR_ID_VIA, PCI_ANY_ID,
|
||||
PCI_CLASS_STORAGE_IDE, 8, quirk_no_ata_d3);
|
||||
|
@ -14,7 +14,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
|
||||
--- a/drivers/pci/quirks.c
|
||||
+++ b/drivers/pci/quirks.c
|
||||
@@ -2529,6 +2529,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
||||
@@ -2530,6 +2530,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
|
||||
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ec, quirk_disable_all_msi);
|
||||
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
|
||||
|
@ -27,7 +27,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
#include <linux/serial_core.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/tty_flip.h>
|
||||
@@ -2391,6 +2393,54 @@ static struct uart_driver lpuart_reg = {
|
||||
@@ -2394,6 +2396,54 @@ static struct uart_driver lpuart_reg = {
|
||||
.cons = LPUART_CONSOLE,
|
||||
};
|
||||
|
||||
@ -82,7 +82,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
static int lpuart_probe(struct platform_device *pdev)
|
||||
{
|
||||
const struct of_device_id *of_id = of_match_device(lpuart_dt_ids,
|
||||
@@ -2428,6 +2478,10 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2431,6 +2481,10 @@ static int lpuart_probe(struct platform_
|
||||
|
||||
sport->port.rs485_config = lpuart_config_rs485;
|
||||
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Adriana Reus <adriana.reus@nxp.com>
|
||||
|
||||
--- a/drivers/tty/serial/fsl_lpuart.c
|
||||
+++ b/drivers/tty/serial/fsl_lpuart.c
|
||||
@@ -2476,7 +2476,7 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2479,7 +2479,7 @@ static int lpuart_probe(struct platform_
|
||||
return PTR_ERR(sport->port.membase);
|
||||
|
||||
sport->port.membase += sdata->reg_off;
|
||||
|
@ -536,7 +536,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
lpuart_dma_rx_free(&sport->port);
|
||||
}
|
||||
|
||||
@@ -2480,6 +2636,10 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2483,6 +2639,10 @@ static int lpuart_probe(struct platform_
|
||||
sport->port.dev = &pdev->dev;
|
||||
sport->port.type = PORT_LPUART;
|
||||
sport->devtype = sdata->devtype;
|
||||
@ -547,7 +547,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
ret = platform_get_irq(pdev, 0);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
@@ -2642,7 +2802,7 @@ static int lpuart_suspend(struct device
|
||||
@@ -2645,7 +2805,7 @@ static int lpuart_suspend(struct device
|
||||
* Rx DMA path before suspend and start Rx DMA path on resume.
|
||||
*/
|
||||
if (irq_wake) {
|
||||
|
@ -105,7 +105,7 @@ Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
|
||||
static void lpuart_stop_tx(struct uart_port *port)
|
||||
{
|
||||
unsigned char temp;
|
||||
@@ -2728,6 +2770,10 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2731,6 +2773,10 @@ static int lpuart_probe(struct platform_
|
||||
if (ret)
|
||||
goto failed_attach_port;
|
||||
|
||||
@ -116,7 +116,7 @@ Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
|
||||
uart_get_rs485_mode(&pdev->dev, &sport->port.rs485);
|
||||
|
||||
if (sport->port.rs485.flags & SER_RS485_RX_DURING_TX)
|
||||
@@ -2751,6 +2797,8 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2754,6 +2800,8 @@ static int lpuart_probe(struct platform_
|
||||
|
||||
return 0;
|
||||
|
||||
|
@ -59,7 +59,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
.set_termios = lpuart32_set_termios,
|
||||
.type = lpuart_type,
|
||||
.request_port = lpuart_request_port,
|
||||
@@ -2766,6 +2783,11 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2769,6 +2786,11 @@ static int lpuart_probe(struct platform_
|
||||
if (ret)
|
||||
goto failed_irq_request;
|
||||
|
||||
@ -71,7 +71,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
ret = uart_add_one_port(&lpuart_reg, &sport->port);
|
||||
if (ret)
|
||||
goto failed_attach_port;
|
||||
@@ -2800,6 +2822,9 @@ static int lpuart_probe(struct platform_
|
||||
@@ -2803,6 +2825,9 @@ static int lpuart_probe(struct platform_
|
||||
failed_reset:
|
||||
uart_remove_one_port(&lpuart_reg, &sport->port);
|
||||
failed_attach_port:
|
||||
@ -81,7 +81,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
failed_irq_request:
|
||||
lpuart_disable_clks(sport);
|
||||
failed_clock_enable:
|
||||
@@ -2826,15 +2851,41 @@ static int lpuart_remove(struct platform
|
||||
@@ -2829,15 +2854,41 @@ static int lpuart_remove(struct platform
|
||||
if (sport->dma_rx_chan)
|
||||
dma_release_channel(sport->dma_rx_chan);
|
||||
|
||||
@ -123,7 +123,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
|
||||
if (lpuart_is_32(sport)) {
|
||||
/* disable Rx/Tx and interrupts */
|
||||
@@ -2848,10 +2899,14 @@ static int lpuart_suspend(struct device
|
||||
@@ -2851,10 +2902,14 @@ static int lpuart_suspend(struct device
|
||||
writeb(temp, sport->port.membase + UARTCR2);
|
||||
}
|
||||
|
||||
@ -138,7 +138,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
|
||||
if (sport->lpuart_dma_rx_use) {
|
||||
/*
|
||||
@@ -2882,9 +2937,6 @@ static int lpuart_suspend(struct device
|
||||
@@ -2885,9 +2940,6 @@ static int lpuart_suspend(struct device
|
||||
dmaengine_terminate_all(sport->dma_tx_chan);
|
||||
}
|
||||
|
||||
@ -148,7 +148,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2892,9 +2944,11 @@ static int lpuart_resume(struct device *
|
||||
@@ -2895,9 +2947,11 @@ static int lpuart_resume(struct device *
|
||||
{
|
||||
struct lpuart_port *sport = dev_get_drvdata(dev);
|
||||
bool irq_wake = irqd_is_wakeup_set(irq_get_irq_data(sport->port.irq));
|
||||
@ -162,7 +162,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
|
||||
if (lpuart_is_32(sport))
|
||||
lpuart32_setup_watermark_enable(sport);
|
||||
@@ -2915,13 +2969,23 @@ static int lpuart_resume(struct device *
|
||||
@@ -2918,13 +2972,23 @@ static int lpuart_resume(struct device *
|
||||
if (lpuart_is_32(sport))
|
||||
lpuart32_configure(sport);
|
||||
|
||||
@ -188,7 +188,7 @@ Reviewed-by: Robin Gong <yibin.gong@nxp.com>
|
||||
|
||||
static struct platform_driver lpuart_driver = {
|
||||
.probe = lpuart_probe,
|
||||
@@ -2929,7 +2993,7 @@ static struct platform_driver lpuart_dri
|
||||
@@ -2932,7 +2996,7 @@ static struct platform_driver lpuart_dri
|
||||
.driver = {
|
||||
.name = "fsl-lpuart",
|
||||
.of_match_table = lpuart_dt_ids,
|
||||
|
@ -117,7 +117,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2876,108 +2890,205 @@ static int lpuart_runtime_resume(struct
|
||||
@@ -2879,108 +2893,205 @@ static int lpuart_runtime_resume(struct
|
||||
return lpuart_enable_clks(sport);
|
||||
};
|
||||
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
||||
|
||||
--- a/drivers/tty/serial/fsl_lpuart.c
|
||||
+++ b/drivers/tty/serial/fsl_lpuart.c
|
||||
@@ -2614,7 +2614,9 @@ static int __init lpuart32_early_console
|
||||
@@ -2617,7 +2617,9 @@ static int __init lpuart32_early_console
|
||||
if (!device->port.membase)
|
||||
return -ENODEV;
|
||||
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
retval = xhci_enter_test_mode(xhci, test_mode, wIndex,
|
||||
--- a/drivers/usb/host/xhci-ring.c
|
||||
+++ b/drivers/usb/host/xhci-ring.c
|
||||
@@ -3592,6 +3592,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
@@ -3624,6 +3624,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -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
|
||||
@@ -2150,6 +2150,16 @@ int xhci_find_raw_port_number(struct usb
|
||||
@@ -2151,6 +2151,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);
|
||||
|
@ -32,7 +32,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
ret = xhci_handshake(&xhci->op_regs->command,
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1873,6 +1873,7 @@ struct xhci_hcd {
|
||||
@@ -1874,6 +1874,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)
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci-ring.c
|
||||
+++ b/drivers/usb/host/xhci-ring.c
|
||||
@@ -2058,12 +2058,9 @@ static int process_ctrl_td(struct xhci_h
|
||||
@@ -2091,12 +2091,9 @@ static int process_ctrl_td(struct xhci_h
|
||||
|
||||
switch (trb_comp_code) {
|
||||
case COMP_SUCCESS:
|
||||
|
@ -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
|
||||
@@ -1916,6 +1916,7 @@ struct xhci_driver_overrides {
|
||||
@@ -1917,6 +1917,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 *);
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Li Jun <jun.li@freescale.com>
|
||||
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -4731,7 +4731,8 @@ hub_port_init(struct usb_hub *hub, struc
|
||||
@@ -4779,7 +4779,8 @@ hub_port_init(struct usb_hub *hub, struc
|
||||
}
|
||||
if (r) {
|
||||
if (r != -ENODEV)
|
||||
|
@ -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
|
||||
@@ -1737,7 +1737,8 @@ static bool xhci_port_missing_cas_quirk(
|
||||
@@ -1738,7 +1738,8 @@ static bool xhci_port_missing_cas_quirk(
|
||||
return false;
|
||||
|
||||
if (((portsc & PORT_PLS_MASK) != XDEV_POLLING) &&
|
||||
|
@ -33,7 +33,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -338,6 +338,14 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -349,6 +349,14 @@ static void advk_pcie_setup_hw(struct ad
|
||||
reg |= PIO_CTRL_ADDR_WIN_DISABLE;
|
||||
advk_writel(pcie, reg, PIO_CTRL);
|
||||
|
||||
|
@ -29,7 +29,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -300,11 +300,6 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -311,11 +311,6 @@ static void advk_pcie_setup_hw(struct ad
|
||||
reg |= LANE_COUNT_1;
|
||||
advk_writel(pcie, reg, PCIE_CORE_CTRL0_REG);
|
||||
|
||||
@ -41,7 +41,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
/* Enable MSI */
|
||||
reg = advk_readl(pcie, PCIE_CORE_CTRL2_REG);
|
||||
reg |= PCIE_CORE_CTRL2_MSI_ENABLE;
|
||||
@@ -346,7 +341,15 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -357,7 +352,15 @@ static void advk_pcie_setup_hw(struct ad
|
||||
*/
|
||||
msleep(PCI_PM_D3COLD_WAIT);
|
||||
|
||||
|
@ -42,7 +42,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
#define PCIE_CORE_LINK_WIDTH_SHIFT 20
|
||||
#define PCIE_CORE_ERR_CAPCTL_REG 0x118
|
||||
#define PCIE_CORE_ERR_CAPCTL_ECRC_CHK_TX BIT(5)
|
||||
@@ -201,6 +202,7 @@ struct advk_pcie {
|
||||
@@ -202,6 +203,7 @@ struct advk_pcie {
|
||||
struct mutex msi_used_lock;
|
||||
u16 msi_msg;
|
||||
int root_bus_nr;
|
||||
@ -50,7 +50,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
struct pci_bridge_emul bridge;
|
||||
};
|
||||
|
||||
@@ -225,20 +227,16 @@ static int advk_pcie_link_up(struct advk
|
||||
@@ -226,20 +228,16 @@ static int advk_pcie_link_up(struct advk
|
||||
|
||||
static int advk_pcie_wait_for_link(struct advk_pcie *pcie)
|
||||
{
|
||||
@ -72,7 +72,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
return -ETIMEDOUT;
|
||||
}
|
||||
|
||||
@@ -253,6 +251,85 @@ static void advk_pcie_wait_for_retrain(s
|
||||
@@ -254,6 +252,85 @@ static void advk_pcie_wait_for_retrain(s
|
||||
}
|
||||
}
|
||||
|
||||
@ -158,7 +158,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
static void advk_pcie_setup_hw(struct advk_pcie *pcie)
|
||||
{
|
||||
u32 reg;
|
||||
@@ -288,12 +365,6 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -299,12 +376,6 @@ static void advk_pcie_setup_hw(struct ad
|
||||
PCIE_CORE_CTRL2_TD_ENABLE;
|
||||
advk_writel(pcie, reg, PCIE_CORE_CTRL2_REG);
|
||||
|
||||
@ -171,7 +171,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
/* Set lane X1 */
|
||||
reg = advk_readl(pcie, PCIE_CORE_CTRL0_REG);
|
||||
reg &= ~LANE_CNT_MSK;
|
||||
@@ -341,20 +412,7 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -352,20 +423,7 @@ static void advk_pcie_setup_hw(struct ad
|
||||
*/
|
||||
msleep(PCI_PM_D3COLD_WAIT);
|
||||
|
||||
@ -193,7 +193,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
reg = advk_readl(pcie, PCIE_CORE_CMD_STATUS_REG);
|
||||
reg |= PCIE_CORE_CMD_MEM_ACCESS_EN |
|
||||
@@ -1066,6 +1124,12 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1077,6 +1135,12 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -48,7 +48,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
#include <linux/of_pci.h>
|
||||
|
||||
#include "../pci.h"
|
||||
@@ -204,6 +206,7 @@ struct advk_pcie {
|
||||
@@ -205,6 +207,7 @@ struct advk_pcie {
|
||||
int root_bus_nr;
|
||||
int link_gen;
|
||||
struct pci_bridge_emul bridge;
|
||||
@ -56,7 +56,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
};
|
||||
|
||||
static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg)
|
||||
@@ -330,10 +333,31 @@ err:
|
||||
@@ -331,10 +334,31 @@ err:
|
||||
dev_err(dev, "link never came up\n");
|
||||
}
|
||||
|
||||
@ -88,7 +88,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
/* Set to Direct mode */
|
||||
reg = advk_readl(pcie, CTRL_CONFIG_REG);
|
||||
reg &= ~(CTRL_MODE_MASK << CTRL_MODE_SHIFT);
|
||||
@@ -406,7 +430,8 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -417,7 +441,8 @@ static void advk_pcie_setup_hw(struct ad
|
||||
|
||||
/*
|
||||
* PERST# signal could have been asserted by pinctrl subsystem before
|
||||
@ -98,7 +98,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
* fundamental reset. As required by PCI Express spec a delay for at
|
||||
* least 100ms after such a reset before link training is needed.
|
||||
*/
|
||||
@@ -1124,6 +1149,22 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1135,6 +1160,22 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -56,7 +56,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
#define PCIE_MSG_LOG_REG (CONTROL_BASE_ADDR + 0x30)
|
||||
#define PCIE_ISR0_REG (CONTROL_BASE_ADDR + 0x40)
|
||||
#define PCIE_MSG_PM_PME_MASK BIT(7)
|
||||
@@ -207,6 +210,7 @@ struct advk_pcie {
|
||||
@@ -208,6 +211,7 @@ struct advk_pcie {
|
||||
int link_gen;
|
||||
struct pci_bridge_emul bridge;
|
||||
struct gpio_desc *reset_gpio;
|
||||
@ -64,7 +64,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
};
|
||||
|
||||
static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg)
|
||||
@@ -358,6 +362,11 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -359,6 +363,11 @@ static void advk_pcie_setup_hw(struct ad
|
||||
|
||||
advk_pcie_issue_perst(pcie);
|
||||
|
||||
@ -76,7 +76,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
/* Set to Direct mode */
|
||||
reg = advk_readl(pcie, CTRL_CONFIG_REG);
|
||||
reg &= ~(CTRL_MODE_MASK << CTRL_MODE_SHIFT);
|
||||
@@ -1114,6 +1123,62 @@ out_release_res:
|
||||
@@ -1125,6 +1134,62 @@ out_release_res:
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -139,7 +139,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
static int advk_pcie_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -1171,6 +1236,10 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1182,6 +1247,10 @@ static int advk_pcie_probe(struct platfo
|
||||
else
|
||||
pcie->link_gen = ret;
|
||||
|
||||
|
@ -69,7 +69,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
/* J6 */
|
||||
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
@@ -120,10 +120,6 @@
|
||||
@@ -126,10 +126,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -37,7 +37,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
|
||||
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
@@ -126,7 +126,6 @@
|
||||
@@ -132,7 +132,6 @@
|
||||
status = "okay";
|
||||
max-link-speed = <2>;
|
||||
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
|
||||
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
|
||||
@@ -124,7 +124,6 @@
|
||||
@@ -130,7 +130,6 @@
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>;
|
||||
status = "okay";
|
||||
|
@ -34,7 +34,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -639,6 +639,13 @@ static bool advk_pcie_valid_device(struc
|
||||
@@ -650,6 +650,13 @@ static bool advk_pcie_valid_device(struc
|
||||
if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0)
|
||||
return false;
|
||||
|
||||
|
@ -31,7 +31,7 @@ Cc: <stable@vger.kernel.org> # 5.8+: ea17a0f153af: phy: marvell: comphy: Convert
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -1154,7 +1154,9 @@ static int advk_pcie_enable_phy(struct a
|
||||
@@ -1165,7 +1165,9 @@ static int advk_pcie_enable_phy(struct a
|
||||
}
|
||||
|
||||
ret = phy_power_on(pcie->phy);
|
||||
|
@ -21,8 +21,8 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
|
||||
+#include <linux/of.h>
|
||||
#include <linux/platform_data/x86/apple.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/switchtec.h>
|
||||
@@ -5714,3 +5715,34 @@ static void apex_pci_fixup_class(struct
|
||||
#include <linux/suspend.h>
|
||||
@@ -5727,3 +5728,34 @@ static void apex_pci_fixup_class(struct
|
||||
}
|
||||
DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
|
||||
PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
|
||||
|
@ -64,7 +64,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
#include <media/v4l2-common.h>
|
||||
|
||||
@@ -1156,9 +1161,149 @@ static void uvc_video_decode_data(struct
|
||||
@@ -1183,9 +1188,149 @@ static void uvc_video_decode_data(struct
|
||||
uvc_urb->async_operations++;
|
||||
}
|
||||
|
||||
@ -214,7 +214,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
/* Mark the buffer as done if the EOF marker is set. */
|
||||
if (data[1] & UVC_STREAM_EOF && buf->bytesused != 0) {
|
||||
uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n");
|
||||
@@ -1715,6 +1860,8 @@ static int uvc_init_video_isoc(struct uv
|
||||
@@ -1742,6 +1887,8 @@ static int uvc_init_video_isoc(struct uv
|
||||
if (npackets == 0)
|
||||
return -ENOMEM;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user