History

Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC fixes from Olof Johansson: "I didn't get a batch in this weekend, so here's what we queued up last week and today. - A couple of defconfigs add back debugfs -- it used to be implicitly enabled through CONFIG_TRACING, but 0e4a459f56c32d3e ("tracing: Remove unnecessary DEBUG_FS dependency") removed that. - The rest are mostly minor fixlets of the usual kind; some DT tweaks, a headerfile refactor that needs a build fix now, etc" * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (30 commits) ARM: bcm: Add missing sentinel to bcm2711_compat[] ARM: shmobile: defconfig: Restore debugfs support bus: ti-sysc: Fix missing reset delay handling ARM: imx: Fix boot crash if ocotp is not found ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS ARM: dts: imx6ul-evk: Fix peripheral regulator arm64: dts: ls1028a: fix reboot node ARM: mmp: include the correct cputype.h ARM: dts: am437x-gp/epos-evm: fix panel compatible arm64: dts: ls1028a: fix typo in TMU calibration data ARM: imx: Correct ocotp id for serial number support of i.MX6ULL/ULZ SoCs ARM: dts: bcm283x: Fix critical trip point ARM: omap2plus_defconfig: Add back DEBUG_FS ARM: omap2plus_defconfig: enable NET_SWITCHDEV ARM: dts: am335x-sancloud-bbe: fix phy mode bus: ti-sysc: Fix missing force mstandby quirk handling reset: Do not register resource data for missing resets reset: Fix {of,devm}_reset_control_array_get kerneldoc return types reset: brcmstb: Remove resource checks dt-bindings: reset: Fix brcmstb-reset example ...

Linus Torvalds committed 6 years ago

Commit ea200de2 parents 6afa873 e3992af26 files · +78 −45Browse files

Unified · Split

26 files
  1. .mailmap +1 −0
  2. Documentation/devicetree/bindings/reset/brcm,brcmstb-reset.txt +1 −1
  3. MAINTAINERS +2 −1
  4. arch/arm/boot/dts/am335x-sancloud-bbe.dts +1 −1
  5. arch/arm/boot/dts/am437x-gp-evm.dts +1 −1
  6. arch/arm/boot/dts/am43x-epos-evm.dts +1 −1
  7. arch/arm/boot/dts/bcm-cygnus.dtsi +2 −2
  8. arch/arm/boot/dts/bcm2711.dtsi +1 −1
  9. arch/arm/boot/dts/bcm283x.dtsi +1 −1
  10. arch/arm/boot/dts/bcm5301x.dtsi +2 −2
  11. arch/arm/boot/dts/e60k02.dtsi +0 −5
  12. arch/arm/boot/dts/imx6ul-14x14-evk.dtsi +21 −7
  13. arch/arm/configs/exynos_defconfig +1 −0
  14. arch/arm/configs/imx_v6_v7_defconfig +1 −0
  15. arch/arm/configs/omap2plus_defconfig +3 −1
  16. arch/arm/configs/shmobile_defconfig +1 −0
  17. arch/arm/mach-bcm/bcm2711.c +1 −0
  18. arch/arm/mach-imx/cpu.c +5 −3
  19. arch/arm/mach-mmp/pxa168.h +1 −1
  20. arch/arm/mach-vexpress/spc.c +11 −1
  21. arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi +8 −2
  22. drivers/bus/ti-sysc.c +6 −1
  23. drivers/cpufreq/vexpress-spc-cpufreq.c +1 −1
  24. drivers/reset/core.c +4 −6
  25. drivers/reset/reset-brcmstb.c +0 −6
  26. include/linux/platform_data/ti-sysc.h +1 −0
.mailmap+1−0
@@ -152,6 +152,7 @@ Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@web.de> · 151 unmodified lines
152Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@ascom.ch>152Linus Lüssing <linus.luessing@c0d3.blue> <linus.luessing@ascom.ch>
153Li Yang <leoyang.li@nxp.com> <leo@zh-kernel.org>153Li Yang <leoyang.li@nxp.com> <leo@zh-kernel.org>
154Li Yang <leoyang.li@nxp.com> <leoli@freescale.com>154Li Yang <leoyang.li@nxp.com> <leoli@freescale.com>
155Lukasz Luba <lukasz.luba@arm.com> <l.luba@partner.samsung.com>
155Maciej W. Rozycki <macro@mips.com> <macro@imgtec.com>156Maciej W. Rozycki <macro@mips.com> <macro@imgtec.com>
156Marc Zyngier <maz@kernel.org> <marc.zyngier@arm.com>157Marc Zyngier <maz@kernel.org> <marc.zyngier@arm.com>
157Marcin Nowakowski <marcin.nowakowski@mips.com> <marcin.nowakowski@imgtec.com>158Marcin Nowakowski <marcin.nowakowski@mips.com> <marcin.nowakowski@imgtec.com>
Documentation/devicetree/bindings/reset/brcm,brcmstb-reset.txt+1−1
@@ -22,6 +22,6 @@ Example: · 21 unmodified lines
22 };22 };
23 23
24 &ethernet_switch {24 &ethernet_switch {
25 resets = <&reset>;25 resets = <&reset 26>;
26 reset-names = "switch";26 reset-names = "switch";
27 };27 };
MAINTAINERS+2−1
@@ -2272,6 +2272,7 @@ F: drivers/*/*s3c64xx* · 2271 unmodified lines
2272F: drivers/*/*s5pv210*2272F: drivers/*/*s5pv210*
2273F: drivers/memory/samsung/2273F: drivers/memory/samsung/
2274F: drivers/soc/samsung/2274F: drivers/soc/samsung/
2275F: drivers/tty/serial/samsung*
2275F: include/linux/soc/samsung/2276F: include/linux/soc/samsung/
2276F: Documentation/arm/samsung/2277F: Documentation/arm/samsung/
2277F: Documentation/devicetree/bindings/arm/samsung/2278F: Documentation/devicetree/bindings/arm/samsung/
@@ -5000,7 +5001,7 @@ F: include/linux/dma-mapping.h · 2722 unmodified lines
5000F: include/linux/dma-noncoherent.h5001F: include/linux/dma-noncoherent.h
5001 5002
5002DMC FREQUENCY DRIVER FOR SAMSUNG EXYNOS54225003DMC FREQUENCY DRIVER FOR SAMSUNG EXYNOS5422
5003M: Lukasz Luba <l.luba@partner.samsung.com>5004M: Lukasz Luba <lukasz.luba@arm.com>
5004L: linux-pm@vger.kernel.org5005L: linux-pm@vger.kernel.org
5005L: linux-samsung-soc@vger.kernel.org5006L: linux-samsung-soc@vger.kernel.org
5006S: Maintained5007S: Maintained
arch/arm/boot/dts/am335x-sancloud-bbe.dts+1−1
@@ -108,7 +108,7 @@ · 107 unmodified lines
108 108
109&cpsw_emac0 {109&cpsw_emac0 {
110 phy-handle = <&ethphy0>;110 phy-handle = <&ethphy0>;
111 phy-mode = "rgmii-txid";111 phy-mode = "rgmii-id";
112};112};
113 113
114&i2c0 {114&i2c0 {
arch/arm/boot/dts/am437x-gp-evm.dts+1−1
@@ -86,7 +86,7 @@ · 85 unmodified lines
86 };86 };
87 87
88 lcd0: display {88 lcd0: display {
89 compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";89 compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
90 label = "lcd";90 label = "lcd";
91 91
92 backlight = <&lcd_bl>;92 backlight = <&lcd_bl>;
arch/arm/boot/dts/am43x-epos-evm.dts+1−1
@@ -42,7 +42,7 @@ · 41 unmodified lines
42 };42 };
43 43
44 lcd0: display {44 lcd0: display {
45 compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";45 compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
46 label = "lcd";46 label = "lcd";
47 47
48 backlight = <&lcd_bl>;48 backlight = <&lcd_bl>;
arch/arm/boot/dts/bcm-cygnus.dtsi+2−2
@@ -174,8 +174,8 @@ · 173 unmodified lines
174 mdio: mdio@18002000 {174 mdio: mdio@18002000 {
175 compatible = "brcm,iproc-mdio";175 compatible = "brcm,iproc-mdio";
176 reg = <0x18002000 0x8>;176 reg = <0x18002000 0x8>;
177 #size-cells = <1>;177 #size-cells = <0>;
178 #address-cells = <0>;178 #address-cells = <1>;
179 status = "disabled";179 status = "disabled";
180 180
181 gphy0: ethernet-phy@0 {181 gphy0: ethernet-phy@0 {
arch/arm/boot/dts/bcm2711.dtsi+1−1
@@ -43,7 +43,7 @@ · 42 unmodified lines
43 <0x7c000000 0x0 0xfc000000 0x02000000>,43 <0x7c000000 0x0 0xfc000000 0x02000000>,
44 <0x40000000 0x0 0xff800000 0x00800000>;44 <0x40000000 0x0 0xff800000 0x00800000>;
45 /* Emulate a contiguous 30-bit address range for DMA */45 /* Emulate a contiguous 30-bit address range for DMA */
46 dma-ranges = <0xc0000000 0x0 0x00000000 0x3c000000>;46 dma-ranges = <0xc0000000 0x0 0x00000000 0x40000000>;
47 47
48 /*48 /*
49 * This node is the provider for the enable-method for49 * This node is the provider for the enable-method for
arch/arm/boot/dts/bcm283x.dtsi+1−1
@@ -37,7 +37,7 @@ · 36 unmodified lines
37 37
38 trips {38 trips {
39 cpu-crit {39 cpu-crit {
40 temperature = <80000>;40 temperature = <90000>;
41 hysteresis = <0>;41 hysteresis = <0>;
42 type = "critical";42 type = "critical";
43 };43 };
arch/arm/boot/dts/bcm5301x.dtsi+2−2
@@ -353,8 +353,8 @@ · 352 unmodified lines
353 mdio: mdio@18003000 {353 mdio: mdio@18003000 {
354 compatible = "brcm,iproc-mdio";354 compatible = "brcm,iproc-mdio";
355 reg = <0x18003000 0x8>;355 reg = <0x18003000 0x8>;
356 #size-cells = <1>;356 #size-cells = <0>;
357 #address-cells = <0>;357 #address-cells = <1>;
358 };358 };
359 359
360 mdio-bus-mux@18003000 {360 mdio-bus-mux@18003000 {
arch/arm/boot/dts/e60k02.dtsi+0−5
@@ -265,11 +265,6 @@ · 264 unmodified lines
265 regulator-name = "LDORTC1";265 regulator-name = "LDORTC1";
266 regulator-boot-on;266 regulator-boot-on;
267 };267 };
268
269 ldortc2_reg: LDORTC2 {
270 regulator-name = "LDORTC2";
271 regulator-boot-on;
272 };
273 };268 };
274 };269 };
275};270};
arch/arm/boot/dts/imx6ul-14x14-evk.dtsi+21−7
@@ -30,14 +30,26 @@ · 29 unmodified lines
30 enable-active-high;30 enable-active-high;
31 };31 };
32 32
33 reg_sensors: regulator-sensors {33 reg_peri_3v3: regulator-peri-3v3 {
34 compatible = "regulator-fixed";34 compatible = "regulator-fixed";
35 pinctrl-names = "default";35 pinctrl-names = "default";
36 pinctrl-0 = <&pinctrl_sensors_reg>;36 pinctrl-0 = <&pinctrl_peri_3v3>;
37 regulator-name = "sensors-supply";37 regulator-name = "VPERI_3V3";
38 regulator-min-microvolt = <3300000>;38 regulator-min-microvolt = <3300000>;
39 regulator-max-microvolt = <3300000>;39 regulator-max-microvolt = <3300000>;
40 gpio = <&gpio5 2 GPIO_ACTIVE_LOW>;40 gpio = <&gpio5 2 GPIO_ACTIVE_LOW>;
41 /*
42 * If you want to want to make this dynamic please
43 * check schematics and test all affected peripherals:
44 *
45 * - sensors
46 * - ethernet phy
47 * - can
48 * - bluetooth
49 * - wm8960 audio codec
50 * - ov5640 camera
51 */
52 regulator-always-on;
41 };53 };
42 54
43 reg_can_3v3: regulator-can-3v3 {55 reg_can_3v3: regulator-can-3v3 {
@@ -140,6 +152,7 @@ · 96 unmodified lines
140 pinctrl-0 = <&pinctrl_enet1>;152 pinctrl-0 = <&pinctrl_enet1>;
141 phy-mode = "rmii";153 phy-mode = "rmii";
142 phy-handle = <&ethphy0>;154 phy-handle = <&ethphy0>;
155 phy-supply = <&reg_peri_3v3>;
143 status = "okay";156 status = "okay";
144};157};
145 158
@@ -148,6 +161,7 @@ · 2 unmodified lines
148 pinctrl-0 = <&pinctrl_enet2>;161 pinctrl-0 = <&pinctrl_enet2>;
149 phy-mode = "rmii";162 phy-mode = "rmii";
150 phy-handle = <&ethphy1>;163 phy-handle = <&ethphy1>;
164 phy-supply = <&reg_peri_3v3>;
151 status = "okay";165 status = "okay";
152 166
153 mdio {167 mdio {
@@ -193,8 +207,8 @@ · 39 unmodified lines
193 magnetometer@e {207 magnetometer@e {
194 compatible = "fsl,mag3110";208 compatible = "fsl,mag3110";
195 reg = <0x0e>;209 reg = <0x0e>;
196 vdd-supply = <&reg_sensors>;210 vdd-supply = <&reg_peri_3v3>;
197 vddio-supply = <&reg_sensors>;211 vddio-supply = <&reg_peri_3v3>;
198 };212 };
199};213};
200 214
@@ -227,7 +241,7 @@ · 26 unmodified lines
227 flash0: n25q256a@0 {241 flash0: n25q256a@0 {
228 #address-cells = <1>;242 #address-cells = <1>;
229 #size-cells = <1>;243 #size-cells = <1>;
230 compatible = "micron,n25q256a";244 compatible = "micron,n25q256a", "jedec,spi-nor";
231 spi-max-frequency = <29000000>;245 spi-max-frequency = <29000000>;
232 spi-rx-bus-width = <4>;246 spi-rx-bus-width = <4>;
233 spi-tx-bus-width = <4>;247 spi-tx-bus-width = <4>;
@@ -462,7 +476,7 @@ · 228 unmodified lines
462 >;476 >;
463 };477 };
464 478
465 pinctrl_sensors_reg: sensorsreggrp {479 pinctrl_peri_3v3: peri3v3grp {
466 fsl,pins = <480 fsl,pins = <
467 MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x1b0b0481 MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x1b0b0
468 >;482 >;
arch/arm/configs/exynos_defconfig+1−0
@@ -350,6 +350,7 @@ CONFIG_PRINTK_TIME=y · 349 unmodified lines
350CONFIG_DYNAMIC_DEBUG=y350CONFIG_DYNAMIC_DEBUG=y
351CONFIG_DEBUG_INFO=y351CONFIG_DEBUG_INFO=y
352CONFIG_MAGIC_SYSRQ=y352CONFIG_MAGIC_SYSRQ=y
353CONFIG_DEBUG_FS=y
353CONFIG_DEBUG_KERNEL=y354CONFIG_DEBUG_KERNEL=y
354CONFIG_SOFTLOCKUP_DETECTOR=y355CONFIG_SOFTLOCKUP_DETECTOR=y
355# CONFIG_DETECT_HUNG_TASK is not set356# CONFIG_DETECT_HUNG_TASK is not set
arch/arm/configs/imx_v6_v7_defconfig+1−0
@@ -462,6 +462,7 @@ CONFIG_FONT_8x8=y · 461 unmodified lines
462CONFIG_FONT_8x16=y462CONFIG_FONT_8x16=y
463CONFIG_PRINTK_TIME=y463CONFIG_PRINTK_TIME=y
464CONFIG_MAGIC_SYSRQ=y464CONFIG_MAGIC_SYSRQ=y
465CONFIG_DEBUG_FS=y
465# CONFIG_SCHED_DEBUG is not set466# CONFIG_SCHED_DEBUG is not set
466CONFIG_PROVE_LOCKING=y467CONFIG_PROVE_LOCKING=y
467# CONFIG_DEBUG_BUGVERBOSE is not set468# CONFIG_DEBUG_BUGVERBOSE is not set
arch/arm/configs/omap2plus_defconfig+3−1
@@ -92,6 +92,7 @@ CONFIG_IP_PNP_BOOTP=y · 91 unmodified lines
92CONFIG_IP_PNP_RARP=y92CONFIG_IP_PNP_RARP=y
93CONFIG_NETFILTER=y93CONFIG_NETFILTER=y
94CONFIG_PHONET=m94CONFIG_PHONET=m
95CONFIG_NET_SWITCHDEV=y
95CONFIG_CAN=m96CONFIG_CAN=m
96CONFIG_CAN_C_CAN=m97CONFIG_CAN_C_CAN=m
97CONFIG_CAN_C_CAN_PLATFORM=m98CONFIG_CAN_C_CAN_PLATFORM=m
@@ -181,6 +182,7 @@ CONFIG_SMSC911X=y · 83 unmodified lines
181# CONFIG_NET_VENDOR_STMICRO is not set182# CONFIG_NET_VENDOR_STMICRO is not set
182CONFIG_TI_DAVINCI_EMAC=y183CONFIG_TI_DAVINCI_EMAC=y
183CONFIG_TI_CPSW=y184CONFIG_TI_CPSW=y
185CONFIG_TI_CPSW_SWITCHDEV=y
184CONFIG_TI_CPTS=y186CONFIG_TI_CPTS=y
185# CONFIG_NET_VENDOR_VIA is not set187# CONFIG_NET_VENDOR_VIA is not set
186# CONFIG_NET_VENDOR_WIZNET is not set188# CONFIG_NET_VENDOR_WIZNET is not set
@@ -554,6 +556,6 @@ CONFIG_DEBUG_INFO=y · 367 unmodified lines
554CONFIG_DEBUG_INFO_SPLIT=y556CONFIG_DEBUG_INFO_SPLIT=y
555CONFIG_DEBUG_INFO_DWARF4=y557CONFIG_DEBUG_INFO_DWARF4=y
556CONFIG_MAGIC_SYSRQ=y558CONFIG_MAGIC_SYSRQ=y
559CONFIG_DEBUG_FS=y
557CONFIG_SCHEDSTATS=y560CONFIG_SCHEDSTATS=y
558# CONFIG_DEBUG_BUGVERBOSE is not set561# CONFIG_DEBUG_BUGVERBOSE is not set
559CONFIG_TI_CPSW_SWITCHDEV=y
arch/arm/configs/shmobile_defconfig+1−0
@@ -212,4 +212,5 @@ CONFIG_DMA_CMA=y · 211 unmodified lines
212CONFIG_CMA_SIZE_MBYTES=64212CONFIG_CMA_SIZE_MBYTES=64
213CONFIG_PRINTK_TIME=y213CONFIG_PRINTK_TIME=y
214# CONFIG_ENABLE_MUST_CHECK is not set214# CONFIG_ENABLE_MUST_CHECK is not set
215CONFIG_DEBUG_FS=y
215CONFIG_DEBUG_KERNEL=y216CONFIG_DEBUG_KERNEL=y
arch/arm/mach-bcm/bcm2711.c+1−0
@@ -13,6 +13,7 @@ static const char * const bcm2711_compat[] = { · 12 unmodified lines
13#ifdef CONFIG_ARCH_MULTI_V713#ifdef CONFIG_ARCH_MULTI_V7
14 "brcm,bcm2711",14 "brcm,bcm2711",
15#endif15#endif
16 NULL
16};17};
17 18
18DT_MACHINE_START(BCM2711, "BCM2711")19DT_MACHINE_START(BCM2711, "BCM2711")
arch/arm/mach-imx/cpu.c+5−3
@@ -84,7 +84,7 @@ struct device * __init imx_soc_device_init(void) · 83 unmodified lines
84 const char *ocotp_compat = NULL;84 const char *ocotp_compat = NULL;
85 struct soc_device *soc_dev;85 struct soc_device *soc_dev;
86 struct device_node *root;86 struct device_node *root;
87 struct regmap *ocotp;87 struct regmap *ocotp = NULL;
88 const char *soc_id;88 const char *soc_id;
89 u64 soc_uid = 0;89 u64 soc_uid = 0;
90 u32 val;90 u32 val;
@@ -148,11 +148,11 @@ struct device * __init imx_soc_device_init(void) · 57 unmodified lines
148 soc_id = "i.MX6UL";148 soc_id = "i.MX6UL";
149 break;149 break;
150 case MXC_CPU_IMX6ULL:150 case MXC_CPU_IMX6ULL:
151 ocotp_compat = "fsl,imx6ul-ocotp";151 ocotp_compat = "fsl,imx6ull-ocotp";
152 soc_id = "i.MX6ULL";152 soc_id = "i.MX6ULL";
153 break;153 break;
154 case MXC_CPU_IMX6ULZ:154 case MXC_CPU_IMX6ULZ:
155 ocotp_compat = "fsl,imx6ul-ocotp";155 ocotp_compat = "fsl,imx6ull-ocotp";
156 soc_id = "i.MX6ULZ";156 soc_id = "i.MX6ULZ";
157 break;157 break;
158 case MXC_CPU_IMX6SLL:158 case MXC_CPU_IMX6SLL:
@@ -175,7 +175,9 @@ struct device * __init imx_soc_device_init(void) · 16 unmodified lines
175 ocotp = syscon_regmap_lookup_by_compatible(ocotp_compat);175 ocotp = syscon_regmap_lookup_by_compatible(ocotp_compat);
176 if (IS_ERR(ocotp))176 if (IS_ERR(ocotp))
177 pr_err("%s: failed to find %s regmap!\n", __func__, ocotp_compat);177 pr_err("%s: failed to find %s regmap!\n", __func__, ocotp_compat);
178 }
178 179
180 if (!IS_ERR_OR_NULL(ocotp)) {
179 regmap_read(ocotp, OCOTP_UID_H, &val);181 regmap_read(ocotp, OCOTP_UID_H, &val);
180 soc_uid = val;182 soc_uid = val;
181 regmap_read(ocotp, OCOTP_UID_L, &val);183 regmap_read(ocotp, OCOTP_UID_L, &val);
arch/arm/mach-mmp/pxa168.h+1−1
@@ -17,9 +17,9 @@ extern void pxa168_clear_keypad_wakeup(void); · 16 unmodified lines
17#include <linux/platform_data/keypad-pxa27x.h>17#include <linux/platform_data/keypad-pxa27x.h>
18#include <linux/pxa168_eth.h>18#include <linux/pxa168_eth.h>
19#include <linux/platform_data/mv_usb.h>19#include <linux/platform_data/mv_usb.h>
20#include <linux/soc/mmp/cputype.h>
20 21
21#include "devices.h"22#include "devices.h"
22#include "cputype.h"
23 23
24extern struct pxa_device_desc pxa168_device_uart1;24extern struct pxa_device_desc pxa168_device_uart1;
25extern struct pxa_device_desc pxa168_device_uart2;25extern struct pxa_device_desc pxa168_device_uart2;
arch/arm/mach-vexpress/spc.c+11−1
@@ -551,8 +551,9 @@ static struct clk *ve_spc_clk_register(struct device *cpu_dev) · 550 unmodified lines
551 551
552static int __init ve_spc_clk_init(void)552static int __init ve_spc_clk_init(void)
553{553{
554 int cpu;554 int cpu, cluster;
555 struct clk *clk;555 struct clk *clk;
556 bool init_opp_table[MAX_CLUSTERS] = { false };
556 557
557 if (!info)558 if (!info)
558 return 0; /* Continue only if SPC is initialised */559 return 0; /* Continue only if SPC is initialised */
@@ -578,8 +579,17 @@ static int __init ve_spc_clk_init(void) · 19 unmodified lines
578 continue;579 continue;
579 }580 }
580 581
582 cluster = topology_physical_package_id(cpu_dev->id);
583 if (init_opp_table[cluster])
584 continue;
585
581 if (ve_init_opp_table(cpu_dev))586 if (ve_init_opp_table(cpu_dev))
582 pr_warn("failed to initialise cpu%d opp table\n", cpu);587 pr_warn("failed to initialise cpu%d opp table\n", cpu);
588 else if (dev_pm_opp_set_sharing_cpus(cpu_dev,
589 topology_core_cpumask(cpu_dev->id)))
590 pr_warn("failed to mark OPPs shared for cpu%d\n", cpu);
591 else
592 init_opp_table[cluster] = true;
583 }593 }
584 594
585 platform_device_register_simple("vexpress-spc-cpufreq", -1, NULL, 0);595 platform_device_register_simple("vexpress-spc-cpufreq", -1, NULL, 0);
arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi+8−2
@@ -88,7 +88,7 @@ · 87 unmodified lines
88 88
89 reboot {89 reboot {
90 compatible ="syscon-reboot";90 compatible ="syscon-reboot";
91 regmap = <&dcfg>;91 regmap = <&rst>;
92 offset = <0xb0>;92 offset = <0xb0>;
93 mask = <0x02>;93 mask = <0x02>;
94 };94 };
@@ -178,6 +178,12 @@ · 83 unmodified lines
178 big-endian;178 big-endian;
179 };179 };
180 180
181 rst: syscon@1e60000 {
182 compatible = "syscon";
183 reg = <0x0 0x1e60000 0x0 0x10000>;
184 little-endian;
185 };
186
181 scfg: syscon@1fc0000 {187 scfg: syscon@1fc0000 {
182 compatible = "fsl,ls1028a-scfg", "syscon";188 compatible = "fsl,ls1028a-scfg", "syscon";
183 reg = <0x0 0x1fc0000 0x0 0x10000>;189 reg = <0x0 0x1fc0000 0x0 0x10000>;
@@ -584,7 +590,7 @@ · 400 unmodified lines
584 0x00010004 0x0000003d590 0x00010004 0x0000003d
585 0x00010005 0x00000045591 0x00010005 0x00000045
586 0x00010006 0x0000004d592 0x00010006 0x0000004d
587 0x00010007 0x00000045593 0x00010007 0x00000055
588 0x00010008 0x0000005e594 0x00010008 0x0000005e
589 0x00010009 0x00000066595 0x00010009 0x00000066
590 0x0001000a 0x0000006e596 0x0001000a 0x0000006e
drivers/bus/ti-sysc.c+6−1
@@ -981,7 +981,8 @@ static int sysc_disable_module(struct device *dev) · 980 unmodified lines
981 return ret;981 return ret;
982 }982 }
983 983
984 if (ddata->cfg.quirks & SYSC_QUIRK_SWSUP_MSTANDBY)984 if (ddata->cfg.quirks & (SYSC_QUIRK_SWSUP_MSTANDBY) ||
985 ddata->cfg.quirks & (SYSC_QUIRK_FORCE_MSTANDBY))
985 best_mode = SYSC_IDLE_FORCE;986 best_mode = SYSC_IDLE_FORCE;
986 987
987 reg &= ~(SYSC_IDLE_MASK << regbits->midle_shift);988 reg &= ~(SYSC_IDLE_MASK << regbits->midle_shift);
@@ -1583,6 +1584,10 @@ static int sysc_reset(struct sysc *ddata) · 595 unmodified lines
1583 sysc_val |= sysc_mask;1584 sysc_val |= sysc_mask;
1584 sysc_write(ddata, sysc_offset, sysc_val);1585 sysc_write(ddata, sysc_offset, sysc_val);
1585 1586
1587 if (ddata->cfg.srst_udelay)
1588 usleep_range(ddata->cfg.srst_udelay,
1589 ddata->cfg.srst_udelay * 2);
1590
1586 if (ddata->clk_enable_quirk)1591 if (ddata->clk_enable_quirk)
1587 ddata->clk_enable_quirk(ddata);1592 ddata->clk_enable_quirk(ddata);
1588 1593
drivers/cpufreq/vexpress-spc-cpufreq.c+1−1
@@ -434,7 +434,7 @@ static int ve_spc_cpufreq_init(struct cpufreq_policy *policy) · 433 unmodified lines
434 if (cur_cluster < MAX_CLUSTERS) {434 if (cur_cluster < MAX_CLUSTERS) {
435 int cpu;435 int cpu;
436 436
437 cpumask_copy(policy->cpus, topology_core_cpumask(policy->cpu));437 dev_pm_opp_get_sharing_cpus(cpu_dev, policy->cpus);
438 438
439 for_each_cpu(cpu, policy->cpus)439 for_each_cpu(cpu, policy->cpus)
440 per_cpu(physical_cluster, cpu) = cur_cluster;440 per_cpu(physical_cluster, cpu) = cur_cluster;
drivers/reset/core.c+4−6
@@ -787,7 +787,7 @@ struct reset_control *__devm_reset_control_get(struct device *dev, · 786 unmodified lines
787 return ERR_PTR(-ENOMEM);787 return ERR_PTR(-ENOMEM);
788 788
789 rstc = __reset_control_get(dev, id, index, shared, optional, acquired);789 rstc = __reset_control_get(dev, id, index, shared, optional, acquired);
790 if (!IS_ERR(rstc)) {790 if (!IS_ERR_OR_NULL(rstc)) {
791 *ptr = rstc;791 *ptr = rstc;
792 devres_add(dev, ptr);792 devres_add(dev, ptr);
793 } else {793 } else {
@@ -861,8 +861,7 @@ static int of_reset_control_get_count(struct device_node *node) · 67 unmodified lines
861 * @acquired: only one reset control may be acquired for a given controller861 * @acquired: only one reset control may be acquired for a given controller
862 * and ID862 * and ID
863 *863 *
864 * Returns pointer to allocated reset_control_array on success or864 * Returns pointer to allocated reset_control on success or error on failure
865 * error on failure
866 */865 */
867struct reset_control *866struct reset_control *
868of_reset_control_array_get(struct device_node *np, bool shared, bool optional,867of_reset_control_array_get(struct device_node *np, bool shared, bool optional,
@@ -915,8 +914,7 @@ EXPORT_SYMBOL_GPL(of_reset_control_array_get); · 46 unmodified lines
915 * that just have to be asserted or deasserted, without any914 * that just have to be asserted or deasserted, without any
916 * requirements on the order.915 * requirements on the order.
917 *916 *
918 * Returns pointer to allocated reset_control_array on success or917 * Returns pointer to allocated reset_control on success or error on failure
919 * error on failure
920 */918 */
921struct reset_control *919struct reset_control *
922devm_reset_control_array_get(struct device *dev, bool shared, bool optional)920devm_reset_control_array_get(struct device *dev, bool shared, bool optional)
@@ -930,7 +928,7 @@ devm_reset_control_array_get(struct device *dev, bool shared, bool optional) · 7 unmodified lines
930 return ERR_PTR(-ENOMEM);928 return ERR_PTR(-ENOMEM);
931 929
932 rstc = of_reset_control_array_get(dev->of_node, shared, optional, true);930 rstc = of_reset_control_array_get(dev->of_node, shared, optional, true);
933 if (IS_ERR(rstc)) {931 if (IS_ERR_OR_NULL(rstc)) {
934 devres_free(devres);932 devres_free(devres);
935 return rstc;933 return rstc;
936 }934 }
drivers/reset/reset-brcmstb.c+0−6
@@ -91,12 +91,6 @@ static int brcmstb_reset_probe(struct platform_device *pdev) · 90 unmodified lines
91 return -ENOMEM;91 return -ENOMEM;
92 92
93 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);93 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
94 if (!IS_ALIGNED(res->start, SW_INIT_BANK_SIZE) ||
95 !IS_ALIGNED(resource_size(res), SW_INIT_BANK_SIZE)) {
96 dev_err(kdev, "incorrect register range\n");
97 return -EINVAL;
98 }
99
100 priv->base = devm_ioremap_resource(kdev, res);94 priv->base = devm_ioremap_resource(kdev, res);
101 if (IS_ERR(priv->base))95 if (IS_ERR(priv->base))
102 return PTR_ERR(priv->base);96 return PTR_ERR(priv->base);
include/linux/platform_data/ti-sysc.h+1−0
@@ -49,6 +49,7 @@ struct sysc_regbits { · 48 unmodified lines
49 s8 emufree_shift;49 s8 emufree_shift;
50};50};
51 51
52#define SYSC_QUIRK_FORCE_MSTANDBY BIT(20)
52#define SYSC_MODULE_QUIRK_AESS BIT(19)53#define SYSC_MODULE_QUIRK_AESS BIT(19)
53#define SYSC_MODULE_QUIRK_SGX BIT(18)54#define SYSC_MODULE_QUIRK_SGX BIT(18)
54#define SYSC_MODULE_QUIRK_HDQ1W BIT(17)55#define SYSC_MODULE_QUIRK_HDQ1W BIT(17)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t