1 /*
2  * Copyright (c) 2012, Freescale Semiconductor, Inc.
3  * All rights reserved.
4  *
5  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
6  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
7  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
8  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
9  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
10  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
11  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
12  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
13  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
14  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15  */
16 
17 // File: uart3_iomux_config.c
18 
19 /* ------------------------------------------------------------------------------
20  * <auto-generated>
21  *     This code was generated by a tool.
22  *     Runtime Version:3.4.0.0
23  *
24  *     Changes to this file may cause incorrect behavior and will be lost if
25  *     the code is regenerated.
26  * </auto-generated>
27  * ------------------------------------------------------------------------------
28 */
29 
30 #include "iomux_config.h"
31 #include "registers/regsiomuxc.h"
32 
33 // Function to configure IOMUXC for uart3 module.
uart3_iomux_config(void)34 void uart3_iomux_config(void)
35 {
36     // Config uart3.UART3_CTS_B to pad EIM_DATA30(J20)
37     // HW_IOMUXC_SW_MUX_CTL_PAD_EIM_DATA30_WR(0x00000004);
38     // HW_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_WR(0x0001B0B0);
39     // HW_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_WR(0x00000003);
40     // Mux Register:
41     // IOMUXC_SW_MUX_CTL_PAD_EIM_DATA30(0x020E017C)
42     //   SION [4] - Software Input On Field Reset: DISABLED
43     //              Force the selected mux mode Input path no matter of MUX_MODE functionality.
44     //     DISABLED (0) - Input Path is determined by functionality of the selected mux mode (regular).
45     //     ENABLED (1) - Force input path of pad.
46     //   MUX_MODE [3:0] - MUX Mode Select Field Reset: ALT5
47     //                    Select iomux modes to be used for pad.
48     //     ALT0 (0) - Select instance: eim signal: EIM_DATA30
49     //     ALT1 (1) - Select instance: ipu1 signal: IPU1_DISP1_DATA21
50     //     ALT2 (2) - Select instance: ipu1 signal: IPU1_DI0_PIN11
51     //     ALT3 (3) - Select instance: ipu1 signal: IPU1_CSI0_DATA03
52     //     ALT4 (4) - Select instance: uart3 signal: UART3_CTS_B
53     //     ALT5 (5) - Select instance: gpio3 signal: GPIO3_IO30
54     //     ALT6 (6) - Select instance: usb signal: USB_H1_OC
55     //     ALT8 (8) - Select instance: epdc signal: EPDC_SDOEZ
56     HW_IOMUXC_SW_MUX_CTL_PAD_EIM_DATA30_WR(
57             BF_IOMUXC_SW_MUX_CTL_PAD_EIM_DATA30_SION_V(DISABLED) |
58             BF_IOMUXC_SW_MUX_CTL_PAD_EIM_DATA30_MUX_MODE_V(ALT4));
59     // Pad Control Register:
60     // IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30(0x020E054C)
61     //   HYS [16] - Hysteresis Enable Field Reset: ENABLED
62     //     DISABLED (0) - CMOS input
63     //     ENABLED (1) - Schmitt trigger input
64     //   PUS [15:14] - Pull Up / Down Config. Field Reset: 100K_OHM_PU
65     //     100K_OHM_PD (0) - 100K Ohm Pull Down
66     //     47K_OHM_PU (1) - 47K Ohm Pull Up
67     //     100K_OHM_PU (2) - 100K Ohm Pull Up
68     //     22K_OHM_PU (3) - 22K Ohm Pull Up
69     //   PUE [13] - Pull / Keep Select Field Reset: PULL
70     //     KEEP (0) - Keeper Enabled
71     //     PULL (1) - Pull Enabled
72     //   PKE [12] - Pull / Keep Enable Field Reset: ENABLED
73     //     DISABLED (0) - Pull/Keeper Disabled
74     //     ENABLED (1) - Pull/Keeper Enabled
75     //   ODE [11] - Open Drain Enable Field Reset: DISABLED
76     //              Enables open drain of the pin.
77     //     DISABLED (0) - Output is CMOS.
78     //     ENABLED (1) - Output is Open Drain.
79     //   SPEED [7:6] - Speed Field Reset: 100MHZ
80     //     RESERVED0 (0) - Reserved
81     //     50MHZ (1) - Low (50 MHz)
82     //     100MHZ (2) - Medium (100 MHz)
83     //     200MHZ (3) - Maximum (200 MHz)
84     //   DSE [5:3] - Drive Strength Field Reset: 40_OHM
85     //     HIZ (0) - HI-Z
86     //     240_OHM (1) - 240 Ohm
87     //     120_OHM (2) - 120 Ohm
88     //     80_OHM (3) - 80 Ohm
89     //     60_OHM (4) - 60 Ohm
90     //     48_OHM (5) - 48 Ohm
91     //     40_OHM (6) - 40 Ohm
92     //     34_OHM (7) - 34 Ohm
93     //   SRE [0] - Slew Rate Field Reset: SLOW
94     //             Slew rate control.
95     //     SLOW (0) - Slow Slew Rate
96     //     FAST (1) - Fast Slew Rate
97     HW_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_WR(
98             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_HYS_V(ENABLED) |
99             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_PUS_V(100K_OHM_PU) |
100             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_PUE_V(PULL) |
101             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_PKE_V(ENABLED) |
102             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_ODE_V(DISABLED) |
103             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_SPEED_V(100MHZ) |
104             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_DSE_V(40_OHM) |
105             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_DATA30_SRE_V(SLOW));
106     // Pad EIM_DATA30 is involved in Daisy Chain.
107     // Input Select Register:
108     // IOMUXC_UART3_UART_RTS_B_SELECT_INPUT(0x020E0908)
109     //   DAISY [2:0] - MUX Mode Select Field Reset: EIM_DATA23_ALT2
110     //                 Selecting Pads Involved in Daisy Chain.
111     //     EIM_DATA23_ALT2 (0) - Select signal uart3 UART3_CTS_B as input from pad EIM_DATA23(ALT2).
112     //     EIM_DATA30_ALT4 (1) - Select signal uart3 UART3_CTS_B as input from pad EIM_DATA30(ALT4).
113     //     EIM_DATA31_ALT4 (2) - Select signal uart3 UART3_RTS_B as input from pad EIM_DATA31(ALT4).
114     //     EIM_EB3_ALT2 (3) - Select signal uart3 UART3_RTS_B as input from pad EIM_EB3(ALT2).
115     //     SD3_DATA3_ALT1 (4) - Select signal uart3 UART3_CTS_B as input from pad SD3_DATA3(ALT1).
116     //     SD3_RESET_ALT1 (5) - Select signal uart3 UART3_RTS_B as input from pad SD3_RESET(ALT1).
117     HW_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_WR(
118             BF_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_DAISY_V(EIM_EB3_ALT2));
119 
120     // Config uart3.UART3_RTS_B to pad EIM_EB3(F23)
121     // HW_IOMUXC_SW_MUX_CTL_PAD_EIM_EB3_WR(0x00000002);
122     // HW_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_WR(0x0001B0B0);
123     // HW_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_WR(0x00000003);
124     // Mux Register:
125     // IOMUXC_SW_MUX_CTL_PAD_EIM_EB3(0x020E01D0)
126     //   SION [4] - Software Input On Field Reset: DISABLED
127     //              Force the selected mux mode Input path no matter of MUX_MODE functionality.
128     //     DISABLED (0) - Input Path is determined by functionality of the selected mux mode (regular).
129     //     ENABLED (1) - Force input path of pad.
130     //   MUX_MODE [3:0] - MUX Mode Select Field Reset: ALT5
131     //                    Select iomux modes to be used for pad.
132     //     ALT0 (0) - Select instance: eim signal: EIM_EB3
133     //     ALT1 (1) - Select instance: ecspi4 signal: ECSPI4_RDY
134     //     ALT2 (2) - Select instance: uart3 signal: UART3_RTS_B
135     //     ALT3 (3) - Select instance: uart1 signal: UART1_RI_B
136     //     ALT4 (4) - Select instance: ipu1 signal: IPU1_CSI1_HSYNC
137     //     ALT5 (5) - Select instance: gpio2 signal: GPIO2_IO31
138     //     ALT6 (6) - Select instance: ipu1 signal: IPU1_DI1_PIN03
139     //     ALT7 (7) - Select instance: src signal: SRC_BOOT_CFG31
140     //     ALT8 (8) - Select instance: epdc signal: EPDC_SDCE0
141     //     ALT9 (9) - Select instance: eim signal: EIM_ACLK_FREERUN
142     HW_IOMUXC_SW_MUX_CTL_PAD_EIM_EB3_WR(
143             BF_IOMUXC_SW_MUX_CTL_PAD_EIM_EB3_SION_V(DISABLED) |
144             BF_IOMUXC_SW_MUX_CTL_PAD_EIM_EB3_MUX_MODE_V(ALT2));
145     // Pad Control Register:
146     // IOMUXC_SW_PAD_CTL_PAD_EIM_EB3(0x020E05A0)
147     //   HYS [16] - Hysteresis Enable Field Reset: ENABLED
148     //     DISABLED (0) - CMOS input
149     //     ENABLED (1) - Schmitt trigger input
150     //   PUS [15:14] - Pull Up / Down Config. Field Reset: 100K_OHM_PU
151     //     100K_OHM_PD (0) - 100K Ohm Pull Down
152     //     47K_OHM_PU (1) - 47K Ohm Pull Up
153     //     100K_OHM_PU (2) - 100K Ohm Pull Up
154     //     22K_OHM_PU (3) - 22K Ohm Pull Up
155     //   PUE [13] - Pull / Keep Select Field Reset: PULL
156     //     KEEP (0) - Keeper Enabled
157     //     PULL (1) - Pull Enabled
158     //   PKE [12] - Pull / Keep Enable Field Reset: ENABLED
159     //     DISABLED (0) - Pull/Keeper Disabled
160     //     ENABLED (1) - Pull/Keeper Enabled
161     //   ODE [11] - Open Drain Enable Field Reset: DISABLED
162     //              Enables open drain of the pin.
163     //     DISABLED (0) - Output is CMOS.
164     //     ENABLED (1) - Output is Open Drain.
165     //   SPEED [7:6] - Speed Field Reset: 100MHZ
166     //     RESERVED0 (0) - Reserved
167     //     50MHZ (1) - Low (50 MHz)
168     //     100MHZ (2) - Medium (100 MHz)
169     //     200MHZ (3) - Maximum (200 MHz)
170     //   DSE [5:3] - Drive Strength Field Reset: 40_OHM
171     //     HIZ (0) - HI-Z
172     //     240_OHM (1) - 240 Ohm
173     //     120_OHM (2) - 120 Ohm
174     //     80_OHM (3) - 80 Ohm
175     //     60_OHM (4) - 60 Ohm
176     //     48_OHM (5) - 48 Ohm
177     //     40_OHM (6) - 40 Ohm
178     //     34_OHM (7) - 34 Ohm
179     //   SRE [0] - Slew Rate Field Reset: SLOW
180     //             Slew rate control.
181     //     SLOW (0) - Slow Slew Rate
182     //     FAST (1) - Fast Slew Rate
183     HW_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_WR(
184             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_HYS_V(ENABLED) |
185             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_PUS_V(100K_OHM_PU) |
186             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_PUE_V(PULL) |
187             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_PKE_V(ENABLED) |
188             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_ODE_V(DISABLED) |
189             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_SPEED_V(100MHZ) |
190             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_DSE_V(40_OHM) |
191             BF_IOMUXC_SW_PAD_CTL_PAD_EIM_EB3_SRE_V(SLOW));
192     // Pad EIM_EB3 is involved in Daisy Chain.
193     // Input Select Register:
194     // IOMUXC_UART3_UART_RTS_B_SELECT_INPUT(0x020E0908)
195     //   DAISY [2:0] - MUX Mode Select Field Reset: EIM_DATA23_ALT2
196     //                 Selecting Pads Involved in Daisy Chain.
197     //     EIM_DATA23_ALT2 (0) - Select signal uart3 UART3_CTS_B as input from pad EIM_DATA23(ALT2).
198     //     EIM_DATA30_ALT4 (1) - Select signal uart3 UART3_CTS_B as input from pad EIM_DATA30(ALT4).
199     //     EIM_DATA31_ALT4 (2) - Select signal uart3 UART3_RTS_B as input from pad EIM_DATA31(ALT4).
200     //     EIM_EB3_ALT2 (3) - Select signal uart3 UART3_RTS_B as input from pad EIM_EB3(ALT2).
201     //     SD3_DATA3_ALT1 (4) - Select signal uart3 UART3_CTS_B as input from pad SD3_DATA3(ALT1).
202     //     SD3_RESET_ALT1 (5) - Select signal uart3 UART3_RTS_B as input from pad SD3_RESET(ALT1).
203     HW_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_WR(
204             BF_IOMUXC_UART3_UART_RTS_B_SELECT_INPUT_DAISY_V(EIM_EB3_ALT2));
205 
206     // Config uart3.UART3_RX_DATA to pad SD4_CLK(E16)
207     // HW_IOMUXC_SW_MUX_CTL_PAD_SD4_CLK_WR(0x00000002);
208     // HW_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_WR(0x0001B0B0);
209     // HW_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_WR(0x00000002);
210     // Mux Register:
211     // IOMUXC_SW_MUX_CTL_PAD_SD4_CLK(0x020E0338)
212     //   SION [4] - Software Input On Field Reset: DISABLED
213     //              Force the selected mux mode Input path no matter of MUX_MODE functionality.
214     //     DISABLED (0) - Input Path is determined by functionality of the selected mux mode (regular).
215     //     ENABLED (1) - Force input path of pad.
216     //   MUX_MODE [2:0] - MUX Mode Select Field Reset: ALT5
217     //                    Select iomux modes to be used for pad.
218     //     ALT0 (0) - Select instance: usdhc4 signal: SD4_CLK
219     //     ALT1 (1) - Select instance: gpmi signal: NAND_WE_B
220     //     ALT2 (2) - Select instance: uart3 signal: UART3_RX_DATA
221     //     ALT5 (5) - Select instance: gpio7 signal: GPIO7_IO10
222     HW_IOMUXC_SW_MUX_CTL_PAD_SD4_CLK_WR(
223             BF_IOMUXC_SW_MUX_CTL_PAD_SD4_CLK_SION_V(DISABLED) |
224             BF_IOMUXC_SW_MUX_CTL_PAD_SD4_CLK_MUX_MODE_V(ALT2));
225     // Pad Control Register:
226     // IOMUXC_SW_PAD_CTL_PAD_SD4_CLK(0x020E0720)
227     //   HYS [16] - Hysteresis Enable Field Reset: ENABLED
228     //     DISABLED (0) - CMOS input
229     //     ENABLED (1) - Schmitt trigger input
230     //   PUS [15:14] - Pull Up / Down Config. Field Reset: 100K_OHM_PU
231     //     100K_OHM_PD (0) - 100K Ohm Pull Down
232     //     47K_OHM_PU (1) - 47K Ohm Pull Up
233     //     100K_OHM_PU (2) - 100K Ohm Pull Up
234     //     22K_OHM_PU (3) - 22K Ohm Pull Up
235     //   PUE [13] - Pull / Keep Select Field Reset: PULL
236     //     KEEP (0) - Keeper Enabled
237     //     PULL (1) - Pull Enabled
238     //   PKE [12] - Pull / Keep Enable Field Reset: ENABLED
239     //     DISABLED (0) - Pull/Keeper Disabled
240     //     ENABLED (1) - Pull/Keeper Enabled
241     //   ODE [11] - Open Drain Enable Field Reset: DISABLED
242     //              Enables open drain of the pin.
243     //     DISABLED (0) - Output is CMOS.
244     //     ENABLED (1) - Output is Open Drain.
245     //   SPEED [7:6] - Speed Field Reset: 100MHZ
246     //     RESERVED0 (0) - Reserved
247     //     50MHZ (1) - Low (50 MHz)
248     //     100MHZ (2) - Medium (100 MHz)
249     //     200MHZ (3) - Maximum (200 MHz)
250     //   DSE [5:3] - Drive Strength Field Reset: 40_OHM
251     //     HIZ (0) - HI-Z
252     //     240_OHM (1) - 240 Ohm
253     //     120_OHM (2) - 120 Ohm
254     //     80_OHM (3) - 80 Ohm
255     //     60_OHM (4) - 60 Ohm
256     //     48_OHM (5) - 48 Ohm
257     //     40_OHM (6) - 40 Ohm
258     //     34_OHM (7) - 34 Ohm
259     //   SRE [0] - Slew Rate Field Reset: SLOW
260     //             Slew rate control.
261     //     SLOW (0) - Slow Slew Rate
262     //     FAST (1) - Fast Slew Rate
263     HW_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_WR(
264             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_HYS_V(ENABLED) |
265             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_PUS_V(100K_OHM_PU) |
266             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_PUE_V(PULL) |
267             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_PKE_V(ENABLED) |
268             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_ODE_V(DISABLED) |
269             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_SPEED_V(100MHZ) |
270             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_DSE_V(40_OHM) |
271             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CLK_SRE_V(SLOW));
272     // Pad SD4_CLK is involved in Daisy Chain.
273     // Input Select Register:
274     // IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT(0x020E090C)
275     //   DAISY [1:0] - MUX Mode Select Field Reset: EIM_DATA24_ALT2
276     //                 Selecting Pads Involved in Daisy Chain.
277     //     EIM_DATA24_ALT2 (0) - Select signal uart3 UART3_TX_DATA as input from pad EIM_DATA24(ALT2).
278     //     EIM_DATA25_ALT2 (1) - Select signal uart3 UART3_RX_DATA as input from pad EIM_DATA25(ALT2).
279     //     SD4_CLK_ALT2 (2) - Select signal uart3 UART3_RX_DATA as input from pad SD4_CLK(ALT2).
280     //     SD4_CMD_ALT2 (3) - Select signal uart3 UART3_TX_DATA as input from pad SD4_CMD(ALT2).
281     HW_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_WR(
282             BF_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_DAISY_V(SD4_CLK_ALT2));
283 
284     // Config uart3.UART3_TX_DATA to pad SD4_CMD(B17)
285     // HW_IOMUXC_SW_MUX_CTL_PAD_SD4_CMD_WR(0x00000002);
286     // HW_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_WR(0x0001B0B0);
287     // HW_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_WR(0x00000002);
288     // Mux Register:
289     // IOMUXC_SW_MUX_CTL_PAD_SD4_CMD(0x020E033C)
290     //   SION [4] - Software Input On Field Reset: DISABLED
291     //              Force the selected mux mode Input path no matter of MUX_MODE functionality.
292     //     DISABLED (0) - Input Path is determined by functionality of the selected mux mode (regular).
293     //     ENABLED (1) - Force input path of pad.
294     //   MUX_MODE [2:0] - MUX Mode Select Field Reset: ALT5
295     //                    Select iomux modes to be used for pad.
296     //     ALT0 (0) - Select instance: usdhc4 signal: SD4_CMD
297     //     ALT1 (1) - Select instance: gpmi signal: NAND_RE_B
298     //     ALT2 (2) - Select instance: uart3 signal: UART3_TX_DATA
299     //     ALT5 (5) - Select instance: gpio7 signal: GPIO7_IO09
300     HW_IOMUXC_SW_MUX_CTL_PAD_SD4_CMD_WR(
301             BF_IOMUXC_SW_MUX_CTL_PAD_SD4_CMD_SION_V(DISABLED) |
302             BF_IOMUXC_SW_MUX_CTL_PAD_SD4_CMD_MUX_MODE_V(ALT2));
303     // Pad Control Register:
304     // IOMUXC_SW_PAD_CTL_PAD_SD4_CMD(0x020E0724)
305     //   HYS [16] - Hysteresis Enable Field Reset: ENABLED
306     //     DISABLED (0) - CMOS input
307     //     ENABLED (1) - Schmitt trigger input
308     //   PUS [15:14] - Pull Up / Down Config. Field Reset: 100K_OHM_PU
309     //     100K_OHM_PD (0) - 100K Ohm Pull Down
310     //     47K_OHM_PU (1) - 47K Ohm Pull Up
311     //     100K_OHM_PU (2) - 100K Ohm Pull Up
312     //     22K_OHM_PU (3) - 22K Ohm Pull Up
313     //   PUE [13] - Pull / Keep Select Field Reset: PULL
314     //     KEEP (0) - Keeper Enabled
315     //     PULL (1) - Pull Enabled
316     //   PKE [12] - Pull / Keep Enable Field Reset: ENABLED
317     //     DISABLED (0) - Pull/Keeper Disabled
318     //     ENABLED (1) - Pull/Keeper Enabled
319     //   ODE [11] - Open Drain Enable Field Reset: DISABLED
320     //              Enables open drain of the pin.
321     //     DISABLED (0) - Output is CMOS.
322     //     ENABLED (1) - Output is Open Drain.
323     //   SPEED [7:6] - Speed Field Reset: 100MHZ
324     //     RESERVED0 (0) - Reserved
325     //     50MHZ (1) - Low (50 MHz)
326     //     100MHZ (2) - Medium (100 MHz)
327     //     200MHZ (3) - Maximum (200 MHz)
328     //   DSE [5:3] - Drive Strength Field Reset: 40_OHM
329     //     HIZ (0) - HI-Z
330     //     240_OHM (1) - 240 Ohm
331     //     120_OHM (2) - 120 Ohm
332     //     80_OHM (3) - 80 Ohm
333     //     60_OHM (4) - 60 Ohm
334     //     48_OHM (5) - 48 Ohm
335     //     40_OHM (6) - 40 Ohm
336     //     34_OHM (7) - 34 Ohm
337     //   SRE [0] - Slew Rate Field Reset: SLOW
338     //             Slew rate control.
339     //     SLOW (0) - Slow Slew Rate
340     //     FAST (1) - Fast Slew Rate
341     HW_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_WR(
342             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_HYS_V(ENABLED) |
343             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_PUS_V(100K_OHM_PU) |
344             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_PUE_V(PULL) |
345             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_PKE_V(ENABLED) |
346             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_ODE_V(DISABLED) |
347             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_SPEED_V(100MHZ) |
348             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_DSE_V(40_OHM) |
349             BF_IOMUXC_SW_PAD_CTL_PAD_SD4_CMD_SRE_V(SLOW));
350     // Pad SD4_CMD is involved in Daisy Chain.
351     // Input Select Register:
352     // IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT(0x020E090C)
353     //   DAISY [1:0] - MUX Mode Select Field Reset: EIM_DATA24_ALT2
354     //                 Selecting Pads Involved in Daisy Chain.
355     //     EIM_DATA24_ALT2 (0) - Select signal uart3 UART3_TX_DATA as input from pad EIM_DATA24(ALT2).
356     //     EIM_DATA25_ALT2 (1) - Select signal uart3 UART3_RX_DATA as input from pad EIM_DATA25(ALT2).
357     //     SD4_CLK_ALT2 (2) - Select signal uart3 UART3_RX_DATA as input from pad SD4_CLK(ALT2).
358     //     SD4_CMD_ALT2 (3) - Select signal uart3 UART3_TX_DATA as input from pad SD4_CMD(ALT2).
359     HW_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_WR(
360             BF_IOMUXC_UART3_UART_RX_DATA_SELECT_INPUT_DAISY_V(SD4_CLK_ALT2));
361 }
362