History

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

Pull SoC fixes from Arnd Bergmann: "There are a few minor code fixes for tegra firmware, i.MX firmware and the eyeq reset controller, and a MAINTAINERS update as Alyssa Rosenzweig moves on to non-kernel projects. The other changes are all for devicetree files: - Multiple Marvell Armada SoCs need changes to fix PCIe, audio and SATA - A socfpga board fails to probe the ethernet phy - The two temperature sensors on i.MX8MP are swapped - Allwinner devicetree files cause build-time warnings - Two Rockchip based boards need corrections for headphone detection and SPI flash" * tag 'soc-fixes-6.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: MAINTAINERS: remove Alyssa Rosenzweig firmware: tegra: Do not warn on missing memory-region property arm64: dts: marvell: cn9132-clearfog: fix multi-lane pci x2 and x4 ports arm64: dts: marvell: cn9132-clearfog: disable eMMC high-speed modes arm64: dts: marvell: cn913x-solidrun: fix sata ports status ARM: dts: kirkwood: Fix sound DAI cells for OpenRD clients arm64: dts: imx8mp: Correct thermal sensor index ARM: imx: Kconfig: Adjust select after renamed config option firmware: imx: Add stub functions for SCMI CPU API firmware: imx: Add stub functions for SCMI LMM API firmware: imx: Add stub functions for SCMI MISC API riscv: dts: allwinner: rename devterm i2c-gpio node to comply with binding arm64: dts: rockchip: Fix the headphone detection on the orangepi 5 arm64: dts: rockchip: Add vcc supply for SPI Flash on NanoPC-T6 ARM: dts: socfpga: sodia: Fix mdio bus probe and PHY address reset: eyeq: fix OF node leak ARM64: dts: mcbin: fix SATA ports on Macchiatobin ARM: dts: armada-370-db: Fix stereo audio input routing on Armada 370 ARM: dts: allwinner: Minor whitespace cleanup

Linus Torvalds committed 1 year ago

Commit ea78c192 parents 4ea5af0 139237722 files · +113 −28Browse files

Unified · Split

22 files
  1. .get_maintainer.ignore +1 −0
  2. MAINTAINERS +0 −2
  3. arch/arm/boot/dts/allwinner/sun4i-a10-olinuxino-lime.dts +1 −1
  4. arch/arm/boot/dts/allwinner/sun8i-q8-common.dtsi +1 −1
  5. arch/arm/boot/dts/allwinner/sun8i-r40.dtsi +1 −1
  6. arch/arm/boot/dts/allwinner/sun8i-v3s-netcube-kumquat.dts +1 −1
  7. arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_sodia.dts +4 −2
  8. arch/arm/boot/dts/marvell/armada-370-db.dts +1 −1
  9. arch/arm/boot/dts/marvell/kirkwood-openrd-client.dts +1 −1
  10. arch/arm/mach-imx/Kconfig +1 −1
  11. arch/arm64/boot/dts/freescale/imx8mp.dtsi +2 −2
  12. arch/arm64/boot/dts/marvell/armada-8040-mcbin.dtsi +2 −0
  13. arch/arm64/boot/dts/marvell/cn9130-cf.dtsi +4 −3
  14. arch/arm64/boot/dts/marvell/cn9131-cf-solidwan.dts +4 −2
  15. arch/arm64/boot/dts/marvell/cn9132-clearfog.dts +16 −6
  16. arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi +8 −0
  17. arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi +1 −0
  18. arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dtsi +1 −2
  19. arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts +1 −1
  20. drivers/firmware/tegra/bpmp-tegra186.c +4 −1
  21. drivers/reset/reset-eyeq.c +11 −0
  22. include/linux/firmware/imx/sm.h +47 −0
.get_maintainer.ignore+1−0
@@ -1,5 +1,6 @@
11 Alan Cox <alan@lxorguk.ukuu.org.uk>
22 Alan Cox <root@hraefn.swansea.linux.org.uk>
3+Alyssa Rosenzweig <alyssa@rosenzweig.io>
34 Christoph Hellwig <hch@lst.de>
45 Jeff Kirsher <jeffrey.t.kirsher@intel.com>
56 Marc Gonzalez <marc.w.gonzalez@free.fr>
MAINTAINERS+0−2
@@ -1845,7 +1845,6 @@ S: Odd fixes · 1844 unmodified lines
18451845 F: drivers/input/mouse/bcm5974.c
18461846
18471847 APPLE PCIE CONTROLLER DRIVER
1848−M: Alyssa Rosenzweig <alyssa@rosenzweig.io>
18491848 M: Marc Zyngier <maz@kernel.org>
18501849 L: linux-pci@vger.kernel.org
18511850 S: Maintained
@@ -2364,7 +2363,6 @@ F: sound/soc/codecs/ssm3515.c · 512 unmodified lines
23642363 ARM/APPLE MACHINE SUPPORT
23652364 M: Sven Peter <sven@kernel.org>
23662365 M: Janne Grunau <j@jannau.net>
2367−R: Alyssa Rosenzweig <alyssa@rosenzweig.io>
23682366 R: Neal Gompa <neal@gompa.dev>
23692367 L: asahi@lists.linux.dev
23702368 L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
arch/arm/boot/dts/allwinner/sun4i-a10-olinuxino-lime.dts+1−1
@@ -218,7 +218,7 @@ · 217 unmodified lines
218218 &usbphy {
219219 usb0_id_det-gpios = <&pio 7 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH4 */
220220 usb0_vbus_det-gpios = <&pio 7 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH5 */
221− usb0_vbus-supply = <&reg_usb0_vbus>;
221+ usb0_vbus-supply = <&reg_usb0_vbus>;
222222 usb1_vbus-supply = <&reg_usb1_vbus>;
223223 usb2_vbus-supply = <&reg_usb2_vbus>;
224224 status = "okay";
arch/arm/boot/dts/allwinner/sun8i-q8-common.dtsi+1−1
@@ -82,7 +82,7 @@ · 81 unmodified lines
8282 };
8383
8484 &ehci0 {
85− status = "okay";
85+ status = "okay";
8686 };
8787
8888 &mmc1 {
arch/arm/boot/dts/allwinner/sun8i-r40.dtsi+1−1
@@ -705,7 +705,7 @@ · 704 unmodified lines
705705 };
706706
707707 /omit-if-no-ref/
708− uart2_rts_cts_pi_pins: uart2-rts-cts-pi-pins{
708+ uart2_rts_cts_pi_pins: uart2-rts-cts-pi-pins {
709709 pins = "PI16", "PI17";
710710 function = "uart2";
711711 };
arch/arm/boot/dts/allwinner/sun8i-v3s-netcube-kumquat.dts+1−1
@@ -29,7 +29,7 @@ · 28 unmodified lines
2929 clk_can0: clock-can0 {
3030 compatible = "fixed-clock";
3131 #clock-cells = <0>;
32− clock-frequency = <40000000>;
32+ clock-frequency = <40000000>;
3333 };
3434
3535 gpio-keys {
arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_sodia.dts+4−2
@@ -66,8 +66,10 @@ · 65 unmodified lines
6666 mdio0 {
6767 #address-cells = <1>;
6868 #size-cells = <0>;
69− phy0: ethernet-phy@0 {
70− reg = <0>;
69+ compatible = "snps,dwmac-mdio";
70+
71+ phy0: ethernet-phy@4 {
72+ reg = <4>;
7173 rxd0-skew-ps = <0>;
7274 rxd1-skew-ps = <0>;
7375 rxd2-skew-ps = <0>;
arch/arm/boot/dts/marvell/armada-370-db.dts+1−1
@@ -119,7 +119,7 @@ · 118 unmodified lines
119119 "Out Jack", "HPL",
120120 "Out Jack", "HPR",
121121 "AIN1L", "In Jack",
122− "AIN1L", "In Jack";
122+ "AIN1R", "In Jack";
123123 status = "okay";
124124
125125 simple-audio-card,dai-link@0 {
arch/arm/boot/dts/marvell/kirkwood-openrd-client.dts+1−1
@@ -38,7 +38,7 @@ · 37 unmodified lines
3838 simple-audio-card,mclk-fs = <256>;
3939
4040 simple-audio-card,cpu {
41− sound-dai = <&audio0 0>;
41+ sound-dai = <&audio0>;
4242 };
4343
4444 simple-audio-card,codec {
arch/arm/mach-imx/Kconfig+1−1
@@ -242,7 +242,7 @@ choice · 241 unmodified lines
242242
243243 config VF_USE_PIT_TIMER
244244 bool "Use PIT timer"
245− select VF_PIT_TIMER
245+ select NXP_PIT_TIMER
246246 help
247247 Use SoC Periodic Interrupt Timer (PIT) as clocksource
248248
arch/arm64/boot/dts/freescale/imx8mp.dtsi+2−2
@@ -298,7 +298,7 @@ · 297 unmodified lines
298298 cpu-thermal {
299299 polling-delay-passive = <250>;
300300 polling-delay = <2000>;
301− thermal-sensors = <&tmu 0>;
301+ thermal-sensors = <&tmu 1>;
302302 trips {
303303 cpu_alert0: trip0 {
304304 temperature = <85000>;
@@ -331,7 +331,7 @@ · 26 unmodified lines
331331 soc-thermal {
332332 polling-delay-passive = <250>;
333333 polling-delay = <2000>;
334− thermal-sensors = <&tmu 1>;
334+ thermal-sensors = <&tmu 0>;
335335 trips {
336336 soc_alert0: trip0 {
337337 temperature = <85000>;
arch/arm64/boot/dts/marvell/armada-8040-mcbin.dtsi+2−0
@@ -345,11 +345,13 @@ · 344 unmodified lines
345345 /* CPS Lane 1 - U32 */
346346 sata-port@0 {
347347 phys = <&cp1_comphy1 0>;
348+ status = "okay";
348349 };
349350
350351 /* CPS Lane 3 - U31 */
351352 sata-port@1 {
352353 phys = <&cp1_comphy3 1>;
354+ status = "okay";
353355 };
354356 };
355357
arch/arm64/boot/dts/marvell/cn9130-cf.dtsi+4−3
@@ -152,11 +152,12 @@ · 151 unmodified lines
152152
153153 /* SRDS #0 - SATA on M.2 connector */
154154 &cp0_sata0 {
155− phys = <&cp0_comphy0 1>;
156155 status = "okay";
157156
158− /* only port 1 is available */
159− /delete-node/ sata-port@0;
157+ sata-port@1 {
158+ phys = <&cp0_comphy0 1>;
159+ status = "okay";
160+ };
160161 };
161162
162163 /* microSD */
arch/arm64/boot/dts/marvell/cn9131-cf-solidwan.dts+4−2
@@ -563,11 +563,13 @@ · 562 unmodified lines
563563
564564 /* SRDS #1 - SATA on M.2 (J44) */
565565 &cp1_sata0 {
566− phys = <&cp1_comphy1 0>;
567566 status = "okay";
568567
569568 /* only port 0 is available */
570− /delete-node/ sata-port@1;
569+ sata-port@0 {
570+ phys = <&cp1_comphy1 0>;
571+ status = "okay";
572+ };
571573 };
572574
573575 &cp1_syscon0 {
arch/arm64/boot/dts/marvell/cn9132-clearfog.dts+16−6
@@ -413,7 +413,13 @@ · 412 unmodified lines
413413 /* SRDS #0,#1,#2,#3 - PCIe */
414414 &cp0_pcie0 {
415415 num-lanes = <4>;
416− phys = <&cp0_comphy0 0>, <&cp0_comphy1 0>, <&cp0_comphy2 0>, <&cp0_comphy3 0>;
416+ /*
417+ * The mvebu-comphy driver does not currently know how to pass correct
418+ * lane-count to ATF while configuring the serdes lanes.
419+ * Rely on bootloader configuration only.
420+ *
421+ * phys = <&cp0_comphy0 0>, <&cp0_comphy1 0>, <&cp0_comphy2 0>, <&cp0_comphy3 0>;
422+ */
417423 status = "okay";
418424 };
419425
@@ -475,7 +481,13 @@ · 55 unmodified lines
475481 /* SRDS #0,#1 - PCIe */
476482 &cp1_pcie0 {
477483 num-lanes = <2>;
478− phys = <&cp1_comphy0 0>, <&cp1_comphy1 0>;
484+ /*
485+ * The mvebu-comphy driver does not currently know how to pass correct
486+ * lane-count to ATF while configuring the serdes lanes.
487+ * Rely on bootloader configuration only.
488+ *
489+ * phys = <&cp1_comphy0 0>, <&cp1_comphy1 0>;
490+ */
479491 status = "okay";
480492 };
481493
@@ -512,10 +524,9 @@ · 30 unmodified lines
512524 status = "okay";
513525
514526 /* only port 1 is available */
515− /delete-node/ sata-port@0;
516−
517527 sata-port@1 {
518528 phys = <&cp1_comphy3 1>;
529+ status = "okay";
519530 };
520531 };
521532
@@ -631,9 +642,8 @@ · 109 unmodified lines
631642 status = "okay";
632643
633644 /* only port 1 is available */
634− /delete-node/ sata-port@0;
635−
636645 sata-port@1 {
646+ status = "okay";
637647 phys = <&cp2_comphy3 1>;
638648 };
639649 };
arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi+8−0
@@ -137,6 +137,14 @@ · 136 unmodified lines
137137 pinctrl-0 = <&ap_mmc0_pins>;
138138 pinctrl-names = "default";
139139 vqmmc-supply = <&v_1_8>;
140+ /*
141+ * Not stable in HS modes - phy needs "more calibration", so disable
142+ * UHS (by preventing voltage switch), SDR104, SDR50 and DDR50 modes.
143+ */
144+ no-1-8-v;
145+ no-sd;
146+ no-sdio;
147+ non-removable;
140148 status = "okay";
141149 };
142150
arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi+1−0
@@ -731,6 +731,7 @@ · 730 unmodified lines
731731 spi-max-frequency = <104000000>;
732732 spi-rx-bus-width = <4>;
733733 spi-tx-bus-width = <1>;
734+ vcc-supply = <&vcc_1v8_s3>;
734735 };
735736 };
736737
arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dtsi+1−2
@@ -42,9 +42,8 @@ · 41 unmodified lines
4242 simple-audio-card,bitclock-master = <&masterdai>;
4343 simple-audio-card,format = "i2s";
4444 simple-audio-card,frame-master = <&masterdai>;
45− simple-audio-card,hp-det-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>;
45+ simple-audio-card,hp-det-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;
4646 simple-audio-card,mclk-fs = <256>;
47− simple-audio-card,pin-switches = "Headphones";
4847 simple-audio-card,routing =
4948 "Headphones", "LOUT1",
5049 "Headphones", "ROUT1",
arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts+1−1
@@ -17,7 +17,7 @@ · 16 unmodified lines
1717 #cooling-cells = <2>;
1818 };
1919
20− i2c-gpio-0 {
20+ i2c-0 {
2121 compatible = "i2c-gpio";
2222 sda-gpios = <&pio 3 14 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PD14/GPIO44 */
2323 scl-gpios = <&pio 3 15 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; /* PD15/GPIO45 */
drivers/firmware/tegra/bpmp-tegra186.c+4−1
@@ -198,7 +198,10 @@ static int tegra186_bpmp_dram_init(struct tegra_bpmp *bpmp) · 197 unmodified lines
198198
199199 err = of_reserved_mem_region_to_resource(bpmp->dev->of_node, 0, &res);
200200 if (err < 0) {
201− dev_warn(bpmp->dev, "failed to parse memory region: %d\n", err);
201+ if (err != -ENODEV)
202+ dev_warn(bpmp->dev,
203+ "failed to parse memory region: %d\n", err);
204+
202205 return err;
203206 }
204207
drivers/reset/reset-eyeq.c+11−0
@@ -410,6 +410,13 @@ static int eqr_of_xlate_twocells(struct reset_controller_dev *rcdev, · 409 unmodified lines
410410 return eqr_of_xlate_internal(rcdev, reset_spec->args[0], reset_spec->args[1]);
411411 }
412412
413+static void eqr_of_node_put(void *_dev)
414+{
415+ struct device *dev = _dev;
416+
417+ of_node_put(dev->of_node);
418+}
419+
413420 static int eqr_probe(struct auxiliary_device *adev,
414421 const struct auxiliary_device_id *id)
415422 {
@@ -428,6 +435,10 @@ static int eqr_probe(struct auxiliary_device *adev, · 12 unmodified lines
428435 if (!dev->of_node)
429436 return -ENODEV;
430437
438+ ret = devm_add_action_or_reset(dev, eqr_of_node_put, dev);
439+ if (ret)
440+ return ret;
441+
431442 /*
432443 * Using our newfound OF node, we can get match data. We cannot use
433444 * device_get_match_data() because it does not match reused OF nodes.
include/linux/firmware/imx/sm.h+47−0
@@ -26,13 +26,43 @@ · 25 unmodified lines
2626 #define SCMI_IMX94_CTRL_SAI3_MCLK 5U /*!< WAKE SAI3 MCLK */
2727 #define SCMI_IMX94_CTRL_SAI4_MCLK 6U /*!< WAKE SAI4 MCLK */
2828
29+#if IS_ENABLED(CONFIG_IMX_SCMI_MISC_DRV)
2930 int scmi_imx_misc_ctrl_get(u32 id, u32 *num, u32 *val);
3031 int scmi_imx_misc_ctrl_set(u32 id, u32 val);
32+#else
33+static inline int scmi_imx_misc_ctrl_get(u32 id, u32 *num, u32 *val)
34+{
35+ return -EOPNOTSUPP;
36+}
3137
38+static inline int scmi_imx_misc_ctrl_set(u32 id, u32 val)
39+{
40+ return -EOPNOTSUPP;
41+}
42+#endif
43+
44+#if IS_ENABLED(CONFIG_IMX_SCMI_CPU_DRV)
3245 int scmi_imx_cpu_start(u32 cpuid, bool start);
3346 int scmi_imx_cpu_started(u32 cpuid, bool *started);
3447 int scmi_imx_cpu_reset_vector_set(u32 cpuid, u64 vector, bool start, bool boot,
3548 bool resume);
49+#else
50+static inline int scmi_imx_cpu_start(u32 cpuid, bool start)
51+{
52+ return -EOPNOTSUPP;
53+}
54+
55+static inline int scmi_imx_cpu_started(u32 cpuid, bool *started)
56+{
57+ return -EOPNOTSUPP;
58+}
59+
60+static inline int scmi_imx_cpu_reset_vector_set(u32 cpuid, u64 vector, bool start,
61+ bool boot, bool resume)
62+{
63+ return -EOPNOTSUPP;
64+}
65+#endif
3666
3767 enum scmi_imx_lmm_op {
3868 SCMI_IMX_LMM_BOOT,
@@ -44,7 +74,24 @@ enum scmi_imx_lmm_op { · 5 unmodified lines
4474 #define SCMI_IMX_LMM_OP_FORCEFUL 0
4575 #define SCMI_IMX_LMM_OP_GRACEFUL BIT(0)
4676
77+#if IS_ENABLED(CONFIG_IMX_SCMI_LMM_DRV)
4778 int scmi_imx_lmm_operation(u32 lmid, enum scmi_imx_lmm_op op, u32 flags);
4879 int scmi_imx_lmm_info(u32 lmid, struct scmi_imx_lmm_info *info);
4980 int scmi_imx_lmm_reset_vector_set(u32 lmid, u32 cpuid, u32 flags, u64 vector);
81+#else
82+static inline int scmi_imx_lmm_operation(u32 lmid, enum scmi_imx_lmm_op op, u32 flags)
83+{
84+ return -EOPNOTSUPP;
85+}
86+
87+static inline int scmi_imx_lmm_info(u32 lmid, struct scmi_imx_lmm_info *info)
88+{
89+ return -EOPNOTSUPP;
90+}
91+
92+static inline int scmi_imx_lmm_reset_vector_set(u32 lmid, u32 cpuid, u32 flags, u64 vector)
93+{
94+ return -EOPNOTSUPP;
95+}
96+#endif
5097 #endif