kernel: update kernel 4.9 to version 4.9.91

* Refreshed patches.
 * Deleted 210-Revert-led-core-Fix-brightness-setting-when-setting-.patch (was accepted upstream)
 * Deleted 812-pci-dwc-fix-enumeration.patch (was accepted upstream)

Compile and run tested on lantiq

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
Hauke Mehrtens
2018-03-30 20:41:02 +02:00
parent ef6939b0af
commit aed03d5d0f
41 changed files with 144 additions and 254 deletions

View File

@@ -358,7 +358,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
help
--- a/drivers/mtd/nand/fsl_ifc_nand.c
+++ b/drivers/mtd/nand/fsl_ifc_nand.c
@@ -904,9 +904,12 @@ static int fsl_ifc_chip_init(struct fsl_
@@ -898,7 +898,7 @@ static int fsl_ifc_chip_init(struct fsl_
chip->ecc.algo = NAND_ECC_HAMMING;
}
@@ -366,12 +366,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
+ if (ctrl->version >= FSL_IFC_VERSION_1_1_0)
fsl_ifc_sram_init(priv);
+ if (ctrl->version >= FSL_IFC_VERSION_2_0_0)
+ priv->bufnum_mask = (priv->bufnum_mask * 2) + 1;
+
return 0;
}
/*
--- a/include/linux/fsl_ifc.h
+++ b/include/linux/fsl_ifc.h
@@ -274,6 +274,8 @@
@@ -383,7 +378,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
/* Addressing Mode-ROW0+n/COL0 */
#define IFC_NAND_NCFGR_ADDR_MODE_RC0 0x00000000
/* Addressing Mode-ROW0+n/COL0+n */
@@ -861,6 +863,11 @@ struct fsl_ifc_ctrl {
@@ -857,6 +859,11 @@ struct fsl_ifc_ctrl {
u32 nand_stat;
wait_queue_head_t nand_wait;
bool little_endian;

View File

@@ -2060,7 +2060,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -4649,3 +4649,11 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_IN
@@ -4654,3 +4654,11 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_IN
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2031, quirk_no_aersid);
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2032, quirk_no_aersid);
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2033, quirk_no_aersid);

View File

