Commit 8013d1d3 authored by Linus Torvalds's avatar Linus Torvalds

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

Pull ARM SoC fixes from Arnd Bergmann:

 - A fix for a regression caused by the previous set of bugfixes
   changing tegra and at91 pinctrl properties.

   More work is needed to figure out what this should actually be, but a
   revert makes it work for the moment.

 - Defconfig regression fixes for tegra after renamed symbols

 - Build-time warning and static checker fixes for imx, op-tee, sunxi,
   meson, at91, and omap

 - More at91 DT fixes for audio, regulator and spi nodes

 - A regression fix for Renesas Hyperflash memory probe

 - A stability fix for amlogic boards, modifying the allowed cpufreq
   states

 - Multiple fixes for system suspend on omap2+

 - DT fixes for various i.MX bugs

 - A probe error fix for imx6ull-colibri MMC

 - A MAINTAINERS file entry for samsung bug reports

* tag 'soc-fixes-5.18-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (42 commits)
  Revert "arm: dts: at91: Fix boolean properties with values"
  bus: sunxi-rsb: Fix the return value of sunxi_rsb_device_create()
  Revert "arm64: dts: tegra: Fix boolean properties with values"
  arm64: dts: imx8mn-ddr4-evk: Describe the 32.768 kHz PMIC clock
  ARM: dts: imx6ull-colibri: fix vqmmc regulator
  MAINTAINERS: add Bug entry for Samsung and memory controller drivers
  memory: renesas-rpc-if: Fix HF/OSPI data transfer in Manual Mode
  ARM: dts: logicpd-som-lv: Fix wrong pinmuxing on OMAP35
  ARM: dts: am3517-evm: Fix misc pinmuxing
  ARM: dts: am33xx-l4: Add missing touchscreen clock properties
  ARM: dts: Fix mmc order for omap3-gta04
  ARM: dts: at91: fix pinctrl phandles
  ARM: dts: at91: sama5d4_xplained: fix pinctrl phandle name
  ARM: dts: at91: Describe regulators on at91sam9g20ek
  ARM: dts: at91: Map MCLK for wm8731 on at91sam9g20ek
  ARM: dts: at91: Fix boolean properties with values
  ARM: dts: at91: use generic node name for dataflash
  ARM: dts: at91: align SPI NOR node name with dtschema
  ARM: dts: at91: sama7g5ek: Align the impedance of the QSPI0's HSIO and PCB lines
  ARM: dts: at91: sama7g5ek: enable pull-up on flexcom3 console lines
  ...
parents c0e6265e adee8aa2
...@@ -54,7 +54,7 @@ flexcom@f8034000 { ...@@ -54,7 +54,7 @@ flexcom@f8034000 {
clock-names = "spi_clk"; clock-names = "spi_clk";
atmel,fifo-size = <32>; atmel,fifo-size = <32>;
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at25f512b"; compatible = "atmel,at25f512b";
reg = <0>; reg = <0>;
spi-max-frequency = <20000000>; spi-max-frequency = <20000000>;
......
...@@ -2644,6 +2644,7 @@ L: linux-samsung-soc@vger.kernel.org ...@@ -2644,6 +2644,7 @@ L: linux-samsung-soc@vger.kernel.org
S: Maintained S: Maintained
C: irc://irc.libera.chat/linux-exynos C: irc://irc.libera.chat/linux-exynos
Q: https://patchwork.kernel.org/project/linux-samsung-soc/list/ Q: https://patchwork.kernel.org/project/linux-samsung-soc/list/
B: mailto:linux-samsung-soc@vger.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git
F: Documentation/arm/samsung/ F: Documentation/arm/samsung/
F: Documentation/devicetree/bindings/arm/samsung/ F: Documentation/devicetree/bindings/arm/samsung/
...@@ -11973,6 +11974,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> ...@@ -11973,6 +11974,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
L: linux-pm@vger.kernel.org L: linux-pm@vger.kernel.org
S: Supported S: Supported
B: mailto:linux-samsung-soc@vger.kernel.org
F: Documentation/devicetree/bindings/power/supply/maxim,max14577.yaml F: Documentation/devicetree/bindings/power/supply/maxim,max14577.yaml
F: Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml F: Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
F: drivers/power/supply/max14577_charger.c F: drivers/power/supply/max14577_charger.c
...@@ -11984,6 +11986,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> ...@@ -11984,6 +11986,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
S: Supported S: Supported
B: mailto:linux-samsung-soc@vger.kernel.org
F: Documentation/devicetree/bindings/*/maxim,max14577.yaml F: Documentation/devicetree/bindings/*/maxim,max14577.yaml
F: Documentation/devicetree/bindings/*/maxim,max77686.yaml F: Documentation/devicetree/bindings/*/maxim,max77686.yaml
F: Documentation/devicetree/bindings/*/maxim,max77693.yaml F: Documentation/devicetree/bindings/*/maxim,max77693.yaml
...@@ -12677,6 +12680,7 @@ MEMORY CONTROLLER DRIVERS ...@@ -12677,6 +12680,7 @@ MEMORY CONTROLLER DRIVERS
M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
S: Maintained S: Maintained
B: mailto:krzysztof.kozlowski@linaro.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl.git
F: Documentation/devicetree/bindings/memory-controllers/ F: Documentation/devicetree/bindings/memory-controllers/
F: drivers/memory/ F: drivers/memory/
...@@ -15611,6 +15615,7 @@ L: linux-samsung-soc@vger.kernel.org ...@@ -15611,6 +15615,7 @@ L: linux-samsung-soc@vger.kernel.org
S: Maintained S: Maintained
C: irc://irc.libera.chat/linux-exynos C: irc://irc.libera.chat/linux-exynos
Q: https://patchwork.kernel.org/project/linux-samsung-soc/list/ Q: https://patchwork.kernel.org/project/linux-samsung-soc/list/
B: mailto:linux-samsung-soc@vger.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/samsung.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/samsung.git
F: Documentation/devicetree/bindings/pinctrl/samsung,pinctrl*yaml F: Documentation/devicetree/bindings/pinctrl/samsung,pinctrl*yaml
F: drivers/pinctrl/samsung/ F: drivers/pinctrl/samsung/
...@@ -17327,6 +17332,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> ...@@ -17327,6 +17332,7 @@ M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
M: Sylwester Nawrocki <s.nawrocki@samsung.com> M: Sylwester Nawrocki <s.nawrocki@samsung.com>
L: alsa-devel@alsa-project.org (moderated for non-subscribers) L: alsa-devel@alsa-project.org (moderated for non-subscribers)
S: Supported S: Supported
B: mailto:linux-samsung-soc@vger.kernel.org
F: Documentation/devicetree/bindings/sound/samsung* F: Documentation/devicetree/bindings/sound/samsung*
F: sound/soc/samsung/ F: sound/soc/samsung/
...@@ -17371,6 +17377,7 @@ M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> ...@@ -17371,6 +17377,7 @@ M: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
L: linux-samsung-soc@vger.kernel.org L: linux-samsung-soc@vger.kernel.org
S: Supported S: Supported
B: mailto:linux-samsung-soc@vger.kernel.org
F: Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml F: Documentation/devicetree/bindings/clock/samsung,s2mps11.yaml
F: Documentation/devicetree/bindings/mfd/samsung,s2m*.yaml F: Documentation/devicetree/bindings/mfd/samsung,s2m*.yaml
F: Documentation/devicetree/bindings/mfd/samsung,s5m*.yaml F: Documentation/devicetree/bindings/mfd/samsung,s5m*.yaml
......
...@@ -263,6 +263,8 @@ tscadc: tscadc@0 { ...@@ -263,6 +263,8 @@ tscadc: tscadc@0 {
compatible = "ti,am3359-tscadc"; compatible = "ti,am3359-tscadc";
reg = <0x0 0x1000>; reg = <0x0 0x1000>;
interrupts = <16>; interrupts = <16>;
clocks = <&adc_tsc_fck>;
clock-names = "fck";
status = "disabled"; status = "disabled";
dmas = <&edma 53 0>, <&edma 57 0>; dmas = <&edma 53 0>, <&edma 57 0>;
dma-names = "fifo0", "fifo1"; dma-names = "fifo0", "fifo1";
......
...@@ -161,6 +161,8 @@ pwm11: dmtimer-pwm@11 { ...@@ -161,6 +161,8 @@ pwm11: dmtimer-pwm@11 {
/* HS USB Host PHY on PORT 1 */ /* HS USB Host PHY on PORT 1 */
hsusb1_phy: hsusb1_phy { hsusb1_phy: hsusb1_phy {
pinctrl-names = "default";
pinctrl-0 = <&hsusb1_rst_pins>;
compatible = "usb-nop-xceiv"; compatible = "usb-nop-xceiv";
reset-gpios = <&gpio2 25 GPIO_ACTIVE_LOW>; /* gpio_57 */ reset-gpios = <&gpio2 25 GPIO_ACTIVE_LOW>; /* gpio_57 */
#phy-cells = <0>; #phy-cells = <0>;
...@@ -168,7 +170,9 @@ hsusb1_phy: hsusb1_phy { ...@@ -168,7 +170,9 @@ hsusb1_phy: hsusb1_phy {
}; };
&davinci_emac { &davinci_emac {
status = "okay"; pinctrl-names = "default";
pinctrl-0 = <&ethernet_pins>;
status = "okay";
}; };
&davinci_mdio { &davinci_mdio {
...@@ -193,6 +197,8 @@ dpi_out: endpoint { ...@@ -193,6 +197,8 @@ dpi_out: endpoint {
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
clock-frequency = <400000>; clock-frequency = <400000>;
/* User DIP swithes [1:8] / User LEDS [1:2] */ /* User DIP swithes [1:8] / User LEDS [1:2] */
tca6416: gpio@21 { tca6416: gpio@21 {
...@@ -205,6 +211,8 @@ tca6416: gpio@21 { ...@@ -205,6 +211,8 @@ tca6416: gpio@21 {
}; };
&i2c3 { &i2c3 {
pinctrl-names = "default";
pinctrl-0 = <&i2c3_pins>;
clock-frequency = <400000>; clock-frequency = <400000>;
}; };
...@@ -223,6 +231,8 @@ &mmc3 { ...@@ -223,6 +231,8 @@ &mmc3 {
}; };
&usbhshost { &usbhshost {
pinctrl-names = "default";
pinctrl-0 = <&hsusb1_pins>;
port1-mode = "ehci-phy"; port1-mode = "ehci-phy";
}; };
...@@ -231,8 +241,35 @@ &usbhsehci { ...@@ -231,8 +241,35 @@ &usbhsehci {
}; };
&omap3_pmx_core { &omap3_pmx_core {
pinctrl-names = "default";
pinctrl-0 = <&hsusb1_rst_pins>; ethernet_pins: pinmux_ethernet_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x21fe, PIN_INPUT | MUX_MODE0) /* rmii_mdio_data */
OMAP3_CORE1_IOPAD(0x2200, MUX_MODE0) /* rmii_mdio_clk */
OMAP3_CORE1_IOPAD(0x2202, PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii_rxd0 */
OMAP3_CORE1_IOPAD(0x2204, PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii_rxd1 */
OMAP3_CORE1_IOPAD(0x2206, PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii_crs_dv */
OMAP3_CORE1_IOPAD(0x2208, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* rmii_rxer */
OMAP3_CORE1_IOPAD(0x220a, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* rmii_txd0 */
OMAP3_CORE1_IOPAD(0x220c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* rmii_txd1 */
OMAP3_CORE1_IOPAD(0x220e, PIN_OUTPUT_PULLDOWN |MUX_MODE0) /* rmii_txen */
OMAP3_CORE1_IOPAD(0x2210, PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii_50mhz_clk */
>;
};
i2c2_pins: pinmux_i2c2_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x21be, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
OMAP3_CORE1_IOPAD(0x21c0, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
>;
};
i2c3_pins: pinmux_i2c3_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
>;
};
leds_pins: pinmux_leds_pins { leds_pins: pinmux_leds_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
...@@ -300,8 +337,6 @@ OMAP3_CORE1_IOPAD(0x20ba, PIN_OUTPUT | MUX_MODE4) /* gpmc_ncs6.gpio_57 */ ...@@ -300,8 +337,6 @@ OMAP3_CORE1_IOPAD(0x20ba, PIN_OUTPUT | MUX_MODE4) /* gpmc_ncs6.gpio_57 */
}; };
&omap3_pmx_core2 { &omap3_pmx_core2 {
pinctrl-names = "default";
pinctrl-0 = <&hsusb1_pins>;
hsusb1_pins: pinmux_hsusb1_pins { hsusb1_pins: pinmux_hsusb1_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
......
...@@ -69,6 +69,8 @@ nand@0,0 { ...@@ -69,6 +69,8 @@ nand@0,0 {
}; };
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;
clock-frequency = <400000>; clock-frequency = <400000>;
s35390a: s35390a@30 { s35390a: s35390a@30 {
...@@ -179,6 +181,13 @@ bluetooth { ...@@ -179,6 +181,13 @@ bluetooth {
&omap3_pmx_core { &omap3_pmx_core {
i2c1_pins: pinmux_i2c1_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_scl */
OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_sda */
>;
};
wl12xx_buffer_pins: pinmux_wl12xx_buffer_pins { wl12xx_buffer_pins: pinmux_wl12xx_buffer_pins {
pinctrl-single,pins = < pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x2156, PIN_OUTPUT | MUX_MODE4) /* mmc1_dat7.gpio_129 */ OMAP3_CORE1_IOPAD(0x2156, PIN_OUTPUT | MUX_MODE4) /* mmc1_dat7.gpio_129 */
......
...@@ -44,7 +44,7 @@ &spi0 { ...@@ -44,7 +44,7 @@ &spi0 {
status = "okay"; status = "okay";
/* spi0.0: 4M Flash Macronix MX25R4035FM1IL0 */ /* spi0.0: 4M Flash Macronix MX25R4035FM1IL0 */
spi-flash@0 { flash@0 {
compatible = "mxicy,mx25u4035", "jedec,spi-nor"; compatible = "mxicy,mx25u4035", "jedec,spi-nor";
spi-max-frequency = <33000000>; spi-max-frequency = <33000000>;
reg = <0>; reg = <0>;
......
...@@ -225,7 +225,7 @@ pinctrl_pio_zbe_rst: gpio_zbe_rst { ...@@ -225,7 +225,7 @@ pinctrl_pio_zbe_rst: gpio_zbe_rst {
pinctrl_pio_io_reset: gpio_io_reset { pinctrl_pio_io_reset: gpio_io_reset {
pinmux = <PIN_PB30__GPIO>; pinmux = <PIN_PB30__GPIO>;
bias-disable; bias-disable;
drive-open-drain; drive-open-drain = <1>;
output-low; output-low;
}; };
pinctrl_pio_input: gpio_input { pinctrl_pio_input: gpio_input {
......
...@@ -211,7 +211,7 @@ pinctrl_flx4_default: flx4_i2c6_default { ...@@ -211,7 +211,7 @@ pinctrl_flx4_default: flx4_i2c6_default {
pinmux = <PIN_PD12__FLEXCOM4_IO0>, //DATA pinmux = <PIN_PD12__FLEXCOM4_IO0>, //DATA
<PIN_PD13__FLEXCOM4_IO1>; //CLK <PIN_PD13__FLEXCOM4_IO1>; //CLK
bias-disable; bias-disable;
drive-open-drain; drive-open-drain = <1>;
}; };
pinctrl_pwm0 { pinctrl_pwm0 {
......
...@@ -125,7 +125,7 @@ &spi0 { ...@@ -125,7 +125,7 @@ &spi0 {
cs-gpios = <&pioA 3 GPIO_ACTIVE_HIGH>, <&pioC 11 GPIO_ACTIVE_LOW>, <0>, <0>; cs-gpios = <&pioA 3 GPIO_ACTIVE_HIGH>, <&pioC 11 GPIO_ACTIVE_LOW>, <0>, <0>;
status = "okay"; status = "okay";
m25p80@0 { flash@0 {
compatible = "jedec,spi-nor"; compatible = "jedec,spi-nor";
spi-max-frequency = <20000000>; spi-max-frequency = <20000000>;
reg = <0>; reg = <0>;
......
...@@ -214,7 +214,7 @@ &qspi1 { ...@@ -214,7 +214,7 @@ &qspi1 {
pinctrl-0 = <&pinctrl_qspi1_default>; pinctrl-0 = <&pinctrl_qspi1_default>;
status = "disabled"; status = "disabled";
qspi1_flash: spi_flash@0 { qspi1_flash: flash@0 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
compatible = "jedec,spi-nor"; compatible = "jedec,spi-nor";
......
...@@ -191,7 +191,7 @@ &pwm0 { ...@@ -191,7 +191,7 @@ &pwm0 {
&qspi1 { &qspi1 {
status = "okay"; status = "okay";
qspi1_flash: spi_flash@0 { qspi1_flash: flash@0 {
status = "okay"; status = "okay";
}; };
}; };
......
...@@ -137,7 +137,7 @@ spi0: spi@f8000000 { ...@@ -137,7 +137,7 @@ spi0: spi@f8000000 {
pinctrl-0 = <&pinctrl_spi0_default>; pinctrl-0 = <&pinctrl_spi0_default>;
status = "okay"; status = "okay";
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
reg = <0>; reg = <0>;
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
......
...@@ -57,8 +57,8 @@ slot@0 { ...@@ -57,8 +57,8 @@ slot@0 {
}; };
spi0: spi@f0004000 { spi0: spi@f0004000 {
pinctrl-names = "default"; pinctrl-names = "default", "cs";
pinctrl-0 = <&pinctrl_spi0_cs>; pinctrl-1 = <&pinctrl_spi0_cs>;
cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>; cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>;
status = "okay"; status = "okay";
}; };
...@@ -171,8 +171,8 @@ slot@0 { ...@@ -171,8 +171,8 @@ slot@0 {
}; };
spi1: spi@f8008000 { spi1: spi@f8008000 {
pinctrl-names = "default"; pinctrl-names = "default", "cs";
pinctrl-0 = <&pinctrl_spi1_cs>; pinctrl-1 = <&pinctrl_spi1_cs>;
cs-gpios = <&pioC 25 0>; cs-gpios = <&pioC 25 0>;
status = "okay"; status = "okay";
}; };
......
...@@ -49,7 +49,7 @@ spi0: spi@f8010000 { ...@@ -49,7 +49,7 @@ spi0: spi@f8010000 {
cs-gpios = <&pioC 3 0>, <0>, <0>, <0>; cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
status = "okay"; status = "okay";
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -81,8 +81,8 @@ usart4: serial@fc010000 { ...@@ -81,8 +81,8 @@ usart4: serial@fc010000 {
}; };
spi1: spi@fc018000 { spi1: spi@fc018000 {
pinctrl-names = "default"; pinctrl-names = "default", "cs";
pinctrl-0 = <&pinctrl_spi0_cs>; pinctrl-1 = <&pinctrl_spi1_cs>;
cs-gpios = <&pioB 21 0>; cs-gpios = <&pioB 21 0>;
status = "okay"; status = "okay";
}; };
...@@ -140,7 +140,7 @@ pinctrl_macb0_phy_irq: macb0_phy_irq_0 { ...@@ -140,7 +140,7 @@ pinctrl_macb0_phy_irq: macb0_phy_irq_0 {
atmel,pins = atmel,pins =
<AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
}; };
pinctrl_spi0_cs: spi0_cs_default { pinctrl_spi1_cs: spi1_cs_default {
atmel,pins = atmel,pins =
<AT91_PIOB 21 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; <AT91_PIOB 21 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
}; };
......
...@@ -65,7 +65,7 @@ ssc0: ssc@f8008000 { ...@@ -65,7 +65,7 @@ ssc0: ssc@f8008000 {
spi0: spi@f8010000 { spi0: spi@f8010000 {
cs-gpios = <&pioC 3 0>, <0>, <0>, <0>; cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
status = "okay"; status = "okay";
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -495,7 +495,7 @@ pinctrl_flx0_default: flx0_default { ...@@ -495,7 +495,7 @@ pinctrl_flx0_default: flx0_default {
pinctrl_flx3_default: flx3_default { pinctrl_flx3_default: flx3_default {
pinmux = <PIN_PD16__FLEXCOM3_IO0>, pinmux = <PIN_PD16__FLEXCOM3_IO0>,
<PIN_PD17__FLEXCOM3_IO1>; <PIN_PD17__FLEXCOM3_IO1>;
bias-disable; bias-pull-up;
}; };
pinctrl_flx4_default: flx4_default { pinctrl_flx4_default: flx4_default {
...@@ -655,7 +655,7 @@ pinctrl_qspi: qspi { ...@@ -655,7 +655,7 @@ pinctrl_qspi: qspi {
<PIN_PB21__QSPI0_INT>; <PIN_PB21__QSPI0_INT>;
bias-disable; bias-disable;
slew-rate = <0>; slew-rate = <0>;
atmel,drive-strength = <ATMEL_PIO_DRVSTR_HI>; atmel,drive-strength = <ATMEL_PIO_DRVSTR_ME>;
}; };
pinctrl_sdmmc0_default: sdmmc0_default { pinctrl_sdmmc0_default: sdmmc0_default {
......
...@@ -59,7 +59,7 @@ slot@0 { ...@@ -59,7 +59,7 @@ slot@0 {
spi0: spi@f8010000 { spi0: spi@f8010000 {
cs-gpios = <&pioC 3 0>, <0>, <0>, <0>; cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
status = "okay"; status = "okay";
m25p80@0 { flash@0 {
compatible = "n25q32b", "jedec,spi-nor"; compatible = "n25q32b", "jedec,spi-nor";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -73,7 +73,7 @@ &pinctrl_uart1_dcd ...@@ -73,7 +73,7 @@ &pinctrl_uart1_dcd
spi0: spi@fffe0000 { spi0: spi@fffe0000 {
status = "okay"; status = "okay";
cs-gpios = <&pioA 3 0>, <0>, <0>, <0>; cs-gpios = <&pioA 3 0>, <0>, <0>, <0>;
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <15000000>; spi-max-frequency = <15000000>;
reg = <0>; reg = <0>;
...@@ -94,7 +94,7 @@ usb0: ohci@300000 { ...@@ -94,7 +94,7 @@ usb0: ohci@300000 {
status = "okay"; status = "okay";
}; };
nor_flash@10000000 { flash@10000000 {
compatible = "cfi-flash"; compatible = "cfi-flash";
reg = <0x10000000 0x800000>; reg = <0x10000000 0x800000>;
linux,mtd-name = "physmap-flash.0"; linux,mtd-name = "physmap-flash.0";
......
...@@ -92,7 +92,7 @@ macb0: ethernet@fffc4000 { ...@@ -92,7 +92,7 @@ macb0: ethernet@fffc4000 {
spi0: spi@fffc8000 { spi0: spi@fffc8000 {
cs-gpios = <0>, <&pioC 11 0>, <0>, <0>; cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
mtd_dataflash@1 { flash@1 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <1>; reg = <1>;
......
...@@ -145,7 +145,7 @@ spi0: spi@fffc8000 { ...@@ -145,7 +145,7 @@ spi0: spi@fffc8000 {
cs-gpios = <&pioA 3 0>, <0>, <&pioA 28 0>, <0>; cs-gpios = <&pioA 3 0>, <0>, <&pioA 28 0>, <0>;
status = "okay"; status = "okay";
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
reg = <0>; reg = <0>;
spi-max-frequency = <15000000>; spi-max-frequency = <15000000>;
......
...@@ -95,7 +95,7 @@ pinctrl_board_mmc0: mmc0-board { ...@@ -95,7 +95,7 @@ pinctrl_board_mmc0: mmc0-board {
spi0: spi@fffa4000 { spi0: spi@fffa4000 {
status = "okay"; status = "okay";
cs-gpios = <&pioA 5 0>, <0>, <0>, <0>; cs-gpios = <&pioA 5 0>, <0>, <0>, <0>;
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -110,7 +110,7 @@ ssc0: ssc@fffbc000 { ...@@ -110,7 +110,7 @@ ssc0: ssc@fffbc000 {
spi0: spi@fffc8000 { spi0: spi@fffc8000 {
cs-gpios = <0>, <&pioC 11 0>, <0>, <0>; cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
mtd_dataflash@1 { flash@1 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <1>; reg = <1>;
...@@ -214,11 +214,23 @@ i2c-gpio-0 { ...@@ -214,11 +214,23 @@ i2c-gpio-0 {
24c512@50 { 24c512@50 {
compatible = "atmel,24c512"; compatible = "atmel,24c512";
reg = <0x50>; reg = <0x50>;
vcc-supply = <&reg_3v3>;
}; };
wm8731: wm8731@1b { wm8731: wm8731@1b {
compatible = "wm8731"; compatible = "wm8731";
reg = <0x1b>; reg = <0x1b>;
/* PCK0 at 12MHz */
clocks = <&pmc PMC_TYPE_SYSTEM 8>;
clock-names = "mclk";
assigned-clocks = <&pmc PMC_TYPE_SYSTEM 8>;
assigned-clock-rates = <12000000>;
HPVDD-supply = <&vcc_dac>;
AVDD-supply = <&vcc_dac>;
DCVDD-supply = <&reg_3v3>;
DBVDD-supply = <&reg_3v3>;
}; };
}; };
...@@ -254,4 +266,35 @@ sound { ...@@ -254,4 +266,35 @@ sound {
atmel,ssc-controller = <&ssc0>; atmel,ssc-controller = <&ssc0>;
atmel,audio-codec = <&wm8731>; atmel,audio-codec = <&wm8731>;
}; };
reg_5v: fixedregulator0 {
compatible = "regulator-fixed";
regulator-name = "5V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
reg_3v3: fixedregulator1 {
compatible = "regulator-fixed";
regulator-name = "3V3";
vin-supply = <&reg_5v>;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_1v: fixedregulator2 {
compatible = "regulator-fixed";
regulator-name = "1V";
vin-supply = <&reg_5v>;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
};
vcc_dac: fixedregulator3 {
compatible = "regulator-fixed";
regulator-name = "VCC_DAC";
vin-supply = <&reg_3v3>;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
}; };
...@@ -167,7 +167,7 @@ pinctrl_pwm_leds: pwm-led { ...@@ -167,7 +167,7 @@ pinctrl_pwm_leds: pwm-led {
spi0: spi@fffa4000{ spi0: spi@fffa4000{
status = "okay"; status = "okay";
cs-gpios = <&pioB 3 0>, <0>, <0>, <0>; cs-gpios = <&pioB 3 0>, <0>, <0>, <0>;
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <13000000>; spi-max-frequency = <13000000>;
reg = <0>; reg = <0>;
......
...@@ -119,7 +119,7 @@ pinctrl_usb1_vbus_sense: usb1_vbus_sense { ...@@ -119,7 +119,7 @@ pinctrl_usb1_vbus_sense: usb1_vbus_sense {
spi0: spi@f0000000 { spi0: spi@f0000000 {
status = "okay"; status = "okay";
cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -180,7 +180,7 @@ usb0: gadget@fffd4000 { ...@@ -180,7 +180,7 @@ usb0: gadget@fffd4000 {
spi0: spi@fffcc000 { spi0: spi@fffcc000 {
status = "okay"; status = "okay";
cs-gpios = <&pioA 28 0>, <0>, <0>, <0>; cs-gpios = <&pioA 28 0>, <0>, <0>, <0>;
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
spi-max-frequency = <15000000>; spi-max-frequency = <15000000>;
reg = <0>; reg = <0>;
......
...@@ -125,7 +125,7 @@ &spi0 { ...@@ -125,7 +125,7 @@ &spi0 {
cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
status = "disabled"; /* conflicts with mmc1 */ status = "disabled"; /* conflicts with mmc1 */
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -4188,11 +4188,11 @@ target-module@1d0010 { /* 0x489d0000, ap 27 30.0 */ ...@@ -4188,11 +4188,11 @@ target-module@1d0010 { /* 0x489d0000, ap 27 30.0 */
reg = <0x1d0010 0x4>; reg = <0x1d0010 0x4>;
reg-names = "sysc"; reg-names = "sysc";
ti,sysc-midle = <SYSC_IDLE_FORCE>, ti,sysc-midle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>, <SYSC_IDLE_NO>;
<SYSC_IDLE_SMART>;
ti,sysc-sidle = <SYSC_IDLE_FORCE>, ti,sysc-sidle = <SYSC_IDLE_FORCE>,
<SYSC_IDLE_NO>, <SYSC_IDLE_NO>,
<SYSC_IDLE_SMART>; <SYSC_IDLE_SMART>;
power-domains = <&prm_vpe>;
clocks = <&vpe_clkctrl DRA7_VPE_VPE_CLKCTRL 0>; clocks = <&vpe_clkctrl DRA7_VPE_VPE_CLKCTRL 0>;
clock-names = "fck"; clock-names = "fck";
#address-cells = <1>; #address-cells = <1>;
......
...@@ -286,6 +286,8 @@ vgen6_reg: vgen6 { ...@@ -286,6 +286,8 @@ vgen6_reg: vgen6 {
codec: sgtl5000@a { codec: sgtl5000@a {
compatible = "fsl,sgtl5000"; compatible = "fsl,sgtl5000";
reg = <0x0a>; reg = <0x0a>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sgtl5000>;
clocks = <&clks IMX6QDL_CLK_CKO>; clocks = <&clks IMX6QDL_CLK_CKO>;
VDDA-supply = <&reg_module_3v3_audio>; VDDA-supply = <&reg_module_3v3_audio>;
VDDIO-supply = <&reg_module_3v3>; VDDIO-supply = <&reg_module_3v3>;
...@@ -517,8 +519,6 @@ MX6QDL_PAD_DISP0_DAT20__AUD4_TXC 0x130b0 ...@@ -517,8 +519,6 @@ MX6QDL_PAD_DISP0_DAT20__AUD4_TXC 0x130b0
MX6QDL_PAD_DISP0_DAT21__AUD4_TXD 0x130b0 MX6QDL_PAD_DISP0_DAT21__AUD4_TXD 0x130b0
MX6QDL_PAD_DISP0_DAT22__AUD4_TXFS 0x130b0 MX6QDL_PAD_DISP0_DAT22__AUD4_TXFS 0x130b0
MX6QDL_PAD_DISP0_DAT23__AUD4_RXD 0x130b0 MX6QDL_PAD_DISP0_DAT23__AUD4_RXD 0x130b0
/* SGTL5000 sys_mclk */
MX6QDL_PAD_GPIO_5__CCM_CLKO1 0x130b0
>; >;
}; };
...@@ -811,6 +811,12 @@ MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x000b0 ...@@ -811,6 +811,12 @@ MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x000b0
>; >;
}; };
pinctrl_sgtl5000: sgtl5000grp {
fsl,pins = <
MX6QDL_PAD_GPIO_5__CCM_CLKO1 0x130b0
>;
};
pinctrl_spdif: spdifgrp { pinctrl_spdif: spdifgrp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0 MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0
......
...@@ -37,7 +37,7 @@ reg_module_3v3_avdd: regulator-module-3v3-avdd { ...@@ -37,7 +37,7 @@ reg_module_3v3_avdd: regulator-module-3v3-avdd {
reg_sd1_vmmc: regulator-sd1-vmmc { reg_sd1_vmmc: regulator-sd1-vmmc {
compatible = "regulator-gpio"; compatible = "regulator-gpio";
gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>; gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_snvs_reg_sd>; pinctrl-0 = <&pinctrl_snvs_reg_sd>;
regulator-always-on; regulator-always-on;
......
...@@ -11,3 +11,18 @@ / { ...@@ -11,3 +11,18 @@ / {
model = "LogicPD Zoom OMAP35xx SOM-LV Development Kit"; model = "LogicPD Zoom OMAP35xx SOM-LV Development Kit";
compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3430", "ti,omap3"; compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3430", "ti,omap3";
}; };
&omap3_pmx_core2 {
pinctrl-names = "default";
pinctrl-0 = <&hsusb2_2_pins>;
hsusb2_2_pins: pinmux_hsusb2_2_pins {
pinctrl-single,pins = <
OMAP3430_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
OMAP3430_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
OMAP3430_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
OMAP3430_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
OMAP3430_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
OMAP3430_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
>;
};
};
...@@ -11,3 +11,18 @@ / { ...@@ -11,3 +11,18 @@ / {
model = "LogicPD Zoom DM3730 SOM-LV Development Kit"; model = "LogicPD Zoom DM3730 SOM-LV Development Kit";
compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3"; compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3";
}; };
&omap3_pmx_core2 {
pinctrl-names = "default";
pinctrl-0 = <&hsusb2_2_pins>;
hsusb2_2_pins: pinmux_hsusb2_2_pins {
pinctrl-single,pins = <
OMAP3630_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
OMAP3630_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
OMAP3630_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
OMAP3630_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
OMAP3630_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
OMAP3630_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
>;
};
};
...@@ -265,21 +265,6 @@ OMAP3_WKUP_IOPAD(0x2a0c, PIN_OUTPUT | MUX_MODE4) /* sys_boot1.gpio_3 */ ...@@ -265,21 +265,6 @@ OMAP3_WKUP_IOPAD(0x2a0c, PIN_OUTPUT | MUX_MODE4) /* sys_boot1.gpio_3 */
}; };
}; };
&omap3_pmx_core2 {
pinctrl-names = "default";
pinctrl-0 = <&hsusb2_2_pins>;
hsusb2_2_pins: pinmux_hsusb2_2_pins {
pinctrl-single,pins = <
OMAP3630_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3) /* etk_d10.hsusb2_clk */
OMAP3630_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3) /* etk_d11.hsusb2_stp */
OMAP3630_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d12.hsusb2_dir */
OMAP3630_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d13.hsusb2_nxt */
OMAP3630_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d14.hsusb2_data0 */
OMAP3630_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3) /* etk_d15.hsusb2_data1 */
>;
};
};
&uart2 { &uart2 {
interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>; interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>;
pinctrl-names = "default"; pinctrl-names = "default";
......
...@@ -31,6 +31,8 @@ chosen { ...@@ -31,6 +31,8 @@ chosen {
aliases { aliases {
display0 = &lcd; display0 = &lcd;
display1 = &tv0; display1 = &tv0;
/delete-property/ mmc2;
/delete-property/ mmc3;
}; };
ldo_3v3: fixedregulator { ldo_3v3: fixedregulator {
......
...@@ -26,7 +26,7 @@ slot@0 { ...@@ -26,7 +26,7 @@ slot@0 {
spi0: spi@f0004000 { spi0: spi@f0004000 {
dmas = <0>, <0>; /* Do not use DMA for spi0 */ dmas = <0>, <0>; /* Do not use DMA for spi0 */
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -25,7 +25,7 @@ slot@0 { ...@@ -25,7 +25,7 @@ slot@0 {
spi0: spi@f0004000 { spi0: spi@f0004000 {
dmas = <0>, <0>; /* Do not use DMA for spi0 */ dmas = <0>, <0>; /* Do not use DMA for spi0 */
m25p80@0 { flash@0 {
compatible = "atmel,at25df321a"; compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
reg = <0>; reg = <0>;
......
...@@ -601,9 +601,9 @@ i2c1: i2c@600 { ...@@ -601,9 +601,9 @@ i2c1: i2c@600 {
#size-cells = <0>; #size-cells = <0>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 39>; clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
atmel,fifo-size = <32>; atmel,fifo-size = <32>;
dmas = <&dma0 AT91_XDMAC_DT_PERID(7)>, dmas = <&dma0 AT91_XDMAC_DT_PERID(8)>,
<&dma0 AT91_XDMAC_DT_PERID(8)>; <&dma0 AT91_XDMAC_DT_PERID(7)>;
dma-names = "rx", "tx"; dma-names = "tx", "rx";
status = "disabled"; status = "disabled";
}; };
}; };
...@@ -786,9 +786,9 @@ i2c8: i2c@600 { ...@@ -786,9 +786,9 @@ i2c8: i2c@600 {
#size-cells = <0>; #size-cells = <0>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 46>; clocks = <&pmc PMC_TYPE_PERIPHERAL 46>;
atmel,fifo-size = <32>; atmel,fifo-size = <32>;
dmas = <&dma0 AT91_XDMAC_DT_PERID(21)>, dmas = <&dma0 AT91_XDMAC_DT_PERID(22)>,
<&dma0 AT91_XDMAC_DT_PERID(22)>; <&dma0 AT91_XDMAC_DT_PERID(21)>;
dma-names = "rx", "tx"; dma-names = "tx", "rx";
status = "disabled"; status = "disabled";
}; };
}; };
...@@ -810,9 +810,9 @@ i2c9: i2c@600 { ...@@ -810,9 +810,9 @@ i2c9: i2c@600 {
#size-cells = <0>; #size-cells = <0>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 47>; clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
atmel,fifo-size = <32>; atmel,fifo-size = <32>;
dmas = <&dma0 AT91_XDMAC_DT_PERID(23)>, dmas = <&dma0 AT91_XDMAC_DT_PERID(24)>,
<&dma0 AT91_XDMAC_DT_PERID(24)>; <&dma0 AT91_XDMAC_DT_PERID(23)>;
dma-names = "rx", "tx"; dma-names = "tx", "rx";
status = "disabled"; status = "disabled";
}; };
}; };
......
...@@ -60,7 +60,7 @@ usb1: gadget@fff78000 { ...@@ -60,7 +60,7 @@ usb1: gadget@fff78000 {
spi0: spi@fffa4000 { spi0: spi@fffa4000 {
cs-gpios = <&pioB 15 GPIO_ACTIVE_HIGH>; cs-gpios = <&pioB 15 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
mtd_dataflash@0 { flash@0 {
compatible = "atmel,at45", "atmel,dataflash"; compatible = "atmel,at45", "atmel,dataflash";
reg = <0>; reg = <0>;
spi-max-frequency = <15000000>; spi-max-frequency = <15000000>;
......
...@@ -673,6 +673,7 @@ CONFIG_VIDEO_STI_DELTA=m ...@@ -673,6 +673,7 @@ CONFIG_VIDEO_STI_DELTA=m
CONFIG_VIDEO_RENESAS_FDP1=m CONFIG_VIDEO_RENESAS_FDP1=m
CONFIG_VIDEO_RENESAS_JPU=m CONFIG_VIDEO_RENESAS_JPU=m
CONFIG_VIDEO_RENESAS_VSP1=m CONFIG_VIDEO_RENESAS_VSP1=m
CONFIG_VIDEO_TEGRA_VDE=m
CONFIG_V4L_TEST_DRIVERS=y CONFIG_V4L_TEST_DRIVERS=y
CONFIG_VIDEO_VIVID=m CONFIG_VIDEO_VIVID=m
CONFIG_VIDEO_ADV7180=m CONFIG_VIDEO_ADV7180=m
......
...@@ -286,7 +286,8 @@ CONFIG_SERIO_NVEC_PS2=y ...@@ -286,7 +286,8 @@ CONFIG_SERIO_NVEC_PS2=y
CONFIG_NVEC_POWER=y CONFIG_NVEC_POWER=y
CONFIG_NVEC_PAZ00=y CONFIG_NVEC_PAZ00=y
CONFIG_STAGING_MEDIA=y CONFIG_STAGING_MEDIA=y
CONFIG_TEGRA_VDE=y CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_TEGRA_VDE=y
CONFIG_CHROME_PLATFORMS=y CONFIG_CHROME_PLATFORMS=y
CONFIG_CROS_EC=y CONFIG_CROS_EC=y
CONFIG_CROS_EC_I2C=m CONFIG_CROS_EC_I2C=m
......
...@@ -314,10 +314,12 @@ void __init omap_gic_of_init(void) ...@@ -314,10 +314,12 @@ void __init omap_gic_of_init(void)
np = of_find_compatible_node(NULL, NULL, "arm,cortex-a9-gic"); np = of_find_compatible_node(NULL, NULL, "arm,cortex-a9-gic");
gic_dist_base_addr = of_iomap(np, 0); gic_dist_base_addr = of_iomap(np, 0);
of_node_put(np);
WARN_ON(!gic_dist_base_addr); WARN_ON(!gic_dist_base_addr);
np = of_find_compatible_node(NULL, NULL, "arm,cortex-a9-twd-timer"); np = of_find_compatible_node(NULL, NULL, "arm,cortex-a9-twd-timer");
twd_base = of_iomap(np, 0); twd_base = of_iomap(np, 0);
of_node_put(np);
WARN_ON(!twd_base); WARN_ON(!twd_base);
skip_errata_init: skip_errata_init:
......
...@@ -11,26 +11,6 @@ cpu_opp_table_0: opp-table-0 { ...@@ -11,26 +11,6 @@ cpu_opp_table_0: opp-table-0 {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-shared; opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <731000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <731000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <731000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <731000>;
};
opp-1000000000 { opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>; opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <761000>; opp-microvolt = <761000>;
...@@ -71,26 +51,6 @@ cpub_opp_table_1: opp-table-1 { ...@@ -71,26 +51,6 @@ cpub_opp_table_1: opp-table-1 {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-shared; opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <731000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <731000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <731000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <731000>;
};
opp-1000000000 { opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>; opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>; opp-microvolt = <731000>;
......
...@@ -11,26 +11,6 @@ cpu_opp_table_0: opp-table-0 { ...@@ -11,26 +11,6 @@ cpu_opp_table_0: opp-table-0 {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-shared; opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <731000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <731000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <731000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <731000>;
};
opp-1000000000 { opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>; opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>; opp-microvolt = <731000>;
...@@ -76,26 +56,6 @@ cpub_opp_table_1: opp-table-1 { ...@@ -76,26 +56,6 @@ cpub_opp_table_1: opp-table-1 {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-shared; opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
};
opp-1000000000 { opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>; opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>; opp-microvolt = <771000>;
......
...@@ -13,28 +13,28 @@ cpus { ...@@ -13,28 +13,28 @@ cpus {
cpu0: cpu@0 { cpu0: cpu@0 {
device_type = "cpu"; device_type = "cpu";
compatible = "arm,cortex-a35","arm,armv8"; compatible = "arm,cortex-a35";
reg = <0x0 0x0>; reg = <0x0 0x0>;
enable-method = "psci"; enable-method = "psci";
}; };
cpu1: cpu@1 { cpu1: cpu@1 {
device_type = "cpu"; device_type = "cpu";
compatible = "arm,cortex-a35","arm,armv8"; compatible = "arm,cortex-a35";
reg = <0x0 0x1>; reg = <0x0 0x1>;
enable-method = "psci"; enable-method = "psci";
}; };
cpu2: cpu@2 { cpu2: cpu@2 {
device_type = "cpu"; device_type = "cpu";
compatible = "arm,cortex-a35","arm,armv8"; compatible = "arm,cortex-a35";
reg = <0x0 0x2>; reg = <0x0 0x2>;
enable-method = "psci"; enable-method = "psci";
}; };
cpu3: cpu@3 { cpu3: cpu@3 {
device_type = "cpu"; device_type = "cpu";
compatible = "arm,cortex-a35","arm,armv8"; compatible = "arm,cortex-a35";
reg = <0x0 0x3>; reg = <0x0 0x3>;
enable-method = "psci"; enable-method = "psci";
}; };
......
...@@ -437,6 +437,7 @@ &gpio { ...@@ -437,6 +437,7 @@ &gpio {
"", "",
"eMMC_RST#", /* BOOT_12 */ "eMMC_RST#", /* BOOT_12 */
"eMMC_DS", /* BOOT_13 */ "eMMC_DS", /* BOOT_13 */
"", "",
/* GPIOC */ /* GPIOC */
"SD_D0_B", /* GPIOC_0 */ "SD_D0_B", /* GPIOC_0 */
"SD_D1_B", /* GPIOC_1 */ "SD_D1_B", /* GPIOC_1 */
......
...@@ -95,26 +95,6 @@ cpu_opp_table: opp-table { ...@@ -95,26 +95,6 @@ cpu_opp_table: opp-table {
compatible = "operating-points-v2"; compatible = "operating-points-v2";
opp-shared; opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <730000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <730000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <730000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <666666666>;
opp-microvolt = <750000>;
};
opp-1000000000 { opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>; opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <770000>; opp-microvolt = <770000>;
......
...@@ -146,12 +146,14 @@ &uart3 { ...@@ -146,12 +146,14 @@ &uart3 {
&usbotg1 { &usbotg1 {
dr_mode = "otg"; dr_mode = "otg";
over-current-active-low;
vbus-supply = <&reg_usb_otg1_vbus>; vbus-supply = <&reg_usb_otg1_vbus>;
status = "okay"; status = "okay";
}; };
&usbotg2 { &usbotg2 {
dr_mode = "host"; dr_mode = "host";
disable-over-current;
status = "okay"; status = "okay";
}; };
...@@ -215,7 +217,7 @@ pinctrl_spi2: spi2grp { ...@@ -215,7 +217,7 @@ pinctrl_spi2: spi2grp {
fsl,pins = < fsl,pins = <
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6
MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6 MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_MISO_ECSPI2_MISO 0xd6
MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6 MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6
>; >;
}; };
......
...@@ -211,12 +211,14 @@ &uart4 { ...@@ -211,12 +211,14 @@ &uart4 {
&usbotg1 { &usbotg1 {
dr_mode = "otg"; dr_mode = "otg";
over-current-active-low;
vbus-supply = <&reg_usb_otg1_vbus>; vbus-supply = <&reg_usb_otg1_vbus>;
status = "okay"; status = "okay";
}; };
&usbotg2 { &usbotg2 {
dr_mode = "host"; dr_mode = "host";
disable-over-current;
vbus-supply = <&reg_usb_otg2_vbus>; vbus-supply = <&reg_usb_otg2_vbus>;
status = "okay"; status = "okay";
}; };
...@@ -309,7 +311,7 @@ pinctrl_spi2: spi2grp { ...@@ -309,7 +311,7 @@ pinctrl_spi2: spi2grp {
fsl,pins = < fsl,pins = <
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6
MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6 MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_MISO_ECSPI2_MISO 0xd6
MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6 MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6
>; >;
}; };
......
...@@ -238,12 +238,14 @@ &uart4 { ...@@ -238,12 +238,14 @@ &uart4 {
&usbotg1 { &usbotg1 {
dr_mode = "otg"; dr_mode = "otg";
over-current-active-low;
vbus-supply = <&reg_usb_otg1_vbus>; vbus-supply = <&reg_usb_otg1_vbus>;
status = "okay"; status = "okay";
}; };
&usbotg2 { &usbotg2 {
dr_mode = "host"; dr_mode = "host";
disable-over-current;
vbus-supply = <&reg_usb_otg2_vbus>; vbus-supply = <&reg_usb_otg2_vbus>;
status = "okay"; status = "okay";
}; };
...@@ -358,7 +360,7 @@ pinctrl_spi2: spi2grp { ...@@ -358,7 +360,7 @@ pinctrl_spi2: spi2grp {
fsl,pins = < fsl,pins = <
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6
MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6 MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI 0xd6
MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK 0xd6 MX8MM_IOMUXC_ECSPI2_MISO_ECSPI2_MISO 0xd6
MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6 MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13 0xd6
>; >;
}; };
......
...@@ -59,6 +59,10 @@ pmic@4b { ...@@ -59,6 +59,10 @@ pmic@4b {
interrupts = <3 IRQ_TYPE_LEVEL_LOW>; interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
rohm,reset-snvs-powered; rohm,reset-snvs-powered;
#clock-cells = <0>;
clocks = <&osc_32k 0>;
clock-output-names = "clk-32k-out";
regulators { regulators {
buck1_reg: BUCK1 { buck1_reg: BUCK1 {
regulator-name = "buck1"; regulator-name = "buck1";
......
...@@ -293,7 +293,7 @@ spba2: spba-bus@30000000 { ...@@ -293,7 +293,7 @@ spba2: spba-bus@30000000 {
ranges; ranges;
sai2: sai@30020000 { sai2: sai@30020000 {
compatible = "fsl,imx8mm-sai", "fsl,imx8mq-sai"; compatible = "fsl,imx8mn-sai", "fsl,imx8mq-sai";
reg = <0x30020000 0x10000>; reg = <0x30020000 0x10000>;
interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MN_CLK_SAI2_IPG>, clocks = <&clk IMX8MN_CLK_SAI2_IPG>,
...@@ -307,7 +307,7 @@ sai2: sai@30020000 { ...@@ -307,7 +307,7 @@ sai2: sai@30020000 {
}; };
sai3: sai@30030000 { sai3: sai@30030000 {
compatible = "fsl,imx8mm-sai", "fsl,imx8mq-sai"; compatible = "fsl,imx8mn-sai", "fsl,imx8mq-sai";
reg = <0x30030000 0x10000>; reg = <0x30030000 0x10000>;
interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MN_CLK_SAI3_IPG>, clocks = <&clk IMX8MN_CLK_SAI3_IPG>,
...@@ -321,7 +321,7 @@ sai3: sai@30030000 { ...@@ -321,7 +321,7 @@ sai3: sai@30030000 {
}; };
sai5: sai@30050000 { sai5: sai@30050000 {
compatible = "fsl,imx8mm-sai", "fsl,imx8mq-sai"; compatible = "fsl,imx8mn-sai", "fsl,imx8mq-sai";
reg = <0x30050000 0x10000>; reg = <0x30050000 0x10000>;
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MN_CLK_SAI5_IPG>, clocks = <&clk IMX8MN_CLK_SAI5_IPG>,
...@@ -337,7 +337,7 @@ sai5: sai@30050000 { ...@@ -337,7 +337,7 @@ sai5: sai@30050000 {
}; };
sai6: sai@30060000 { sai6: sai@30060000 {
compatible = "fsl,imx8mm-sai", "fsl,imx8mq-sai"; compatible = "fsl,imx8mn-sai", "fsl,imx8mq-sai";
reg = <0x30060000 0x10000>; reg = <0x30060000 0x10000>;
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MN_CLK_SAI6_IPG>, clocks = <&clk IMX8MN_CLK_SAI6_IPG>,
...@@ -394,7 +394,7 @@ spdif1: spdif@30090000 { ...@@ -394,7 +394,7 @@ spdif1: spdif@30090000 {
}; };
sai7: sai@300b0000 { sai7: sai@300b0000 {
compatible = "fsl,imx8mm-sai", "fsl,imx8mq-sai"; compatible = "fsl,imx8mn-sai", "fsl,imx8mq-sai";
reg = <0x300b0000 0x10000>; reg = <0x300b0000 0x10000>;
interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MN_CLK_SAI7_IPG>, clocks = <&clk IMX8MN_CLK_SAI7_IPG>,
......
...@@ -253,7 +253,7 @@ flash0: flash@0 { ...@@ -253,7 +253,7 @@ flash0: flash@0 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
spi-max-frequency = <84000000>; spi-max-frequency = <84000000>;
spi-tx-bus-width = <4>; spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>; spi-rx-bus-width = <4>;
}; };
}; };
......
...@@ -196,7 +196,7 @@ pd: imx8qx-pd { ...@@ -196,7 +196,7 @@ pd: imx8qx-pd {
}; };
clk: clock-controller { clk: clock-controller {
compatible = "fsl,imx8qxp-clk", "fsl,scu-clk"; compatible = "fsl,imx8qm-clk", "fsl,scu-clk";
#clock-cells = <2>; #clock-cells = <2>;
}; };
......
...@@ -262,25 +262,25 @@ gpio3 { ...@@ -262,25 +262,25 @@ gpio3 {
gpio4 { gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio5 { gpio5 {
pins = "gpio5"; pins = "gpio5";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <0>;
}; };
gpio6 { gpio6 {
pins = "gpio6"; pins = "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio7 { gpio7 {
pins = "gpio7"; pins = "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <0>;
}; };
}; };
......
...@@ -462,25 +462,25 @@ gpio3 { ...@@ -462,25 +462,25 @@ gpio3 {
gpio4 { gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio5 { gpio5 {
pins = "gpio5"; pins = "gpio5";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <0>;
}; };
gpio6 { gpio6 {
pins = "gpio6"; pins = "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio7 { gpio7 {
pins = "gpio7"; pins = "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
}; };
......
...@@ -174,19 +174,19 @@ gpio3 { ...@@ -174,19 +174,19 @@ gpio3 {
gpio4 { gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio6 { gpio6 {
pins = "gpio6"; pins = "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio7 { gpio7 {
pins = "gpio7"; pins = "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <0>;
}; };
}; };
......
...@@ -148,19 +148,19 @@ gpio3 { ...@@ -148,19 +148,19 @@ gpio3 {
gpio4 { gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio6 { gpio6 {
pins = "gpio6"; pins = "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio7 { gpio7 {
pins = "gpio7"; pins = "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <0>;
}; };
}; };
......
...@@ -59,7 +59,7 @@ gpio0 { ...@@ -59,7 +59,7 @@ gpio0 {
gpio1 { gpio1 {
pins = "gpio1"; pins = "gpio1";
function = "fps-out"; function = "fps-out";
drive-push-pull; drive-push-pull = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
maxim,active-fps-power-up-slot = <7>; maxim,active-fps-power-up-slot = <7>;
maxim,active-fps-power-down-slot = <0>; maxim,active-fps-power-down-slot = <0>;
...@@ -68,7 +68,7 @@ gpio1 { ...@@ -68,7 +68,7 @@ gpio1 {
gpio2_3 { gpio2_3 {
pins = "gpio2", "gpio3"; pins = "gpio2", "gpio3";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
}; };
...@@ -80,7 +80,7 @@ gpio4 { ...@@ -80,7 +80,7 @@ gpio4 {
gpio5_6_7 { gpio5_6_7 {
pins = "gpio5", "gpio6", "gpio7"; pins = "gpio5", "gpio6", "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
}; };
......
...@@ -1351,7 +1351,7 @@ gpio0 { ...@@ -1351,7 +1351,7 @@ gpio0 {
gpio1 { gpio1 {
pins = "gpio1"; pins = "gpio1";
function = "fps-out"; function = "fps-out";
drive-push-pull; drive-push-pull = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
maxim,active-fps-power-up-slot = <7>; maxim,active-fps-power-up-slot = <7>;
maxim,active-fps-power-down-slot = <0>; maxim,active-fps-power-down-slot = <0>;
...@@ -1360,14 +1360,14 @@ gpio1 { ...@@ -1360,14 +1360,14 @@ gpio1 {
gpio2 { gpio2 {
pins = "gpio2"; pins = "gpio2";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
}; };
gpio3 { gpio3 {
pins = "gpio3"; pins = "gpio3";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
}; };
...@@ -1379,7 +1379,7 @@ gpio4 { ...@@ -1379,7 +1379,7 @@ gpio4 {
gpio5_6_7 { gpio5_6_7 {
pins = "gpio5", "gpio6", "gpio7"; pins = "gpio5", "gpio6", "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
}; };
......
...@@ -195,7 +195,7 @@ gpio0 { ...@@ -195,7 +195,7 @@ gpio0 {
gpio1 { gpio1 {
pins = "gpio1"; pins = "gpio1";
function = "fps-out"; function = "fps-out";
drive-push-pull; drive-push-pull = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>; maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
maxim,active-fps-power-up-slot = <0>; maxim,active-fps-power-up-slot = <0>;
maxim,active-fps-power-down-slot = <7>; maxim,active-fps-power-down-slot = <7>;
...@@ -204,7 +204,7 @@ gpio1 { ...@@ -204,7 +204,7 @@ gpio1 {
gpio2 { gpio2 {
pins = "gpio2"; pins = "gpio2";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
maxim,active-fps-power-up-slot = <0>; maxim,active-fps-power-up-slot = <0>;
maxim,active-fps-power-down-slot = <7>; maxim,active-fps-power-down-slot = <7>;
...@@ -213,7 +213,7 @@ gpio2 { ...@@ -213,7 +213,7 @@ gpio2 {
gpio3 { gpio3 {
pins = "gpio3"; pins = "gpio3";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
maxim,active-fps-power-up-slot = <4>; maxim,active-fps-power-up-slot = <4>;
maxim,active-fps-power-down-slot = <3>; maxim,active-fps-power-down-slot = <3>;
...@@ -227,7 +227,7 @@ gpio4 { ...@@ -227,7 +227,7 @@ gpio4 {
gpio5_6_7 { gpio5_6_7 {
pins = "gpio5", "gpio6", "gpio7"; pins = "gpio5", "gpio6", "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
}; };
......
...@@ -1386,7 +1386,7 @@ gpio0_1_2_7 { ...@@ -1386,7 +1386,7 @@ gpio0_1_2_7 {
gpio3 { gpio3 {
pins = "gpio3"; pins = "gpio3";
function = "fps-out"; function = "fps-out";
drive-open-drain; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
maxim,active-fps-power-up-slot = <4>; maxim,active-fps-power-up-slot = <4>;
maxim,active-fps-power-down-slot = <2>; maxim,active-fps-power-down-slot = <2>;
...@@ -1395,7 +1395,7 @@ gpio3 { ...@@ -1395,7 +1395,7 @@ gpio3 {
gpio5_6 { gpio5_6 {
pins = "gpio5", "gpio6"; pins = "gpio5", "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull; drive-push-pull = <1>;
}; };
gpio4 { gpio4 {
......
...@@ -352,8 +352,7 @@ static int of_weim_notify(struct notifier_block *nb, unsigned long action, ...@@ -352,8 +352,7 @@ static int of_weim_notify(struct notifier_block *nb, unsigned long action,
pdev = of_find_device_by_node(rd->dn); pdev = of_find_device_by_node(rd->dn);
if (!pdev) { if (!pdev) {
dev_err(&pdev->dev, pr_err("Could not find platform device for '%pOF'\n",
"Could not find platform device for '%pOF'\n",
rd->dn); rd->dn);
ret = notifier_from_errno(-EINVAL); ret = notifier_from_errno(-EINVAL);
...@@ -370,7 +369,7 @@ static int of_weim_notify(struct notifier_block *nb, unsigned long action, ...@@ -370,7 +369,7 @@ static int of_weim_notify(struct notifier_block *nb, unsigned long action,
return ret; return ret;
} }
struct notifier_block weim_of_notifier = { static struct notifier_block weim_of_notifier = {
.notifier_call = of_weim_notify, .notifier_call = of_weim_notify,
}; };
#endif /* IS_ENABLED(CONFIG_OF_DYNAMIC) */ #endif /* IS_ENABLED(CONFIG_OF_DYNAMIC) */
......
...@@ -227,6 +227,8 @@ static struct sunxi_rsb_device *sunxi_rsb_device_create(struct sunxi_rsb *rsb, ...@@ -227,6 +227,8 @@ static struct sunxi_rsb_device *sunxi_rsb_device_create(struct sunxi_rsb *rsb,
dev_dbg(&rdev->dev, "device %s registered\n", dev_name(&rdev->dev)); dev_dbg(&rdev->dev, "device %s registered\n", dev_name(&rdev->dev));
return rdev;
err_device_add: err_device_add:
put_device(&rdev->dev); put_device(&rdev->dev);
......
...@@ -3232,13 +3232,27 @@ static int sysc_check_disabled_devices(struct sysc *ddata) ...@@ -3232,13 +3232,27 @@ static int sysc_check_disabled_devices(struct sysc *ddata)
*/ */
static int sysc_check_active_timer(struct sysc *ddata) static int sysc_check_active_timer(struct sysc *ddata)
{ {
int error;
if (ddata->cap->type != TI_SYSC_OMAP2_TIMER && if (ddata->cap->type != TI_SYSC_OMAP2_TIMER &&
ddata->cap->type != TI_SYSC_OMAP4_TIMER) ddata->cap->type != TI_SYSC_OMAP4_TIMER)
return 0; return 0;
/*
* Quirk for omap3 beagleboard revision A to B4 to use gpt12.
* Revision C and later are fixed with commit 23885389dbbb ("ARM:
* dts: Fix timer regression for beagleboard revision c"). This all
* can be dropped if we stop supporting old beagleboard revisions
* A to B4 at some point.
*/
if (sysc_soc->soc == SOC_3430)
error = -ENXIO;
else
error = -EBUSY;
if ((ddata->cfg.quirks & SYSC_QUIRK_NO_RESET_ON_INIT) && if ((ddata->cfg.quirks & SYSC_QUIRK_NO_RESET_ON_INIT) &&
(ddata->cfg.quirks & SYSC_QUIRK_NO_IDLE)) (ddata->cfg.quirks & SYSC_QUIRK_NO_IDLE))
return -ENXIO; return error;
return 0; return 0;
} }
......
...@@ -164,25 +164,39 @@ static const struct regmap_access_table rpcif_volatile_table = { ...@@ -164,25 +164,39 @@ static const struct regmap_access_table rpcif_volatile_table = {
/* /*
* Custom accessor functions to ensure SMRDR0 and SMWDR0 are always accessed * Custom accessor functions to ensure SM[RW]DR[01] are always accessed with
* with proper width. Requires SMENR_SPIDE to be correctly set before! * proper width. Requires rpcif.xfer_size to be correctly set before!
*/ */
static int rpcif_reg_read(void *context, unsigned int reg, unsigned int *val) static int rpcif_reg_read(void *context, unsigned int reg, unsigned int *val)
{ {
struct rpcif *rpc = context; struct rpcif *rpc = context;
if (reg == RPCIF_SMRDR0 || reg == RPCIF_SMWDR0) { switch (reg) {
u32 spide = readl(rpc->base + RPCIF_SMENR) & RPCIF_SMENR_SPIDE(0xF); case RPCIF_SMRDR0:
case RPCIF_SMWDR0:
if (spide == 0x8) { switch (rpc->xfer_size) {
case 1:
*val = readb(rpc->base + reg); *val = readb(rpc->base + reg);
return 0; return 0;
} else if (spide == 0xC) {
case 2:
*val = readw(rpc->base + reg); *val = readw(rpc->base + reg);
return 0; return 0;
} else if (spide != 0xF) {
case 4:
case 8:
*val = readl(rpc->base + reg);
return 0;
default:
return -EILSEQ; return -EILSEQ;
} }
case RPCIF_SMRDR1:
case RPCIF_SMWDR1:
if (rpc->xfer_size != 8)
return -EILSEQ;
break;
} }
*val = readl(rpc->base + reg); *val = readl(rpc->base + reg);
...@@ -193,18 +207,34 @@ static int rpcif_reg_write(void *context, unsigned int reg, unsigned int val) ...@@ -193,18 +207,34 @@ static int rpcif_reg_write(void *context, unsigned int reg, unsigned int val)
{ {
struct rpcif *rpc = context; struct rpcif *rpc = context;
if (reg == RPCIF_SMRDR0 || reg == RPCIF_SMWDR0) { switch (reg) {
u32 spide = readl(rpc->base + RPCIF_SMENR) & RPCIF_SMENR_SPIDE(0xF); case RPCIF_SMWDR0:
switch (rpc->xfer_size) {
if (spide == 0x8) { case 1:
writeb(val, rpc->base + reg); writeb(val, rpc->base + reg);
return 0; return 0;
} else if (spide == 0xC) {
case 2:
writew(val, rpc->base + reg); writew(val, rpc->base + reg);
return 0; return 0;
} else if (spide != 0xF) {
case 4:
case 8:
writel(val, rpc->base + reg);
return 0;
default:
return -EILSEQ; return -EILSEQ;
} }
case RPCIF_SMWDR1:
if (rpc->xfer_size != 8)
return -EILSEQ;
break;
case RPCIF_SMRDR0:
case RPCIF_SMRDR1:
return -EPERM;
} }
writel(val, rpc->base + reg); writel(val, rpc->base + reg);
...@@ -469,6 +499,7 @@ int rpcif_manual_xfer(struct rpcif *rpc) ...@@ -469,6 +499,7 @@ int rpcif_manual_xfer(struct rpcif *rpc)
smenr |= RPCIF_SMENR_SPIDE(rpcif_bits_set(rpc, nbytes)); smenr |= RPCIF_SMENR_SPIDE(rpcif_bits_set(rpc, nbytes));
regmap_write(rpc->regmap, RPCIF_SMENR, smenr); regmap_write(rpc->regmap, RPCIF_SMENR, smenr);
rpc->xfer_size = nbytes;
memcpy(data, rpc->buffer + pos, nbytes); memcpy(data, rpc->buffer + pos, nbytes);
if (nbytes == 8) { if (nbytes == 8) {
...@@ -533,6 +564,7 @@ int rpcif_manual_xfer(struct rpcif *rpc) ...@@ -533,6 +564,7 @@ int rpcif_manual_xfer(struct rpcif *rpc)
regmap_write(rpc->regmap, RPCIF_SMENR, smenr); regmap_write(rpc->regmap, RPCIF_SMENR, smenr);
regmap_write(rpc->regmap, RPCIF_SMCR, regmap_write(rpc->regmap, RPCIF_SMCR,
rpc->smcr | RPCIF_SMCR_SPIE); rpc->smcr | RPCIF_SMCR_SPIE);
rpc->xfer_size = nbytes;
ret = wait_msg_xfer_end(rpc); ret = wait_msg_xfer_end(rpc);
if (ret) if (ret)
goto err_out; goto err_out;
......
...@@ -50,7 +50,7 @@ struct imx8m_blk_ctrl_domain_data { ...@@ -50,7 +50,7 @@ struct imx8m_blk_ctrl_domain_data {
u32 mipi_phy_rst_mask; u32 mipi_phy_rst_mask;
}; };
#define DOMAIN_MAX_CLKS 3 #define DOMAIN_MAX_CLKS 4
struct imx8m_blk_ctrl_domain { struct imx8m_blk_ctrl_domain {
struct generic_pm_domain genpd; struct generic_pm_domain genpd;
......
...@@ -865,6 +865,7 @@ static int optee_ffa_probe(struct ffa_device *ffa_dev) ...@@ -865,6 +865,7 @@ static int optee_ffa_probe(struct ffa_device *ffa_dev)
rhashtable_free_and_destroy(&optee->ffa.global_ids, rh_free_fn, NULL); rhashtable_free_and_destroy(&optee->ffa.global_ids, rh_free_fn, NULL);
optee_supp_uninit(&optee->supp); optee_supp_uninit(&optee->supp);
mutex_destroy(&optee->call_queue.mutex); mutex_destroy(&optee->call_queue.mutex);
mutex_destroy(&optee->ffa.mutex);
err_unreg_supp_teedev: err_unreg_supp_teedev:
tee_device_unregister(optee->supp_teedev); tee_device_unregister(optee->supp_teedev);
err_unreg_teedev: err_unreg_teedev:
......
...@@ -72,6 +72,7 @@ struct rpcif { ...@@ -72,6 +72,7 @@ struct rpcif {
enum rpcif_type type; enum rpcif_type type;
enum rpcif_data_dir dir; enum rpcif_data_dir dir;
u8 bus_size; u8 bus_size;
u8 xfer_size;
void *buffer; void *buffer;
u32 xferlen; u32 xferlen;
u32 smcr; u32 smcr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment