Skip to content

Instantly share code, notes, and snippets.

@hnyman
Created February 16, 2017 17:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hnyman/e854f3e3154e892d205a605c91d4c198 to your computer and use it in GitHub Desktop.
Save hnyman/e854f3e3154e892d205a605c91d4c198 to your computer and use it in GitHub Desktop.
Only in ../patches-4.9: 001-arm-dts-qcom-Fix-ipq-board-clock-rates.patch
diff -rb ./012-1-clk-qcom-Add-support-for-SMD-RPM-Clocks.patch ../patches-4.9/012-1-clk-qcom-Add-support-for-SMD-RPM-Clocks.patch
1c1,5
< From 00f64b58874e14dec2b9c02f7d63147315e0a09b Mon Sep 17 00:00:00 2001
---
> From patchwork Wed Nov 2 15:56:56 2016
> Content-Type: text/plain; charset="utf-8"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Subject: [v9,1/3] clk: qcom: Add support for SMD-RPM Clocks
2a7,13
> X-Patchwork-Id: 9409419
> Message-Id: <20161102155658.32203-2-georgi.djakov@linaro.org>
> To: sboyd@codeaurora.org, mturquette@baylibre.com
> Cc: linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
> robh+dt@kernel.org, mark.rutland@arm.com,
> linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org,
> georgi.djakov@linaro.org
4d14
< Subject: clk: qcom: Add support for SMD-RPM Clocks
21,23d30
< Acked-by: Rob Herring <robh@kernel.org>
< [sboyd@codeaurora.org: Remove useless braces for single line if]
< Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
28c35
< drivers/clk/qcom/clk-smd-rpm.c | 570 +++++++++++++++++++++
---
> drivers/clk/qcom/clk-smd-rpm.c | 571 +++++++++++++++++++++
30c37
< 5 files changed, 668 insertions(+)
---
> 5 files changed, 669 insertions(+)
34a42,46
> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
108c120
< @@ -29,3 +29,4 @@ obj-$(CONFIG_MSM_LCC_8960) += lcc-msm896
---
> @@ -30,3 +30,4 @@ obj-$(CONFIG_MSM_LCC_8960) += lcc-msm8960.o
115c127
< @@ -0,0 +1,570 @@
---
> @@ -0,0 +1,571 @@
620c632
< + if (!rpm_smd_clks[i])
---
> + if (!rpm_smd_clks[i]) {
621a634
> + }
diff -rb ./012-2-clk-qcom-Add-support-for-RPM-Clocks.patch ../patches-4.9/012-2-clk-qcom-Add-support-for-RPM-Clocks.patch
50c50
< + platforms such as apq8064, msm8660, msm8960 etc.
---
> + platforms such as ipq806x, msm8660, msm8960 etc.
57c57
< @@ -29,4 +29,5 @@ obj-$(CONFIG_MSM_LCC_8960) += lcc-msm896
---
> @@ -30,4 +30,5 @@ obj-$(CONFIG_MSM_LCC_8960) += lcc-msm8960.o
diff -rb ./020-add-ap148-bootargs.patch ../patches-4.9/020-add-ap148-bootargs.patch
35c35
< @@ -172,7 +172,7 @@
---
> @@ -159,7 +159,7 @@
44c44
< @@ -210,7 +210,7 @@
---
> @@ -197,7 +197,7 @@
53c53
< @@ -247,7 +247,7 @@
---
> @@ -234,7 +234,7 @@
diff -rb ./022-add-db149-dts.patch ../patches-4.9/022-add-db149-dts.patch
18c18,19
< @@ -618,6 +618,7 @@ dtb-$(CONFIG_ARCH_QCOM) += \
---
> @@ -506,6 +506,7 @@ dtb-$(CONFIG_ARCH_QCOM) += \
> qcom-apq8084-ifc6540.dtb \
20d20
< qcom-ipq4019-ap.dk01.1-c1.dtb \
25c25
< qcom-msm8974-lge-nexus5-hammerhead.dtb \
---
> qcom-msm8974-sony-xperia-honami.dtb
diff -rb ./023-ARM-dts-ipq806x-Disable-i2c-device-on-gsbi4.patch ../patches-4.9/023-ARM-dts-ipq806x-Disable-i2c-device-on-gsbi4.patch
26c26
< @@ -294,7 +294,7 @@ static struct clk_rcg gsbi1_uart_src = {
---
> @@ -1218,7 +1218,7 @@ static struct clk_rcg gsbi4_qup_src = {
35,36c35,36
< @@ -312,7 +312,7 @@ static struct clk_branch gsbi1_uart_clk
< },
---
> @@ -1246,7 +1246,7 @@ static struct clk_branch gsbi4_qup_clk = {
> .parent_names = (const char *[]){ "gsbi4_qup_src" },
40a41,48
> },
> },
> };
> @@ -1577,6 +1577,7 @@ static struct clk_branch gsbi4_h_clk = {
> .hw.init = &(struct clk_init_data){
> .name = "gsbi4_h_clk",
> .ops = &clk_branch_ops,
> + .flags = CLK_IGNORE_UNUSED,
diff -rb ./033-ARM-qcom-add-SFPB-nodes-to-IPQ806x-dts.patch ../patches-4.9/033-ARM-qcom-add-SFPB-nodes-to-IPQ806x-dts.patch
17c17
< @@ -342,5 +342,16 @@
---
> @@ -329,5 +329,16 @@
diff -rb ./036-ARM-qcom-add-SMEM-device-node-to-IPQ806x-dts.patch ../patches-4.9/036-ARM-qcom-add-SMEM-device-node-to-IPQ806x-dts.patch
26c26
< @@ -354,4 +354,10 @@
---
> @@ -341,4 +341,10 @@
diff -rb ./100-usb-phy-Add-Qualcomm-DWC3-HS-SS-PHY-drivers.patch ../patches-4.9/100-usb-phy-Add-Qualcomm-DWC3-HS-SS-PHY-drivers.patch
3c3
< @@ -489,4 +489,15 @@ config PHY_NS2_PCIE
---
> @@ -489,4 +489,16 @@ config PHY_NS2_PCIE
17a18
> +
21c22
< @@ -60,3 +60,4 @@ obj-$(CONFIG_PHY_PISTACHIO_USB) += phy-
---
> @@ -60,3 +60,4 @@ obj-$(CONFIG_PHY_PISTACHIO_USB) += phy-pistachio-usb.o
diff -rb ./101-ARM-qcom-add-USB-nodes-to-ipq806x-ap148.patch ../patches-4.9/101-ARM-qcom-add-USB-nodes-to-ipq806x-ap148.patch
3,4c3,4
< @@ -93,5 +93,29 @@
< ports-implemented = <0x1>;
---
> @@ -92,5 +92,29 @@
> sata@29000000 {
35c35
< @@ -346,6 +346,88 @@
---
> @@ -333,6 +333,88 @@
Only in ../patches-4.9: 112-ARM-dts-qcom-add-pcie-nodes-to-ipq806x-platforms.patch
Only in ../patches-4.9: 113-ARM-qcom-automatically-select-PCI_DOMAINS-if-PCI-is-.patch
Only in ../patches-4.9: 115-add-pcie-aux-clk-dts.patch
diff -rb ./126-add-rpm-to-ipq8064-dts.patch ../patches-4.9/126-add-rpm-to-ipq8064-dts.patch
10,11c10,11
<
< @@ -102,6 +103,63 @@
---
> #include <dt-bindings/reset/qcom,gcc-ipq806x.h>
> @@ -93,6 +94,63 @@
75c75
< @@ -147,6 +205,12 @@
---
> @@ -165,6 +223,12 @@
diff -rb ./133-ARM-Add-Krait-L2-register-accessor-functions.patch ../patches-4.9/133-ARM-Add-Krait-L2-register-accessor-functions.patch
31c31
< arch/arm/common/Kconfig | 3 ++
---
> arch/arm/common/Kconfig | 3 ++
38a39,40
> diff --git a/arch/arm/common/Kconfig b/arch/arm/common/Kconfig
> index 9353184..aea77fd 100644
50a53,54
> diff --git a/arch/arm/common/Makefile b/arch/arm/common/Makefile
> index 27f23b1..3137e2c 100644
60a65,67
> diff --git a/arch/arm/common/krait-l2-accessors.c b/arch/arm/common/krait-l2-accessors.c
> new file mode 100644
> index 0000000..5d514bb
121a129,131
> diff --git a/arch/arm/include/asm/krait-l2-accessors.h b/arch/arm/include/asm/krait-l2-accessors.h
> new file mode 100644
> index 0000000..48fe552
144a155,156
> --
> cgit v1.1
diff -rb ./134-clk-mux-Split-out-register-accessors-for-reuse.patch ../patches-4.9/134-clk-mux-Split-out-register-accessors-for-reuse.patch
17,19c17,19
< drivers/clk/clk-mux.c | 74 +++++++++++++++++++++++++++-----------------
< include/linux/clk-provider.h | 9 ++++--
< 2 files changed, 53 insertions(+), 30 deletions(-)
---
> drivers/clk/clk-mux.c | 76 ++++++++++++++++++++++++++++----------------
> include/linux/clk-provider.h | 11 +++++--
> 2 files changed, 57 insertions(+), 30 deletions(-)
20a21,22
> diff --git a/drivers/clk/clk-mux.c b/drivers/clk/clk-mux.c
> index 16a3d57..f239131 100644
23c25
< @@ -26,35 +26,24 @@
---
> @@ -26,35 +26,27 @@
27a30,31
> +#define to_clk_mux(_hw) container_of(_hw, struct clk_mux, hw)
> +
31c35
< - struct clk_mux *mux = to_clk_mux(hw);
---
> struct clk_mux *mux = to_clk_mux(hw);
34c38
<
---
> -
44c48
< -
---
>
65c69
< @@ -62,23 +51,52 @@ static u8 clk_mux_get_parent(struct clk_
---
> @@ -62,23 +54,53 @@ static u8 clk_mux_get_parent(struct clk_hw *hw)
88a93
> +
126c131
< @@ -102,14 +120,14 @@ static int clk_mux_set_parent(struct clk
---
> @@ -102,14 +124,14 @@ static int clk_mux_set_parent(struct clk_hw *hw, u8 index)
143c148
< @@ -117,7 +135,7 @@ struct clk_hw *clk_hw_register_mux_table
---
> @@ -117,7 +139,7 @@ struct clk_hw *clk_hw_register_mux_table(struct device *dev, const char *name,
151a157,158
> diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
> index a428aec..9c15cd4 100644
154c161
< @@ -466,7 +466,7 @@ void clk_hw_unregister_divider(struct cl
---
> @@ -466,7 +466,7 @@ void clk_hw_unregister_divider(struct clk_hw *hw);
175c182,188
< @@ -504,7 +509,7 @@ struct clk_hw *clk_hw_register_mux_table
---
> @@ -499,12 +504,12 @@ struct clk *clk_register_mux_table(struct device *dev, const char *name,
> const char * const *parent_names, u8 num_parents,
> unsigned long flags,
> void __iomem *reg, u8 shift, u32 mask,
> - u8 clk_mux_flags, u32 *table, spinlock_t *lock);
> + u8 clk_mux_flags, unsigned int *table, spinlock_t *lock);
> struct clk_hw *clk_hw_register_mux_table(struct device *dev, const char *name,
183a197,198
> --
> cgit v1.1
diff -rb ./135-clk-Avoid-sending-high-rates-to-downstream-clocks-du.patch ../patches-4.9/135-clk-Avoid-sending-high-rates-to-downstream-clocks-du.patch
37,38c37,38
< drivers/clk/clk.c | 34 ++++++++++++++++++++++------------
< 1 file changed, 22 insertions(+), 12 deletions(-)
---
> drivers/clk/clk.c | 22 +++++++++++++++-------
> 1 file changed, 15 insertions(+), 7 deletions(-)
39a40,41
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index 0fb39fe..b08404e 100644
42c44
< @@ -1466,26 +1466,26 @@ static struct clk_core *clk_propagate_ra
---
> @@ -1466,12 +1466,12 @@ static struct clk_core *clk_propagate_rate_change(struct clk_core *core,
57,80c59
<
< - old_rate = core->rate;
< -
< - if (core->new_parent) {
< - parent = core->new_parent;
< - best_parent_rate = core->new_parent->rate;
< - } else if (core->parent) {
< - parent = core->parent;
< - best_parent_rate = core->parent->rate;
< + hlist_for_each_entry(child, &core->children, child_node) {
< + /* Skip children who will be reparented to another clock */
< + if (child->new_parent && child->new_parent != core)
< + continue;
< + if (child->new_rate > child->rate)
< + clk_change_rate(child, core->new_rate);
< }
<
< + old_rate = core->rate;
< +
< if (core->flags & CLK_SET_RATE_UNGATE) {
< unsigned long flags;
<
< @@ -1522,7 +1522,7 @@ static void clk_change_rate(struct clk_c
<
---
> @@ -1523,6 +1523,7 @@ static void clk_change_rate(struct clk_core *core)
83c62
< - core->rate = clk_recalc(core, best_parent_rate);
---
> core->rate = clk_recalc(core, best_parent_rate);
88c67
< @@ -1550,12 +1550,13 @@ static void clk_change_rate(struct clk_c
---
> @@ -1550,12 +1551,13 @@ static void clk_change_rate(struct clk_core *core)
97c76
< /* handle the new child who might not be in core->children yet */
---
> - /* handle the new child who might not be in core->children yet */
99a79
> + /* handle the new child who might not be in clk->children yet */
105c85
< @@ -1563,6 +1564,7 @@ static int clk_core_set_rate_nolock(stru
---
> @@ -1563,6 +1565,7 @@ static int clk_core_set_rate_nolock(struct clk_core *core,
113c93
< @@ -1588,8 +1590,13 @@ static int clk_core_set_rate_nolock(stru
---
> @@ -1588,8 +1591,13 @@ static int clk_core_set_rate_nolock(struct clk_core *core,
127a108,109
> --
> cgit v1.1
diff -rb ./136-clk-Add-safe-switch-hook.patch ../patches-4.9/136-clk-Add-safe-switch-hook.patch
18,20c18,20
< drivers/clk/clk.c | 61 ++++++++++++++++++++++++++++++++++++++------
< include/linux/clk-provider.h | 1 +
< 2 files changed, 54 insertions(+), 8 deletions(-)
---
> drivers/clk/clk.c | 73 +++++++++++++++++++++++++++++++++++++++++---
> include/linux/clk-provider.h | 2 ++
> 2 files changed, 70 insertions(+), 5 deletions(-)
21a22,23
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index b08404e..ece4fa1 100644
24c26
< @@ -51,9 +51,12 @@ struct clk_core {
---
> @@ -51,9 +51,13 @@ struct clk_core {
32a35
> + unsigned long safe_freq;
37c40
< @@ -1310,7 +1313,8 @@ out:
---
> @@ -1310,7 +1314,9 @@ out:
43a47
> + unsigned long safe_freq = 0;
47c51
< @@ -1320,6 +1324,18 @@ static void clk_calc_subtree(struct clk_
---
> @@ -1320,6 +1326,23 @@ static void clk_calc_subtree(struct clk_core *core, unsigned long new_rate,
52c56
< + parent_hw = core->ops->get_safe_parent(core->hw);
---
> + parent_hw = core->ops->get_safe_parent(core->hw, &safe_freq);
57a62,65
> + if (safe_freq)
> + core->safe_freq = safe_freq;
> + else
> + core->safe_freq = 0;
60a69
> + core->safe_freq = 0;
66c75
< @@ -1432,14 +1448,43 @@ static struct clk_core *clk_propagate_ra
---
> @@ -1432,14 +1455,51 @@ static struct clk_core *clk_propagate_rate_change(struct clk_core *core,
79,80c88,97
< + if (core->safe_parent)
< + core->ops->set_parent(core->hw, core->safe_parent_index);
---
> + if (core->safe_parent) {
> + if (core->safe_freq)
> + core->ops->set_rate_and_parent(core->hw,
> + core->safe_freq,
> + core->safe_parent->rate,
> + core->safe_parent_index);
> + else
> + core->ops->set_parent(core->hw,
> + core->safe_parent_index);
> + }
113c130
< @@ -1495,7 +1540,8 @@ clk_change_rate(struct clk_core *core, u
---
> @@ -1495,7 +1555,8 @@ clk_change_rate(struct clk_core *core, unsigned long best_parent_rate)
123,133c140
< @@ -1536,9 +1582,6 @@ clk_change_rate(struct clk_core *core, u
< if (core->flags & CLK_OPS_PARENT_ENABLE)
< clk_core_disable_unprepare(parent);
<
< - if (core->notifier_count && old_rate != core->rate)
< - __clk_notify(core, POST_RATE_CHANGE, old_rate, core->rate);
< -
< if (core->flags & CLK_RECALC_NEW_RATES)
< (void)clk_calc_new_rates(core, core->new_rate);
<
< @@ -1600,6 +1643,8 @@ static int clk_core_set_rate_nolock(stru
---
> @@ -1601,6 +1662,8 @@ static int clk_core_set_rate_nolock(struct clk_core *core,
141a149,150
> diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
> index 9c15cd4..31fb4eb 100644
144c153
< @@ -206,6 +206,7 @@ struct clk_ops {
---
> @@ -206,6 +206,8 @@ struct clk_ops {
148c157,158
< + struct clk_hw *(*get_safe_parent)(struct clk_hw *hw);
---
> + struct clk_hw *(*get_safe_parent)(struct clk_hw *hw,
> + unsigned long *safe_freq);
151a162,163
> --
> cgit v1.1
diff -rb ./137-clk-qcom-Add-support-for-High-Frequency-PLLs-HFPLLs.patch ../patches-4.9/137-clk-qcom-Add-support-for-High-Frequency-PLLs-HFPLLs.patch
20,21d19
< I'd really like to get rid of __clk_hfpll_init_once() if possible...
<
28a27,28
> diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
> index 1c3e222..cde72e1 100644
38a39,41
> diff --git a/drivers/clk/qcom/clk-hfpll.c b/drivers/clk/qcom/clk-hfpll.c
> new file mode 100644
> index 0000000..eacf853
294a298,300
> diff --git a/drivers/clk/qcom/clk-hfpll.h b/drivers/clk/qcom/clk-hfpll.h
> new file mode 100644
> index 0000000..48c18d6
351a358,359
> --
> cgit v1.1
diff -rb ./138-clk-qcom-Add-HFPLL-driver.patch ../patches-4.9/138-clk-qcom-Add-HFPLL-driver.patch
23c23
< .../devicetree/bindings/clock/qcom,hfpll.txt | 40 ++++++++
---
> .../devicetree/bindings/clock/qcom,hfpll.txt | 40 ++++++++
26,27c26,27
< drivers/clk/qcom/hfpll.c | 109 +++++++++++++++++++++
< 4 files changed, 158 insertions(+)
---
> drivers/clk/qcom/hfpll.c | 106 +++++++++++++++++++++
> 4 files changed, 155 insertions(+)
30a31,33
> diff --git a/Documentation/devicetree/bindings/clock/qcom,hfpll.txt b/Documentation/devicetree/bindings/clock/qcom,hfpll.txt
> new file mode 100644
> index 0000000..fee92bb
73a77,78
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index 5fb8d74..b4ac794 100644
76c81
< @@ -179,3 +179,11 @@ config MSM_MMCC_8996
---
> @@ -187,3 +187,11 @@ config MSM_MMCC_8996
87a93,94
> diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
> index cde72e1..cf426be 100644
90c97
< @@ -32,3 +32,4 @@ obj-$(CONFIG_MSM_MMCC_8974) += mmcc-msm8
---
> @@ -33,3 +33,4 @@ obj-$(CONFIG_MSM_MMCC_8974) += mmcc-msm8974.o
94a102,104
> diff --git a/drivers/clk/qcom/hfpll.c b/drivers/clk/qcom/hfpll.c
> new file mode 100644
> index 0000000..9eed519
97c107
< @@ -0,0 +1,109 @@
---
> @@ -0,0 +1,106 @@
157d166
< + struct clk *clk;
190,192c199
< + clk = devm_clk_register_regmap(&pdev->dev, &h->clkr);
< +
< + return PTR_ERR_OR_ZERO(clk);
---
> + return devm_clk_register_regmap(&pdev->dev, &h->clkr);
206a214,215
> --
> cgit v1.1
diff -rb ./139-clk-qcom-Add-IPQ806X-s-HFPLLs.patch ../patches-4.9/139-clk-qcom-Add-IPQ806X-s-HFPLLs.patch
19c19
< drivers/clk/qcom/gcc-ipq806x.c | 83 ++++++++++++++++++++++++++++++++++++++++++
---
> drivers/clk/qcom/gcc-ipq806x.c | 83 ++++++++++++++++++++++++++++++++++++++++++
21a22,23
> diff --git a/drivers/clk/qcom/gcc-ipq806x.c b/drivers/clk/qcom/gcc-ipq806x.c
> index 28eb200..91d8eb6 100644
118c120
< @@ -2800,6 +2880,9 @@ static struct clk_regmap *gcc_ipq806x_cl
---
> @@ -2800,6 +2880,9 @@ static struct clk_regmap *gcc_ipq806x_clks[] = {
127a130,131
> --
> cgit v1.1
diff -rb ./140-clk-qcom-Add-support-for-Krait-clocks.patch ../patches-4.9/140-clk-qcom-Add-support-for-Krait-clocks.patch
23c23
< drivers/clk/qcom/Kconfig | 4 ++
---
> drivers/clk/qcom/Kconfig | 4 ++
25c25
< drivers/clk/qcom/clk-krait.c | 166 +++++++++++++++++++++++++++++++++++++++++++
---
> drivers/clk/qcom/clk-krait.c | 167 +++++++++++++++++++++++++++++++++++++++++++
27c27
< 4 files changed, 220 insertions(+)
---
> 4 files changed, 221 insertions(+)
30a31,32
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index b4ac794..37a4ab6 100644
33c35
< @@ -187,3 +187,7 @@ config QCOM_HFPLL
---
> @@ -195,3 +195,7 @@ config QCOM_HFPLL
40a43,44
> diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
> index cf426be..cd76ceb 100644
50a55,57
> diff --git a/drivers/clk/qcom/clk-krait.c b/drivers/clk/qcom/clk-krait.c
> new file mode 100644
> index 0000000..8427774
220a228,230
> diff --git a/drivers/clk/qcom/clk-krait.h b/drivers/clk/qcom/clk-krait.h
> new file mode 100644
> index 0000000..5d00635
272a283,284
> --
> cgit v1.1
diff -rb ./141-clk-qcom-Add-KPSS-ACC-GCC-driver.patch ../patches-4.9/141-clk-qcom-Add-KPSS-ACC-GCC-driver.patch
23c23
< .../devicetree/bindings/arm/msm/qcom,kpss-acc.txt | 7 ++
---
> .../devicetree/bindings/arm/msm/qcom,kpss-acc.txt | 7 ++
31a32,33
> diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt
> index 1333db9..382a574 100644
51a54,56
> diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-gcc.txt
> new file mode 100644
> index 0000000..d1e12f1
82a88,89
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index 37a4ab6..8179583 100644
85c92
< @@ -188,6 +188,14 @@ config QCOM_HFPLL
---
> @@ -196,6 +196,14 @@ config QCOM_HFPLL
99a107,108
> diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
> index cd76ceb..6240ab4 100644
102,105c111,114
< @@ -10,6 +10,7 @@ clk-qcom-y += clk-branch.o
< clk-qcom-y += clk-regmap-divider.o
< clk-qcom-y += clk-regmap-mux.o
< clk-qcom-$(CONFIG_KRAIT_CLOCKS) += clk-krait.o
---
> @@ -34,4 +34,5 @@ obj-$(CONFIG_MSM_MMCC_8974) += mmcc-msm8974.o
> obj-$(CONFIG_MSM_MMCC_8996) += mmcc-msm8996.o
> obj-$(CONFIG_QCOM_CLK_RPM) += clk-rpm.o
> obj-$(CONFIG_QCOM_CLK_SMD_RPM) += clk-smd-rpm.o
107,109c116,119
< clk-qcom-y += clk-hfpll.o
< clk-qcom-y += reset.o
< clk-qcom-$(CONFIG_QCOM_GDSC) += gdsc.o
---
> obj-$(CONFIG_QCOM_HFPLL) += hfpll.o
> diff --git a/drivers/clk/qcom/kpss-xcc.c b/drivers/clk/qcom/kpss-xcc.c
> new file mode 100644
> index 0000000..abf6bfd
207a218,219
> --
> cgit v1.1
diff -rb ./142-1-clk-qcom-Add-Krait-clock-controller-driver.patch ../patches-4.9/142-1-clk-qcom-Add-Krait-clock-controller-driver.patch
24c24
< .../devicetree/bindings/clock/qcom,krait-cc.txt | 22 ++
---
> .../devicetree/bindings/clock/qcom,krait-cc.txt | 22 ++
31a32,34
> diff --git a/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt b/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt
> new file mode 100644
> index 0000000..874138f
56a60,61
> diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
> index 8179583..ad1a047 100644
59c64
< @@ -196,6 +196,14 @@ config KPSS_XCC
---
> @@ -204,6 +204,14 @@ config KPSS_XCC
73a79,80
> diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
> index 6240ab4..f0bf84f 100644
76,77c83
< @@ -35,3 +35,4 @@ obj-$(CONFIG_MSM_MMCC_8996) += mmcc-msm8
< obj-$(CONFIG_QCOM_CLK_RPM) += clk-rpm.o
---
> @@ -36,3 +36,4 @@ obj-$(CONFIG_QCOM_CLK_RPM) += clk-rpm.o
78a85
> obj-$(CONFIG_KPSS_XCC) += kpss-xcc.o
80a88,90
> diff --git a/drivers/clk/qcom/krait-cc.c b/drivers/clk/qcom/krait-cc.c
> new file mode 100644
> index 0000000..f55b5ec
435a446,447
> --
> cgit v1.1
Only in ../patches-4.9: 142-2-clk-qcom-krait-Remove-CLK_IS_ROOT.patch
diff -rb ./143-cpufreq-Add-module-to-register-cpufreq-on-Krait-CPUs.patch ../patches-4.9/143-cpufreq-Add-module-to-register-cpufreq-on-Krait-CPUs.patch
21c21
< .../devicetree/bindings/arm/msm/qcom,pvs.txt | 38 ++++
---
> .../devicetree/bindings/arm/msm/qcom,pvs.txt | 38 ++++
28a29,31
> diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,pvs.txt b/Documentation/devicetree/bindings/arm/msm/qcom,pvs.txt
> new file mode 100644
> index 0000000..e7cb104
69a73,74
> diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
> index d89b8af..62d5fb1 100644
87a93,94
> diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
> index 0a9b6a09..1bdf86f 100644
90c97
< @@ -62,6 +62,7 @@ obj-$(CONFIG_ARM_MT8173_CPUFREQ) += mt81
---
> @@ -62,6 +62,7 @@ obj-$(CONFIG_ARM_MT8173_CPUFREQ) += mt8173-cpufreq.o
97a105,107
> diff --git a/drivers/cpufreq/qcom-cpufreq.c b/drivers/cpufreq/qcom-cpufreq.c
> new file mode 100644
> index 0000000..c9f86a0
304a315,316
> --
> cgit v1.1
diff -rb ./144-ARM-dts-qcom-Add-necessary-DT-data-for-Krait-cpufreq.patch ../patches-4.9/144-ARM-dts-qcom-Add-necessary-DT-data-for-Krait-cpufreq.patch
3c3
< @@ -23,6 +23,11 @@
---
> @@ -26,6 +26,11 @@
15c15
< @@ -33,12 +38,20 @@
---
> @@ -36,12 +41,20 @@
36c36
< @@ -82,6 +95,46 @@
---
> @@ -73,6 +86,46 @@
83c83
< @@ -198,11 +251,13 @@
---
> @@ -216,11 +269,13 @@
diff -rb ./156-dmaengine-Add-ADM-driver.patch ../patches-4.9/156-dmaengine-Add-ADM-driver.patch
38c38
< @@ -601,4 +601,14 @@ config DMATEST
---
> @@ -558,4 +558,14 @@ config DMATEST
958c958
< @@ -67,6 +67,7 @@ obj-$(CONFIG_TI_DMA_CROSSBAR) += ti-dma-
---
> @@ -65,5 +65,6 @@ obj-$(CONFIG_TI_DMA_CROSSBAR) += ti-dma-
964d963
< obj-y += qcom/
diff -rb ./157-ARM-DT-ipq8064-Add-ADM-device-node.patch ../patches-4.9/157-ARM-DT-ipq8064-Add-ADM-device-node.patch
16,18c16,18
< @@ -547,6 +547,26 @@
< dr_mode = "host";
< };
---
> @@ -721,6 +721,26 @@
>
> status = "disabled";
diff -rb ./161-mtd-nand-Create-a-BBT-flag-to-access-bad-block-markers-in-raw-mode.patch ../patches-4.9/161-mtd-nand-Create-a-BBT-flag-to-access-bad-block-markers-in-raw-mode.patch
41c41
< @@ -414,7 +414,11 @@ static int nand_default_block_markbad(st
---
> @@ -394,7 +394,11 @@ static int nand_default_block_markbad(st
diff -rb ./164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch ../patches-4.9/164-arm-qcom-dts-Add-NAND-controller-node-for-ipq806x.patch
29c29
< @@ -567,6 +567,22 @@
---
> @@ -741,6 +741,22 @@
diff -rb ./165-arm-qcom-dts-Enable-NAND-node-on-IPQ8064-AP148-platform.patch ../patches-4.9/165-arm-qcom-dts-Enable-NAND-node-on-IPQ8064-AP148-platform.patch
57,58c57
< @@ -117,5 +139,19 @@
< usb30@1 {
---
> @@ -126,5 +148,19 @@
59a59
> phy-tx0-term-offset = <7>;
diff -rb ./166-arch-qcom-dts-enable-qcom-smem-on-AP148-NAND.patch ../patches-4.9/166-arch-qcom-dts-enable-qcom-smem-on-AP148-NAND.patch
3c3
< @@ -148,6 +148,8 @@
---
> @@ -157,6 +157,8 @@
diff -rb ./167-ARM-qcom_rpm_fix_support_for_smb208.patch ../patches-4.9/167-ARM-qcom_rpm_fix_support_for_smb208.patch
11c11
< @@ -61,6 +61,7 @@ Regulator nodes are identified by their
---
> @@ -59,6 +59,7 @@ Regulator nodes are identified by their
19,21c19,21
< @@ -171,6 +172,9 @@ pm8018:
< s1, s2, s3, s4, s5, , l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
< l12, l14, lvs1
---
> @@ -156,6 +157,9 @@ pm8921:
> l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch,
> ncp
31c31
< @@ -933,12 +933,21 @@ static const struct rpm_regulator_data r
---
> @@ -869,12 +869,21 @@ static const struct rpm_regulator_data r
diff -rb ./168-ARM-qcom-add-smb208-DT.patch ../patches-4.9/168-ARM-qcom-add-smb208-DT.patch
7c7
< @@ -171,45 +171,37 @@
---
> @@ -162,45 +162,37 @@
Only in ../patches-4.9: 169-1-PM-OPP-HACK-Allow-to-set-regulator-without-opp_list.patch
diff -rb ./169-2-OPP-Support-adjusting-OPP-voltages-at-runtime.patch ../patches-4.9/169-2-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
24,25c24,25
< include/linux/pm_opp.h | 10 ++++++
< 2 files changed, 87 insertions(+)
---
> include/linux/pm_opp.h | 11 +++++++
> 2 files changed, 88 insertions(+)
26a27,28
> diff --git a/drivers/base/power/opp/core.c b/drivers/base/power/opp/core.c
> index a4b15fa1..89d6b4a 100644
29c31
< @@ -1520,6 +1520,83 @@ unlock:
---
> @@ -1521,6 +1521,83 @@ unlock:
33c35
< + * dev_pm_opp_adjust_voltage() - helper to change the voltage of an opp
---
> + * dev_pm_opp_adjust_voltage() - helper to change the voltage of an OPP
53c55
< + struct opp_table *dev_opp;
---
> + struct opp_table *opp_table;
64,67c66,69
< + /* Find the device_opp */
< + dev_opp = _find_opp_table(dev);
< + if (IS_ERR(dev_opp)) {
< + r = PTR_ERR(dev_opp);
---
> + /* Find the opp_table */
> + opp_table = _find_opp_table(dev);
> + if (IS_ERR(opp_table)) {
> + r = PTR_ERR(opp_table);
73c75
< + list_for_each_entry(tmp_opp, &dev_opp->opp_list, node) {
---
> + list_for_each_entry(tmp_opp, &opp_table->opp_list, node) {
95c97
< + call_srcu(&dev_opp->srcu_head.srcu, &opp->rcu_head, _kfree_opp_rcu);
---
> + call_srcu(&opp_table->srcu_head.srcu, &opp->rcu_head, _kfree_opp_rcu);
98c100
< + srcu_notifier_call_chain(&dev_opp->srcu_head, OPP_EVENT_ADJUST_VOLTAGE,
---
> + srcu_notifier_call_chain(&opp_table->srcu_head, OPP_EVENT_ADJUST_VOLTAGE,
112a115,116
> diff --git a/include/linux/pm_opp.h b/include/linux/pm_opp.h
> index bca2615..787adfa 100644
115c119
< @@ -23,6 +23,7 @@ struct opp_table;
---
> @@ -22,6 +22,7 @@ struct device;
123c127
< @@ -53,6 +54,9 @@ int dev_pm_opp_add(struct device *dev, u
---
> @@ -52,6 +53,9 @@ int dev_pm_opp_add(struct device *dev, unsigned long freq,
133c137
< @@ -139,6 +143,12 @@ static inline void dev_pm_opp_remove(str
---
> @@ -138,6 +142,13 @@ static inline void dev_pm_opp_remove(struct device *dev, unsigned long freq)
137,138c141,143
< +static inline int dev_pm_opp_adjust_voltage(struct device *dev,
< + unsigned long freq, unsigned long u_volt)
---
> +static inline int
> +dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq,
> + unsigned long u_volt)
145a151,152
> --
> cgit v1.1
diff -rb ./169-3-OPP-Allow-notifiers-to-call-dev_pm_opp_get_voltage-freq-RCU-free.patch ../patches-4.9/169-3-OPP-Allow-notifiers-to-call-dev_pm_opp_get_voltage-freq-RCU-free.patch
16,17c16,17
< drivers/base/power/opp/core.c | 27 +++++++++++++++------------
< 1 file changed, 15 insertions(+), 12 deletions(-)
---
> drivers/base/power/opp/core.c | 19 ++++++++++---------
> 1 file changed, 10 insertions(+), 9 deletions(-)
18a19,20
> diff --git a/drivers/base/power/opp/core.c b/drivers/base/power/opp/core.c
> index 89d6b4a..9383ec5 100644
33c35
< @@ -72,7 +73,7 @@ struct opp_table *_find_opp_table(struct
---
> @@ -72,7 +73,7 @@ struct opp_table *_find_opp_table(struct device *dev)
42c44
< @@ -106,10 +107,11 @@ unsigned long dev_pm_opp_get_voltage(str
---
> @@ -106,7 +107,7 @@ unsigned long dev_pm_opp_get_voltage(struct dev_pm_opp *opp)
47c49
< + opp_rcu_lockdep_assert(&opp->dev_opp->srcu_head.srcu);
---
> + opp_rcu_lockdep_assert(NULL);
49,57c51,53
< - tmp_opp = rcu_dereference(opp);
< - if (IS_ERR_OR_NULL(tmp_opp))
< + tmp_opp = srcu_dereference_check(opp, &opp->dev_opp->srcu_head.srcu,
< + rcu_read_lock_held());
< + if (IS_ERR_OR_NULL(tmp_opp) || !tmp_opp->available)
< pr_err("%s: Invalid parameters\n", __func__);
< else
< v = tmp_opp->u_volt;
< @@ -138,9 +140,10 @@ unsigned long dev_pm_opp_get_freq(struct
---
> tmp_opp = rcu_dereference(opp);
> if (IS_ERR_OR_NULL(tmp_opp))
> @@ -138,7 +139,7 @@ unsigned long dev_pm_opp_get_freq(struct dev_pm_opp *opp)
62c58
< + opp_rcu_lockdep_assert(&opp->dev_opp->srcu_head.srcu);
---
> + opp_rcu_lockdep_assert(NULL);
64,66c60
< - tmp_opp = rcu_dereference(opp);
< + tmp_opp = srcu_dereference_check(opp, &opp->dev_opp->srcu_head.srcu,
< + rcu_read_lock_held());
---
> tmp_opp = rcu_dereference(opp);
68,70c62
< pr_err("%s: Invalid parameters\n", __func__);
< else
< @@ -172,7 +175,7 @@ bool dev_pm_opp_is_turbo(struct dev_pm_o
---
> @@ -172,7 +173,7 @@ bool dev_pm_opp_is_turbo(struct dev_pm_opp *opp)
75c67
< + opp_rcu_lockdep_assert(&opp->dev_opp->srcu_head.srcu);
---
> + opp_rcu_lockdep_assert(NULL);
79c71
< @@ -300,7 +303,7 @@ struct dev_pm_opp *dev_pm_opp_get_suspen
---
> @@ -300,7 +301,7 @@ struct dev_pm_opp *dev_pm_opp_get_suspend_opp(struct device *dev)
88c80
< @@ -380,7 +383,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_
---
> @@ -380,7 +381,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_exact(struct device *dev,
97c89
< @@ -444,7 +447,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_
---
> @@ -444,7 +445,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_ceil(struct device *dev,
106c98
< @@ -486,7 +489,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_
---
> @@ -486,7 +487,7 @@ struct dev_pm_opp *dev_pm_opp_find_freq_floor(struct device *dev,
114a107,108
> --
> cgit v1.1
Only in ../patches-4.9: 169-4-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-device.patch
Only in ../patches-4.9: 169-5-PM-OPP-Update-the-voltage-tolerance-when-adjusting-the-OPP.patch
Only in ../patches-4.9: 172-cpufreq-dt-Handle-OPP-voltage-adjust-events.patch
Only in ../patches-4.9: 173-cpufreq-dt-Add-L2-frequency-scaling-support.patch
Only in ../patches-4.9: 174-cpufreq-dt-Add-missing-rcu_read_lock-for-find_device_opp.patch
diff -rb ./175-add-regmap-mux-div.patch ../patches-4.9/175-add-regmap-mux-div.patch
22c22
< @@ -9,6 +9,7 @@ clk-qcom-y += clk-rcg2.o
---
> @@ -8,6 +8,7 @@ clk-qcom-y += clk-rcg2.o
Only in ../patches-4.9: 180-clk-qcom-Always-add-factor-clock-for-xo-clocks.patch
diff -rb ./300-arch-arm-force-ZRELADDR-on-arch-qcom.patch ../patches-4.9/300-arch-arm-force-ZRELADDR-on-arch-qcom.patch
36,37c36,37
< @@ -332,7 +332,7 @@ config ARCH_MULTIPLATFORM
< depends on MMU
---
> @@ -324,7 +324,7 @@ config ARCH_MULTIPLATFORM
> select ARCH_WANT_OPTIONAL_GPIOLIB
47c47
< @@ -251,9 +251,11 @@ MACHINE := arch/arm/mach-$(word 1,$(mac
---
> @@ -256,9 +256,11 @@ MACHINE := arch/arm/mach-$(word 1,$(mac
diff -rb ./303-add-saw_l2-and-sns-into-ipq8064-DT.patch ../patches-4.9/303-add-saw_l2-and-sns-into-ipq8064-DT.patch
3c3
< @@ -47,6 +47,7 @@
---
> @@ -50,6 +50,7 @@
11c11
< @@ -259,17 +260,28 @@
---
> @@ -277,17 +278,28 @@
diff -rb ./304-add-cpu-idle-state-into-ipq8064-DT.patch ../patches-4.9/304-add-cpu-idle-state-into-ipq8064-DT.patch
13c13
< @@ -15,7 +15,7 @@
---
> @@ -18,7 +18,7 @@
22c22
< @@ -28,9 +28,10 @@
---
> @@ -31,9 +31,10 @@
34c34
< @@ -42,6 +43,7 @@
---
> @@ -45,6 +46,7 @@
42c42
< @@ -53,6 +55,16 @@
---
> @@ -56,6 +58,16 @@
diff -rb ./305-add-board-clocks-and-rpmcc-into-DT.patch ../patches-4.9/305-add-board-clocks-and-rpmcc-into-DT.patch
4c4
< Subject: [PATCH] ipq806x: add board clocks and rpmcc into DT
---
> Subject: [PATCH] ipq806x: add rpmcc into DT
8,9c8,9
< arch/arm/boot/dts/qcom-ipq8064.dtsi | 17 +++++++++++++++++
< 1 file changed, 17 insertions(+)
---
> arch/arm/boot/dts/qcom-ipq8064.dtsi | 5 +++++
> 1 file changed, 5 insertions(+)
13c13
< @@ -184,6 +184,11 @@
---
> @@ -175,6 +187,11 @@
diff -rb ./306-add-RPM-msg-RAM-into-DT.patch ../patches-4.9/306-add-RPM-msg-RAM-into-DT.patch
13c13
< @@ -181,6 +181,9 @@
---
> @@ -184,6 +184,9 @@
diff -rb ./307-gcc-Added-the-enable-regs-and-mask-for-PRNG.patch ../patches-4.9/307-gcc-Added-the-enable-regs-and-mask-for-PRNG.patch
17c17
< @@ -1233,6 +1233,8 @@ static struct clk_rcg prng_src = {
---
> @@ -1240,6 +1240,8 @@ static struct clk_rcg prng_src = {
diff -rb ./309-clk-gcc-add-tsens-child-node.patch ../patches-4.9/309-clk-gcc-add-tsens-child-node.patch
17c17
< @@ -3072,6 +3072,7 @@ MODULE_DEVICE_TABLE(of, gcc_ipq806x_matc
---
> @@ -3109,6 +3109,7 @@ MODULE_DEVICE_TABLE(of, gcc_ipq806x_matc
25c25
< @@ -3101,6 +3102,13 @@ static int gcc_ipq806x_probe(struct plat
---
> @@ -3138,6 +3139,13 @@ static int gcc_ipq806x_probe(struct plat
diff -rb ./310-add-necessary-thermal-data.patch ../patches-4.9/310-add-necessary-thermal-data.patch
3c3
< @@ -28,6 +28,9 @@
---
> @@ -31,6 +31,9 @@
13c13
< @@ -43,6 +46,9 @@
---
> @@ -46,6 +49,9 @@
23c23
< @@ -67,6 +73,92 @@
---
> @@ -70,6 +76,92 @@
116c116
< @@ -169,6 +261,21 @@
---
> @@ -172,6 +264,21 @@
138c138
< @@ -469,8 +576,12 @@
---
> @@ -499,8 +606,12 @@
diff -rb ./315-disable-usb3-phy-suspend.patch ../patches-4.9/315-disable-usb3-phy-suspend.patch
3c3
< @@ -648,6 +648,8 @@
---
> @@ -678,6 +678,8 @@
12c12
< @@ -659,6 +661,7 @@
---
> @@ -689,6 +691,7 @@
20c20
< @@ -669,6 +672,8 @@
---
> @@ -699,6 +702,8 @@
29c29
< @@ -680,6 +685,7 @@
---
> @@ -710,6 +715,7 @@
diff -rb ./316-dt-add-prng-support.patch ../patches-4.9/316-dt-add-prng-support.patch
3c3
< @@ -333,6 +333,13 @@
---
> @@ -336,6 +336,13 @@
diff -rb ./707-ARM-dts-qcom-add-mdio-nodes-to-ap148-db149.patch ../patches-4.9/707-ARM-dts-qcom-add-mdio-nodes-to-ap148-db149.patch
41c41
< @@ -151,6 +161,34 @@
---
> @@ -160,6 +170,34 @@
102,103c102,103
< @@ -128,5 +138,44 @@
< usb30@1 {
---
> @@ -140,5 +150,44 @@
> pcie2: pci@1b900000 {
diff -rb ./708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch ../patches-4.9/708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch
32c32
< @@ -189,6 +199,31 @@
---
> @@ -198,6 +208,31 @@
81c81
< @@ -177,5 +185,40 @@
---
> @@ -189,5 +197,40 @@
124c124
< @@ -731,6 +731,92 @@
---
> @@ -917,6 +917,92 @@
Only in ../patches-4.9: 711-stmmac-fix-ipq806x-DMA-configuration.patch
diff -rb ./800-devicetree.patch ../patches-4.9/800-devicetree.patch
15c15,16
< @@ -618,7 +618,14 @@ dtb-$(CONFIG_ARCH_QCOM) += \
---
> @@ -506,7 +506,14 @@ dtb-$(CONFIG_ARCH_QCOM) += \
> qcom-apq8084-ifc6540.dtb \
17d17
< qcom-ipq4019-ap.dk01.1-c1.dtb \
29c29
< qcom-msm8974-lge-nexus5-hammerhead.dtb \
---
> qcom-msm8974-sony-xperia-honami.dtb
diff -rb ./801-override-compiler-flags.patch ../patches-4.9/801-override-compiler-flags.patch
3c3
< @@ -65,7 +65,7 @@ KBUILD_CFLAGS += $(call cc-option,-fno-i
---
> @@ -72,7 +72,7 @@ KBUILD_CFLAGS += $(call cc-option,-fno-i
diff -rb ./802-GPIO-add-named-gpio-exports.patch ../patches-4.9/802-GPIO-add-named-gpio-exports.patch
25c25
< @@ -538,3 +540,69 @@ void of_gpiochip_remove(struct gpio_chip
---
> @@ -450,3 +452,69 @@ void of_gpiochip_remove(struct gpio_chip
105,106c105,106
< struct gpio_device *gdev;
< @@ -606,6 +606,8 @@ int gpiod_export(struct gpio_desc *desc,
---
> struct gpiod_data *data;
> @@ -604,6 +604,8 @@ int gpiod_export(struct gpio_desc *desc,
113c113
< dev = device_create_with_groups(&gpio_class, &gdev->dev,
---
> dev = device_create_with_groups(&gpio_class, chip->dev,
115c115
< @@ -627,6 +629,12 @@ err_unlock:
---
> @@ -625,6 +627,12 @@ err_unlock:
130c130
< @@ -126,6 +126,12 @@ static inline int gpio_export(unsigned g
---
> @@ -122,6 +122,12 @@ static inline int gpio_export(unsigned g
diff -rb ./996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch ../patches-4.9/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch
21c21
< @@ -1949,6 +1949,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
---
> @@ -1928,6 +1928,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
167c167
< @@ -538,6 +542,18 @@ asmlinkage __visible void __init start_k
---
> @@ -560,6 +564,18 @@ asmlinkage __visible void __init start_k
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment