KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
-LINUX_VERSION-5.4 = .74
+LINUX_VERSION-5.4 = .75
-LINUX_KERNEL_HASH-5.4.74 = ec04f4ade1146a3b458a1ac3dc2059188cbb62cd51d2e66fcd8397fcec153ab7
+LINUX_KERNEL_HASH-5.4.75 = d2466fd6eb5433e7bf287b617b11b2640c65a7ea93a57eb7a80d7f537cbc1470
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
#include "xhci.h"
#include "xhci-trace.h"
-@@ -60,6 +62,44 @@
+@@ -62,6 +64,44 @@
#define PCI_DEVICE_ID_ASMEDIA_1142_XHCI 0x1242
#define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142
static const char hcd_name[] = "xhci_hcd";
static struct hc_driver __read_mostly xhci_pci_hc_driver;
-@@ -291,6 +331,873 @@ static void xhci_pme_acpi_rtd3_enable(st
+@@ -296,6 +336,873 @@ static void xhci_pme_acpi_rtd3_enable(st
static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { }
#endif /* CONFIG_ACPI */
/* called during probe() after chip reset completes */
static int xhci_pci_setup(struct usb_hcd *hcd)
{
-@@ -332,6 +1239,27 @@ static int xhci_pci_probe(struct pci_dev
+@@ -337,6 +1244,27 @@ static int xhci_pci_probe(struct pci_dev
struct hc_driver *driver;
struct usb_hcd *hcd;
driver = (struct hc_driver *)id->driver_data;
/* Prevent runtime suspending between USB-2 and USB-3 initialization */
-@@ -393,6 +1321,16 @@ static void xhci_pci_remove(struct pci_d
+@@ -398,6 +1326,16 @@ static void xhci_pci_remove(struct pci_d
{
struct xhci_hcd *xhci;
xhci = hcd_to_xhci(pci_get_drvdata(dev));
xhci->xhc_state |= XHCI_STATE_REMOVING;
-@@ -520,6 +1458,11 @@ static int xhci_pci_resume(struct usb_hc
+@@ -537,6 +1475,11 @@ static int xhci_pci_resume(struct usb_hc
if (pdev->vendor == PCI_VENDOR_ID_INTEL)
usb_enable_intel_xhci_ports(pdev);
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
-@@ -278,6 +278,7 @@ static void xhci_pci_quirks(struct devic
+@@ -283,6 +283,7 @@ static void xhci_pci_quirks(struct devic
pdev->device == 0x0015) {
xhci->quirks |= XHCI_RESET_ON_RESUME;
xhci->quirks |= XHCI_ZERO_64B_REGS;
hcd->msi_enabled = 1;
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -1880,6 +1880,7 @@ struct xhci_hcd {
+@@ -1881,6 +1881,7 @@ struct xhci_hcd {
struct xhci_hub usb2_rhub;
struct xhci_hub usb3_rhub;
/* support xHCI 1.0 spec USB2 hardware LPM */
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
-@@ -247,6 +247,10 @@ static void xhci_pci_quirks(struct devic
+@@ -252,6 +252,10 @@ static void xhci_pci_quirks(struct devic
pdev->device == 0x3432)
xhci->quirks |= XHCI_BROKEN_STREAMS;
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -1453,6 +1453,103 @@ command_cleanup:
+@@ -1456,6 +1456,103 @@ command_cleanup:
}
/*
* non-error returns are a promise to giveback() the urb later
* we drop ownership so next owner (or urb unlink) can get it
*/
-@@ -5334,6 +5431,7 @@ static const struct hc_driver xhci_hc_dr
+@@ -5337,6 +5434,7 @@ static const struct hc_driver xhci_hc_dr
.endpoint_reset = xhci_endpoint_reset,
.check_bandwidth = xhci_check_bandwidth,
.reset_bandwidth = xhci_reset_bandwidth,
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
-@@ -248,8 +248,10 @@ static void xhci_pci_quirks(struct devic
+@@ -253,8 +253,10 @@ static void xhci_pci_quirks(struct devic
xhci->quirks |= XHCI_BROKEN_STREAMS;
if (pdev->vendor == PCI_VENDOR_ID_VIA &&
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
+#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(36)
+ #define XHCI_DISABLE_SPARSE BIT_ULL(38)
unsigned int num_active_eps;
- unsigned int limit_active_eps;
/* Internal helper functions that deal with control events. */
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -427,6 +427,11 @@ struct v4l2_fract {
+@@ -426,6 +426,11 @@ struct v4l2_fract {
__u32 denominator;
};
/**
* struct v4l2_capability - Describes V4L2 device caps returned by VIDIOC_QUERYCAP
*
-@@ -1725,6 +1730,7 @@ enum v4l2_ctrl_type {
+@@ -1724,6 +1729,7 @@ enum v4l2_ctrl_type {
V4L2_CTRL_TYPE_U8 = 0x0100,
V4L2_CTRL_TYPE_U16 = 0x0101,
V4L2_CTRL_TYPE_U32 = 0x0102,
*/
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -925,11 +925,12 @@ struct v4l2_requestbuffers {
+@@ -924,11 +924,12 @@ struct v4l2_requestbuffers {
};
/* capabilities for struct v4l2_requestbuffers and v4l2_create_buffers */
/**
* struct v4l2_plane - plane info for multi-planar buffers
-@@ -1051,6 +1052,8 @@ static inline __u64 v4l2_timeval_to_ns(c
+@@ -1050,6 +1051,8 @@ static inline __u64 v4l2_timeval_to_ns(c
#define V4L2_BUF_FLAG_IN_REQUEST 0x00000080
/* timecode field is valid */
#define V4L2_BUF_FLAG_TIMECODE 0x00000100
replace define V4L2_DEC_CMD_PAUSE_TO_BLACK decoder-cmds
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -1989,6 +1989,7 @@ struct v4l2_encoder_cmd {
+@@ -1988,6 +1988,7 @@ struct v4l2_encoder_cmd {
#define V4L2_DEC_CMD_STOP (1)
#define V4L2_DEC_CMD_PAUSE (2)
#define V4L2_DEC_CMD_RESUME (3)
case V4L2_PIX_FMT_YUV422M: descr = "Planar YUV 4:2:2 (N-C)"; break;
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -737,6 +737,10 @@ struct v4l2_pix_format {
+@@ -736,6 +736,10 @@ struct v4l2_pix_format {
#define V4L2_PIX_FMT_INZI v4l2_fourcc('I', 'N', 'Z', 'I') /* Intel Planar Greyscale 10-bit and Depth 16-bit */
#define V4L2_PIX_FMT_SUNXI_TILED_NV12 v4l2_fourcc('S', 'T', '1', '2') /* Sunxi Tiled NV12 Format */
#define V4L2_PIX_FMT_CNF4 v4l2_fourcc('C', 'N', 'F', '4') /* Intel 4-bit packed depth confidence information */
#define MAX_TUNING_LOOP 40
-@@ -2754,7 +2754,7 @@ static void sdhci_timeout_timer(struct t
+@@ -2756,7 +2756,7 @@ static void sdhci_timeout_timer(struct t
spin_lock_irqsave(&host->lock, flags);
if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
mmc_hostname(host->mmc));
sdhci_dumpregs(host);
-@@ -2776,7 +2776,7 @@ static void sdhci_timeout_data_timer(str
+@@ -2778,7 +2778,7 @@ static void sdhci_timeout_data_timer(str
if (host->data || host->data_cmd ||
(host->cmd && sdhci_data_line_cmd(host->cmd))) {
/* Compressed formats */
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -769,6 +769,7 @@ struct v4l2_pix_format {
+@@ -768,6 +768,7 @@ struct v4l2_pix_format {
#define V4L2_META_FMT_VSP1_HGT v4l2_fourcc('V', 'S', 'P', 'T') /* R-Car VSP1 2-D Histogram */
#define V4L2_META_FMT_UVC v4l2_fourcc('U', 'V', 'C', 'H') /* UVC Payload Header metadata */
#define V4L2_META_FMT_D4XX v4l2_fourcc('D', '4', 'X', 'X') /* D4XX Payload Header metadata */
/* Compressed formats */
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
-@@ -770,6 +770,7 @@ struct v4l2_pix_format {
+@@ -769,6 +769,7 @@ struct v4l2_pix_format {
#define V4L2_META_FMT_UVC v4l2_fourcc('U', 'V', 'C', 'H') /* UVC Payload Header metadata */
#define V4L2_META_FMT_D4XX v4l2_fourcc('D', '4', 'X', 'X') /* D4XX Payload Header metadata */
#define V4L2_META_FMT_SENSOR_DATA v4l2_fourcc('S', 'E', 'N', 'S') /* Sensor Ancillary metadata */
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
+#define XHCI_FAKE_DOORBELL BIT_ULL(36)
+ #define XHCI_DISABLE_SPARSE BIT_ULL(38)
unsigned int num_active_eps;
- unsigned int limit_active_eps;
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -2195,6 +2195,13 @@ config TRIM_UNUSED_KSYMS
+@@ -2196,6 +2196,13 @@ config TRIM_UNUSED_KSYMS
If unsure, or if you need to build out-of-tree modules, say N.
#define PHY_ID_VSC8572 0x000704d0
#define PHY_ID_VSC8601 0x00070420
#define PHY_ID_VSC7385 0x00070450
-@@ -292,6 +293,7 @@
+@@ -292,6 +293,7 @@ static int vsc82xx_config_intr(struct ph
err = phy_write(phydev, MII_VSC8244_IMASK,
(phydev->drv->phy_id == PHY_ID_VSC8234 ||
phydev->drv->phy_id == PHY_ID_VSC8244 ||
phydev->drv->phy_id == PHY_ID_VSC8572 ||
phydev->drv->phy_id == PHY_ID_VSC8601) ?
MII_VSC8244_IMASK_MASK :
-@@ -402,6 +404,15 @@
+@@ -402,6 +404,15 @@ static struct phy_driver vsc82xx_driver[
.ack_interrupt = &vsc824x_ack_interrupt,
.config_intr = &vsc82xx_config_intr,
}, {
.phy_id = PHY_ID_VSC8572,
.name = "Vitesse VSC8572",
.phy_id_mask = 0x000ffff0,
-@@ -488,6 +499,7 @@
+@@ -488,6 +499,7 @@ module_phy_driver(vsc82xx_driver);
static struct mdio_device_id __maybe_unused vitesse_tbl[] = {
{ PHY_ID_VSC8234, 0x000ffff0 },
{ PHY_ID_VSC8244, 0x000fffc0 },
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1277,6 +1277,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW
+@@ -1278,6 +1278,17 @@ config SYSCTL_ARCH_UNALIGN_ALLOW
the unaligned access emulation.
see arch/parisc/kernel/unaligned.c for reference
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
-@@ -204,7 +204,7 @@ config PPC
+@@ -205,7 +205,7 @@ config PPC
select HAVE_KERNEL_GZIP
select HAVE_KERNEL_LZMA if DEFAULT_UIMAGE
select HAVE_KERNEL_LZO if DEFAULT_UIMAGE
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1662,6 +1662,15 @@ config EMBEDDED
+@@ -1663,6 +1663,15 @@ config EMBEDDED
an embedded system so certain expert options are available
for configuration.
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1825,6 +1825,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
The command-line arguments provided by the boot loader will be
appended to the the device tree bootargs property.
--- a/drivers/bus/fsl-mc/mc-io.c
+++ b/drivers/bus/fsl-mc/mc-io.c
-@@ -169,14 +169,16 @@ int __must_check fsl_mc_portal_allocate(
+@@ -174,14 +174,16 @@ int __must_check fsl_mc_portal_allocate(
int error = -EINVAL;
struct fsl_mc_resource *resource = NULL;
struct fsl_mc_io *mc_io = NULL;
#include <linux/regmap.h>
#define DRV_NAME "flexcan"
-@@ -1942,7 +1943,7 @@ static int __maybe_unused flexcan_suspen
- {
- struct net_device *dev = dev_get_drvdata(device);
- struct flexcan_priv *priv = netdev_priv(dev);
-- int err = 0;
-+ int err;
-
- if (netif_running(dev)) {
- /* if wakeup is enabled, enter stop mode
-@@ -1954,25 +1955,27 @@ static int __maybe_unused flexcan_suspen
+@@ -1954,9 +1955,7 @@ static int __maybe_unused flexcan_suspen
if (err)
return err;
} else {
- err = flexcan_chip_disable(priv);
+- if (err)
+- return err;
+ flexcan_chip_stop(dev);
-+
-+ err = pm_runtime_force_suspend(device);
- if (err)
- return err;
-
-- err = pm_runtime_force_suspend(device);
-+ pinctrl_pm_select_sleep_state(device);
}
netif_stop_queue(dev);
netif_device_detach(dev);
- }
- priv->can.state = CAN_STATE_SLEEPING;
-
-- return err;
-+ return 0;
- }
-
- static int __maybe_unused flexcan_resume(struct device *device)
- {
- struct net_device *dev = dev_get_drvdata(device);
- struct flexcan_priv *priv = netdev_priv(dev);
-- int err = 0;
-+ int err;
-
- priv->can.state = CAN_STATE_ERROR_ACTIVE;
- if (netif_running(dev)) {
-@@ -1984,15 +1987,19 @@ static int __maybe_unused flexcan_resume
+@@ -1982,7 +1981,9 @@ static int __maybe_unused flexcan_resume
if (err)
return err;
} else {
-+ pinctrl_pm_select_default_state(device);
-+
- err = pm_runtime_force_resume(device);
- if (err)
- return err;
-
- err = flexcan_chip_enable(priv);
+ err = flexcan_chip_start(dev);
+ if (err)
}
}
-- return err;
-+ return 0;
- }
-
- static int __maybe_unused flexcan_runtime_suspend(struct device *device)
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
-@@ -1113,7 +1113,8 @@ static int i2c_imx_probe(struct platform
- }
+@@ -1131,7 +1131,8 @@ static int i2c_imx_probe(struct platform
+ goto rpm_disable;
/* Request IRQ */
-- ret = devm_request_irq(&pdev->dev, irq, i2c_imx_isr, IRQF_SHARED,
-+ ret = devm_request_irq(&pdev->dev, irq, i2c_imx_isr,
-+ IRQF_SHARED | IRQF_NO_SUSPEND,
- pdev->name, i2c_imx);
+- ret = request_threaded_irq(irq, i2c_imx_isr, NULL, IRQF_SHARED,
++ ret = request_threaded_irq(irq, i2c_imx_isr, NULL,
++ IRQF_SHARED | IRQF_NO_SUSPEND,
+ pdev->name, i2c_imx);
if (ret) {
dev_err(&pdev->dev, "can't claim irq %d\n", irq);
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
-@@ -1227,7 +1227,8 @@ static int __maybe_unused i2c_imx_runtim
+@@ -1229,7 +1229,8 @@ static int __maybe_unused i2c_imx_runtim
{
struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev);
return 0;
}
-@@ -1237,14 +1238,28 @@ static int __maybe_unused i2c_imx_runtim
+@@ -1239,14 +1240,28 @@ static int __maybe_unused i2c_imx_runtim
struct imx_i2c_struct *i2c_imx = dev_get_drvdata(dev);
int ret;
dev_dbg(&i2c_imx->adapter.dev, "<%s> exit with: %s: %d\n", __func__,
(result < 0) ? "error" : "success msg",
(result < 0) ? result : num);
-@@ -1259,7 +1269,7 @@ static int i2c_imx_resume(struct device
+@@ -1261,7 +1271,7 @@ static int i2c_imx_resume(struct device
}
static const struct dev_pm_ops i2c_imx_pm_ops = {
+ i2c_del_adapter(&i2c_imx->adapter);
clk_notifier_unregister:
clk_notifier_unregister(i2c_imx->clk, &i2c_imx->clk_change_nb);
- rpm_disable:
+ free_irq(irq, i2c_imx);
*window_start = 8 * esdhc->div_ratio;
*window_end = 4 * esdhc->div_ratio;
} else {
-@@ -1050,6 +1050,19 @@ static int esdhc_execute_tuning(struct m
+@@ -1061,6 +1061,19 @@ static int esdhc_execute_tuning(struct m
if (ret)
break;
dwc->sysdev_is_parent = device_property_read_bool(dev,
--- a/drivers/usb/dwc3/core.h
+++ b/drivers/usb/dwc3/core.h
-@@ -953,6 +953,7 @@ struct dwc3_scratchpad_array {
+@@ -954,6 +954,7 @@ struct dwc3_scratchpad_array {
* @nr_scratch: number of scratch buffers
* @u1u2: only used on revisions <1.83a for workaround
* @maximum_speed: maximum speed requested (mainly for testing purposes)
* @revision: revision register contents
* @version_type: VERSIONTYPE register contents, a sub release of a revision
* @dr_mode: requested mode of operation
-@@ -1109,6 +1110,7 @@ struct dwc3 {
+@@ -1110,6 +1111,7 @@ struct dwc3 {
u32 nr_scratch;
u32 u1u2;
u32 maximum_speed;
* All 3.1 IP version constants are greater than the 3.0 IP
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
-@@ -3495,6 +3495,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
+@@ -3525,6 +3525,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
dwc->gadget.sg_supported = true;
dwc->gadget.name = "dwc3-gadget";
dwc->gadget.lpm_capable = true;
#include <linux/ulpi/interface.h>
#include <linux/phy/phy.h>
-@@ -1094,6 +1095,7 @@ struct dwc3 {
+@@ -1095,6 +1096,7 @@ struct dwc3 {
void __iomem *regs;
size_t regs_size;
--- a/drivers/usb/dwc3/core.h
+++ b/drivers/usb/dwc3/core.h
-@@ -1046,6 +1046,8 @@ struct dwc3_scratchpad_array {
+@@ -1047,6 +1047,8 @@ struct dwc3_scratchpad_array {
* 3 - Reserved
* @dis_metastability_quirk: set to disable metastability quirk.
* @dis_split_quirk: set to disable split boundary.
* @imod_interval: set the interrupt moderation interval in 250ns
* increments or 0 to disable.
*/
-@@ -1241,6 +1243,8 @@ struct dwc3 {
+@@ -1242,6 +1244,8 @@ struct dwc3 {
unsigned dis_split_quirk:1;
usb_phy_set_suspend(dwc->usb2_phy, 0);
usb_phy_set_suspend(dwc->usb3_phy, 0);
ret = phy_power_on(dwc->usb2_generic_phy);
-@@ -1920,12 +1972,9 @@ static const struct dev_pm_ops dwc3_dev_
+@@ -1931,12 +1983,9 @@ static const struct dev_pm_ops dwc3_dev_
#ifdef CONFIG_OF
static const struct of_device_id of_dwc3_match[] = {
* 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
-@@ -5361,6 +5361,7 @@ static const struct hc_driver xhci_hc_dr
+@@ -5364,6 +5364,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,
void xhci_init_driver(struct hc_driver *drv,
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -2143,6 +2143,16 @@ int xhci_find_raw_port_number(struct usb
+@@ -2144,6 +2144,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);
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
+#define XHCI_CDNS_HOST BIT_ULL(36)
+ #define XHCI_DISABLE_SPARSE BIT_ULL(38)
unsigned int num_active_eps;
- unsigned int limit_active_eps;
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -5378,6 +5378,8 @@ void xhci_init_driver(struct hc_driver *
+@@ -5381,6 +5381,8 @@ void xhci_init_driver(struct hc_driver *
drv->reset = over->reset;
if (over->start)
drv->start = over->start;
EXPORT_SYMBOL_GPL(xhci_init_driver);
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -1911,6 +1911,7 @@ struct xhci_driver_overrides {
+@@ -1912,6 +1912,7 @@ struct xhci_driver_overrides {
size_t extra_priv_size;
int (*reset)(struct usb_hcd *hcd);
int (*start)(struct usb_hcd *hcd);
usb_phy_set_suspend(dwc->usb2_phy, 0);
usb_phy_set_suspend(dwc->usb3_phy, 0);
ret = phy_power_on(dwc->usb2_generic_phy);
-@@ -1972,9 +1920,12 @@ static const struct dev_pm_ops dwc3_dev_
+@@ -1983,9 +1931,12 @@ static const struct dev_pm_ops dwc3_dev_
#ifdef CONFIG_OF
static const struct of_device_id of_dwc3_match[] = {
usb_phy_set_suspend(dwc->usb2_phy, 0);
usb_phy_set_suspend(dwc->usb3_phy, 0);
ret = phy_power_on(dwc->usb2_generic_phy);
-@@ -1920,12 +1971,16 @@ static const struct dev_pm_ops dwc3_dev_
+@@ -1931,12 +1982,16 @@ static const struct dev_pm_ops dwc3_dev_
#ifdef CONFIG_OF
static const struct of_device_id of_dwc3_match[] = {
+++ /dev/null
-From: Frank Wunderlich <frank-w@public-files.de>
-Date: Mon, 7 Sep 2020 09:05:17 +0200
-
-port6 of mt7530 switch (= cpu port 0) on bananapi-r2 misses pause option
-which causes rx drops on running iperf.
-
-Cc: stable@vger.kernel.org
-Fixes: f4ff257cd160 ("arm: dts: mt7623: add support for Bananapi R2 (BPI-R2) board")
-Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
----
- arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts
-+++ b/arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dts
-@@ -193,6 +193,7 @@
- fixed-link {
- speed = <1000>;
- full-duplex;
-+ pause;
- };
- };
- };
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
-@@ -884,6 +884,14 @@ config CMDLINE_FORCE
+@@ -885,6 +885,14 @@ config CMDLINE_FORCE
This is useful if you cannot or don't want to change the
command-line options your boot loader passes to the kernel.
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1825,6 +1825,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
The command-line arguments provided by the boot loader will be
appended to the the device tree bootargs property.
--- a/drivers/staging/octeon/ethernet.c
+++ b/drivers/staging/octeon/ethernet.c
-@@ -682,6 +682,7 @@ static int cvm_oct_probe(struct platform
+@@ -683,6 +683,7 @@ static int cvm_oct_probe(struct platform
int interface;
int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE;
int qos;
struct device_node *pip;
int mtu_overhead = ETH_HLEN + ETH_FCS_LEN;
-@@ -805,13 +806,19 @@ static int cvm_oct_probe(struct platform
+@@ -806,13 +807,19 @@ static int cvm_oct_probe(struct platform
}
num_interfaces = cvmx_helper_get_number_of_interfaces();
--- a/arch/mips/include/asm/octeon/cvmx-bootinfo.h
+++ b/arch/mips/include/asm/octeon/cvmx-bootinfo.h
-@@ -296,6 +296,7 @@
- CVMX_BOARD_TYPE_CUST_PRIVATE_MIN = 20001,
- CVMX_BOARD_TYPE_UBNT_E100 = 20002,
+@@ -298,6 +298,7 @@ enum cvmx_board_types_enum {
+ CVMX_BOARD_TYPE_UBNT_E200 = 20003,
+ CVMX_BOARD_TYPE_UBNT_E220 = 20005,
CVMX_BOARD_TYPE_ITUS_SHIELD = 20006,
+ CVMX_BOARD_TYPE_UBNT_E300 = 20300,
CVMX_BOARD_TYPE_KONTRON_S1901 = 21901,
CVMX_BOARD_TYPE_CUST_PRIVATE_MAX = 30000,
-@@ -397,6 +398,7 @@
- ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MIN)
- ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E100)
+@@ -401,6 +402,7 @@ static inline const char *cvmx_board_typ
+ ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E200)
+ ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E220)
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_ITUS_SHIELD)
+ ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E300)
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_KONTRON_S1901)
Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
--- a/drivers/staging/octeon/ethernet.c
+++ b/drivers/staging/octeon/ethernet.c
-@@ -407,9 +407,12 @@
+@@ -408,9 +408,12 @@ int cvm_oct_common_init(struct net_devic
{
struct octeon_ethernet *priv = netdev_priv(dev);
const u8 *mac = NULL;
if (!IS_ERR_OR_NULL(mac))
ether_addr_copy(dev->dev_addr, mac);
-@@ -444,6 +447,9 @@
+@@ -445,6 +448,9 @@ int cvm_oct_common_init(struct net_devic
if (dev->netdev_ops->ndo_stop)
dev->netdev_ops->ndo_stop(dev);
Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
--- a/drivers/staging/octeon/ethernet.c
+++ b/drivers/staging/octeon/ethernet.c
-@@ -884,8 +884,10 @@
+@@ -885,8 +885,10 @@ static int cvm_oct_probe(struct platform
case CVMX_HELPER_INTERFACE_MODE_SGMII:
priv->phy_mode = PHY_INTERFACE_MODE_SGMII;
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1825,6 +1825,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
The command-line arguments provided by the boot loader will be
appended to the the device tree bootargs property.