@@ -25,7 +25,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
+obj-$(CONFIG_QUICC_ENGINE) += irq-qeic.o
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -1659,6 +1659,7 @@ static int its_init_domain(struct fwnode
@@ -1658,6 +1658,7 @@ static int its_init_domain(struct fwnode
inner_domain->parent = its_parent;
inner_domain->bus_token = DOMAIN_BUS_NEXUS;

View File

@@ -217,7 +217,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
static void esdhc_of_set_clock(struct sdhci_host *host, unsigned int clock)
@@ -421,17 +466,34 @@ static void esdhc_of_set_clock(struct sd
@@ -421,12 +466,15 @@ static void esdhc_of_set_clock(struct sd
struct sdhci_esdhc *esdhc = sdhci_pltfm_priv(pltfm_host);
int pre_div = 1;
int div = 1;
@@ -234,26 +234,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
/* Workaround to start pre_div at 2 for VNN < VENDOR_V_23 */
if (esdhc->vendor_ver < VENDOR_V_23)
pre_div = 2;
+ /*
+ * Limit SD clock to 167MHz for ls1046a according to its datasheet
+ */
+ if (clock > 167000000 &&
+ of_find_compatible_node(NULL, NULL, "fsl,ls1046a-esdhc"))
+ clock = 167000000;
+
+ /*
+ * Limit SD clock to 125MHz for ls1012a according to its datasheet
+ */
+ if (clock > 125000000 &&
+ of_find_compatible_node(NULL, NULL, "fsl,ls1012a-esdhc"))
+ clock = 125000000;
+
/* Workaround to reduce the clock frequency for p1010 esdhc */
if (of_find_compatible_node(NULL, NULL, "fsl,p1010-esdhc")) {
if (clock > 20000000)
@@ -440,9 +502,15 @@ static void esdhc_of_set_clock(struct sd
@@ -454,9 +502,15 @@ static void esdhc_of_set_clock(struct sd
clock -= 5000000;
}
@@ -271,7 +252,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
sdhci_writel(host, temp, ESDHC_SYSTEM_CONTROL);
while (host->max_clk / pre_div / 16 > clock && pre_div < 256)
@@ -462,7 +530,20 @@ static void esdhc_of_set_clock(struct sd
@@ -476,7 +530,20 @@ static void esdhc_of_set_clock(struct sd
| (div << ESDHC_DIVIDER_SHIFT)
| (pre_div << ESDHC_PREDIV_SHIFT));
sdhci_writel(host, temp, ESDHC_SYSTEM_CONTROL);
@@ -293,7 +274,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
static void esdhc_pltfm_set_bus_width(struct sdhci_host *host, int width)
@@ -487,12 +568,136 @@ static void esdhc_pltfm_set_bus_width(st
@@ -501,12 +568,136 @@ static void esdhc_pltfm_set_bus_width(st
sdhci_writel(host, ctrl, ESDHC_PROCTL);
}
@@ -430,7 +411,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
#ifdef CONFIG_PM_SLEEP
@@ -575,10 +780,19 @@ static const struct sdhci_pltfm_data sdh
@@ -589,10 +780,19 @@ static const struct sdhci_pltfm_data sdh
.ops = &sdhci_esdhc_le_ops,
};
@@ -450,7 +431,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
u16 host_ver;
pltfm_host = sdhci_priv(host);
@@ -588,6 +802,36 @@ static void esdhc_init(struct platform_d
@@ -602,6 +802,36 @@ static void esdhc_init(struct platform_d
esdhc->vendor_ver = (host_ver & SDHCI_VENDOR_VER_MASK) >>
SDHCI_VENDOR_VER_SHIFT;
esdhc->spec_ver = host_ver & SDHCI_SPEC_VER_MASK;
@@ -487,7 +468,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
static int sdhci_esdhc_probe(struct platform_device *pdev)
@@ -610,6 +854,11 @@ static int sdhci_esdhc_probe(struct plat
@@ -624,6 +854,11 @@ static int sdhci_esdhc_probe(struct plat
if (IS_ERR(host))
return PTR_ERR(host);

View File

@@ -1267,7 +1267,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
EXPORT_SYMBOL(qe_issue_cmd);
@@ -166,8 +182,8 @@ static unsigned int brg_clk = 0;
@@ -169,8 +185,8 @@ static unsigned int brg_clk = 0;
unsigned int qe_get_brg_clk(void)
{
struct device_node *qe;
@@ -1275,10 +1275,10 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
- const u32 *prop;
+ u32 val;
+ int ret;
unsigned int mod;
if (brg_clk)
return brg_clk;
@@ -179,9 +195,9 @@ unsigned int qe_get_brg_clk(void)
@@ -183,9 +199,9 @@ unsigned int qe_get_brg_clk(void)
return brg_clk;
}
@@ -1291,7 +1291,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
of_node_put(qe);
@@ -221,7 +237,7 @@ int qe_setbrg(enum qe_clock brg, unsigne
@@ -234,7 +250,7 @@ int qe_setbrg(enum qe_clock brg, unsigne
tempval = ((divisor - 1) << QE_BRGC_DIVISOR_SHIFT) |
QE_BRGC_ENABLE | div16;
@@ -1300,7 +1300,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
return 0;
}
@@ -355,9 +371,9 @@ static int qe_sdma_init(void)
@@ -368,9 +384,9 @@ static int qe_sdma_init(void)
return -ENOMEM;
}
@@ -1313,7 +1313,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
return 0;
}
@@ -395,14 +411,14 @@ static void qe_upload_microcode(const vo
@@ -408,14 +424,14 @@ static void qe_upload_microcode(const vo
"uploading microcode '%s'\n", ucode->id);
/* Use auto-increment */
@@ -1332,7 +1332,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
/*
@@ -487,7 +503,7 @@ int qe_upload_firmware(const struct qe_f
@@ -500,7 +516,7 @@ int qe_upload_firmware(const struct qe_f
* If the microcode calls for it, split the I-RAM.
*/
if (!firmware->split)
@@ -1341,7 +1341,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
if (firmware->soc.model)
printk(KERN_INFO
@@ -521,11 +537,11 @@ int qe_upload_firmware(const struct qe_f
@@ -534,11 +550,11 @@ int qe_upload_firmware(const struct qe_f
u32 trap = be32_to_cpu(ucode->traps[j]);
if (trap)
@@ -1355,7 +1355,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
}
qe_firmware_uploaded = 1;
@@ -644,9 +660,9 @@ EXPORT_SYMBOL(qe_get_num_of_risc);
@@ -657,9 +673,9 @@ EXPORT_SYMBOL(qe_get_num_of_risc);
unsigned int qe_get_num_of_snums(void)
{
struct device_node *qe;
@@ -1367,7 +1367,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
num_of_snums = 28; /* The default number of snum for threads is 28 */
qe = of_find_compatible_node(NULL, NULL, "fsl,qe");
@@ -660,9 +676,9 @@ unsigned int qe_get_num_of_snums(void)
@@ -673,9 +689,9 @@ unsigned int qe_get_num_of_snums(void)
return num_of_snums;
}

View File

@@ -218,7 +218,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
reg &= ~DWC3_GFLADJ_30MHZ_MASK;
reg |= DWC3_GFLADJ_30MHZ_SDBND_SEL | dwc->fladj;
dwc3_writel(dwc->regs, DWC3_GFLADJ, reg);
@@ -579,6 +599,99 @@ static int dwc3_phy_setup(struct dwc3 *d
@@ -585,6 +605,99 @@ static int dwc3_phy_setup(struct dwc3 *d
return 0;
}
@@ -318,7 +318,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
static void dwc3_core_exit(struct dwc3 *dwc)
{
dwc3_event_buffers_cleanup(dwc);
@@ -721,6 +834,8 @@ static int dwc3_core_init(struct dwc3 *d
@@ -727,6 +840,8 @@ static int dwc3_core_init(struct dwc3 *d
if (ret)
goto err1;
@@ -327,7 +327,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
/* Adjust Frame Length */
dwc3_frame_length_adjustment(dwc);
@@ -919,11 +1034,117 @@ static void dwc3_core_exit_mode(struct d
@@ -925,11 +1040,117 @@ static void dwc3_core_exit_mode(struct d
}
}
@@ -445,7 +445,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
struct resource *res;
struct dwc3 *dwc;
u8 lpm_nyet_threshold;
@@ -955,6 +1176,11 @@ static int dwc3_probe(struct platform_de
@@ -961,6 +1182,11 @@ static int dwc3_probe(struct platform_de
dwc->xhci_resources[0].flags = res->flags;
dwc->xhci_resources[0].name = res->name;
@@ -457,7 +457,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
res->start += DWC3_GLOBALS_REGS_START;
/*
@@ -997,6 +1223,12 @@ static int dwc3_probe(struct platform_de
@@ -1003,6 +1229,12 @@ static int dwc3_probe(struct platform_de
dwc->usb3_lpm_capable = device_property_read_bool(dev,
"snps,usb3_lpm_capable");
@@ -470,7 +470,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
dwc->disable_scramble_quirk = device_property_read_bool(dev,
"snps,disable_scramble_quirk");
dwc->u2exit_lfps_quirk = device_property_read_bool(dev,
@@ -1041,6 +1273,8 @@ static int dwc3_probe(struct platform_de
@@ -1047,6 +1279,8 @@ static int dwc3_probe(struct platform_de
dwc->hird_threshold = hird_threshold
| (dwc->is_utmi_l1_suspend << 4);
@@ -479,7 +479,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
platform_set_drvdata(pdev, dwc);
dwc3_cache_hwparams(dwc);
@@ -1064,6 +1298,11 @@ static int dwc3_probe(struct platform_de
@@ -1070,6 +1304,11 @@ static int dwc3_probe(struct platform_de
if (ret < 0)
goto err1;
@@ -534,7 +534,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
/* Global Debug Queue/FIFO Space Available Register */
#define DWC3_GDBGFIFOSPACE_NUM(n) ((n) & 0x1f)
#define DWC3_GDBGFIFOSPACE_TYPE(n) (((n) << 5) & 0x1e0)
@@ -180,7 +207,6 @@
@@ -182,7 +209,6 @@
#define DWC3_GCTL_CLK_PIPE (1)
#define DWC3_GCTL_CLK_PIPEHALF (2)
#define DWC3_GCTL_CLK_MASK (3)
@@ -542,7 +542,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
#define DWC3_GCTL_PRTCAP(n) (((n) & (3 << 12)) >> 12)
#define DWC3_GCTL_PRTCAPDIR(n) ((n) << 12)
#define DWC3_GCTL_PRTCAP_HOST 1
@@ -289,6 +315,10 @@
@@ -292,6 +318,10 @@
/* Global Frame Length Adjustment Register */
#define DWC3_GFLADJ_30MHZ_SDBND_SEL (1 << 7)
#define DWC3_GFLADJ_30MHZ_MASK 0x3f
@@ -553,7 +553,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
/* Global User Control Register 2 */
#define DWC3_GUCTL2_RST_ACTBITLATER (1 << 14)
@@ -753,6 +783,7 @@ struct dwc3_scratchpad_array {
@@ -756,6 +786,7 @@ struct dwc3_scratchpad_array {
* @regs: base address for our registers
* @regs_size: address space size
* @fladj: frame length adjustment
@@ -561,7 +561,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* @irq_gadget: peripheral controller's IRQ number
* @nr_scratch: number of scratch buffers
* @u1u2: only used on revisions <1.83a for workaround
@@ -829,6 +860,7 @@ struct dwc3_scratchpad_array {
@@ -832,6 +863,7 @@ struct dwc3_scratchpad_array {
* 1 - -3.5dB de-emphasis
* 2 - No de-emphasis
* 3 - Reserved
@@ -569,7 +569,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
*/
struct dwc3 {
struct usb_ctrlrequest *ctrl_req;
@@ -847,6 +879,7 @@ struct dwc3 {
@@ -850,6 +882,7 @@ struct dwc3 {
spinlock_t lock;
struct device *dev;
@@ -577,7 +577,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
struct platform_device *xhci;
struct resource xhci_resources[DWC3_XHCI_RESOURCES_NUM];
@@ -872,6 +905,12 @@ struct dwc3 {
@@ -875,6 +908,12 @@ struct dwc3 {
enum usb_phy_interface hsphy_mode;
u32 fladj;
@@ -590,7 +590,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
u32 irq_gadget;
u32 nr_scratch;
u32 u1u2;
@@ -948,9 +987,12 @@ struct dwc3 {
@@ -951,9 +990,12 @@ struct dwc3 {
unsigned ep0_bounced:1;
unsigned ep0_expect_in:1;
unsigned has_hibernation:1;
@@ -603,7 +603,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
unsigned pending_events:1;
unsigned pullups_connected:1;
unsigned setup_packet_pending:1;
@@ -971,9 +1013,16 @@ struct dwc3 {
@@ -974,9 +1016,16 @@ struct dwc3 {
unsigned dis_rxdet_inp3_quirk:1;
unsigned dis_u2_freeclk_exists_quirk:1;
unsigned dis_del_phy_power_chg_quirk:1;