GNU Linux-libre 5.19-rc6-gnu
[releases.git] / arch / arm / boot / dts / imx6ulz-bsh-smm-m2.dts
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
2 /*
3  * Copyright (C) 2021 BSH Hausgeraete GmbH
4  */
5
6 /dts-v1/;
7
8 #include <dt-bindings/input/input.h>
9 #include "imx6ulz.dtsi"
10
11 / {
12         model = "BSH SMM M2";
13         compatible = "bsh,imx6ulz-bsh-smm-m2", "fsl,imx6ull", "fsl,imx6ulz";
14
15         chosen {
16                 stdout-path = &uart4;
17         };
18
19         usdhc2_pwrseq: usdhc2-pwrseq {
20                 compatible = "mmc-pwrseq-simple";
21                 reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
22         };
23 };
24
25 &gpmi {
26         pinctrl-names = "default";
27         pinctrl-0 = <&pinctrl_gpmi_nand>;
28         nand-on-flash-bbt;
29         status = "okay";
30 };
31
32 &uart3 {
33         pinctrl-names = "default";
34         pinctrl-0 = <&pinctrl_uart3>;
35         uart-has-rtscts;
36         status = "okay";
37
38         bluetooth {
39                 compatible = "brcm,bcm4330-bt";
40                 max-speed = <3000000>;
41                 shutdown-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
42                 device-wakeup-gpios = <&gpio2 17 GPIO_ACTIVE_HIGH>;
43                 host-wakeup-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
44         };
45 };
46
47 &uart4 {
48         pinctrl-names = "default";
49         pinctrl-0 = <&pinctrl_uart4>;
50         status = "okay";
51 };
52
53 &usbotg1 {
54         dr_mode = "peripheral";
55         srp-disable;
56         hnp-disable;
57         adp-disable;
58         status = "okay";
59 };
60
61 &usbphy1 {
62         fsl,tx-d-cal = <106>;
63 };
64
65 &usdhc2 {
66         #address-cells = <1>;
67         #size-cells = <0>;
68         pinctrl-names = "default";
69         pinctrl-0 = <&pinctrl_wlan>;
70         bus-width = <4>;
71         no-1-8-v;
72         non-removable;
73         cap-power-off-card;
74         keep-power-in-suspend;
75         cap-sdio-irq;
76         mmc-pwrseq = <&usdhc2_pwrseq>;
77         status = "okay";
78
79         brcmf: wifi@1 {
80                 reg = <1>;
81                 compatible = "brcm,bcm4329-fmac";
82                 interrupt-parent = <&gpio1>;
83                 interrupts = <18 IRQ_TYPE_LEVEL_HIGH>;
84                 interrupt-names = "host-wake";
85         };
86 };
87
88 &wdog1 {
89         status = "okay";
90 };
91
92 &iomuxc {
93         pinctrl_gpmi_nand: gpmi-nand {
94                 fsl,pins = <
95                         MX6UL_PAD_NAND_CLE__RAWNAND_CLE         0xb0b1
96                         MX6UL_PAD_NAND_ALE__RAWNAND_ALE         0xb0b1
97                         MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B       0xb0b1
98                         MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0xb000
99                         MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B     0xb0b1
100                         MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B       0xb0b1
101                         MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B       0xb0b1
102                         MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00   0xb0b1
103                         MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01   0xb0b1
104                         MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02   0xb0b1
105                         MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03   0xb0b1
106                         MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04   0xb0b1
107                         MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05   0xb0b1
108                         MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06   0xb0b1
109                         MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07   0xb0b1
110                 >;
111         };
112
113         pinctrl_uart3: uart3grp {
114                 fsl,pins = <
115                         MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX   0x1b0b1
116                         MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX   0x1b099
117                         MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS    0x1b0b1
118                         MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS    0x1b099
119                         MX6UL_PAD_GPIO1_IO01__GPIO1_IO01        0x79            /* BT_REG_ON */
120                         MX6UL_PAD_SD1_CLK__GPIO2_IO17           0x100b1         /* BT_DEV_WAKE out */
121                         MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13       0x1b0b0         /* BT_HOST_WAKE in */
122                 >;
123         };
124
125         pinctrl_uart4: uart4grp {
126                 fsl,pins = <
127                         MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX   0x1b0b1
128                         MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX   0x1b0b1
129                 >;
130         };
131
132         pinctrl_wlan: wlangrp {
133                 fsl,pins = <
134                         MX6UL_PAD_CSI_HSYNC__USDHC2_CMD         0x17059
135                         MX6UL_PAD_CSI_VSYNC__USDHC2_CLK         0x10059
136                         MX6UL_PAD_CSI_DATA00__USDHC2_DATA0      0x17059
137                         MX6UL_PAD_CSI_DATA01__USDHC2_DATA1      0x17059
138                         MX6UL_PAD_CSI_DATA02__USDHC2_DATA2      0x17059
139                         MX6UL_PAD_CSI_DATA03__USDHC2_DATA3      0x17059
140                         MX6UL_PAD_SD1_DATA3__GPIO2_IO21         0x79            /* WL_REG_ON */
141                         MX6UL_PAD_UART2_CTS_B__GPIO1_IO22       0x100b1         /* WL_DEV_WAKE - WiFi_GPIO_4 - WiFi FW UART */
142                         MX6UL_PAD_UART1_CTS_B__GPIO1_IO18       0x1b0b1         /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
143                         MX6UL_PAD_ENET1_RX_EN__OSC32K_32K_OUT   0x4001b031      /* OSC 32Khz wifi clk in */
144                 >;
145         };
146 };