kernel: bump 5.4 to 5.4.40
Refreshed all patches. Compile-tested on: imx6 Runtime-tested on: imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
This commit is contained in:
parent
7dd2d7289a
commit
0fed36dd48
@ -8,11 +8,11 @@ endif
|
|||||||
|
|
||||||
LINUX_VERSION-4.14 = .180
|
LINUX_VERSION-4.14 = .180
|
||||||
LINUX_VERSION-4.19 = .122
|
LINUX_VERSION-4.19 = .122
|
||||||
LINUX_VERSION-5.4 = .39
|
LINUX_VERSION-5.4 = .40
|
||||||
|
|
||||||
LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e
|
LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e
|
||||||
LINUX_KERNEL_HASH-4.19.122 = 5050268ec5cf003d96366d1611ecfa4ab6974125d6fa26cea1ccb81dd4df00a5
|
LINUX_KERNEL_HASH-4.19.122 = 5050268ec5cf003d96366d1611ecfa4ab6974125d6fa26cea1ccb81dd4df00a5
|
||||||
LINUX_KERNEL_HASH-5.4.39 = 5141965a61a7b1c538443782ec3ef25fe0c3f9cd4d70c4e9f969d16883f365c8
|
LINUX_KERNEL_HASH-5.4.40 = 83563f027687ecaafb41d0d2d52056f40ec9822f8a9e43592e215349730020ab
|
||||||
|
|
||||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
@@ -2147,7 +2147,7 @@ static void bcmgenet_init_tx_ring(struct
|
@@ -2148,7 +2148,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_PROD_INDEX);
|
||||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_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 */
|
/* Disable rate control for now */
|
||||||
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
||||||
TDMA_FLOW_PERIOD);
|
TDMA_FLOW_PERIOD);
|
||||||
@@ -3570,9 +3570,12 @@ static int bcmgenet_probe(struct platfor
|
@@ -3571,9 +3571,12 @@ static int bcmgenet_probe(struct platfor
|
||||||
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
||||||
|
|
||||||
/* Set default coalescing parameters */
|
/* Set default coalescing parameters */
|
||||||
|
@ -38,7 +38,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
||||||
{
|
{
|
||||||
/* MIPS chips strapped for BE will automagically configure the
|
/* MIPS chips strapped for BE will automagically configure the
|
||||||
@@ -1993,6 +1997,11 @@ static void reset_umac(struct bcmgenet_p
|
@@ -1994,6 +1998,11 @@ static void reset_umac(struct bcmgenet_p
|
||||||
bcmgenet_rbuf_ctrl_set(priv, 0);
|
bcmgenet_rbuf_ctrl_set(priv, 0);
|
||||||
udelay(10);
|
udelay(10);
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
@@ -3471,7 +3471,7 @@ static int bcmgenet_probe(struct platfor
|
@@ -3472,7 +3472,7 @@ static int bcmgenet_probe(struct platfor
|
||||||
priv = netdev_priv(dev);
|
priv = netdev_priv(dev);
|
||||||
priv->irq0 = platform_get_irq(pdev, 0);
|
priv->irq0 = platform_get_irq(pdev, 0);
|
||||||
priv->irq1 = platform_get_irq(pdev, 1);
|
priv->irq1 = platform_get_irq(pdev, 1);
|
||||||
|
@ -205,7 +205,7 @@ Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/crypto/caam/caamalg_desc.c
|
--- a/drivers/crypto/caam/caamalg_desc.c
|
||||||
+++ b/drivers/crypto/caam/caamalg_desc.c
|
+++ b/drivers/crypto/caam/caamalg_desc.c
|
||||||
@@ -1386,8 +1386,14 @@ void cnstr_shdsc_skcipher_encap(u32 * co
|
@@ -1389,8 +1389,14 @@ void cnstr_shdsc_skcipher_encap(u32 * co
|
||||||
JUMP_COND_SHRD);
|
JUMP_COND_SHRD);
|
||||||
|
|
||||||
/* Load class1 key only */
|
/* Load class1 key only */
|
||||||
@ -222,7 +222,7 @@ Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
|
|||||||
|
|
||||||
/* Load nonce into CONTEXT1 reg */
|
/* Load nonce into CONTEXT1 reg */
|
||||||
if (is_rfc3686) {
|
if (is_rfc3686) {
|
||||||
@@ -1458,8 +1464,14 @@ void cnstr_shdsc_skcipher_decap(u32 * co
|
@@ -1464,8 +1470,14 @@ void cnstr_shdsc_skcipher_decap(u32 * co
|
||||||
JUMP_COND_SHRD);
|
JUMP_COND_SHRD);
|
||||||
|
|
||||||
/* Load class1 key only */
|
/* Load class1 key only */
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/pci/quirks.c
|
--- a/drivers/pci/quirks.c
|
||||||
+++ b/drivers/pci/quirks.c
|
+++ b/drivers/pci/quirks.c
|
||||||
@@ -2444,6 +2444,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
@@ -2510,6 +2510,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_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_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
|
||||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
|
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/pci/quirks.c
|
--- a/drivers/pci/quirks.c
|
||||||
+++ b/drivers/pci/quirks.c
|
+++ b/drivers/pci/quirks.c
|
||||||
@@ -2450,6 +2450,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
|
@@ -2516,6 +2516,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_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, 0x43ec, quirk_disable_all_msi);
|
||||||
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
|
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
|
||||||
|
@ -20,7 +20,7 @@ Acked-by: Anson Huang <Anson.Huang@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/base/power/wakeup.c
|
--- a/drivers/base/power/wakeup.c
|
||||||
+++ b/drivers/base/power/wakeup.c
|
+++ b/drivers/base/power/wakeup.c
|
||||||
@@ -248,6 +248,60 @@ void wakeup_source_unregister(struct wak
|
@@ -250,6 +250,60 @@ void wakeup_source_unregister(struct wak
|
||||||
EXPORT_SYMBOL_GPL(wakeup_source_unregister);
|
EXPORT_SYMBOL_GPL(wakeup_source_unregister);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -58,7 +58,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Wait max 20 ms */
|
/* Wait max 20 ms */
|
||||||
@@ -852,10 +876,7 @@ static void esdhc_tuning_block_enable(st
|
@@ -887,10 +911,7 @@ static void esdhc_tuning_block_enable(st
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
esdhc_clock_enable(host, false);
|
esdhc_clock_enable(host, false);
|
||||||
|
@ -15,7 +15,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
|
|
||||||
--- a/drivers/mmc/host/sdhci-of-esdhc.c
|
--- a/drivers/mmc/host/sdhci-of-esdhc.c
|
||||||
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
|
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
|
||||||
@@ -888,20 +888,11 @@ static void esdhc_tuning_block_enable(st
|
@@ -923,20 +923,11 @@ static void esdhc_tuning_block_enable(st
|
||||||
esdhc_clock_enable(host, true);
|
esdhc_clock_enable(host, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -37,7 +37,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
/* Write TBCTL[11:8]=4'h8 */
|
/* Write TBCTL[11:8]=4'h8 */
|
||||||
val = sdhci_readl(host, ESDHC_TBCTL);
|
val = sdhci_readl(host, ESDHC_TBCTL);
|
||||||
val &= ~(0xf << 8);
|
val &= ~(0xf << 8);
|
||||||
@@ -920,6 +911,25 @@ static void esdhc_prepare_sw_tuning(stru
|
@@ -955,6 +946,25 @@ static void esdhc_prepare_sw_tuning(stru
|
||||||
val = sdhci_readl(host, ESDHC_TBSTAT);
|
val = sdhci_readl(host, ESDHC_TBSTAT);
|
||||||
val = sdhci_readl(host, ESDHC_TBSTAT);
|
val = sdhci_readl(host, ESDHC_TBSTAT);
|
||||||
|
|
||||||
@ -63,7 +63,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
/* Reset data lines by setting ESDHCCTL[RSTD] */
|
/* Reset data lines by setting ESDHCCTL[RSTD] */
|
||||||
sdhci_reset(host, SDHCI_RESET_DATA);
|
sdhci_reset(host, SDHCI_RESET_DATA);
|
||||||
/* Write 32'hFFFF_FFFF to IRQSTAT register */
|
/* Write 32'hFFFF_FFFF to IRQSTAT register */
|
||||||
@@ -930,10 +940,8 @@ static void esdhc_prepare_sw_tuning(stru
|
@@ -965,10 +975,8 @@ static void esdhc_prepare_sw_tuning(stru
|
||||||
* then program TBPTR[TB_WNDW_END_PTR] = 4 * div_ratio
|
* then program TBPTR[TB_WNDW_END_PTR] = 4 * div_ratio
|
||||||
* and program TBPTR[TB_WNDW_START_PTR] = 8 * div_ratio.
|
* and program TBPTR[TB_WNDW_START_PTR] = 8 * div_ratio.
|
||||||
*/
|
*/
|
||||||
|
@ -20,7 +20,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
|
|
||||||
--- a/drivers/mmc/host/sdhci-of-esdhc.c
|
--- a/drivers/mmc/host/sdhci-of-esdhc.c
|
||||||
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
|
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
|
||||||
@@ -854,20 +854,20 @@ static int esdhc_signal_voltage_switch(s
|
@@ -889,20 +889,20 @@ static int esdhc_signal_voltage_switch(s
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct soc_device_attribute soc_tuning_erratum_type1[] = {
|
static struct soc_device_attribute soc_tuning_erratum_type1[] = {
|
||||||
@ -51,7 +51,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
{ },
|
{ },
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -935,13 +935,13 @@ static void esdhc_prepare_sw_tuning(stru
|
@@ -970,13 +970,13 @@ static void esdhc_prepare_sw_tuning(stru
|
||||||
/* Write 32'hFFFF_FFFF to IRQSTAT register */
|
/* Write 32'hFFFF_FFFF to IRQSTAT register */
|
||||||
sdhci_writel(host, 0xFFFFFFFF, SDHCI_INT_STATUS);
|
sdhci_writel(host, 0xFFFFFFFF, SDHCI_INT_STATUS);
|
||||||
|
|
||||||
@ -68,7 +68,7 @@ Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|||||||
*window_start = 8 * esdhc->div_ratio;
|
*window_start = 8 * esdhc->div_ratio;
|
||||||
*window_end = 4 * esdhc->div_ratio;
|
*window_end = 4 * esdhc->div_ratio;
|
||||||
} else {
|
} else {
|
||||||
@@ -1014,6 +1014,19 @@ static int esdhc_execute_tuning(struct m
|
@@ -1049,6 +1049,19 @@ static int esdhc_execute_tuning(struct m
|
||||||
if (ret)
|
if (ret)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/mtd/spi-nor/spi-nor.c
|
--- a/drivers/mtd/spi-nor/spi-nor.c
|
||||||
+++ b/drivers/mtd/spi-nor/spi-nor.c
|
+++ b/drivers/mtd/spi-nor/spi-nor.c
|
||||||
@@ -2352,7 +2352,7 @@ static const struct flash_info spi_nor_i
|
@@ -2410,7 +2410,7 @@ static const struct flash_info spi_nor_i
|
||||||
{ "s25fl512s", INFO6(0x010220, 0x4d0080, 256 * 1024, 256,
|
{ "s25fl512s", INFO6(0x010220, 0x4d0080, 256 * 1024, 256,
|
||||||
SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
|
SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
|
||||||
SPI_NOR_HAS_LOCK | USE_CLSR) },
|
SPI_NOR_HAS_LOCK | USE_CLSR) },
|
||||||
|
@ -16,7 +16,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/dwc3/core.c
|
--- a/drivers/usb/dwc3/core.c
|
||||||
+++ b/drivers/usb/dwc3/core.c
|
+++ b/drivers/usb/dwc3/core.c
|
||||||
@@ -1260,6 +1260,17 @@ static void dwc3_get_properties(struct d
|
@@ -1263,6 +1263,17 @@ static void dwc3_get_properties(struct d
|
||||||
|
|
||||||
dwc->maximum_speed = usb_get_maximum_speed(dev);
|
dwc->maximum_speed = usb_get_maximum_speed(dev);
|
||||||
dwc->dr_mode = usb_get_dr_mode(dev);
|
dwc->dr_mode = usb_get_dr_mode(dev);
|
||||||
@ -36,7 +36,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
dwc->sysdev_is_parent = device_property_read_bool(dev,
|
dwc->sysdev_is_parent = device_property_read_bool(dev,
|
||||||
--- a/drivers/usb/dwc3/core.h
|
--- a/drivers/usb/dwc3/core.h
|
||||||
+++ b/drivers/usb/dwc3/core.h
|
+++ b/drivers/usb/dwc3/core.h
|
||||||
@@ -944,6 +944,7 @@ struct dwc3_scratchpad_array {
|
@@ -949,6 +949,7 @@ struct dwc3_scratchpad_array {
|
||||||
* @nr_scratch: number of scratch buffers
|
* @nr_scratch: number of scratch buffers
|
||||||
* @u1u2: only used on revisions <1.83a for workaround
|
* @u1u2: only used on revisions <1.83a for workaround
|
||||||
* @maximum_speed: maximum speed requested (mainly for testing purposes)
|
* @maximum_speed: maximum speed requested (mainly for testing purposes)
|
||||||
@ -44,7 +44,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
* @revision: revision register contents
|
* @revision: revision register contents
|
||||||
* @version_type: VERSIONTYPE register contents, a sub release of a revision
|
* @version_type: VERSIONTYPE register contents, a sub release of a revision
|
||||||
* @dr_mode: requested mode of operation
|
* @dr_mode: requested mode of operation
|
||||||
@@ -1097,6 +1098,7 @@ struct dwc3 {
|
@@ -1104,6 +1105,7 @@ struct dwc3 {
|
||||||
u32 nr_scratch;
|
u32 nr_scratch;
|
||||||
u32 u1u2;
|
u32 u1u2;
|
||||||
u32 maximum_speed;
|
u32 maximum_speed;
|
||||||
@ -54,7 +54,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
* All 3.1 IP version constants are greater than the 3.0 IP
|
* All 3.1 IP version constants are greater than the 3.0 IP
|
||||||
--- a/drivers/usb/dwc3/gadget.c
|
--- a/drivers/usb/dwc3/gadget.c
|
||||||
+++ b/drivers/usb/dwc3/gadget.c
|
+++ b/drivers/usb/dwc3/gadget.c
|
||||||
@@ -3376,6 +3376,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
@@ -3392,6 +3392,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
||||||
dwc->gadget.sg_supported = true;
|
dwc->gadget.sg_supported = true;
|
||||||
dwc->gadget.name = "dwc3-gadget";
|
dwc->gadget.name = "dwc3-gadget";
|
||||||
dwc->gadget.lpm_capable = true;
|
dwc->gadget.lpm_capable = true;
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Li Jun <jun.li@nxp.com>
|
|||||||
#include <linux/ulpi/interface.h>
|
#include <linux/ulpi/interface.h>
|
||||||
|
|
||||||
#include <linux/phy/phy.h>
|
#include <linux/phy/phy.h>
|
||||||
@@ -1082,6 +1083,7 @@ struct dwc3 {
|
@@ -1089,6 +1090,7 @@ struct dwc3 {
|
||||||
void __iomem *regs;
|
void __iomem *regs;
|
||||||
size_t regs_size;
|
size_t regs_size;
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ Reviewed-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/dwc3/core.c
|
--- a/drivers/usb/dwc3/core.c
|
||||||
+++ b/drivers/usb/dwc3/core.c
|
+++ b/drivers/usb/dwc3/core.c
|
||||||
@@ -1350,6 +1350,9 @@ static void dwc3_get_properties(struct d
|
@@ -1355,6 +1355,9 @@ static void dwc3_get_properties(struct d
|
||||||
dwc->dis_metastability_quirk = device_property_read_bool(dev,
|
dwc->dis_metastability_quirk = device_property_read_bool(dev,
|
||||||
"snps,dis_metastability_quirk");
|
"snps,dis_metastability_quirk");
|
||||||
|
|
||||||
@ -44,7 +44,7 @@ Reviewed-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/dwc3/core.h
|
--- a/drivers/usb/dwc3/core.h
|
||||||
+++ b/drivers/usb/dwc3/core.h
|
+++ b/drivers/usb/dwc3/core.h
|
||||||
@@ -1034,6 +1034,8 @@ struct dwc3_scratchpad_array {
|
@@ -1041,6 +1041,8 @@ struct dwc3_scratchpad_array {
|
||||||
* 2 - No de-emphasis
|
* 2 - No de-emphasis
|
||||||
* 3 - Reserved
|
* 3 - Reserved
|
||||||
* @dis_metastability_quirk: set to disable metastability quirk.
|
* @dis_metastability_quirk: set to disable metastability quirk.
|
||||||
@ -53,7 +53,7 @@ Reviewed-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
* @imod_interval: set the interrupt moderation interval in 250ns
|
* @imod_interval: set the interrupt moderation interval in 250ns
|
||||||
* increments or 0 to disable.
|
* increments or 0 to disable.
|
||||||
*/
|
*/
|
||||||
@@ -1225,6 +1227,7 @@ struct dwc3 {
|
@@ -1233,6 +1235,7 @@ struct dwc3 {
|
||||||
unsigned tx_de_emphasis:2;
|
unsigned tx_de_emphasis:2;
|
||||||
|
|
||||||
unsigned dis_metastability_quirk:1;
|
unsigned dis_metastability_quirk:1;
|
||||||
|
@ -54,7 +54,7 @@ Signed-off-by: Li Jun <jun.li@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/dwc3/core.c
|
--- a/drivers/usb/dwc3/core.c
|
||||||
+++ b/drivers/usb/dwc3/core.c
|
+++ b/drivers/usb/dwc3/core.c
|
||||||
@@ -1030,6 +1030,21 @@ static int dwc3_core_init(struct dwc3 *d
|
@@ -1033,6 +1033,21 @@ static int dwc3_core_init(struct dwc3 *d
|
||||||
reg |= DWC3_GUCTL_HSTINAUTORETRY;
|
reg |= DWC3_GUCTL_HSTINAUTORETRY;
|
||||||
|
|
||||||
dwc3_writel(dwc->regs, DWC3_GUCTL, reg);
|
dwc3_writel(dwc->regs, DWC3_GUCTL, reg);
|
||||||
@ -78,8 +78,8 @@ Signed-off-by: Li Jun <jun.li@nxp.com>
|
|||||||
/*
|
/*
|
||||||
--- a/drivers/usb/dwc3/core.h
|
--- a/drivers/usb/dwc3/core.h
|
||||||
+++ b/drivers/usb/dwc3/core.h
|
+++ b/drivers/usb/dwc3/core.h
|
||||||
@@ -253,6 +253,7 @@
|
@@ -254,6 +254,7 @@
|
||||||
/* Global User Control 1 Register */
|
#define DWC3_GUCTL1_PARKMODE_DISABLE_SS BIT(17)
|
||||||
#define DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS BIT(28)
|
#define DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS BIT(28)
|
||||||
#define DWC3_GUCTL1_DEV_L1_EXIT_BY_HW BIT(24)
|
#define DWC3_GUCTL1_DEV_L1_EXIT_BY_HW BIT(24)
|
||||||
+#define DWC3_GUCTL1_PARKMODE_DISABLE_SS BIT(17)
|
+#define DWC3_GUCTL1_PARKMODE_DISABLE_SS BIT(17)
|
||||||
|
@ -109,7 +109,7 @@ Reviewed-by: Jun Li <jun.li@nxp.com>
|
|||||||
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
||||||
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
||||||
ret = phy_power_on(dwc->usb2_generic_phy);
|
ret = phy_power_on(dwc->usb2_generic_phy);
|
||||||
@@ -1890,12 +1942,9 @@ static const struct dev_pm_ops dwc3_dev_
|
@@ -1895,12 +1947,9 @@ static const struct dev_pm_ops dwc3_dev_
|
||||||
|
|
||||||
#ifdef CONFIG_OF
|
#ifdef CONFIG_OF
|
||||||
static const struct of_device_id of_dwc3_match[] = {
|
static const struct of_device_id of_dwc3_match[] = {
|
||||||
|
@ -24,7 +24,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/host/xhci-hub.c
|
--- a/drivers/usb/host/xhci-hub.c
|
||||||
+++ b/drivers/usb/host/xhci-hub.c
|
+++ b/drivers/usb/host/xhci-hub.c
|
||||||
@@ -1378,6 +1378,15 @@ int xhci_hub_control(struct usb_hcd *hcd
|
@@ -1419,6 +1419,15 @@ int xhci_hub_control(struct usb_hcd *hcd
|
||||||
/* 4.19.6 Port Test Modes (USB2 Test Mode) */
|
/* 4.19.6 Port Test Modes (USB2 Test Mode) */
|
||||||
if (hcd->speed != HCD_USB2)
|
if (hcd->speed != HCD_USB2)
|
||||||
goto error;
|
goto error;
|
||||||
@ -42,7 +42,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
retval = xhci_enter_test_mode(xhci, test_mode, wIndex,
|
retval = xhci_enter_test_mode(xhci, test_mode, wIndex,
|
||||||
--- a/drivers/usb/host/xhci-ring.c
|
--- a/drivers/usb/host/xhci-ring.c
|
||||||
+++ b/drivers/usb/host/xhci-ring.c
|
+++ b/drivers/usb/host/xhci-ring.c
|
||||||
@@ -3545,6 +3545,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
@@ -3580,6 +3580,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -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
|
* bursts that are required to move all packets in this TD. Only SuperSpeed
|
||||||
--- a/drivers/usb/host/xhci.c
|
--- a/drivers/usb/host/xhci.c
|
||||||
+++ b/drivers/usb/host/xhci.c
|
+++ b/drivers/usb/host/xhci.c
|
||||||
@@ -5352,6 +5352,7 @@ static const struct hc_driver xhci_hc_dr
|
@@ -5354,6 +5354,7 @@ static const struct hc_driver xhci_hc_dr
|
||||||
.disable_usb3_lpm_timeout = xhci_disable_usb3_lpm_timeout,
|
.disable_usb3_lpm_timeout = xhci_disable_usb3_lpm_timeout,
|
||||||
.find_raw_port_number = xhci_find_raw_port_number,
|
.find_raw_port_number = xhci_find_raw_port_number,
|
||||||
.clear_tt_buffer_complete = xhci_clear_tt_buffer_complete,
|
.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,
|
void xhci_init_driver(struct hc_driver *drv,
|
||||||
--- a/drivers/usb/host/xhci.h
|
--- a/drivers/usb/host/xhci.h
|
||||||
+++ b/drivers/usb/host/xhci.h
|
+++ b/drivers/usb/host/xhci.h
|
||||||
@@ -2141,6 +2141,16 @@ int xhci_find_raw_port_number(struct usb
|
@@ -2143,6 +2143,16 @@ int xhci_find_raw_port_number(struct usb
|
||||||
struct xhci_hub *xhci_get_rhub(struct usb_hcd *hcd);
|
struct xhci_hub *xhci_get_rhub(struct usb_hcd *hcd);
|
||||||
|
|
||||||
void xhci_hc_died(struct xhci_hcd *xhci);
|
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,
|
ret = xhci_handshake(&xhci->op_regs->command,
|
||||||
--- a/drivers/usb/host/xhci.h
|
--- a/drivers/usb/host/xhci.h
|
||||||
+++ b/drivers/usb/host/xhci.h
|
+++ b/drivers/usb/host/xhci.h
|
||||||
@@ -1872,6 +1872,7 @@ struct xhci_hcd {
|
@@ -1873,6 +1873,7 @@ struct xhci_hcd {
|
||||||
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
|
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
|
||||||
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
|
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
|
||||||
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
|
#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
|
--- a/drivers/usb/host/xhci-ring.c
|
||||||
+++ b/drivers/usb/host/xhci-ring.c
|
+++ b/drivers/usb/host/xhci-ring.c
|
||||||
@@ -2027,12 +2027,9 @@ static int process_ctrl_td(struct xhci_h
|
@@ -2053,12 +2053,9 @@ static int process_ctrl_td(struct xhci_h
|
||||||
|
|
||||||
switch (trb_comp_code) {
|
switch (trb_comp_code) {
|
||||||
case COMP_SUCCESS:
|
case COMP_SUCCESS:
|
||||||
|
@ -24,7 +24,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/host/xhci.c
|
--- a/drivers/usb/host/xhci.c
|
||||||
+++ b/drivers/usb/host/xhci.c
|
+++ b/drivers/usb/host/xhci.c
|
||||||
@@ -5369,6 +5369,8 @@ void xhci_init_driver(struct hc_driver *
|
@@ -5371,6 +5371,8 @@ void xhci_init_driver(struct hc_driver *
|
||||||
drv->reset = over->reset;
|
drv->reset = over->reset;
|
||||||
if (over->start)
|
if (over->start)
|
||||||
drv->start = over->start;
|
drv->start = over->start;
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|||||||
EXPORT_SYMBOL_GPL(xhci_init_driver);
|
EXPORT_SYMBOL_GPL(xhci_init_driver);
|
||||||
--- a/drivers/usb/host/xhci.h
|
--- a/drivers/usb/host/xhci.h
|
||||||
+++ b/drivers/usb/host/xhci.h
|
+++ b/drivers/usb/host/xhci.h
|
||||||
@@ -1910,6 +1910,7 @@ struct xhci_driver_overrides {
|
@@ -1911,6 +1911,7 @@ struct xhci_driver_overrides {
|
||||||
size_t extra_priv_size;
|
size_t extra_priv_size;
|
||||||
int (*reset)(struct usb_hcd *hcd);
|
int (*reset)(struct usb_hcd *hcd);
|
||||||
int (*start)(struct usb_hcd *hcd);
|
int (*start)(struct usb_hcd *hcd);
|
||||||
|
@ -20,7 +20,7 @@ Signed-off-by: Li Jun <jun.li@freescale.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/core/hub.c
|
--- a/drivers/usb/core/hub.c
|
||||||
+++ b/drivers/usb/core/hub.c
|
+++ b/drivers/usb/core/hub.c
|
||||||
@@ -4716,7 +4716,8 @@ hub_port_init(struct usb_hub *hub, struc
|
@@ -4728,7 +4728,8 @@ hub_port_init(struct usb_hub *hub, struc
|
||||||
}
|
}
|
||||||
if (r) {
|
if (r) {
|
||||||
if (r != -ENODEV)
|
if (r != -ENODEV)
|
||||||
|
@ -16,7 +16,7 @@ Signed-off-by: Li Jun <jun.li@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/host/xhci-hub.c
|
--- a/drivers/usb/host/xhci-hub.c
|
||||||
+++ b/drivers/usb/host/xhci-hub.c
|
+++ b/drivers/usb/host/xhci-hub.c
|
||||||
@@ -1682,7 +1682,8 @@ static bool xhci_port_missing_cas_quirk(
|
@@ -1732,7 +1732,8 @@ static bool xhci_port_missing_cas_quirk(
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (((portsc & PORT_PLS_MASK) != XDEV_POLLING) &&
|
if (((portsc & PORT_PLS_MASK) != XDEV_POLLING) &&
|
||||||
|
@ -81,7 +81,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
|
|||||||
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
||||||
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
||||||
ret = phy_power_on(dwc->usb2_generic_phy);
|
ret = phy_power_on(dwc->usb2_generic_phy);
|
||||||
@@ -1942,9 +1890,12 @@ static const struct dev_pm_ops dwc3_dev_
|
@@ -1947,9 +1895,12 @@ static const struct dev_pm_ops dwc3_dev_
|
||||||
|
|
||||||
#ifdef CONFIG_OF
|
#ifdef CONFIG_OF
|
||||||
static const struct of_device_id of_dwc3_match[] = {
|
static const struct of_device_id of_dwc3_match[] = {
|
||||||
|
@ -108,7 +108,7 @@ Reviewed-by: Jun Li <jun.li@nxp.com>
|
|||||||
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
usb_phy_set_suspend(dwc->usb2_phy, 0);
|
||||||
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
usb_phy_set_suspend(dwc->usb3_phy, 0);
|
||||||
ret = phy_power_on(dwc->usb2_generic_phy);
|
ret = phy_power_on(dwc->usb2_generic_phy);
|
||||||
@@ -1890,12 +1941,16 @@ static const struct dev_pm_ops dwc3_dev_
|
@@ -1895,12 +1946,16 @@ static const struct dev_pm_ops dwc3_dev_
|
||||||
|
|
||||||
#ifdef CONFIG_OF
|
#ifdef CONFIG_OF
|
||||||
static const struct of_device_id of_dwc3_match[] = {
|
static const struct of_device_id of_dwc3_match[] = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user