1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 2 /* 2 /* 3 * Copyright (C) Geanix ApS 2023 - All Rights 3 * Copyright (C) Geanix ApS 2023 - All Rights Reserved 4 * Author: Sean Nyekjaer <sean@geanix.com> 4 * Author: Sean Nyekjaer <sean@geanix.com> 5 */ 5 */ 6 6 7 /dts-v1/; 7 /dts-v1/; 8 8 9 #include "stm32mp157.dtsi" 9 #include "stm32mp157.dtsi" 10 #include "stm32mp15xc.dtsi" 10 #include "stm32mp15xc.dtsi" 11 #include "stm32mp15xx-osd32.dtsi" 11 #include "stm32mp15xx-osd32.dtsi" 12 #include "stm32mp15xxac-pinctrl.dtsi" 12 #include "stm32mp15xxac-pinctrl.dtsi" 13 13 14 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/pinctrl/stm32-pinfunc.h> 15 #include <dt-bindings/pinctrl/stm32-pinfunc.h> 16 16 17 / { 17 / { 18 model = "Octavo OSD32MP1 RED board"; 18 model = "Octavo OSD32MP1 RED board"; 19 compatible = "oct,stm32mp157c-osd32-re 19 compatible = "oct,stm32mp157c-osd32-red", "oct,stm32mp15xx-osd32", "st,stm32mp157"; 20 20 21 aliases { 21 aliases { 22 serial0 = &uart4; 22 serial0 = &uart4; 23 }; 23 }; 24 24 25 chosen { 25 chosen { 26 stdout-path = "serial0:115200n 26 stdout-path = "serial0:115200n8"; 27 }; 27 }; 28 28 29 led-controller-0 { 29 led-controller-0 { 30 compatible = "gpio-leds"; 30 compatible = "gpio-leds"; 31 31 32 led-0 { 32 led-0 { 33 label = "heartbeat"; 33 label = "heartbeat"; 34 gpios = <&gpiod 11 GPI 34 gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>; 35 linux,default-trigger 35 linux,default-trigger = "heartbeat"; 36 }; 36 }; 37 }; 37 }; 38 }; 38 }; 39 39 40 &crc1 { 40 &crc1 { 41 status = "okay"; 41 status = "okay"; 42 }; 42 }; 43 43 44 &dts { 44 &dts { 45 status = "okay"; 45 status = "okay"; 46 }; 46 }; 47 47 48 ðernet0 { 48 ðernet0 { 49 pinctrl-names = "default", "sleep"; 49 pinctrl-names = "default", "sleep"; 50 pinctrl-0 = <ðernet0_rgmii_pins_a>; 50 pinctrl-0 = <ðernet0_rgmii_pins_a>; 51 pinctrl-1 = <ðernet0_rgmii_sleep_pi 51 pinctrl-1 = <ðernet0_rgmii_sleep_pins_a>; 52 phy-mode = "rgmii-id"; 52 phy-mode = "rgmii-id"; 53 max-speed = <1000>; 53 max-speed = <1000>; 54 phy-handle = <&phy0>; 54 phy-handle = <&phy0>; 55 st,eth-clk-sel; 55 st,eth-clk-sel; 56 status = "okay"; 56 status = "okay"; 57 57 58 mdio { 58 mdio { 59 compatible = "snps,dwmac-mdio" 59 compatible = "snps,dwmac-mdio"; 60 #address-cells = <1>; 60 #address-cells = <1>; 61 #size-cells = <0>; 61 #size-cells = <0>; 62 62 63 phy0: ethernet-phy@3 { 63 phy0: ethernet-phy@3 { 64 reg = <3>; 64 reg = <3>; 65 }; 65 }; 66 }; 66 }; 67 }; 67 }; 68 68 69 &iwdg2 { 69 &iwdg2 { 70 timeout-sec = <32>; 70 timeout-sec = <32>; 71 status = "okay"; 71 status = "okay"; 72 }; 72 }; 73 73 74 &i2c1 { 74 &i2c1 { 75 pinctrl-names = "default", "sleep"; 75 pinctrl-names = "default", "sleep"; 76 pinctrl-0 = <&i2c1_pins_a>; 76 pinctrl-0 = <&i2c1_pins_a>; 77 pinctrl-1 = <&i2c1_sleep_pins_a>; 77 pinctrl-1 = <&i2c1_sleep_pins_a>; 78 status = "okay"; 78 status = "okay"; 79 i2c-scl-rising-time-ns = <100>; 79 i2c-scl-rising-time-ns = <100>; 80 i2c-scl-falling-time-ns = <7>; 80 i2c-scl-falling-time-ns = <7>; 81 /* spare dmas for other usage */ 81 /* spare dmas for other usage */ 82 /delete-property/dmas; 82 /delete-property/dmas; 83 /delete-property/dma-names; 83 /delete-property/dma-names; 84 84 85 hdmi-transmitter@39 { 85 hdmi-transmitter@39 { 86 compatible = "sil,sii9022"; 86 compatible = "sil,sii9022"; 87 reg = <0x39>; 87 reg = <0x39>; 88 reset-gpios = <&gpiog 0 GPIO_A 88 reset-gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; 89 interrupts = <1 IRQ_TYPE_EDGE_ 89 interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 90 interrupt-parent = <&gpiog>; 90 interrupt-parent = <&gpiog>; 91 pinctrl-names = "default", "sl 91 pinctrl-names = "default", "sleep"; 92 pinctrl-0 = <<dc_pins_e>; 92 pinctrl-0 = <<dc_pins_e>; 93 pinctrl-1 = <<dc_sleep_pins_ 93 pinctrl-1 = <<dc_sleep_pins_e>; 94 94 95 ports { 95 ports { 96 #address-cells = <1>; 96 #address-cells = <1>; 97 #size-cells = <0>; 97 #size-cells = <0>; 98 98 99 port@0 { 99 port@0 { 100 reg = <0>; 100 reg = <0>; 101 sii9022_in: en 101 sii9022_in: endpoint { 102 remote 102 remote-endpoint = <<dc_ep0_out>; 103 }; 103 }; 104 }; 104 }; 105 105 106 port@3 { 106 port@3 { 107 reg = <3>; 107 reg = <3>; 108 sii9022_tx_end 108 sii9022_tx_endpoint: endpoint { 109 remote 109 remote-endpoint = <&i2s2_endpoint>; 110 }; 110 }; 111 }; 111 }; 112 }; 112 }; 113 }; 113 }; 114 }; 114 }; 115 115 116 &i2s2 { 116 &i2s2 { 117 clocks = <&rcc SPI2>, <&rcc SPI2_K>, < 117 clocks = <&rcc SPI2>, <&rcc SPI2_K>, <&rcc CK_PER>, <&rcc PLL3_R>; 118 clock-names = "pclk", "i2sclk", "x8k", 118 clock-names = "pclk", "i2sclk", "x8k", "x11k"; 119 pinctrl-names = "default", "sleep"; 119 pinctrl-names = "default", "sleep"; 120 pinctrl-0 = <&i2s2_pins_b>; 120 pinctrl-0 = <&i2s2_pins_b>; 121 pinctrl-1 = <&i2s2_sleep_pins_b>; 121 pinctrl-1 = <&i2s2_sleep_pins_b>; 122 status = "okay"; 122 status = "okay"; 123 123 124 i2s2_port: port { 124 i2s2_port: port { 125 i2s2_endpoint: endpoint { 125 i2s2_endpoint: endpoint { 126 remote-endpoint = <&si 126 remote-endpoint = <&sii9022_tx_endpoint>; 127 dai-format = "i2s"; 127 dai-format = "i2s"; 128 mclk-fs = <256>; 128 mclk-fs = <256>; 129 }; 129 }; 130 }; 130 }; 131 }; 131 }; 132 132 133 <dc { 133 <dc { 134 status = "okay"; 134 status = "okay"; 135 135 136 port { 136 port { 137 ltdc_ep0_out: endpoint { 137 ltdc_ep0_out: endpoint { 138 remote-endpoint = <&si 138 remote-endpoint = <&sii9022_in>; 139 }; 139 }; 140 }; 140 }; 141 }; 141 }; 142 142 143 &m_can1 { 143 &m_can1 { 144 pinctrl-names = "default", "sleep"; 144 pinctrl-names = "default", "sleep"; 145 pinctrl-0 = <&m_can1_pins_d>; 145 pinctrl-0 = <&m_can1_pins_d>; 146 pinctrl-1 = <&m_can1_sleep_pins_d>; 146 pinctrl-1 = <&m_can1_sleep_pins_d>; 147 status = "okay"; 147 status = "okay"; 148 }; 148 }; 149 149 150 &rtc { 150 &rtc { 151 status = "okay"; 151 status = "okay"; 152 }; 152 }; 153 153 154 &sdmmc1 { 154 &sdmmc1 { 155 pinctrl-names = "default", "opendrain" 155 pinctrl-names = "default", "opendrain", "sleep"; 156 pinctrl-0 = <&sdmmc1_b4_pins_a>; 156 pinctrl-0 = <&sdmmc1_b4_pins_a>; 157 pinctrl-1 = <&sdmmc1_b4_od_pins_a>; 157 pinctrl-1 = <&sdmmc1_b4_od_pins_a>; 158 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>; 158 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>; 159 cd-gpios = <&gpioe 7 (GPIO_ACTIVE_LOW 159 cd-gpios = <&gpioe 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 160 disable-wp; 160 disable-wp; 161 st,neg-edge; 161 st,neg-edge; 162 bus-width = <4>; 162 bus-width = <4>; 163 vmmc-supply = <&v3v3>; 163 vmmc-supply = <&v3v3>; 164 status = "okay"; 164 status = "okay"; 165 }; 165 }; 166 166 167 &sdmmc2 { 167 &sdmmc2 { 168 pinctrl-names = "default", "opendrain" 168 pinctrl-names = "default", "opendrain", "sleep"; 169 pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2 169 pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_d>; 170 pinctrl-1 = <&sdmmc2_b4_od_pins_a>; 170 pinctrl-1 = <&sdmmc2_b4_od_pins_a>; 171 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a & 171 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_d>; 172 non-removable; 172 non-removable; 173 no-sd; 173 no-sd; 174 no-sdio; 174 no-sdio; 175 st,neg-edge; 175 st,neg-edge; 176 bus-width = <8>; 176 bus-width = <8>; 177 vmmc-supply = <&v3v3>; 177 vmmc-supply = <&v3v3>; 178 vqmmc-supply = <&vdd>; 178 vqmmc-supply = <&vdd>; 179 mmc-ddr-3_3v; 179 mmc-ddr-3_3v; 180 status = "okay"; 180 status = "okay"; 181 }; 181 }; 182 182 183 &uart4 { 183 &uart4 { 184 pinctrl-names = "default", "sleep", "i 184 pinctrl-names = "default", "sleep", "idle"; 185 pinctrl-0 = <&uart4_pins_a>; 185 pinctrl-0 = <&uart4_pins_a>; 186 pinctrl-1 = <&uart4_sleep_pins_a>; 186 pinctrl-1 = <&uart4_sleep_pins_a>; 187 pinctrl-2 = <&uart4_idle_pins_a>; 187 pinctrl-2 = <&uart4_idle_pins_a>; 188 /* spare dmas for other usage */ 188 /* spare dmas for other usage */ 189 /delete-property/dmas; 189 /delete-property/dmas; 190 /delete-property/dma-names; 190 /delete-property/dma-names; 191 status = "okay"; 191 status = "okay"; 192 }; 192 }; 193 193 194 &usbh_ehci { 194 &usbh_ehci { 195 status = "okay"; 195 status = "okay"; 196 }; 196 }; 197 197 198 &usbh_ohci { 198 &usbh_ohci { 199 status = "okay"; 199 status = "okay"; 200 }; 200 }; 201 201 202 &usbotg_hs { 202 &usbotg_hs { 203 vbus-supply = <&vbus_otg>; 203 vbus-supply = <&vbus_otg>; 204 }; 204 }; 205 205 206 &usbphyc { 206 &usbphyc { 207 status = "okay"; 207 status = "okay"; 208 }; 208 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.