~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-osm-s.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0+ OR MIT
  2 /*
  3  * Copyright (C) 2022 Kontron Electronics GmbH
  4  */
  5 
  6 /dts-v1/;
  7 
  8 #include "imx8mm-kontron-osm-s.dtsi"
  9 
 10 / {
 11         model = "Kontron BL i.MX8MM OSM-S (N802X S)";
 12         compatible = "kontron,imx8mm-bl-osm-s", "kontron,imx8mm-osm-s", "fsl,imx8mm";
 13 
 14         aliases {
 15                 ethernet1 = &usbnet;
 16         };
 17 
 18         /* fixed crystal dedicated to mcp2542fd */
 19         osc_can: clock-osc-can {
 20                 compatible = "fixed-clock";
 21                 #clock-cells = <0>;
 22                 clock-frequency = <40000000>;
 23                 clock-output-names = "osc-can";
 24         };
 25 
 26         leds {
 27                 compatible = "gpio-leds";
 28 
 29                 led1 {
 30                         label = "led1";
 31                         gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
 32                         linux,default-trigger = "heartbeat";
 33                 };
 34 
 35                 led2 {
 36                         label = "led2";
 37                         gpios = <&gpio3 8 GPIO_ACTIVE_LOW>;
 38                 };
 39 
 40                 led3 {
 41                         label = "led3";
 42                         gpios = <&gpio3 7 GPIO_ACTIVE_LOW>;
 43                 };
 44         };
 45 
 46         pwm-beeper {
 47                 compatible = "pwm-beeper";
 48                 pwms = <&pwm2 0 5000 0>;
 49         };
 50 
 51         reg_rst_eth2: regulator-rst-eth2 {
 52                 compatible = "regulator-fixed";
 53                 gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>;
 54                 enable-active-high;
 55                 regulator-always-on;
 56                 regulator-name = "rst-usb-eth2";
 57         };
 58 
 59         reg_vdd_5v: regulator-5v {
 60                 compatible = "regulator-fixed";
 61                 regulator-always-on;
 62                 regulator-min-microvolt = <5000000>;
 63                 regulator-max-microvolt = <5000000>;
 64                 regulator-name = "vdd-5v";
 65         };
 66 };
 67 
 68 &ecspi2 {
 69         status = "okay";
 70 
 71         can@0 {
 72                 compatible = "microchip,mcp251xfd";
 73                 reg = <0>;
 74                 pinctrl-names = "default";
 75                 pinctrl-0 = <&pinctrl_can>;
 76                 clocks = <&osc_can>;
 77                 interrupts-extended = <&gpio5 1 IRQ_TYPE_LEVEL_LOW>;
 78                 /*
 79                  * Limit the SPI clock to 15 MHz to prevent issues
 80                  * with corrupted data due to chip errata.
 81                  */
 82                 spi-max-frequency = <15000000>;
 83                 vdd-supply = <&reg_vdd_3v3>;
 84                 xceiver-supply = <&reg_vdd_5v>;
 85         };
 86 };
 87 
 88 &ecspi3 {
 89         status = "okay";
 90 
 91         eeram@0 {
 92                 compatible = "microchip,48l640";
 93                 reg = <0>;
 94                 spi-max-frequency = <20000000>;
 95         };
 96 };
 97 
 98 &fec1 {
 99         pinctrl-names = "default";
100         pinctrl-0 = <&pinctrl_enet_rgmii>;
101         phy-connection-type = "rgmii-id";
102         phy-handle = <&ethphy>;
103         status = "okay";
104 
105         mdio {
106                 #address-cells = <1>;
107                 #size-cells = <0>;
108 
109                 ethphy: ethernet-phy@0 {
110                         compatible = "ethernet-phy-id4f51.e91b";
111                         reg = <0>;
112                         reset-assert-us = <10000>;
113                         reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
114                 };
115         };
116 };
117 
118 /*
119  * Rename SoM signals according to board usage:
120  *   GPIO_B_0      -> DIO1_OUT
121  *   GPIO_B_1      -> DIO2_OUT
122  */
123 &gpio1 {
124         gpio-line-names = "", "GPIO_A_0", "", "GPIO_A_1",
125                           "", "GPIO_A_2", "GPIO_A_3", "GPIO_A_4",
126                           "GPIO_A_5", "GPIO_A_6", "GPIO_A_7", "DIO1_OUT",
127                           "DIO2_OUT", "USB_A_OC#", "CAM_MCK", "USB_B_OC#",
128                           "ETH_MDC", "ETH_MDIO", "ETH_A_(S)(R)(G)MII_TXD3",
129                           "ETH_A_(S)(R)(G)MII_TXD2", "ETH_A_(S)(R)(G)MII_TXD1",
130                           "ETH_A_(S)(R)(G)MII_TXD0", "ETH_A_(R)(G)MII_TX_EN(_ER)",
131                           "ETH_A_(R)(G)MII_TX_CLK", "ETH_A_(R)(G)MII_RX_DV(_ER)",
132                           "ETH_A_(R)(G)MII_RX_CLK", "ETH_A_(S)(R)(G)MII_RXD0",
133                           "ETH_A_(S)(R)(G)MII_RXD1", "ETH_A_(R)(G)MII_RXD2",
134                           "ETH_A_(R)(G)MII_RXD3";
135 };
136 
137 /*
138  * Rename SoM signals according to board usage:
139  *   GPIO_B_2      -> DIO3_OUT
140  *   GPIO_B_3      -> DIO4_OUT
141  */
142 &gpio3 {
143         gpio-line-names = "GPIO_C_5", "GPIO_C_4", "SDIO_B_CD#", "SDIO_B_D5",
144                           "SDIO_B_D6", "SDIO_B_D7", "GPIO_C_0", "GPIO_C_1",
145                           "GPIO_C_2", "GPIO_C_3", "SDIO_B_D0", "SDIO_B_D1",
146                           "SDIO_B_D2", "SDIO_B_D3", "", "SDIO_B_D4",
147                           "CARRIER_PWR_EN", "SDIO_B_CLK", "SDIO_B_CMD", "DIO3_OUT",
148                           "USB_B_EN", "DIO4_OUT", "PCIe_CLKREQ#", "PCIe_A_PERST#",
149                           "PCIe_WAKE#", "USB_A_EN";
150 };
151 
152 /*
153  * Rename SoM signals according to board usage:
154  *   GPIO_B_4      -> DIO1_IN
155  *   GPIO_B_5      -> DIO2_IN
156  *   GPIO_B_6      -> DIO3_IN
157  *   GPIO_B_7      -> DIO4_IN
158  */
159 &gpio4 {
160         gpio-line-names = "GPIO_C_7", "", "I2S_A_DATA_IN", "I2S_B_DATA_IN",
161                           "DIO1_IN", "BOOT_SEL0#", "BOOT_SEL1#", "",
162                           "", "", "I2S_LRCLK", "I2S_BITCLK",
163                           "I2S_A_DATA_OUT", "I2S_B_DATA_OUT", "DIO2_IN", "DIO3_IN",
164                           "DIO4_IN", "SPI_A_/WP_(IO2)", "SPI_A_/HOLD_(IO3)", "GPIO_C_6",
165                           "I2S_MCLK", "UART_A_TX", "UART_A_RX", "UART_A_CTS",
166                           "UART_A_RTS", "", "", "",
167                           "PCIe_SM_ALERT", "UART_B_RTS", "UART_B_CTS", "UART_B_RX";
168 };
169 
170 &i2c3 {
171         status = "okay";
172 
173         usb-hub@2c {
174                 compatible = "microchip,usb2514b";
175                 pinctrl-names = "default";
176                 pinctrl-0 = <&pinctrl_usb_hub>;
177                 reg = <0x2c>;
178                 non-removable-ports = <0>, <3>;
179                 reset-gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
180         };
181 };
182 
183 &pwm2 {
184         status = "okay";
185 };
186 
187 &reg_usb2_vbus {
188         status = "disabled";
189 };
190 
191 &reg_usdhc2_vcc {
192         status = "disabled";
193 };
194 
195 &reg_usdhc3_vcc {
196         status = "disabled";
197 };
198 
199 &uart1 {
200         uart-has-rtscts;
201         status = "okay";
202 };
203 
204 &uart2 {
205         linux,rs485-enabled-at-boot-time;
206         uart-has-rtscts;
207         status = "okay";
208 };
209 
210 &usbotg1 {
211         dr_mode = "otg";
212         status = "okay";
213 };
214 
215 &usbotg2 {
216         dr_mode = "host";
217         disable-over-current;
218         #address-cells = <1>;
219         #size-cells = <0>;
220         status = "okay";
221 
222         /* VBUS is controlled by the hub */
223         /delete-property/ vbus-supply;
224 
225         usb1@1 {
226                 compatible = "usb424,2514";
227                 reg = <1>;
228                 #address-cells = <1>;
229                 #size-cells = <0>;
230 
231                 usbnet: ethernet@1 {
232                         compatible = "usbb95,772b";
233                         reg = <1>;
234                         local-mac-address = [ 00 00 00 00 00 00 ];
235                 };
236         };
237 };
238 
239 &usdhc2 {
240         vmmc-supply = <&reg_vdd_3v3>;
241         status = "okay";
242 };
243 
244 &iomuxc {
245         pinctrl_can: cangrp {
246                 fsl,pins = <
247                         MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1                 0x19  /* SDIO_B_PWR_EN */
248                 >;
249         };
250 
251         pinctrl_usb_hub: usbhubgrp {
252                 fsl,pins = <
253                         MX8MM_IOMUXC_SAI3_MCLK_GPIO5_IO2                0x19 /* SDIO_B_WP */
254                 >;
255         };
256 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php