From 102cb4742c14f78bf86b7d77c568c205f0d99d85 Mon Sep 17 00:00:00 2001 From: Kevin Darbyshire-Bryant Date: Mon, 21 Nov 2016 18:18:47 +0000 Subject: kernel: bump to 4.4.35 Refresh patches on all 4.4 supported platforms. 077-0005-bgmac-stop-clearing-DMA-receive-control-register-rig.patch removed as now upstream. Compile & run tested: ar71xx - Archer C7 v2 Signed-off-by: Kevin Darbyshire-Bryant --- .../096-01-usb-dwc3-core-purge-dev_dbg-calls.patch | 8 ++--- ...3-Update-maximum_speed-for-SuperSpeedPlus.patch | 8 ++--- ...dwc3-Validate-the-maximum_speed-parameter.patch | 16 ++++------ ...96-04-usb-dwc3-DWC_usb31-controller-check.patch | 6 +--- ...Update-register-fields-for-SuperSpeedPlus.patch | 10 ++----- ...6-06-usb-dwc3-core-improve-reset-sequence.patch | 35 +++++++++++----------- .../096-07-usb-dwc3-drop-FIFO-resizing-logic.patch | 32 +++++--------------- .../096-08-usb-dwc3-remove-num_event_buffers.patch | 32 ++++++++------------ .../096-09-usb-dwc3-drop-ev_buffs-array.patch | 22 +++++--------- ...dwc3-core-fix-PHY-handling-during-suspend.patch | 10 ++----- ...tform_set_drvdata-in-dwc3_of_simple_probe.patch | 6 +--- ...-qcom-add-pcie-nodes-to-ipq806x-platforms.patch | 2 +- .../patches-4.4/115-add-pcie-aux-clk-dts.patch | 6 ++-- .../157-ARM-DT-ipq8064-Add-ADM-device-node.patch | 2 +- ...-dts-Add-NAND-controller-node-for-ipq806x.patch | 2 +- ...-qcom-add-gmac-nodes-to-ipq806x-platforms.patch | 2 +- 16 files changed, 68 insertions(+), 131 deletions(-) (limited to 'target/linux/ipq806x') diff --git a/target/linux/ipq806x/patches-4.4/096-01-usb-dwc3-core-purge-dev_dbg-calls.patch b/target/linux/ipq806x/patches-4.4/096-01-usb-dwc3-core-purge-dev_dbg-calls.patch index b940827529..6ace50cbc0 100644 --- a/target/linux/ipq806x/patches-4.4/096-01-usb-dwc3-core-purge-dev_dbg-calls.patch +++ b/target/linux/ipq806x/patches-4.4/096-01-usb-dwc3-core-purge-dev_dbg-calls.patch @@ -12,11 +12,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index 22b47973..de5e01f 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -272,7 +272,8 @@ static int dwc3_event_buffers_setup(struct dwc3 *dwc) +@@ -272,7 +272,8 @@ static int dwc3_event_buffers_setup(stru for (n = 0; n < dwc->num_event_buffers; n++) { evt = dwc->ev_buffs[n]; @@ -26,7 +24,7 @@ index 22b47973..de5e01f 100644 evt->buf, (unsigned long long) evt->dma, evt->length); -@@ -608,12 +609,13 @@ static int dwc3_core_init(struct dwc3 *dwc) +@@ -608,12 +609,13 @@ static int dwc3_core_init(struct dwc3 *d reg |= DWC3_GCTL_GBLHIBERNATIONEN; break; default: @@ -42,5 +40,3 @@ index 22b47973..de5e01f 100644 dwc->is_fpga = true; } --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-02-usb-dwc3-Update-maximum_speed-for-SuperSpeedPlus.patch b/target/linux/ipq806x/patches-4.4/096-02-usb-dwc3-Update-maximum_speed-for-SuperSpeedPlus.patch index 9575166f74..de0e47fc14 100644 --- a/target/linux/ipq806x/patches-4.4/096-02-usb-dwc3-Update-maximum_speed-for-SuperSpeedPlus.patch +++ b/target/linux/ipq806x/patches-4.4/096-02-usb-dwc3-Update-maximum_speed-for-SuperSpeedPlus.patch @@ -17,11 +17,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index de5e01f..001c755 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -962,10 +962,6 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -962,10 +962,6 @@ static int dwc3_probe(struct platform_de fladj = pdata->fladj_value; } @@ -32,7 +30,7 @@ index de5e01f..001c755 100644 dwc->lpm_nyet_threshold = lpm_nyet_threshold; dwc->tx_de_emphasis = tx_de_emphasis; -@@ -1016,6 +1012,19 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -1016,6 +1012,19 @@ static int dwc3_probe(struct platform_de goto err1; } @@ -52,5 +50,3 @@ index de5e01f..001c755 100644 /* Adjust Frame Length */ dwc3_frame_length_adjustment(dwc, fladj); --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-03-usb-dwc3-Validate-the-maximum_speed-parameter.patch b/target/linux/ipq806x/patches-4.4/096-03-usb-dwc3-Validate-the-maximum_speed-parameter.patch index 43821266a1..0f17918d36 100644 --- a/target/linux/ipq806x/patches-4.4/096-03-usb-dwc3-Validate-the-maximum_speed-parameter.patch +++ b/target/linux/ipq806x/patches-4.4/096-03-usb-dwc3-Validate-the-maximum_speed-parameter.patch @@ -13,11 +13,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/gadget.c | 9 ++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index 001c755..17fd814 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -1012,8 +1012,20 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -1012,8 +1012,20 @@ static int dwc3_probe(struct platform_de goto err1; } @@ -40,7 +38,7 @@ index 001c755..17fd814 100644 dwc->maximum_speed = USB_SPEED_SUPER; /* -@@ -1023,6 +1035,8 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -1023,6 +1035,8 @@ static int dwc3_probe(struct platform_de (DWC3_GHWPARAMS3_SSPHY_IFC(dwc->hwparams.hwparams3) == DWC3_GHWPARAMS3_SSPHY_IFC_GEN2)) dwc->maximum_speed = USB_SPEED_SUPER_PLUS; @@ -49,13 +47,11 @@ index 001c755..17fd814 100644 } /* Adjust Frame Length */ -diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c -index 482e6a1..3ac170f 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c -@@ -1670,10 +1670,13 @@ static int dwc3_gadget_start(struct usb_gadget *g, - case USB_SPEED_SUPER_PLUS: - reg |= DWC3_DSTS_SUPERSPEED_PLUS; +@@ -1634,10 +1634,13 @@ static int dwc3_gadget_start(struct usb_ + case USB_SPEED_HIGH: + reg |= DWC3_DSTS_HIGHSPEED; break; - case USB_SPEED_SUPER: /* FALLTHROUGH */ - case USB_SPEED_UNKNOWN: /* FALTHROUGH */ @@ -70,5 +66,3 @@ index 482e6a1..3ac170f 100644 } } dwc3_writel(dwc->regs, DWC3_DCFG, reg); --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-04-usb-dwc3-DWC_usb31-controller-check.patch b/target/linux/ipq806x/patches-4.4/096-04-usb-dwc3-DWC_usb31-controller-check.patch index 47278d40c5..d522bb7e8d 100644 --- a/target/linux/ipq806x/patches-4.4/096-04-usb-dwc3-DWC_usb31-controller-check.patch +++ b/target/linux/ipq806x/patches-4.4/096-04-usb-dwc3-DWC_usb31-controller-check.patch @@ -11,11 +11,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.h | 6 ++++++ 1 file changed, 6 insertions(+) -diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h -index e4f8b90..c0520d67 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h -@@ -1024,6 +1024,12 @@ struct dwc3_gadget_ep_cmd_params { +@@ -1021,6 +1021,12 @@ struct dwc3_gadget_ep_cmd_params { void dwc3_set_mode(struct dwc3 *dwc, u32 mode); int dwc3_gadget_resize_tx_fifos(struct dwc3 *dwc); @@ -28,5 +26,3 @@ index e4f8b90..c0520d67 100644 #if IS_ENABLED(CONFIG_USB_DWC3_HOST) || IS_ENABLED(CONFIG_USB_DWC3_DUAL_ROLE) int dwc3_host_init(struct dwc3 *dwc); void dwc3_host_exit(struct dwc3 *dwc); --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-05-usb-dwc3-Update-register-fields-for-SuperSpeedPlus.patch b/target/linux/ipq806x/patches-4.4/096-05-usb-dwc3-Update-register-fields-for-SuperSpeedPlus.patch index e4805db0b4..0030446eab 100644 --- a/target/linux/ipq806x/patches-4.4/096-05-usb-dwc3-Update-register-fields-for-SuperSpeedPlus.patch +++ b/target/linux/ipq806x/patches-4.4/096-05-usb-dwc3-Update-register-fields-for-SuperSpeedPlus.patch @@ -12,11 +12,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h -index c0520d67..6254b2f 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h -@@ -223,7 +223,8 @@ +@@ -222,7 +222,8 @@ /* Global HWPARAMS3 Register */ #define DWC3_GHWPARAMS3_SSPHY_IFC(n) ((n) & 3) #define DWC3_GHWPARAMS3_SSPHY_IFC_DIS 0 @@ -26,7 +24,7 @@ index c0520d67..6254b2f 100644 #define DWC3_GHWPARAMS3_HSPHY_IFC(n) (((n) & (3 << 2)) >> 2) #define DWC3_GHWPARAMS3_HSPHY_IFC_DIS 0 #define DWC3_GHWPARAMS3_HSPHY_IFC_UTMI 1 -@@ -249,6 +250,7 @@ +@@ -248,6 +249,7 @@ #define DWC3_DCFG_DEVADDR_MASK DWC3_DCFG_DEVADDR(0x7f) #define DWC3_DCFG_SPEED_MASK (7 << 0) @@ -34,7 +32,7 @@ index c0520d67..6254b2f 100644 #define DWC3_DCFG_SUPERSPEED (4 << 0) #define DWC3_DCFG_HIGHSPEED (0 << 0) #define DWC3_DCFG_FULLSPEED2 (1 << 0) -@@ -339,6 +341,7 @@ +@@ -338,6 +340,7 @@ #define DWC3_DSTS_CONNECTSPD (7 << 0) @@ -42,5 +40,3 @@ index c0520d67..6254b2f 100644 #define DWC3_DSTS_SUPERSPEED (4 << 0) #define DWC3_DSTS_HIGHSPEED (0 << 0) #define DWC3_DSTS_FULLSPEED2 (1 << 0) --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-06-usb-dwc3-core-improve-reset-sequence.patch b/target/linux/ipq806x/patches-4.4/096-06-usb-dwc3-core-improve-reset-sequence.patch index 197dd057d2..428a796e07 100644 --- a/target/linux/ipq806x/patches-4.4/096-06-usb-dwc3-core-improve-reset-sequence.patch +++ b/target/linux/ipq806x/patches-4.4/096-06-usb-dwc3-core-improve-reset-sequence.patch @@ -24,11 +24,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.c | 48 ++++++++++++++++++------------------------------ 1 file changed, 18 insertions(+), 30 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index 17fd814..fa20f5a9 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -67,23 +67,9 @@ void dwc3_set_mode(struct dwc3 *dwc, u32 mode) +@@ -67,23 +67,9 @@ void dwc3_set_mode(struct dwc3 *dwc, u32 static int dwc3_core_soft_reset(struct dwc3 *dwc) { u32 reg; @@ -53,7 +51,7 @@ index 17fd814..fa20f5a9 100644 usb_phy_init(dwc->usb2_phy); usb_phy_init(dwc->usb3_phy); ret = phy_init(dwc->usb2_generic_phy); -@@ -95,26 +81,28 @@ static int dwc3_core_soft_reset(struct dwc3 *dwc) +@@ -95,26 +81,28 @@ static int dwc3_core_soft_reset(struct d phy_exit(dwc->usb2_generic_phy); return ret; } @@ -63,6 +61,18 @@ index 17fd814..fa20f5a9 100644 - reg = dwc3_readl(dwc->regs, DWC3_GUSB3PIPECTL(0)); - reg &= ~DWC3_GUSB3PIPECTL_PHYSOFTRST; - dwc3_writel(dwc->regs, DWC3_GUSB3PIPECTL(0), reg); +- +- /* Clear USB2 PHY reset */ +- reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0)); +- reg &= ~DWC3_GUSB2PHYCFG_PHYSOFTRST; +- dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg); +- +- mdelay(100); +- +- /* After PHYs are stable we can take Core out of reset state */ +- reg = dwc3_readl(dwc->regs, DWC3_GCTL); +- reg &= ~DWC3_GCTL_CORESOFTRESET; +- dwc3_writel(dwc->regs, DWC3_GCTL, reg); + /* + * We're resetting only the device side because, if we're in host mode, + * XHCI driver will reset the host block. If dwc3 was configured for @@ -70,25 +80,16 @@ index 17fd814..fa20f5a9 100644 + */ + if (dwc->dr_mode == USB_DR_MODE_HOST) + return 0; - -- /* Clear USB2 PHY reset */ -- reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0)); -- reg &= ~DWC3_GUSB2PHYCFG_PHYSOFTRST; -- dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg); ++ + reg = dwc3_readl(dwc->regs, DWC3_DCTL); + reg |= DWC3_DCTL_CSFTRST; + dwc3_writel(dwc->regs, DWC3_DCTL, reg); - -- mdelay(100); ++ + do { + reg = dwc3_readl(dwc->regs, DWC3_DCTL); + if (!(reg & DWC3_DCTL_CSFTRST)) + return 0; - -- /* After PHYs are stable we can take Core out of reset state */ -- reg = dwc3_readl(dwc->regs, DWC3_GCTL); -- reg &= ~DWC3_GCTL_CORESOFTRESET; -- dwc3_writel(dwc->regs, DWC3_GCTL, reg); ++ + udelay(1); + } while (--retries); @@ -97,5 +98,3 @@ index 17fd814..fa20f5a9 100644 } /** --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-07-usb-dwc3-drop-FIFO-resizing-logic.patch b/target/linux/ipq806x/patches-4.4/096-07-usb-dwc3-drop-FIFO-resizing-logic.patch index 9b6026d914..a6510d8f56 100644 --- a/target/linux/ipq806x/patches-4.4/096-07-usb-dwc3-drop-FIFO-resizing-logic.patch +++ b/target/linux/ipq806x/patches-4.4/096-07-usb-dwc3-drop-FIFO-resizing-logic.patch @@ -25,8 +25,6 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/platform_data.h | 1 - 7 files changed, 2 insertions(+), 108 deletions(-) -diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt -index fb2ad0a..1569568 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -14,7 +14,6 @@ Optional properties: @@ -52,8 +50,6 @@ index fb2ad0a..1569568 100644 usb-phy = <&usb2_phy>, <&usb3,phy>; - tx-fifo-resize; }; -diff --git a/Documentation/devicetree/bindings/usb/qcom,dwc3.txt b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt -index ca164e7..39acb08 100644 --- a/Documentation/devicetree/bindings/usb/qcom,dwc3.txt +++ b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt @@ -59,7 +59,6 @@ Example device nodes: @@ -64,11 +60,9 @@ index ca164e7..39acb08 100644 dr_mode = "host"; }; }; -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index fa20f5a9..67d183a 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -882,9 +882,6 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -882,9 +882,6 @@ static int dwc3_probe(struct platform_de dwc->usb3_lpm_capable = device_property_read_bool(dev, "snps,usb3_lpm_capable"); @@ -78,7 +72,7 @@ index fa20f5a9..67d183a 100644 dwc->disable_scramble_quirk = device_property_read_bool(dev, "snps,disable_scramble_quirk"); dwc->u2exit_lfps_quirk = device_property_read_bool(dev, -@@ -926,7 +923,6 @@ static int dwc3_probe(struct platform_device *pdev) +@@ -926,7 +923,6 @@ static int dwc3_probe(struct platform_de if (pdata->hird_threshold) hird_threshold = pdata->hird_threshold; @@ -86,11 +80,9 @@ index fa20f5a9..67d183a 100644 dwc->usb3_lpm_capable = pdata->usb3_lpm_capable; dwc->dr_mode = pdata->dr_mode; -diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h -index 6254b2f..7cbe9e9 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h -@@ -709,9 +709,7 @@ struct dwc3_scratchpad_array { +@@ -707,9 +707,7 @@ struct dwc3_scratchpad_array { * 0 - utmi_sleep_n * 1 - utmi_l1_suspend_n * @is_fpga: true when we are using the FPGA board @@ -100,7 +92,7 @@ index 6254b2f..7cbe9e9 100644 * @setup_packet_pending: true when there's a Setup Packet in FIFO. Workaround * @start_config_issued: true when StartConfig command has been issued * @three_stage_setup: set if we perform a three phase setup -@@ -855,9 +853,7 @@ struct dwc3 { +@@ -852,9 +850,7 @@ struct dwc3 { unsigned has_lpm_erratum:1; unsigned is_utmi_l1_suspend:1; unsigned is_fpga:1; @@ -110,7 +102,7 @@ index 6254b2f..7cbe9e9 100644 unsigned setup_packet_pending:1; unsigned three_stage_setup:1; unsigned usb3_lpm_capable:1; -@@ -1025,7 +1021,6 @@ struct dwc3_gadget_ep_cmd_params { +@@ -1022,7 +1018,6 @@ struct dwc3_gadget_ep_cmd_params { /* prototypes */ void dwc3_set_mode(struct dwc3 *dwc, u32 mode); @@ -118,11 +110,9 @@ index 6254b2f..7cbe9e9 100644 /* check whether we are on the DWC_usb31 core */ static inline bool dwc3_is_usb31(struct dwc3 *dwc) -diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c -index eca2e6d..4454de0 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c -@@ -586,9 +586,6 @@ static int dwc3_ep0_set_config(struct dwc3 *dwc, struct usb_ctrlrequest *ctrl) +@@ -583,9 +583,6 @@ static int dwc3_ep0_set_config(struct dw reg = dwc3_readl(dwc->regs, DWC3_DCTL); reg |= (DWC3_DCTL_ACCEPTU1ENA | DWC3_DCTL_ACCEPTU2ENA); dwc3_writel(dwc->regs, DWC3_DCTL, reg); @@ -132,7 +122,7 @@ index eca2e6d..4454de0 100644 } break; -@@ -1027,12 +1024,6 @@ static int dwc3_ep0_start_control_status(struct dwc3_ep *dep) +@@ -1020,12 +1017,6 @@ static int dwc3_ep0_start_control_status static void __dwc3_ep0_do_control_status(struct dwc3 *dwc, struct dwc3_ep *dep) { @@ -145,11 +135,9 @@ index eca2e6d..4454de0 100644 WARN_ON(dwc3_ep0_start_control_status(dep)); } -diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c -index d54a028..3a5c271 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c -@@ -145,92 +145,6 @@ int dwc3_gadget_set_link_state(struct dwc3 *dwc, enum dwc3_link_state state) +@@ -145,92 +145,6 @@ int dwc3_gadget_set_link_state(struct dw return -ETIMEDOUT; } @@ -242,8 +230,6 @@ index d54a028..3a5c271 100644 void dwc3_gadget_giveback(struct dwc3_ep *dep, struct dwc3_request *req, int status) { -diff --git a/drivers/usb/dwc3/platform_data.h b/drivers/usb/dwc3/platform_data.h -index 2bb4d3a..aaa6f00 100644 --- a/drivers/usb/dwc3/platform_data.h +++ b/drivers/usb/dwc3/platform_data.h @@ -23,7 +23,6 @@ @@ -254,5 +240,3 @@ index 2bb4d3a..aaa6f00 100644 bool usb3_lpm_capable; unsigned is_utmi_l1_suspend:1; --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-08-usb-dwc3-remove-num_event_buffers.patch b/target/linux/ipq806x/patches-4.4/096-08-usb-dwc3-remove-num_event_buffers.patch index 8bc0b9817f..32ff364e5a 100644 --- a/target/linux/ipq806x/patches-4.4/096-08-usb-dwc3-remove-num_event_buffers.patch +++ b/target/linux/ipq806x/patches-4.4/096-08-usb-dwc3-remove-num_event_buffers.patch @@ -19,11 +19,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/gadget.c | 38 +++++++--------------- 3 files changed, 44 insertions(+), 77 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index 67d183a..9e5c57c7 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -203,13 +203,10 @@ static struct dwc3_event_buffer *dwc3_alloc_one_event_buffer(struct dwc3 *dwc, +@@ -203,13 +203,10 @@ static struct dwc3_event_buffer *dwc3_al static void dwc3_free_event_buffers(struct dwc3 *dwc) { struct dwc3_event_buffer *evt; @@ -40,7 +38,7 @@ index 67d183a..9e5c57c7 100644 } /** -@@ -222,27 +219,19 @@ static void dwc3_free_event_buffers(struct dwc3 *dwc) +@@ -222,27 +219,19 @@ static void dwc3_free_event_buffers(stru */ static int dwc3_alloc_event_buffers(struct dwc3 *dwc, unsigned length) { @@ -75,7 +73,7 @@ index 67d183a..9e5c57c7 100644 return 0; } -@@ -256,25 +245,22 @@ static int dwc3_alloc_event_buffers(struct dwc3 *dwc, unsigned length) +@@ -256,25 +245,22 @@ static int dwc3_alloc_event_buffers(stru static int dwc3_event_buffers_setup(struct dwc3 *dwc) { struct dwc3_event_buffer *evt; @@ -116,7 +114,7 @@ index 67d183a..9e5c57c7 100644 return 0; } -@@ -282,19 +268,16 @@ static int dwc3_event_buffers_setup(struct dwc3 *dwc) +@@ -282,19 +268,16 @@ static int dwc3_event_buffers_setup(stru static void dwc3_event_buffers_cleanup(struct dwc3 *dwc) { struct dwc3_event_buffer *evt; @@ -143,11 +141,9 @@ index 67d183a..9e5c57c7 100644 } static int dwc3_alloc_scratch_buffers(struct dwc3 *dwc) -diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h -index 4ea4b51..be03999 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h -@@ -667,7 +667,6 @@ struct dwc3_scratchpad_array { +@@ -665,7 +665,6 @@ struct dwc3_scratchpad_array { * @regs: base address for our registers * @regs_size: address space size * @nr_scratch: number of scratch buffers @@ -155,7 +151,7 @@ index 4ea4b51..be03999 100644 * @u1u2: only used on revisions <1.83a for workaround * @maximum_speed: maximum speed requested (mainly for testing purposes) * @revision: revision register contents -@@ -778,7 +777,6 @@ struct dwc3 { +@@ -775,7 +774,6 @@ struct dwc3 { u32 gctl; u32 nr_scratch; @@ -163,11 +159,9 @@ index 4ea4b51..be03999 100644 u32 u1u2; u32 maximum_speed; -diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c -index e6bd3a9..5e6a495 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c -@@ -2602,14 +2602,14 @@ static void dwc3_process_event_entry(struct dwc3 *dwc, +@@ -2556,14 +2556,14 @@ static void dwc3_process_event_entry(str } } @@ -184,7 +178,7 @@ index e6bd3a9..5e6a495 100644 left = evt->count; if (!(evt->flags & DWC3_EVENT_PENDING)) -@@ -2634,7 +2634,7 @@ static irqreturn_t dwc3_process_event_buf(struct dwc3 *dwc, u32 buf) +@@ -2588,7 +2588,7 @@ static irqreturn_t dwc3_process_event_bu evt->lpos = (evt->lpos + 4) % DWC3_EVENT_BUFFERS_SIZE; left -= 4; @@ -193,7 +187,7 @@ index e6bd3a9..5e6a495 100644 } evt->count = 0; -@@ -2642,9 +2642,9 @@ static irqreturn_t dwc3_process_event_buf(struct dwc3 *dwc, u32 buf) +@@ -2596,9 +2596,9 @@ static irqreturn_t dwc3_process_event_bu ret = IRQ_HANDLED; /* Unmask interrupt */ @@ -205,7 +199,7 @@ index e6bd3a9..5e6a495 100644 return ret; } -@@ -2654,27 +2654,23 @@ static irqreturn_t dwc3_thread_interrupt(int irq, void *_dwc) +@@ -2608,27 +2608,23 @@ static irqreturn_t dwc3_thread_interrupt struct dwc3 *dwc = _dwc; unsigned long flags; irqreturn_t ret = IRQ_NONE; @@ -237,7 +231,7 @@ index e6bd3a9..5e6a495 100644 count &= DWC3_GEVNTCOUNT_MASK; if (!count) return IRQ_NONE; -@@ -2683,9 +2679,9 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3 *dwc, u32 buf) +@@ -2637,9 +2633,9 @@ static irqreturn_t dwc3_check_event_buf( evt->flags |= DWC3_EVENT_PENDING; /* Mask interrupt */ @@ -249,7 +243,7 @@ index e6bd3a9..5e6a495 100644 return IRQ_WAKE_THREAD; } -@@ -2693,18 +2689,8 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3 *dwc, u32 buf) +@@ -2647,18 +2643,8 @@ static irqreturn_t dwc3_check_event_buf( static irqreturn_t dwc3_interrupt(int irq, void *_dwc) { struct dwc3 *dwc = _dwc; @@ -269,5 +263,3 @@ index e6bd3a9..5e6a495 100644 } /** --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-09-usb-dwc3-drop-ev_buffs-array.patch b/target/linux/ipq806x/patches-4.4/096-09-usb-dwc3-drop-ev_buffs-array.patch index 64d796cf38..34f42110a9 100644 --- a/target/linux/ipq806x/patches-4.4/096-09-usb-dwc3-drop-ev_buffs-array.patch +++ b/target/linux/ipq806x/patches-4.4/096-09-usb-dwc3-drop-ev_buffs-array.patch @@ -15,11 +15,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/gadget.c | 4 ++-- 3 files changed, 7 insertions(+), 12 deletions(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index 9e5c57c7..05b7ec3 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -204,7 +204,7 @@ static void dwc3_free_event_buffers(struct dwc3 *dwc) +@@ -204,7 +204,7 @@ static void dwc3_free_event_buffers(stru { struct dwc3_event_buffer *evt; @@ -28,7 +26,7 @@ index 9e5c57c7..05b7ec3 100644 if (evt) dwc3_free_one_event_buffer(dwc, evt); } -@@ -221,17 +221,12 @@ static int dwc3_alloc_event_buffers(struct dwc3 *dwc, unsigned length) +@@ -221,17 +221,12 @@ static int dwc3_alloc_event_buffers(stru { struct dwc3_event_buffer *evt; @@ -47,7 +45,7 @@ index 9e5c57c7..05b7ec3 100644 return 0; } -@@ -246,7 +241,7 @@ static int dwc3_event_buffers_setup(struct dwc3 *dwc) +@@ -246,7 +241,7 @@ static int dwc3_event_buffers_setup(stru { struct dwc3_event_buffer *evt; @@ -56,7 +54,7 @@ index 9e5c57c7..05b7ec3 100644 dwc3_trace(trace_dwc3_core, "Event buf %p dma %08llx length %d\n", evt->buf, (unsigned long long) evt->dma, -@@ -269,7 +264,7 @@ static void dwc3_event_buffers_cleanup(struct dwc3 *dwc) +@@ -269,7 +264,7 @@ static void dwc3_event_buffers_cleanup(s { struct dwc3_event_buffer *evt; @@ -65,11 +63,9 @@ index 9e5c57c7..05b7ec3 100644 evt->lpos = 0; -diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h -index be03999..df72234a 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h -@@ -753,7 +753,7 @@ struct dwc3 { +@@ -750,7 +750,7 @@ struct dwc3 { struct platform_device *xhci; struct resource xhci_resources[DWC3_XHCI_RESOURCES_NUM]; @@ -78,11 +74,9 @@ index be03999..df72234a 100644 struct dwc3_ep *eps[DWC3_ENDPOINTS_NUM]; struct usb_gadget gadget; -diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c -index 5e6a495..96dfde0 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c -@@ -2609,7 +2609,7 @@ static irqreturn_t dwc3_process_event_buf(struct dwc3 *dwc) +@@ -2563,7 +2563,7 @@ static irqreturn_t dwc3_process_event_bu int left; u32 reg; @@ -91,7 +85,7 @@ index 5e6a495..96dfde0 100644 left = evt->count; if (!(evt->flags & DWC3_EVENT_PENDING)) -@@ -2668,7 +2668,7 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3 *dwc) +@@ -2622,7 +2622,7 @@ static irqreturn_t dwc3_check_event_buf( u32 count; u32 reg; @@ -100,5 +94,3 @@ index 5e6a495..96dfde0 100644 count = dwc3_readl(dwc->regs, DWC3_GEVNTCOUNT(0)); count &= DWC3_GEVNTCOUNT_MASK; --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/096-10-usb-dwc3-core-fix-PHY-handling-during-suspend.patch b/target/linux/ipq806x/patches-4.4/096-10-usb-dwc3-core-fix-PHY-handling-during-suspend.patch index 87f1562cc6..8bf09edfbd 100644 --- a/target/linux/ipq806x/patches-4.4/096-10-usb-dwc3-core-fix-PHY-handling-during-suspend.patch +++ b/target/linux/ipq806x/patches-4.4/096-10-usb-dwc3-core-fix-PHY-handling-during-suspend.patch @@ -15,11 +15,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/core.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) -diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c -index fa20f5a9..34277ce 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c -@@ -1150,6 +1150,11 @@ static int dwc3_suspend(struct device *dev) +@@ -1124,6 +1124,11 @@ static int dwc3_suspend(struct device *d phy_exit(dwc->usb2_generic_phy); phy_exit(dwc->usb3_generic_phy); @@ -31,7 +29,7 @@ index fa20f5a9..34277ce 100644 pinctrl_pm_select_sleep_state(dev); return 0; -@@ -1163,11 +1168,21 @@ static int dwc3_resume(struct device *dev) +@@ -1137,11 +1142,21 @@ static int dwc3_resume(struct device *de pinctrl_pm_select_default_state(dev); @@ -54,7 +52,7 @@ index fa20f5a9..34277ce 100644 ret = phy_init(dwc->usb3_generic_phy); if (ret < 0) -@@ -1200,6 +1215,12 @@ static int dwc3_resume(struct device *dev) +@@ -1174,6 +1189,12 @@ static int dwc3_resume(struct device *de err_usb2phy_init: phy_exit(dwc->usb2_generic_phy); @@ -67,5 +65,3 @@ index fa20f5a9..34277ce 100644 return ret; } --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/097-4-usb-dwc3-fix-missing-platform_set_drvdata-in-dwc3_of_simple_probe.patch b/target/linux/ipq806x/patches-4.4/097-4-usb-dwc3-fix-missing-platform_set_drvdata-in-dwc3_of_simple_probe.patch index 2aeadc30ed..2d18e41514 100644 --- a/target/linux/ipq806x/patches-4.4/097-4-usb-dwc3-fix-missing-platform_set_drvdata-in-dwc3_of_simple_probe.patch +++ b/target/linux/ipq806x/patches-4.4/097-4-usb-dwc3-fix-missing-platform_set_drvdata-in-dwc3_of_simple_probe.patch @@ -15,11 +15,9 @@ Signed-off-by: Felipe Balbi drivers/usb/dwc3/dwc3-of-simple.c | 1 + 1 file changed, 1 insertion(+) -diff --git a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple.c -index 9743353..e56d59b 100644 --- a/drivers/usb/dwc3/dwc3-of-simple.c +++ b/drivers/usb/dwc3/dwc3-of-simple.c -@@ -61,6 +61,7 @@ static int dwc3_of_simple_probe(struct platform_device *pdev) +@@ -61,6 +61,7 @@ static int dwc3_of_simple_probe(struct p if (!simple->clks) return -ENOMEM; @@ -27,5 +25,3 @@ index 9743353..e56d59b 100644 simple->dev = dev; for (i = 0; i < simple->num_clocks; i++) { --- -cgit v0.12 diff --git a/target/linux/ipq806x/patches-4.4/112-ARM-dts-qcom-add-pcie-nodes-to-ipq806x-platforms.patch b/target/linux/ipq806x/patches-4.4/112-ARM-dts-qcom-add-pcie-nodes-to-ipq806x-platforms.patch index ff17370c00..90631c6694 100644 --- a/target/linux/ipq806x/patches-4.4/112-ARM-dts-qcom-add-pcie-nodes-to-ipq806x-platforms.patch +++ b/target/linux/ipq806x/patches-4.4/112-ARM-dts-qcom-add-pcie-nodes-to-ipq806x-platforms.patch @@ -98,7 +98,7 @@ Signed-off-by: Mathieu Olivari }; intc: interrupt-controller@2000000 { -@@ -417,6 +448,144 @@ +@@ -415,6 +446,144 @@ dr_mode = "host"; }; }; diff --git a/target/linux/ipq806x/patches-4.4/115-add-pcie-aux-clk-dts.patch b/target/linux/ipq806x/patches-4.4/115-add-pcie-aux-clk-dts.patch index af6e215596..636a6c76a9 100644 --- a/target/linux/ipq806x/patches-4.4/115-add-pcie-aux-clk-dts.patch +++ b/target/linux/ipq806x/patches-4.4/115-add-pcie-aux-clk-dts.patch @@ -1,6 +1,6 @@ --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi -@@ -477,15 +477,21 @@ +@@ -475,15 +475,21 @@ clocks = <&gcc PCIE_A_CLK>, <&gcc PCIE_H_CLK>, @@ -26,7 +26,7 @@ pinctrl-0 = <&pcie0_pins>; pinctrl-names = "default"; -@@ -523,15 +529,21 @@ +@@ -521,15 +527,21 @@ clocks = <&gcc PCIE_1_A_CLK>, <&gcc PCIE_1_H_CLK>, @@ -52,7 +52,7 @@ pinctrl-0 = <&pcie1_pins>; pinctrl-names = "default"; -@@ -569,15 +581,21 @@ +@@ -567,15 +579,21 @@ clocks = <&gcc PCIE_2_A_CLK>, <&gcc PCIE_2_H_CLK>, diff --git a/target/linux/ipq806x/patches-4.4/157-ARM-DT-ipq8064-Add-ADM-device-node.patch b/target/linux/ipq806x/patches-4.4/157-ARM-DT-ipq8064-Add-ADM-device-node.patch index 3c3212b26d..5383041ffc 100644 --- a/target/linux/ipq806x/patches-4.4/157-ARM-DT-ipq8064-Add-ADM-device-node.patch +++ b/target/linux/ipq806x/patches-4.4/157-ARM-DT-ipq8064-Add-ADM-device-node.patch @@ -13,7 +13,7 @@ Signed-off-by: Andy Gross --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi -@@ -723,6 +723,26 @@ +@@ -721,6 +721,26 @@ status = "disabled"; }; diff --git a/target/linux/ipq806x/patches-4.4/164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch b/target/linux/ipq806x/patches-4.4/164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch index 27662d0552..664e7b5b53 100644 --- a/target/linux/ipq806x/patches-4.4/164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch +++ b/target/linux/ipq806x/patches-4.4/164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch @@ -26,7 +26,7 @@ arch/arm/boot/dts/qcom-ipq8064.dtsi | 15 +++++++++++++++ --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi -@@ -743,6 +743,22 @@ +@@ -741,6 +741,22 @@ status = "disabled"; }; diff --git a/target/linux/ipq806x/patches-4.4/708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch b/target/linux/ipq806x/patches-4.4/708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch index 4a0528885f..aa12121dff 100644 --- a/target/linux/ipq806x/patches-4.4/708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch +++ b/target/linux/ipq806x/patches-4.4/708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch @@ -121,7 +121,7 @@ Signed-off-by: Mathieu Olivari }; --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi -@@ -795,6 +795,92 @@ +@@ -793,6 +793,92 @@ status = "disabled"; }; -- cgit v1.2.3