ARM: dts: stm32: Split SoC-independent parts of DHCOM SOM and PDK2
The DH Electronics PDK2 can be populated with SoM with any STM32MP15xx variant. Split the SoC-independent parts of the SoM and PDK2 into the stm32mp15xx-dhcom-*.dtsi and reduce stm32mp157c-dhcom-*dts* to example of adding STM32MP157C variant of the SoM into a PDK2 carrier board. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Alexandre Torgue <alexandre.torgue@st.com> Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com> Cc: Patrice Chotard <patrice.chotard@st.com> Cc: Patrick Delaunay <patrick.delaunay@st.com> Cc: linux-stm32@st-md-mailman.stormreply.com To: linux-arm-kernel@lists.infradead.org Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
This commit is contained in:
committed by
Alexandre Torgue
parent
81d5fc7197
commit
604536dc58
@@ -1,243 +1,23 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
|
// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2019 Marek Vasut <marex@denx.de>
|
* Copyright (C) 2019-2020 Marek Vasut <marex@denx.de>
|
||||||
|
*
|
||||||
|
* DHCOM STM32MP1 variant:
|
||||||
|
* DHCM-STM32MP157C-C065-R102-F0819-SPI-E2-CAN2-SDR104-RTC-WBT-T-DSI-I-01D2
|
||||||
|
* DHCOR PCB number: 587-200 or newer
|
||||||
|
* PDK2 PCB number: 516-400 or newer
|
||||||
*/
|
*/
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
#include "stm32mp157c-dhcom-som.dtsi"
|
#include "stm32mp157.dtsi"
|
||||||
#include <dt-bindings/input/input.h>
|
#include "stm32mp15xc.dtsi"
|
||||||
#include <dt-bindings/pwm/pwm.h>
|
#include "stm32mp15xx-dhcom-som.dtsi"
|
||||||
|
#include "stm32mp15xx-dhcom-pdk2.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "STMicroelectronics STM32MP157C DHCOM Premium Developer Kit (2)";
|
model = "DH Electronics STM32MP157C DHCOM Premium Developer Kit (2)";
|
||||||
compatible = "dh,stm32mp157c-dhcom-pdk2", "st,stm32mp157";
|
compatible = "dh,stm32mp157c-dhcom-pdk2", "dh,stm32mp157c-dhcom-som",
|
||||||
|
"st,stm32mp157";
|
||||||
aliases {
|
|
||||||
serial0 = &uart4;
|
|
||||||
serial1 = &usart3;
|
|
||||||
serial2 = &uart8;
|
|
||||||
ethernet0 = ðernet0;
|
|
||||||
};
|
|
||||||
|
|
||||||
chosen {
|
|
||||||
stdout-path = "serial0:115200n8";
|
|
||||||
};
|
|
||||||
|
|
||||||
clk_ext_audio_codec: clock-codec {
|
|
||||||
compatible = "fixed-clock";
|
|
||||||
#clock-cells = <0>;
|
|
||||||
clock-frequency = <24000000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
display_bl: display-bl {
|
|
||||||
compatible = "pwm-backlight";
|
|
||||||
pwms = <&pwm2 0 500000 PWM_POLARITY_INVERTED>;
|
|
||||||
brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>;
|
|
||||||
default-brightness-level = <8>;
|
|
||||||
enable-gpios = <&gpioi 0 GPIO_ACTIVE_HIGH>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
ethernet_vio: vioregulator {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vio";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
gpio = <&gpiog 3 GPIO_ACTIVE_LOW>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
};
|
|
||||||
|
|
||||||
gpio-keys-polled {
|
|
||||||
compatible = "gpio-keys-polled";
|
|
||||||
#size-cells = <0>;
|
|
||||||
poll-interval = <20>;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The EXTi IRQ line 3 is shared with touchscreen and ethernet,
|
|
||||||
* so mark this as polled GPIO key.
|
|
||||||
*/
|
|
||||||
button-0 {
|
|
||||||
label = "TA1-GPIO-A";
|
|
||||||
linux,code = <KEY_A>;
|
|
||||||
gpios = <&gpiof 3 GPIO_ACTIVE_LOW>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gpio-keys {
|
|
||||||
compatible = "gpio-keys";
|
|
||||||
#size-cells = <0>;
|
|
||||||
|
|
||||||
button-1 {
|
|
||||||
label = "TA2-GPIO-B";
|
|
||||||
linux,code = <KEY_B>;
|
|
||||||
gpios = <&gpiod 6 GPIO_ACTIVE_LOW>;
|
|
||||||
wakeup-source;
|
|
||||||
};
|
|
||||||
|
|
||||||
button-2 {
|
|
||||||
label = "TA3-GPIO-C";
|
|
||||||
linux,code = <KEY_C>;
|
|
||||||
gpios = <&gpioi 11 GPIO_ACTIVE_LOW>;
|
|
||||||
wakeup-source;
|
|
||||||
};
|
|
||||||
|
|
||||||
button-3 {
|
|
||||||
label = "TA4-GPIO-D";
|
|
||||||
linux,code = <KEY_D>;
|
|
||||||
gpios = <&gpiod 12 GPIO_ACTIVE_LOW>;
|
|
||||||
wakeup-source;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
led {
|
|
||||||
compatible = "gpio-leds";
|
|
||||||
|
|
||||||
led-0 {
|
|
||||||
label = "green:led5";
|
|
||||||
gpios = <&gpiog 2 GPIO_ACTIVE_HIGH>;
|
|
||||||
default-state = "off";
|
|
||||||
};
|
|
||||||
|
|
||||||
led-1 {
|
|
||||||
label = "green:led6";
|
|
||||||
gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>;
|
|
||||||
default-state = "off";
|
|
||||||
};
|
|
||||||
|
|
||||||
led-2 {
|
|
||||||
label = "green:led7";
|
|
||||||
gpios = <&gpioi 2 GPIO_ACTIVE_HIGH>;
|
|
||||||
default-state = "off";
|
|
||||||
};
|
|
||||||
|
|
||||||
led-3 {
|
|
||||||
label = "green:led8";
|
|
||||||
gpios = <&gpioi 3 GPIO_ACTIVE_HIGH>;
|
|
||||||
default-state = "off";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
panel {
|
|
||||||
compatible = "edt,etm0700g0edh6";
|
|
||||||
backlight = <&display_bl>;
|
|
||||||
|
|
||||||
port {
|
|
||||||
lcd_panel_in: endpoint {
|
|
||||||
remote-endpoint = <&lcd_display_out>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sound {
|
|
||||||
compatible = "audio-graph-card";
|
|
||||||
routing =
|
|
||||||
"MIC_IN", "Capture",
|
|
||||||
"Capture", "Mic Bias",
|
|
||||||
"Playback", "HP_OUT";
|
|
||||||
dais = <&sai2a_port &sai2b_port>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&cec {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&cec_pins_a>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
ðernet0 {
|
|
||||||
status = "okay";
|
|
||||||
pinctrl-0 = <ðernet0_rmii_pins_a>;
|
|
||||||
pinctrl-1 = <ðernet0_rmii_sleep_pins_a>;
|
|
||||||
pinctrl-names = "default", "sleep";
|
|
||||||
phy-mode = "rmii";
|
|
||||||
max-speed = <100>;
|
|
||||||
phy-handle = <&phy0>;
|
|
||||||
st,eth-ref-clk-sel;
|
|
||||||
phy-reset-gpios = <&gpioh 15 GPIO_ACTIVE_LOW>;
|
|
||||||
|
|
||||||
mdio0 {
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <0>;
|
|
||||||
compatible = "snps,dwmac-mdio";
|
|
||||||
|
|
||||||
phy0: ethernet-phy@1 {
|
|
||||||
reg = <1>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&i2c2 { /* Header X22 */
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&i2c2_pins_a>;
|
|
||||||
i2c-scl-rising-time-ns = <185>;
|
|
||||||
i2c-scl-falling-time-ns = <20>;
|
|
||||||
status = "okay";
|
|
||||||
/* spare dmas for other usage */
|
|
||||||
/delete-property/dmas;
|
|
||||||
/delete-property/dma-names;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&i2c5 { /* Header X21 */
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&i2c5_pins_a>;
|
|
||||||
i2c-scl-rising-time-ns = <185>;
|
|
||||||
i2c-scl-falling-time-ns = <20>;
|
|
||||||
status = "okay";
|
|
||||||
/* spare dmas for other usage */
|
|
||||||
/delete-property/dmas;
|
|
||||||
/delete-property/dma-names;
|
|
||||||
|
|
||||||
sgtl5000: codec@a {
|
|
||||||
compatible = "fsl,sgtl5000";
|
|
||||||
reg = <0x0a>;
|
|
||||||
#sound-dai-cells = <0>;
|
|
||||||
clocks = <&clk_ext_audio_codec>;
|
|
||||||
VDDA-supply = <&v3v3>;
|
|
||||||
VDDIO-supply = <&vdd>;
|
|
||||||
|
|
||||||
sgtl5000_port: port {
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <0>;
|
|
||||||
|
|
||||||
sgtl5000_tx_endpoint: endpoint@0 {
|
|
||||||
reg = <0>;
|
|
||||||
remote-endpoint = <&sai2a_endpoint>;
|
|
||||||
frame-master;
|
|
||||||
bitclock-master;
|
|
||||||
};
|
|
||||||
|
|
||||||
sgtl5000_rx_endpoint: endpoint@1 {
|
|
||||||
reg = <1>;
|
|
||||||
remote-endpoint = <&sai2b_endpoint>;
|
|
||||||
frame-master;
|
|
||||||
bitclock-master;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
polytouch@38 {
|
|
||||||
compatible = "edt,edt-ft5x06";
|
|
||||||
reg = <0x38>;
|
|
||||||
interrupt-parent = <&gpiog>;
|
|
||||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */
|
|
||||||
linux,wakeup;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
<dc {
|
|
||||||
pinctrl-names = "default", "sleep";
|
|
||||||
pinctrl-0 = <<dc_pins_b>;
|
|
||||||
pinctrl-1 = <<dc_sleep_pins_b>;
|
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
port {
|
|
||||||
lcd_display_out: endpoint {
|
|
||||||
remote-endpoint = <&lcd_panel_in>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
&m_can1 {
|
&m_can1 {
|
||||||
@@ -246,103 +26,3 @@
|
|||||||
pinctrl-1 = <&m_can1_sleep_pins_a>;
|
pinctrl-1 = <&m_can1_sleep_pins_a>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
&sai2 {
|
|
||||||
clocks = <&rcc SAI2>, <&rcc PLL3_Q>, <&rcc PLL3_R>;
|
|
||||||
clock-names = "pclk", "x8k", "x11k";
|
|
||||||
pinctrl-names = "default", "sleep";
|
|
||||||
pinctrl-0 = <&sai2a_pins_b &sai2b_pins_b>;
|
|
||||||
pinctrl-1 = <&sai2a_sleep_pins_b &sai2b_sleep_pins_b>;
|
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
sai2a: audio-controller@4400b004 {
|
|
||||||
#clock-cells = <0>;
|
|
||||||
dma-names = "tx";
|
|
||||||
clocks = <&rcc SAI2_K>;
|
|
||||||
clock-names = "sai_ck";
|
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
sai2a_port: port {
|
|
||||||
sai2a_endpoint: endpoint {
|
|
||||||
remote-endpoint = <&sgtl5000_tx_endpoint>;
|
|
||||||
format = "i2s";
|
|
||||||
mclk-fs = <512>;
|
|
||||||
dai-tdm-slot-num = <2>;
|
|
||||||
dai-tdm-slot-width = <16>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sai2b: audio-controller@4400b024 {
|
|
||||||
dma-names = "rx";
|
|
||||||
st,sync = <&sai2a 2>;
|
|
||||||
clocks = <&rcc SAI2_K>, <&sai2a>;
|
|
||||||
clock-names = "sai_ck", "MCLK";
|
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
sai2b_port: port {
|
|
||||||
sai2b_endpoint: endpoint {
|
|
||||||
remote-endpoint = <&sgtl5000_rx_endpoint>;
|
|
||||||
format = "i2s";
|
|
||||||
mclk-fs = <512>;
|
|
||||||
dai-tdm-slot-num = <2>;
|
|
||||||
dai-tdm-slot-width = <16>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&timers2 {
|
|
||||||
/* spare dmas for other usage (un-delete to enable pwm capture) */
|
|
||||||
/delete-property/dmas;
|
|
||||||
/delete-property/dma-names;
|
|
||||||
status = "okay";
|
|
||||||
pwm2: pwm {
|
|
||||||
pinctrl-0 = <&pwm2_pins_a>;
|
|
||||||
pinctrl-names = "default";
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
timer@1 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&usart3 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&usart3_pins_a>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&uart8 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&uart8_pins_a>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbh_ehci {
|
|
||||||
phys = <&usbphyc_port0>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbotg_hs {
|
|
||||||
dr_mode = "peripheral";
|
|
||||||
phys = <&usbphyc_port1 0>;
|
|
||||||
phy-names = "usb2-phy";
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbphyc {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbphyc_port0 {
|
|
||||||
phy-supply = <&vdd_usb>;
|
|
||||||
vdda1v1-supply = <®11>;
|
|
||||||
vdda1v8-supply = <®18>;
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbphyc_port1 {
|
|
||||||
phy-supply = <&vdd_usb>;
|
|
||||||
vdda1v1-supply = <®11>;
|
|
||||||
vdda1v8-supply = <®18>;
|
|
||||||
};
|
|
||||||
|
|||||||
337
arch/arm/boot/dts/stm32mp15xx-dhcom-pdk2.dtsi
Normal file
337
arch/arm/boot/dts/stm32mp15xx-dhcom-pdk2.dtsi
Normal file
@@ -0,0 +1,337 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2019-2020 Marek Vasut <marex@denx.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/pwm/pwm.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
aliases {
|
||||||
|
serial0 = &uart4;
|
||||||
|
serial1 = &usart3;
|
||||||
|
serial2 = &uart8;
|
||||||
|
ethernet0 = ðernet0;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
clk_ext_audio_codec: clock-codec {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
clock-frequency = <24000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
display_bl: display-bl {
|
||||||
|
compatible = "pwm-backlight";
|
||||||
|
pwms = <&pwm2 0 500000 PWM_POLARITY_INVERTED>;
|
||||||
|
brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>;
|
||||||
|
default-brightness-level = <8>;
|
||||||
|
enable-gpios = <&gpioi 0 GPIO_ACTIVE_HIGH>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
ethernet_vio: vioregulator {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vio";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
gpio = <&gpiog 3 GPIO_ACTIVE_LOW>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys-polled {
|
||||||
|
compatible = "gpio-keys-polled";
|
||||||
|
#size-cells = <0>;
|
||||||
|
poll-interval = <20>;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The EXTi IRQ line 3 is shared with touchscreen and ethernet,
|
||||||
|
* so mark this as polled GPIO key.
|
||||||
|
*/
|
||||||
|
button-0 {
|
||||||
|
label = "TA1-GPIO-A";
|
||||||
|
linux,code = <KEY_A>;
|
||||||
|
gpios = <&gpiof 3 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
button-1 {
|
||||||
|
label = "TA2-GPIO-B";
|
||||||
|
linux,code = <KEY_B>;
|
||||||
|
gpios = <&gpiod 6 GPIO_ACTIVE_LOW>;
|
||||||
|
wakeup-source;
|
||||||
|
};
|
||||||
|
|
||||||
|
button-2 {
|
||||||
|
label = "TA3-GPIO-C";
|
||||||
|
linux,code = <KEY_C>;
|
||||||
|
gpios = <&gpioi 11 GPIO_ACTIVE_LOW>;
|
||||||
|
wakeup-source;
|
||||||
|
};
|
||||||
|
|
||||||
|
button-3 {
|
||||||
|
label = "TA4-GPIO-D";
|
||||||
|
linux,code = <KEY_D>;
|
||||||
|
gpios = <&gpiod 12 GPIO_ACTIVE_LOW>;
|
||||||
|
wakeup-source;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
led {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led-0 {
|
||||||
|
label = "green:led5";
|
||||||
|
gpios = <&gpiog 2 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-1 {
|
||||||
|
label = "green:led6";
|
||||||
|
gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-2 {
|
||||||
|
label = "green:led7";
|
||||||
|
gpios = <&gpioi 2 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led-3 {
|
||||||
|
label = "green:led8";
|
||||||
|
gpios = <&gpioi 3 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
panel {
|
||||||
|
compatible = "edt,etm0700g0edh6";
|
||||||
|
backlight = <&display_bl>;
|
||||||
|
|
||||||
|
port {
|
||||||
|
lcd_panel_in: endpoint {
|
||||||
|
remote-endpoint = <&lcd_display_out>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sound {
|
||||||
|
compatible = "audio-graph-card";
|
||||||
|
routing =
|
||||||
|
"MIC_IN", "Capture",
|
||||||
|
"Capture", "Mic Bias",
|
||||||
|
"Playback", "HP_OUT";
|
||||||
|
dais = <&sai2a_port &sai2b_port>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&cec {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&cec_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
ðernet0 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-0 = <ðernet0_rmii_pins_a>;
|
||||||
|
pinctrl-1 = <ðernet0_rmii_sleep_pins_a>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
phy-mode = "rmii";
|
||||||
|
max-speed = <100>;
|
||||||
|
phy-handle = <&phy0>;
|
||||||
|
st,eth-ref-clk-sel;
|
||||||
|
phy-reset-gpios = <&gpioh 15 GPIO_ACTIVE_LOW>;
|
||||||
|
|
||||||
|
mdio0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
compatible = "snps,dwmac-mdio";
|
||||||
|
|
||||||
|
phy0: ethernet-phy@1 {
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c2 { /* Header X22 */
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&i2c2_pins_a>;
|
||||||
|
i2c-scl-rising-time-ns = <185>;
|
||||||
|
i2c-scl-falling-time-ns = <20>;
|
||||||
|
status = "okay";
|
||||||
|
/* spare dmas for other usage */
|
||||||
|
/delete-property/dmas;
|
||||||
|
/delete-property/dma-names;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c5 { /* Header X21 */
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&i2c5_pins_a>;
|
||||||
|
i2c-scl-rising-time-ns = <185>;
|
||||||
|
i2c-scl-falling-time-ns = <20>;
|
||||||
|
status = "okay";
|
||||||
|
/* spare dmas for other usage */
|
||||||
|
/delete-property/dmas;
|
||||||
|
/delete-property/dma-names;
|
||||||
|
|
||||||
|
sgtl5000: codec@a {
|
||||||
|
compatible = "fsl,sgtl5000";
|
||||||
|
reg = <0x0a>;
|
||||||
|
#sound-dai-cells = <0>;
|
||||||
|
clocks = <&clk_ext_audio_codec>;
|
||||||
|
VDDA-supply = <&v3v3>;
|
||||||
|
VDDIO-supply = <&vdd>;
|
||||||
|
|
||||||
|
sgtl5000_port: port {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
sgtl5000_tx_endpoint: endpoint@0 {
|
||||||
|
reg = <0>;
|
||||||
|
remote-endpoint = <&sai2a_endpoint>;
|
||||||
|
frame-master;
|
||||||
|
bitclock-master;
|
||||||
|
};
|
||||||
|
|
||||||
|
sgtl5000_rx_endpoint: endpoint@1 {
|
||||||
|
reg = <1>;
|
||||||
|
remote-endpoint = <&sai2b_endpoint>;
|
||||||
|
frame-master;
|
||||||
|
bitclock-master;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
polytouch@38 {
|
||||||
|
compatible = "edt,edt-ft5x06";
|
||||||
|
reg = <0x38>;
|
||||||
|
interrupt-parent = <&gpiog>;
|
||||||
|
interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */
|
||||||
|
linux,wakeup;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
<dc {
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <<dc_pins_b>;
|
||||||
|
pinctrl-1 = <<dc_sleep_pins_b>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
port {
|
||||||
|
lcd_display_out: endpoint {
|
||||||
|
remote-endpoint = <&lcd_panel_in>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sai2 {
|
||||||
|
clocks = <&rcc SAI2>, <&rcc PLL3_Q>, <&rcc PLL3_R>;
|
||||||
|
clock-names = "pclk", "x8k", "x11k";
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&sai2a_pins_b &sai2b_pins_b>;
|
||||||
|
pinctrl-1 = <&sai2a_sleep_pins_b &sai2b_sleep_pins_b>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
sai2a: audio-controller@4400b004 {
|
||||||
|
#clock-cells = <0>;
|
||||||
|
dma-names = "tx";
|
||||||
|
clocks = <&rcc SAI2_K>;
|
||||||
|
clock-names = "sai_ck";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
sai2a_port: port {
|
||||||
|
sai2a_endpoint: endpoint {
|
||||||
|
remote-endpoint = <&sgtl5000_tx_endpoint>;
|
||||||
|
format = "i2s";
|
||||||
|
mclk-fs = <512>;
|
||||||
|
dai-tdm-slot-num = <2>;
|
||||||
|
dai-tdm-slot-width = <16>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sai2b: audio-controller@4400b024 {
|
||||||
|
dma-names = "rx";
|
||||||
|
st,sync = <&sai2a 2>;
|
||||||
|
clocks = <&rcc SAI2_K>, <&sai2a>;
|
||||||
|
clock-names = "sai_ck", "MCLK";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
sai2b_port: port {
|
||||||
|
sai2b_endpoint: endpoint {
|
||||||
|
remote-endpoint = <&sgtl5000_rx_endpoint>;
|
||||||
|
format = "i2s";
|
||||||
|
mclk-fs = <512>;
|
||||||
|
dai-tdm-slot-num = <2>;
|
||||||
|
dai-tdm-slot-width = <16>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&timers2 {
|
||||||
|
/* spare dmas for other usage (un-delete to enable pwm capture) */
|
||||||
|
/delete-property/dmas;
|
||||||
|
/delete-property/dma-names;
|
||||||
|
status = "okay";
|
||||||
|
pwm2: pwm {
|
||||||
|
pinctrl-0 = <&pwm2_pins_a>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
timer@1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&usart3 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&usart3_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart8 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&uart8_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbh_ehci {
|
||||||
|
phys = <&usbphyc_port0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbotg_hs {
|
||||||
|
dr_mode = "peripheral";
|
||||||
|
phys = <&usbphyc_port1 0>;
|
||||||
|
phy-names = "usb2-phy";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbphyc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbphyc_port0 {
|
||||||
|
phy-supply = <&vdd_usb>;
|
||||||
|
vdda1v1-supply = <®11>;
|
||||||
|
vdda1v8-supply = <®18>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbphyc_port1 {
|
||||||
|
phy-supply = <&vdd_usb>;
|
||||||
|
vdda1v1-supply = <®11>;
|
||||||
|
vdda1v8-supply = <®18>;
|
||||||
|
};
|
||||||
@@ -1,11 +1,8 @@
|
|||||||
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2019 Marek Vasut <marex@denx.de>
|
* Copyright (C) 2019-2020 Marek Vasut <marex@denx.de>
|
||||||
*/
|
*/
|
||||||
/dts-v1/;
|
|
||||||
|
|
||||||
#include "stm32mp157.dtsi"
|
|
||||||
#include "stm32mp15xc.dtsi"
|
|
||||||
#include "stm32mp15-pinctrl.dtsi"
|
#include "stm32mp15-pinctrl.dtsi"
|
||||||
#include "stm32mp15xxaa-pinctrl.dtsi"
|
#include "stm32mp15xxaa-pinctrl.dtsi"
|
||||||
#include <dt-bindings/gpio/gpio.h>
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
Reference in New Issue
Block a user