ipq806x: refresh patches for kernel 5.4
authorAnsuel Smith <ansuelsmth@gmail.com>
Sun, 26 Jan 2020 03:27:46 +0000 (04:27 +0100)
committerPetr Štetiar <ynezz@true.cz>
Tue, 3 Mar 2020 22:38:23 +0000 (23:38 +0100)
Refresh patches and minor changes for new kernel support

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
28 files changed:
target/linux/ipq806x/patches-5.4/0002-dmaengine-Add-ADM-driver.patch
target/linux/ipq806x/patches-5.4/0030-clk-Disable-i2c-device-on-gsbi4.patch
target/linux/ipq806x/patches-5.4/0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch
target/linux/ipq806x/patches-5.4/0032-phy-add-qcom-dwc3-phy.patch
target/linux/ipq806x/patches-5.4/0033-ARM-qcom-automatically-select-PCI_DOMAINS-if-PCI-is-.patch
target/linux/ipq806x/patches-5.4/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
target/linux/ipq806x/patches-5.4/0051-PM-OPP-Add-a-helper-to-get-an-opp-regulator-for-devi.patch
target/linux/ipq806x/patches-5.4/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
target/linux/ipq806x/patches-5.4/0053-regulator-add-smb208-support.patch
target/linux/ipq806x/patches-5.4/0054-cpufreq-dt-Handle-OPP-voltage-adjust-events.patch
target/linux/ipq806x/patches-5.4/0056-cpufreq-dt-Add-missing-rcu-locks.patch
target/linux/ipq806x/patches-5.4/0057-add-fab-scaling-support-with-cpufreq.patch
target/linux/ipq806x/patches-5.4/0059-ARM-cpuidle-Add-cpuidle-support-for-QCOM-cpus.patch
target/linux/ipq806x/patches-5.4/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch
target/linux/ipq806x/patches-5.4/0061-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch
target/linux/ipq806x/patches-5.4/0062-ipq806x-gcc-Added-the-enable-regs-and-mask-for-PRNG.patch
target/linux/ipq806x/patches-5.4/0064-clk-clk-rpm-fixes.patch
target/linux/ipq806x/patches-5.4/0065-arm-override-compiler-flags.patch
target/linux/ipq806x/patches-5.4/0067-generic-Mangle-bootloader-s-kernel-arguments.patch
target/linux/ipq806x/patches-5.4/0069-arm-boot-add-dts-files.patch
target/linux/ipq806x/patches-5.4/0070-qcom-spm-fix-probe-order.patch
target/linux/ipq806x/patches-5.4/0071-6-PCI-qcom-Force-GEN1-support.patch
target/linux/ipq806x/patches-5.4/0071-7-pcie-Set-PCIE-MRRS-and-MPS-to-256B.patch
target/linux/ipq806x/patches-5.4/0072-add-ipq806x-with-no-clocks.patch
target/linux/ipq806x/patches-5.4/0073-pinctrl-qom-use-scm_call-to-route-GPIO-irq-to-Apps.patch
target/linux/ipq806x/patches-5.4/0075-ipq8064-pinctrl-Fixed-missing-RGMII-pincontrol-defin.patch
target/linux/ipq806x/patches-5.4/080-ARM-dts-qcom-add-gpio-ranges-property.patch
target/linux/ipq806x/patches-5.4/850-soc-add-qualcomm-syscon.patch

index fedb8ed79824fc9aea23b64bb1063f7aaf82012c..aa7d2e791ea36b3e1cd74410ab5b08f6cbdd64cd 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Thomas Pedersen <twp@codeaurora.org>
 
 --- a/drivers/dma/qcom/Kconfig
 +++ b/drivers/dma/qcom/Kconfig
 
 --- a/drivers/dma/qcom/Kconfig
 +++ b/drivers/dma/qcom/Kconfig
-@@ -27,3 +27,13 @@ config QCOM_HIDMA
+@@ -28,3 +28,13 @@ config QCOM_HIDMA
          (user to kernel, kernel to kernel, etc.).  It only supports
          memcpy interface. The core is not intended for general
          purpose slave DMA.
          (user to kernel, kernel to kernel, etc.).  It only supports
          memcpy interface. The core is not intended for general
          purpose slave DMA.
index b2a6afe0dd4f709e39939090786b1998bcfb86f8..a5fb714e6c46e95a728a606f547856732933a38a 100644 (file)
@@ -12,7 +12,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
 
 --- a/drivers/clk/qcom/gcc-ipq806x.c
 +++ b/drivers/clk/qcom/gcc-ipq806x.c
 
 --- a/drivers/clk/qcom/gcc-ipq806x.c
 +++ b/drivers/clk/qcom/gcc-ipq806x.c
-@@ -294,7 +294,7 @@ static struct clk_rcg gsbi1_uart_src = {
+@@ -365,7 +365,7 @@ static struct clk_rcg gsbi1_uart_src = {
                        .parent_names = gcc_pxo_pll8,
                        .num_parents = 2,
                        .ops = &clk_rcg_ops,
                        .parent_names = gcc_pxo_pll8,
                        .num_parents = 2,
                        .ops = &clk_rcg_ops,
@@ -21,7 +21,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
                },
        },
  };
                },
        },
  };
-@@ -312,7 +312,7 @@ static struct clk_branch gsbi1_uart_clk
+@@ -383,7 +383,7 @@ static struct clk_branch gsbi1_uart_clk
                        },
                        .num_parents = 1,
                        .ops = &clk_branch_ops,
                        },
                        .num_parents = 1,
                        .ops = &clk_branch_ops,
@@ -30,7 +30,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
                },
        },
  };
                },
        },
  };
-@@ -890,6 +890,7 @@ static struct clk_branch gsbi1_h_clk = {
+@@ -961,6 +961,7 @@ static struct clk_branch gsbi1_h_clk = {
                .hw.init = &(struct clk_init_data){
                        .name = "gsbi1_h_clk",
                        .ops = &clk_branch_ops,
                .hw.init = &(struct clk_init_data){
                        .name = "gsbi1_h_clk",
                        .ops = &clk_branch_ops,
index a7e95513fdc2840876f8d06a1715d75c4ea3bc54..e19ad5277e52ce61ca1e4b4663763874d299857e 100644 (file)
@@ -10,17 +10,17 @@ SMEM and use it to register an MTD layout according to its content.
 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
 Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
 ---
 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
 Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
 ---
- drivers/mtd/Kconfig          |   7 ++
- drivers/mtd/Makefile         |   1 +
- drivers/mtd/qcom_smem_part.c | 228 +++++++++++++++++++++++++++++++++++++++++++
+ drivers/mtd/parsers/Kconfig          |   7 ++
+ drivers/mtd/parsers/Makefile         |   1 +
+ drivers/mtd/parsers/qcom_smem_part.c | 228 +++++++++++++++++++++++++++++++++++++++++++
  3 files changed, 236 insertions(+)
  3 files changed, 236 insertions(+)
- create mode 100644 drivers/mtd/qcom_smem_part.c
+ create mode 100644 drivers/mtd/parsers/qcom_smem_part.c
 
 
---- a/drivers/mtd/Kconfig
-+++ b/drivers/mtd/Kconfig
-@@ -193,6 +193,13 @@ config MTD_MYLOADER_PARTS
-         You will still need the parsing functions to be called by the driver
-         for your particular device. It won't happen automatically.
+--- a/drivers/mtd/parsers/Kconfig
++++ b/drivers/mtd/parsers/Kconfig
+@@ -20,6 +20,13 @@ config MTD_BCM63XX_PARTS
+         This provides partition parsing for BCM63xx devices with CFE
+         bootloaders.
  
 +config MTD_QCOM_SMEM_PARTS
 +      tristate "QCOM SMEM partitioning support"
  
 +config MTD_QCOM_SMEM_PARTS
 +      tristate "QCOM SMEM partitioning support"
@@ -29,11 +29,11 @@ Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
 +        This provides partitions parser for QCOM devices using SMEM
 +        such as IPQ806x.
 +
 +        This provides partitions parser for QCOM devices using SMEM
 +        such as IPQ806x.
 +
- comment "User Modules And Translation Layers"
- #
+ config MTD_CMDLINE_PARTS
+       tristate "Command line partition table parsing"
+       depends on MTD
 --- /dev/null
 --- /dev/null
-+++ b/drivers/mtd/qcom_smem_part.c
++++ b/drivers/mtd/parsers/qcom_smem_part.c
 @@ -0,0 +1,235 @@
 +/*
 + * Copyright (c) 2015, The Linux Foundation. All rights reserved.
 @@ -0,0 +1,235 @@
 +/*
 + * Copyright (c) 2015, The Linux Foundation. All rights reserved.
@@ -149,7 +149,7 @@ Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-+static int of_dev_node_match(struct device *dev, void *data)
++static int of_dev_node_match(struct device *dev, const void *data)
 +{
 +      return dev->of_node == data;
 +}
 +{
 +      return dev->of_node == data;
 +}
@@ -270,13 +270,13 @@ Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Mathieu Olivari <mathieu@codeaurora.org>");
 +MODULE_DESCRIPTION("Parsing code for SMEM based partition tables");
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Mathieu Olivari <mathieu@codeaurora.org>");
 +MODULE_DESCRIPTION("Parsing code for SMEM based partition tables");
---- a/drivers/mtd/Makefile
-+++ b/drivers/mtd/Makefile
-@@ -17,6 +17,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)  += ar7part.o
- obj-$(CONFIG_MTD_BCM63XX_PARTS)       += bcm63xxpart.o
- obj-$(CONFIG_MTD_BCM47XX_PARTS)       += bcm47xxpart.o
- obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o
+--- a/drivers/mtd/parsers/Makefile
++++ b/drivers/mtd/parsers/Makefile
+@@ -3,6 +3,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)            += ar7part.
+ obj-$(CONFIG_MTD_BCM47XX_PARTS)               += bcm47xxpart.o
+ obj-$(CONFIG_MTD_BCM63XX_PARTS)               += bcm63xxpart.o
+ obj-$(CONFIG_MTD_CMDLINE_PARTS)               += cmdlinepart.o
 +obj-$(CONFIG_MTD_QCOM_SMEM_PARTS) += qcom_smem_part.o
 +obj-$(CONFIG_MTD_QCOM_SMEM_PARTS) += qcom_smem_part.o
- obj-y                         += parsers/
- # 'Users' - code which presents functionality to userspace.
+ obj-$(CONFIG_MTD_OF_PARTS)            += ofpart.o
+ obj-$(CONFIG_MTD_PARSER_IMAGETAG)     += parser_imagetag.o
+ obj-$(CONFIG_MTD_AFS_PARTS)           += afs.o
index 0de0878f861cab880b0cfe8dd480d550364c72da..3eabba0ab46d0aeb12581724dc1e9d00e2fa5142 100644 (file)
@@ -8,7 +8,7 @@ Signed-off-by: Andy Gross <agross@codeaurora.org>
 
 --- a/drivers/phy/qualcomm/Kconfig
 +++ b/drivers/phy/qualcomm/Kconfig
 
 --- a/drivers/phy/qualcomm/Kconfig
 +++ b/drivers/phy/qualcomm/Kconfig
-@@ -65,3 +65,15 @@ config PHY_QCOM_USB_HSIC
+@@ -91,3 +91,15 @@ config PHY_QCOM_USB_HSIC
        select GENERIC_PHY
        help
          Support for the USB HSIC ULPI compliant PHY on QCOM chipsets.
        select GENERIC_PHY
        help
          Support for the USB HSIC ULPI compliant PHY on QCOM chipsets.
@@ -26,8 +26,8 @@ Signed-off-by: Andy Gross <agross@codeaurora.org>
 +
 --- a/drivers/phy/qualcomm/Makefile
 +++ b/drivers/phy/qualcomm/Makefile
 +
 --- a/drivers/phy/qualcomm/Makefile
 +++ b/drivers/phy/qualcomm/Makefile
-@@ -9,3 +9,4 @@ obj-$(CONFIG_PHY_QCOM_UFS)             += phy-qcom-
- obj-$(CONFIG_PHY_QCOM_UFS)            += phy-qcom-ufs-qmp-20nm.o
+@@ -10,3 +10,4 @@ obj-$(CONFIG_PHY_QCOM_UFS_14NM)              += phy-
+ obj-$(CONFIG_PHY_QCOM_UFS_20NM)               += phy-qcom-ufs-qmp-20nm.o
  obj-$(CONFIG_PHY_QCOM_USB_HS)                 += phy-qcom-usb-hs.o
  obj-$(CONFIG_PHY_QCOM_USB_HSIC)       += phy-qcom-usb-hsic.o
 +obj-$(CONFIG_PHY_QCOM_DWC3)           += phy-qcom-dwc3.o
  obj-$(CONFIG_PHY_QCOM_USB_HS)                 += phy-qcom-usb-hs.o
  obj-$(CONFIG_PHY_QCOM_USB_HSIC)       += phy-qcom-usb-hsic.o
 +obj-$(CONFIG_PHY_QCOM_DWC3)           += phy-qcom-dwc3.o
index a6c7953aaa191808ba6cdc4986b8ae75c7c2ded0..a12aa721e2d30dfa6912abbc5ed0c8eea22ce981 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
 
 --- a/arch/arm/mach-qcom/Kconfig
 +++ b/arch/arm/mach-qcom/Kconfig
 
 --- a/arch/arm/mach-qcom/Kconfig
 +++ b/arch/arm/mach-qcom/Kconfig
-@@ -6,6 +6,7 @@ menuconfig ARCH_QCOM
+@@ -7,6 +7,7 @@ menuconfig ARCH_QCOM
        select ARM_AMBA
        select PINCTRL
        select QCOM_SCM if SMP
        select ARM_AMBA
        select PINCTRL
        select QCOM_SCM if SMP
index bb82251bfd8fde40de62b9935e1439853dafc7d2..efbc34dbe0816d1a009cc0916fd42aa6ad5e2ac5 100644 (file)
@@ -39,7 +39,7 @@ Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
-@@ -1623,6 +1623,75 @@ put_table:
+@@ -2103,6 +2103,75 @@ put_table:
  }
  
  /**
  }
  
  /**
@@ -117,7 +117,7 @@ Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
   * @freq:     OPP frequency to enable
 --- a/include/linux/pm_opp.h
 +++ b/include/linux/pm_opp.h
   * @freq:     OPP frequency to enable
 --- a/include/linux/pm_opp.h
 +++ b/include/linux/pm_opp.h
-@@ -25,6 +25,7 @@ struct opp_table;
+@@ -22,6 +22,7 @@ struct opp_table;
  
  enum dev_pm_opp_event {
        OPP_EVENT_ADD, OPP_EVENT_REMOVE, OPP_EVENT_ENABLE, OPP_EVENT_DISABLE,
  
  enum dev_pm_opp_event {
        OPP_EVENT_ADD, OPP_EVENT_REMOVE, OPP_EVENT_ENABLE, OPP_EVENT_DISABLE,
@@ -125,9 +125,9 @@ Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
  };
  
  /**
  };
  
  /**
-@@ -108,6 +109,10 @@ int dev_pm_opp_add(struct device *dev, u
-                  unsigned long u_volt);
+@@ -113,6 +114,10 @@ int dev_pm_opp_add(struct device *dev, u
  void dev_pm_opp_remove(struct device *dev, unsigned long freq);
  void dev_pm_opp_remove(struct device *dev, unsigned long freq);
+ void dev_pm_opp_remove_all_dynamic(struct device *dev);
  
 +int dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq,
 +                            unsigned long u_volt, unsigned long u_volt_min,
  
 +int dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq,
 +                            unsigned long u_volt, unsigned long u_volt_min,
@@ -136,7 +136,7 @@ Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
  int dev_pm_opp_enable(struct device *dev, unsigned long freq);
  
  int dev_pm_opp_disable(struct device *dev, unsigned long freq);
  int dev_pm_opp_enable(struct device *dev, unsigned long freq);
  
  int dev_pm_opp_disable(struct device *dev, unsigned long freq);
-@@ -208,6 +213,14 @@ static inline void dev_pm_opp_remove(str
+@@ -242,6 +247,14 @@ static inline void dev_pm_opp_remove_all
  {
  }
  
  {
  }
  
index 4312db905a50c4e355a6fb1ca573f45c2c886ed1..35fe45fca723dec232b0744b992ab621f158251a 100644 (file)
@@ -12,7 +12,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
-@@ -125,6 +125,27 @@ unsigned long dev_pm_opp_get_freq(struct
+@@ -127,6 +127,27 @@ unsigned long dev_pm_opp_get_freq(struct
  }
  EXPORT_SYMBOL_GPL(dev_pm_opp_get_freq);
  
  }
  EXPORT_SYMBOL_GPL(dev_pm_opp_get_freq);
  
@@ -38,15 +38,15 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 +EXPORT_SYMBOL_GPL(dev_pm_opp_get_regulator);
 +
  /**
 +EXPORT_SYMBOL_GPL(dev_pm_opp_get_regulator);
 +
  /**
-  * dev_pm_opp_is_turbo() - Returns if opp is turbo OPP or not
-  * @opp: opp for which turbo mode is being verified
+  * dev_pm_opp_get_level() - Gets the level corresponding to an available opp
+  * @opp:      opp for which level value has to be returned for
 --- a/include/linux/pm_opp.h
 +++ b/include/linux/pm_opp.h
 --- a/include/linux/pm_opp.h
 +++ b/include/linux/pm_opp.h
-@@ -85,6 +85,7 @@ void dev_pm_opp_put_opp_table(struct opp
+@@ -83,6 +83,7 @@ void dev_pm_opp_put_opp_table(struct opp
  unsigned long dev_pm_opp_get_voltage(struct dev_pm_opp *opp);
  
  unsigned long dev_pm_opp_get_freq(struct dev_pm_opp *opp);
 +struct regulator *dev_pm_opp_get_regulator(struct device *dev);
  
  unsigned long dev_pm_opp_get_voltage(struct dev_pm_opp *opp);
  
  unsigned long dev_pm_opp_get_freq(struct dev_pm_opp *opp);
 +struct regulator *dev_pm_opp_get_regulator(struct device *dev);
  
bool dev_pm_opp_is_turbo(struct dev_pm_opp *opp);
unsigned int dev_pm_opp_get_level(struct dev_pm_opp *opp);
  
  
index 8ba2369dddeca5267fd32d502bb677c874976bee..433889970a5e4ff3efe6c0264f8cee1288503848 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
 
 --- a/drivers/opp/core.c
 +++ b/drivers/opp/core.c
-@@ -1663,6 +1663,7 @@ int dev_pm_opp_adjust_voltage(struct dev
+@@ -2143,6 +2143,7 @@ int dev_pm_opp_adjust_voltage(struct dev
        struct opp_table *opp_table;
        struct dev_pm_opp *tmp_opp, *opp = ERR_PTR(-ENODEV);
        int r = 0;
        struct opp_table *opp_table;
        struct dev_pm_opp *tmp_opp, *opp = ERR_PTR(-ENODEV);
        int r = 0;
@@ -25,7 +25,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
  
        /* Find the opp_table */
        opp_table = _find_opp_table(dev);
  
        /* Find the opp_table */
        opp_table = _find_opp_table(dev);
-@@ -1692,8 +1693,17 @@ int dev_pm_opp_adjust_voltage(struct dev
+@@ -2172,8 +2173,17 @@ int dev_pm_opp_adjust_voltage(struct dev
                goto adjust_unlock;
  
        opp->supplies->u_volt = u_volt;
                goto adjust_unlock;
  
        opp->supplies->u_volt = u_volt;
index 0d2862c6094b01c3f57a6ca2a81deaf18b24faaf..058b30379803cf82b497a8b8dec9034922aefa9e 100644 (file)
@@ -31,7 +31,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  
 --- a/drivers/regulator/qcom_rpm-regulator.c
 +++ b/drivers/regulator/qcom_rpm-regulator.c
  
 --- a/drivers/regulator/qcom_rpm-regulator.c
 +++ b/drivers/regulator/qcom_rpm-regulator.c
-@@ -933,12 +933,21 @@ static const struct rpm_regulator_data r
+@@ -925,12 +925,21 @@ static const struct rpm_regulator_data r
        { }
  };
  
        { }
  };
  
index 9620891194efa9473c78001eebb91341c24c100c..2e9c101d945eace1a15eb8fbb3dfa1cb90846a54 100644 (file)
@@ -25,9 +25,9 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
 
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
-@@ -32,6 +32,9 @@ struct private_data {
+@@ -27,6 +27,9 @@ struct private_data {
+       struct opp_table *opp_table;
        struct device *cpu_dev;
        struct device *cpu_dev;
-       struct thermal_cooling_device *cdev;
        const char *reg_name;
 +      struct notifier_block opp_nb;
 +      struct mutex lock;
        const char *reg_name;
 +      struct notifier_block opp_nb;
 +      struct mutex lock;
@@ -35,7 +35,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
        bool have_static_opps;
  };
  
        bool have_static_opps;
  };
  
-@@ -47,12 +50,15 @@ static int set_target(struct cpufreq_pol
+@@ -42,12 +45,15 @@ static int set_target(struct cpufreq_pol
        unsigned long freq = policy->freq_table[index].frequency;
        int ret;
  
        unsigned long freq = policy->freq_table[index].frequency;
        int ret;
  
@@ -51,7 +51,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
  
        return ret;
  }
  
        return ret;
  }
-@@ -95,6 +101,39 @@ node_put:
+@@ -90,6 +96,39 @@ node_put:
        return name;
  }
  
        return name;
  }
  
@@ -91,7 +91,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
  static int resources_available(void)
  {
        struct device *cpu_dev;
  static int resources_available(void)
  {
        struct device *cpu_dev;
-@@ -251,10 +290,14 @@ static int cpufreq_init(struct cpufreq_p
+@@ -246,10 +285,14 @@ static int cpufreq_init(struct cpufreq_p
                                __func__, ret);
        }
  
                                __func__, ret);
        }
  
@@ -107,7 +107,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
        }
  
        priv->cpu_dev = cpu_dev;
        }
  
        priv->cpu_dev = cpu_dev;
-@@ -284,6 +327,8 @@ static int cpufreq_init(struct cpufreq_p
+@@ -281,6 +324,8 @@ static int cpufreq_init(struct cpufreq_p
  
  out_free_cpufreq_table:
        dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table);
  
  out_free_cpufreq_table:
        dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table);
index ef03ba4de851e23239b0fcc5fc2253322339dd21..9b85839e1962edb765e16ca4aa83cd95867c2b1a 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
 
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
-@@ -173,8 +173,10 @@ static int opp_notifier(struct notifier_
+@@ -178,8 +178,10 @@ static int opp_notifier(struct notifier_
                        ret = PTR_ERR(cpu_reg);
                        goto out;
                }
                        ret = PTR_ERR(cpu_reg);
                        goto out;
                }
index dc65230f479808b01156dad6c08491d65093234f..441500df79b5faf4df52eac93fc0802485f97dd3 100644 (file)
 +              drv_data->cpu_freq_threshold = 1000000000;
 +      }
 +
 +              drv_data->cpu_freq_threshold = 1000000000;
 +      }
 +
-+      drv_data->apps_fab_clk = devm_clk_get(&pdev->dev, "apps-fab-clk");
-+      apps_fab_clk = drv_data->apps_fab_clk;
++      apps_fab_clk = devm_clk_get(&pdev->dev, "apps-fab-clk");
 +      ret = PTR_ERR_OR_ZERO(apps_fab_clk);
 +      if (ret) {
 +              /*
 +      ret = PTR_ERR_OR_ZERO(apps_fab_clk);
 +      if (ret) {
 +              /*
 +              goto err;
 +      }
 +
 +              goto err;
 +      }
 +
-+      clk_set_rate(apps_fab_clk, drv_data->fab_freq_high);
 +      clk_prepare_enable(apps_fab_clk);
 +      clk_prepare_enable(apps_fab_clk);
++      clk_set_rate(apps_fab_clk, drv_data->fab_freq_high);
++      drv_data->apps_fab_clk = apps_fab_clk;
 +
 +
-+      drv_data->ddr_fab_clk = devm_clk_get(&pdev->dev, "ddr-fab-clk");
-+      ddr_fab_clk = drv_data->ddr_fab_clk;
++      ddr_fab_clk = devm_clk_get(&pdev->dev, "ddr-fab-clk");
 +      ret = PTR_ERR_OR_ZERO(ddr_fab_clk);
 +      if (ret) {
 +              /*
 +      ret = PTR_ERR_OR_ZERO(ddr_fab_clk);
 +      if (ret) {
 +              /*
 +              goto err;
 +      }
 +
 +              goto err;
 +      }
 +
-+      clk_set_rate(ddr_fab_clk, drv_data->fab_freq_high);
 +      clk_prepare_enable(ddr_fab_clk);
 +      clk_prepare_enable(ddr_fab_clk);
++      clk_set_rate(ddr_fab_clk, drv_data->fab_freq_high);
++      drv_data->ddr_fab_clk = ddr_fab_clk;
 +
 +      return 0;
 +err:
 +
 +      return 0;
 +err:
 +#endif
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
 +#endif
 --- a/drivers/cpufreq/cpufreq-dt.c
 +++ b/drivers/cpufreq/cpufreq-dt.c
-@@ -24,6 +24,7 @@
+@@ -20,6 +20,7 @@
  #include <linux/regulator/consumer.h>
  #include <linux/slab.h>
  #include <linux/thermal.h>
  #include <linux/regulator/consumer.h>
  #include <linux/slab.h>
  #include <linux/thermal.h>
  
  #include "cpufreq-dt.h"
  
  
  #include "cpufreq-dt.h"
  
-@@ -106,6 +107,13 @@ static int set_target(struct cpufreq_pol
+@@ -111,6 +112,13 @@ static int set_target(struct cpufreq_pol
                                        }
                                }
                        }
                                        }
                                }
                        }
index 5bd58c813758c73d7c92482b0ff09cd3fe6ba459..7d6e3f16055443932ec367c7221015fc3d867391 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
 
 --- a/drivers/cpuidle/Kconfig.arm
 +++ b/drivers/cpuidle/Kconfig.arm
 
 --- a/drivers/cpuidle/Kconfig.arm
 +++ b/drivers/cpuidle/Kconfig.arm
-@@ -75,3 +75,10 @@ config ARM_MVEBU_V7_CPUIDLE
+@@ -86,3 +86,10 @@ config ARM_MVEBU_V7_CPUIDLE
        depends on ARCH_MVEBU && !ARM64
        help
          Select this to enable cpuidle on Armada 370, 38x and XP processors.
        depends on ARCH_MVEBU && !ARM64
        help
          Select this to enable cpuidle on Armada 370, 38x and XP processors.
index 543f18ce4de934cf14af75e32d3dfb4152d26c23..d3b39ac3e3addf06774ab893cc76d9e97a03c7fe 100644 (file)
@@ -33,7 +33,7 @@ Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -331,7 +331,7 @@ config ARCH_MULTIPLATFORM
+@@ -318,7 +318,7 @@ config ARCH_MULTIPLATFORM
        depends on MMU
        select ARM_HAS_SG_CHAIN
        select ARM_PATCH_PHYS_VIRT
        depends on MMU
        select ARM_HAS_SG_CHAIN
        select ARM_PATCH_PHYS_VIRT
@@ -44,7 +44,7 @@ Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
        select GENERIC_CLOCKEVENTS
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
        select GENERIC_CLOCKEVENTS
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
-@@ -255,9 +255,11 @@ MACHINE  := arch/arm/mach-$(word 1,$(mac
+@@ -258,9 +258,11 @@ MACHINE  := arch/arm/mach-$(word 1,$(mac
  else
  MACHINE  :=
  endif
  else
  MACHINE  :=
  endif
index a4a957545b9bf1b5ac4a79fcae1c8fb175500cfa..ff6f6edf49d93da4cc79f2d2d332c687fc347d76 100644 (file)
@@ -5,11 +5,11 @@ Subject: [PATCH 61/69] mtd: "rootfs" conflicts with OpenWrt auto mounting
 
 Signed-off-by: John Crispin <john@phrozen.org>
 ---
 
 Signed-off-by: John Crispin <john@phrozen.org>
 ---
- drivers/mtd/qcom_smem_part.c | 4 ++++
+ drivers/mtd/parsers/qcom_smem_part.c | 4 ++++
  1 file changed, 4 insertions(+)
 
  1 file changed, 4 insertions(+)
 
---- a/drivers/mtd/qcom_smem_part.c
-+++ b/drivers/mtd/qcom_smem_part.c
+--- a/drivers/mtd/parsers/qcom_smem_part.c
++++ b/drivers/mtd/parsers/qcom_smem_part.c
 @@ -189,6 +189,10 @@ static int parse_qcom_smem_partitions(st
                m_part->size = le32_to_cpu(s_part->size) * (*smem_blksz);
                m_part->offset = le32_to_cpu(s_part->start) * (*smem_blksz);
 @@ -189,6 +189,10 @@ static int parse_qcom_smem_partitions(st
                m_part->size = le32_to_cpu(s_part->size) * (*smem_blksz);
                m_part->offset = le32_to_cpu(s_part->start) * (*smem_blksz);
index 717934315aad276a4ec9bd9f71808c5fc030008b..0965a31d9000bea844236552a93a25b25682b74c 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
 
 --- a/drivers/clk/qcom/gcc-ipq806x.c
 +++ b/drivers/clk/qcom/gcc-ipq806x.c
 
 --- a/drivers/clk/qcom/gcc-ipq806x.c
 +++ b/drivers/clk/qcom/gcc-ipq806x.c
-@@ -1233,6 +1233,8 @@ static struct clk_rcg prng_src = {
+@@ -1225,6 +1225,8 @@ static struct clk_rcg prng_src = {
                .parent_map = gcc_pxo_pll8_map,
        },
        .clkr = {
                .parent_map = gcc_pxo_pll8_map,
        },
        .clkr = {
index 72217de12e62c8ed8bbd9e22ea92b5e3c6a14f8c..e3a955b659e4f13ea83c31dc5544235d45855bcb 100644 (file)
@@ -17,12 +17,12 @@ Signed-off-by: John Crispin <john@phrozen.org>
                        "qcom,rpmcc-apq8064", "qcom,rpmcc"
                        "qcom,rpmcc-msm8996", "qcom,rpmcc"
 +                      "qcom,rpmcc-ipq806x", "qcom,rpmcc"
                        "qcom,rpmcc-apq8064", "qcom,rpmcc"
                        "qcom,rpmcc-msm8996", "qcom,rpmcc"
 +                      "qcom,rpmcc-ipq806x", "qcom,rpmcc"
- - #clock-cells : shall contain 1
+                       "qcom,rpmcc-msm8998", "qcom,rpmcc"
+                       "qcom,rpmcc-qcs404", "qcom,rpmcc"
  
 --- a/include/dt-bindings/clock/qcom,rpmcc.h
 +++ b/include/dt-bindings/clock/qcom,rpmcc.h
  
 --- a/include/dt-bindings/clock/qcom,rpmcc.h
 +++ b/include/dt-bindings/clock/qcom,rpmcc.h
-@@ -45,6 +45,10 @@
+@@ -37,6 +37,10 @@
  #define RPM_XO_A0                             27
  #define RPM_XO_A1                             28
  #define RPM_XO_A2                             29
  #define RPM_XO_A0                             27
  #define RPM_XO_A1                             28
  #define RPM_XO_A2                             29
@@ -35,7 +35,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
  #define RPM_SMD_XO_CLK_SRC                            0
 --- a/drivers/clk/qcom/clk-rpm.c
 +++ b/drivers/clk/qcom/clk-rpm.c
  #define RPM_SMD_XO_CLK_SRC                            0
 --- a/drivers/clk/qcom/clk-rpm.c
 +++ b/drivers/clk/qcom/clk-rpm.c
-@@ -520,6 +520,16 @@ DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a0_
+@@ -512,6 +512,16 @@ DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a0_
  DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a1_clk, xo_a1_a_clk, 24);
  DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a2_clk, xo_a2_a_clk, 28);
  
  DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a1_clk, xo_a1_a_clk, 24);
  DEFINE_CLK_RPM_XO_BUFFER(apq8064, xo_a2_clk, xo_a2_a_clk, 28);
  
@@ -52,7 +52,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
  static struct clk_rpm *apq8064_clks[] = {
        [RPM_APPS_FABRIC_CLK] = &apq8064_afab_clk,
        [RPM_APPS_FABRIC_A_CLK] = &apq8064_afab_a_clk,
  static struct clk_rpm *apq8064_clks[] = {
        [RPM_APPS_FABRIC_CLK] = &apq8064_afab_clk,
        [RPM_APPS_FABRIC_A_CLK] = &apq8064_afab_a_clk,
-@@ -546,15 +556,40 @@ static struct clk_rpm *apq8064_clks[] =
+@@ -538,15 +548,40 @@ static struct clk_rpm *apq8064_clks[] =
        [RPM_XO_A2] = &apq8064_xo_a2_clk,
  };
  
        [RPM_XO_A2] = &apq8064_xo_a2_clk,
  };
  
index 6f1cdcf4d67d8ded14d27c673001bf521e4c506f..0d2a4274c785854a4bbda5a4d6c953a8fd614acc 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
 
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
 
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
-@@ -64,7 +64,7 @@ KBUILD_CFLAGS        += $(call cc-option,-fno-i
+@@ -67,7 +67,7 @@ KBUILD_CFLAGS        += $(call cc-option,-fno-i
  # macro, but instead defines a whole series of macros which makes
  # testing for a specific architecture or later rather impossible.
  arch-$(CONFIG_CPU_32v7M)      =-D__LINUX_ARM_ARCH__=7 -march=armv7-m -Wa,-march=armv7-m
  # macro, but instead defines a whole series of macros which makes
  # testing for a specific architecture or later rather impossible.
  arch-$(CONFIG_CPU_32v7M)      =-D__LINUX_ARM_ARCH__=7 -march=armv7-m -Wa,-march=armv7-m
index b7b9c991e095cd802a43c5ac6620cdc6ad52d1b7..396309d2030ad4b83c3840809a6c5623cb53c045 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -1926,6 +1926,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1825,6 +1825,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
          The command-line arguments provided by the boot loader will be
          appended to the the device tree bootargs property.
  
          The command-line arguments provided by the boot loader will be
          appended to the the device tree bootargs property.
  
@@ -133,7 +133,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
        }
        *ptr = '\0';
  
        }
        *ptr = '\0';
  
-@@ -148,7 +212,9 @@ int atags_to_fdt(void *atag_list, void *
+@@ -166,7 +230,9 @@ int atags_to_fdt(void *atag_list, void *
                        else
                                setprop_string(fdt, "/chosen", "bootargs",
                                               atag->u.cmdline.cmdline);
                        else
                                setprop_string(fdt, "/chosen", "bootargs",
                                               atag->u.cmdline.cmdline);
@@ -144,7 +144,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
                        if (memcount >= sizeof(mem_reg_property)/4)
                                continue;
                        if (!atag->u.mem.size)
                        if (memcount >= sizeof(mem_reg_property)/4)
                                continue;
                        if (!atag->u.mem.size)
-@@ -187,6 +253,10 @@ int atags_to_fdt(void *atag_list, void *
+@@ -210,6 +276,10 @@ int atags_to_fdt(void *atag_list, void *
                setprop(fdt, "/memory", "reg", mem_reg_property,
                        4 * memcount * memsize);
        }
                setprop(fdt, "/memory", "reg", mem_reg_property,
                        4 * memcount * memsize);
        }
@@ -157,7 +157,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  }
 --- a/init/main.c
 +++ b/init/main.c
  }
 --- a/init/main.c
 +++ b/init/main.c
-@@ -102,6 +102,10 @@
+@@ -103,6 +103,10 @@
  #define CREATE_TRACE_POINTS
  #include <trace/events/initcall.h>
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/initcall.h>
  
@@ -168,7 +168,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
-@@ -593,6 +597,18 @@ asmlinkage __visible void __init start_k
+@@ -632,6 +636,18 @@ asmlinkage __visible void __init start_k
        pr_notice("Kernel command line: %s\n", boot_command_line);
        /* parameters may set static keys */
        jump_label_init();
        pr_notice("Kernel command line: %s\n", boot_command_line);
        /* parameters may set static keys */
        jump_label_init();
index 77ce4c424519c399888589d7548fbc43cbe94a20..1d21703bddfb5e6d56595600b296a35457357671 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
 
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
 
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
-@@ -791,6 +791,18 @@ dtb-$(CONFIG_ARCH_QCOM) += \
+@@ -843,6 +843,18 @@ dtb-$(CONFIG_ARCH_QCOM) += \
        qcom-ipq4019-ap.dk07.1-c1.dtb \
        qcom-ipq4019-ap.dk07.1-c2.dtb \
        qcom-ipq8064-ap148.dtb \
        qcom-ipq4019-ap.dk07.1-c1.dtb \
        qcom-ipq4019-ap.dk07.1-c2.dtb \
        qcom-ipq8064-ap148.dtb \
index b7e375dfb2800cc893e487854bf408cff7b38679..febfd533987d71364ff5c079867706edc6ff06c6 100644 (file)
@@ -4,9 +4,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/drivers/soc/qcom/spm.c
 +++ b/drivers/soc/qcom/spm.c
 
 --- a/drivers/soc/qcom/spm.c
 +++ b/drivers/soc/qcom/spm.c
-@@ -219,6 +219,9 @@ static int __init qcom_cpuidle_init(stru
-       cpumask_t mask;
-       bool use_scm_power_down = false;
+@@ -214,6 +214,9 @@ static int __init qcom_cpuidle_init(stru
+       if (!qcom_scm_is_available())
+               return -EPROBE_DEFER;
  
 +      if (!qcom_scm_is_available())
 +              return -EPROBE_DEFER;
  
 +      if (!qcom_scm_is_available())
 +              return -EPROBE_DEFER;
index c1461e68c270666e10c3357fbbe84bfb36e185ca..275b7c0915d222021de439ec76d89cafa0f0cd9b 100644 (file)
@@ -38,7 +38,7 @@ Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
  
  
        /* Set the Max TLP size to 2K, instead of using default of 4K */
  
  
        /* Set the Max TLP size to 2K, instead of using default of 4K */
-@@ -1367,6 +1375,8 @@ static int qcom_pcie_probe(struct platfo
+@@ -1340,6 +1348,8 @@ static int qcom_pcie_probe(struct platfo
        struct dw_pcie *pci;
        struct qcom_pcie *pcie;
        int ret;
        struct dw_pcie *pci;
        struct qcom_pcie *pcie;
        int ret;
@@ -47,7 +47,7 @@ Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
  
        pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL);
        if (!pcie)
  
        pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL);
        if (!pcie)
-@@ -1397,6 +1407,9 @@ static int qcom_pcie_probe(struct platfo
+@@ -1370,6 +1380,9 @@ static int qcom_pcie_probe(struct platfo
                goto err_pm_runtime_put;
        }
  
                goto err_pm_runtime_put;
        }
  
index e7b5b6f9afbee6028d59fcaa6c16ee7f7475bfc1..51df248c046628ba174543b1259b910251a4183e 100644 (file)
@@ -31,7 +31,7 @@ Signed-off-by: Gokul Sriram Palanisamy <gpalan@codeaurora.org>
  #define QCOM_PCIE_2_1_0_MAX_SUPPLY    3
  struct qcom_pcie_resources_2_1_0 {
        struct clk *iface_clk;
  #define QCOM_PCIE_2_1_0_MAX_SUPPLY    3
  struct qcom_pcie_resources_2_1_0 {
        struct clk *iface_clk;
-@@ -1475,6 +1483,35 @@ err_pm_runtime_put:
+@@ -1448,6 +1456,35 @@ err_pm_runtime_put:
        return ret;
  }
  
        return ret;
  }
  
index 76c7cfd5687ef78c041f4779c47149ea6e549a5b..5d6d5316c7b917e6439c66d0517fd4058eef35c8 100644 (file)
@@ -1,12 +1,10 @@
 --- a/drivers/firmware/qcom_scm.c
 +++ b/drivers/firmware/qcom_scm.c
 --- a/drivers/firmware/qcom_scm.c
 +++ b/drivers/firmware/qcom_scm.c
-@@ -609,6 +609,9 @@ static const struct of_device_id qcom_sc
-       { .compatible = "qcom,scm-ipq4019",
-         .data = NULL, /* no clocks */
+@@ -601,6 +601,7 @@ static const struct of_device_id qcom_sc
+                                                            SCM_HAS_BUS_CLK)
        },
        },
-+      { .compatible = "qcom,scm-ipq806x",
-+        .data = NULL, /* no clocks */
-+      },
-       { .compatible = "qcom,scm",
-         .data = (void *)(SCM_HAS_CORE_CLK
-                          | SCM_HAS_IFACE_CLK
+       { .compatible = "qcom,scm-ipq4019" },
++      { .compatible = "qcom,scm-ipq806x" },
+       { .compatible = "qcom,scm-msm8660", .data = (void *) SCM_HAS_CORE_CLK },
+       { .compatible = "qcom,scm-msm8960", .data = (void *) SCM_HAS_CORE_CLK },
+       { .compatible = "qcom,scm-msm8916", .data = (void *)(SCM_HAS_CORE_CLK |
index 78a5bb41731cadc8bb791db7eee00223ef9361a4..53e81b7a785bb7aace7abc3c7b7280981c56bce0 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Ajay Kishore <akisho@codeaurora.org>
 
 --- a/drivers/pinctrl/qcom/pinctrl-msm.c
 +++ b/drivers/pinctrl/qcom/pinctrl-msm.c
 
 --- a/drivers/pinctrl/qcom/pinctrl-msm.c
 +++ b/drivers/pinctrl/qcom/pinctrl-msm.c
-@@ -30,7 +30,8 @@
+@@ -22,7 +22,8 @@
  #include <linux/reboot.h>
  #include <linux/pm.h>
  #include <linux/log2.h>
  #include <linux/reboot.h>
  #include <linux/pm.h>
  #include <linux/log2.h>
@@ -24,7 +24,7 @@ Signed-off-by: Ajay Kishore <akisho@codeaurora.org>
  #include "../core.h"
  #include "../pinconf.h"
  #include "pinctrl-msm.h"
  #include "../core.h"
  #include "../pinconf.h"
  #include "pinctrl-msm.h"
-@@ -628,6 +629,9 @@ static void msm_gpio_irq_mask(struct irq
+@@ -706,6 +707,9 @@ static void msm_gpio_irq_mask(struct irq
        const struct msm_pingroup *g;
        unsigned long flags;
        u32 val;
        const struct msm_pingroup *g;
        unsigned long flags;
        u32 val;
@@ -34,22 +34,30 @@ Signed-off-by: Ajay Kishore <akisho@codeaurora.org>
  
        g = &pctrl->soc->groups[d->hwirq];
  
  
        g = &pctrl->soc->groups[d->hwirq];
  
-@@ -732,11 +736,30 @@ static int msm_gpio_irq_set_type(struct
+@@ -819,6 +823,7 @@ static int msm_gpio_irq_set_type(struct
+       const struct msm_pingroup *g;
+       unsigned long flags;
+       u32 val;
++      int ret;
+       g = &pctrl->soc->groups[d->hwirq];
+@@ -832,11 +837,30 @@ static int msm_gpio_irq_set_type(struct
        else
                clear_bit(d->hwirq, pctrl->dual_edge_irqs);
  
        else
                clear_bit(d->hwirq, pctrl->dual_edge_irqs);
  
-+      int ret = of_device_is_compatible(pctrl->dev->of_node,
++      ret = of_device_is_compatible(pctrl->dev->of_node,
 +                                      "qcom,ipq8064-pinctrl");
        /* Route interrupts to application cpu */
 +                                      "qcom,ipq8064-pinctrl");
        /* Route interrupts to application cpu */
--      val = readl(pctrl->regs + g->intr_target_reg);
+-      val = msm_readl_intr_target(pctrl, g);
 -      val &= ~(7 << g->intr_target_bit);
 -      val |= g->intr_target_kpss_val << g->intr_target_bit;
 -      val &= ~(7 << g->intr_target_bit);
 -      val |= g->intr_target_kpss_val << g->intr_target_bit;
--      writel(val, pctrl->regs + g->intr_target_reg);
+-      msm_writel_intr_target(val, pctrl, g);
 +      if (!ret) {
 +      if (!ret) {
-+              val = readl(pctrl->regs + g->intr_target_reg);
++              val = msm_readl_intr_target(pctrl, g);
 +              val &= ~(7 << g->intr_target_bit);
 +              val |= g->intr_target_kpss_val << g->intr_target_bit;
 +              val &= ~(7 << g->intr_target_bit);
 +              val |= g->intr_target_kpss_val << g->intr_target_bit;
-+              writel(val, pctrl->regs + g->intr_target_reg);
++              msm_writel_intr_target(val, pctrl, g);
 +      } else {
 +              const __be32 *reg = of_get_property(pctrl->dev->of_node, "reg", NULL);
 +              if (reg) {
 +      } else {
 +              const __be32 *reg = of_get_property(pctrl->dev->of_node, "reg", NULL);
 +              if (reg) {
index 2867239d1c4ad676826397ec7ee22a2dad5a762a..a0ea8eba54b5ae470e25a6a68068ac963faee58a 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
 
 --- a/drivers/pinctrl/qcom/pinctrl-ipq8064.c
 +++ b/drivers/pinctrl/qcom/pinctrl-ipq8064.c
 
 --- a/drivers/pinctrl/qcom/pinctrl-ipq8064.c
 +++ b/drivers/pinctrl/qcom/pinctrl-ipq8064.c
-@@ -308,7 +308,7 @@ static const char * const gpio_groups[]
+@@ -299,7 +299,7 @@ static const char * const gpio_groups[]
  };
  
  static const char * const mdio_groups[] = {
  };
  
  static const char * const mdio_groups[] = {
@@ -19,7 +19,7 @@ Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
  };
  
  static const char * const mi2s_groups[] = {
  };
  
  static const char * const mi2s_groups[] = {
-@@ -412,8 +412,8 @@ static const char * const usb2_hsic_grou
+@@ -403,8 +403,8 @@ static const char * const usb2_hsic_grou
  };
  
  static const char * const rgmii2_groups[] = {
  };
  
  static const char * const rgmii2_groups[] = {
@@ -30,7 +30,7 @@ Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
  };
  
  static const char * const sata_groups[] = {
  };
  
  static const char * const sata_groups[] = {
-@@ -548,7 +548,7 @@ static const struct msm_function ipq8064
+@@ -539,7 +539,7 @@ static const struct msm_function ipq8064
  static const struct msm_pingroup ipq8064_groups[] = {
        PINGROUP(0, mdio, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(1, mdio, NA, NA, NA, NA, NA, NA, NA, NA, NA),
  static const struct msm_pingroup ipq8064_groups[] = {
        PINGROUP(0, mdio, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(1, mdio, NA, NA, NA, NA, NA, NA, NA, NA, NA),
@@ -39,7 +39,7 @@ Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
        PINGROUP(3, pcie1_rst, pcie1_prsnt, pdm, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(4, pcie1_pwren_n, pcie1_pwren, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(5, pcie1_clk_req, pcie1_pwrflt, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(3, pcie1_rst, pcie1_prsnt, pdm, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(4, pcie1_pwren_n, pcie1_pwren, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(5, pcie1_clk_req, pcie1_pwrflt, NA, NA, NA, NA, NA, NA, NA, NA),
-@@ -612,7 +612,7 @@ static const struct msm_pingroup ipq8064
+@@ -603,7 +603,7 @@ static const struct msm_pingroup ipq8064
        PINGROUP(63, pcie3_rst, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(64, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(65, pcie3_clk_req, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(63, pcie3_rst, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(64, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA),
        PINGROUP(65, pcie3_clk_req, NA, NA, NA, NA, NA, NA, NA, NA, NA),
index 1ab070bdab54cc6bda4bc5c0b9101f49db44962c..1e572a91a50188e795cffc154306c430ac36b90f 100644 (file)
@@ -60,7 +60,7 @@ will be executed twice with the same parameters for the same pinctrl.
 
 --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
 +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
 
 --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
 +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
-@@ -668,6 +668,7 @@
+@@ -671,6 +671,7 @@
                        reg = <0x800000 0x4000>;
  
                        gpio-controller;
                        reg = <0x800000 0x4000>;
  
                        gpio-controller;
index 50414596d980e5cccc7adcd1430cb31e515db48c..9e1ac7db049f2e1d72fe245313482ca35a72f343 100644 (file)
@@ -2,9 +2,9 @@ From: Christian Lamparter <chunkeey@googlemail.com>
 Subject: SoC: add qualcomm syscon
 --- a/drivers/soc/qcom/Makefile
 +++ b/drivers/soc/qcom/Makefile
 Subject: SoC: add qualcomm syscon
 --- a/drivers/soc/qcom/Makefile
 +++ b/drivers/soc/qcom/Makefile
-@@ -18,6 +18,7 @@ obj-$(CONFIG_QCOM_SMEM_STATE) += smem_st
- obj-$(CONFIG_QCOM_SMP2P)      += smp2p.o
+@@ -20,6 +20,7 @@ obj-$(CONFIG_QCOM_SMP2P)     += smp2p.o
  obj-$(CONFIG_QCOM_SMSM)       += smsm.o
  obj-$(CONFIG_QCOM_SMSM)       += smsm.o
+ obj-$(CONFIG_QCOM_SOCINFO)    += socinfo.o
  obj-$(CONFIG_QCOM_WCNSS_CTRL) += wcnss_ctrl.o
 +obj-$(CONFIG_QCOM_TCSR)        += qcom_tcsr.o
  obj-$(CONFIG_QCOM_APR) += apr.o
  obj-$(CONFIG_QCOM_WCNSS_CTRL) += wcnss_ctrl.o
 +obj-$(CONFIG_QCOM_TCSR)        += qcom_tcsr.o
  obj-$(CONFIG_QCOM_APR) += apr.o
@@ -12,9 +12,9 @@ Subject: SoC: add qualcomm syscon
  obj-$(CONFIG_QCOM_SDM845_LLCC) += llcc-sdm845.o
 --- a/drivers/soc/qcom/Kconfig
 +++ b/drivers/soc/qcom/Kconfig
  obj-$(CONFIG_QCOM_SDM845_LLCC) += llcc-sdm845.o
 --- a/drivers/soc/qcom/Kconfig
 +++ b/drivers/soc/qcom/Kconfig
-@@ -146,6 +146,13 @@ config QCOM_SMSM
-         Say yes here to support the Qualcomm Shared Memory State Machine.
-         The state machine is represented by bits in shared memory.
+@@ -183,6 +183,13 @@ config QCOM_SOCINFO
+        Say yes here to support the Qualcomm socinfo driver, providing
+        information about the SoC to user space.
  
 +config QCOM_TCSR
 +      tristate "QCOM Top Control and Status Registers"
  
 +config QCOM_TCSR
 +      tristate "QCOM Top Control and Status Registers"
@@ -25,7 +25,7 @@ Subject: SoC: add qualcomm syscon
 +
  config QCOM_WCNSS_CTRL
        tristate "Qualcomm WCNSS control driver"
 +
  config QCOM_WCNSS_CTRL
        tristate "Qualcomm WCNSS control driver"
-       depends on ARCH_QCOM
+       depends on ARCH_QCOM || COMPILE_TEST
 --- /dev/null
 +++ b/drivers/soc/qcom/qcom_tcsr.c
 @@ -0,0 +1,64 @@
 --- /dev/null
 +++ b/drivers/soc/qcom/qcom_tcsr.c
 @@ -0,0 +1,64 @@