DM: WDT: Convert WDT driver to use DM/DTS (including SYSRESET)
[oweals/u-boot.git] / board / liebherr / display5 / common.c
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (C) 2017 DENX Software Engineering
4  * Lukasz Majewski, DENX Software Engineering, lukma@denx.de
5  */
6
7 #include <asm/mach-imx/iomux-v3.h>
8 #include <asm/arch/mx6-pins.h>
9 #include "common.h"
10
11 iomux_v3_cfg_t const uart_console_pads[] = {
12         /* UART5 */
13         MX6_PAD_CSI0_DAT14__UART5_TX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL),
14         MX6_PAD_CSI0_DAT15__UART5_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL),
15         MX6_PAD_CSI0_DAT18__UART5_RTS_B | MUX_PAD_CTRL(UART_PAD_CTRL),
16         MX6_PAD_CSI0_DAT19__UART5_CTS_B | MUX_PAD_CTRL(UART_PAD_CTRL),
17 };
18
19 void displ5_set_iomux_uart_spl(void)
20 {
21         SETUP_IOMUX_PADS(uart_console_pads);
22 }
23
24 iomux_v3_cfg_t const misc_pads_spl[] = {
25         /* Emergency recovery pin */
26         MX6_PAD_EIM_D29__GPIO3_IO29 | MUX_PAD_CTRL(NO_PAD_CTRL),
27 };
28
29 void displ5_set_iomux_misc_spl(void)
30 {
31         SETUP_IOMUX_PADS(misc_pads_spl);
32 }
33
34 #ifdef CONFIG_MXC_SPI
35 iomux_v3_cfg_t const ecspi2_pads[] = {
36         /* SPI2, NOR Flash nWP, CS0 */
37         MX6_PAD_CSI0_DAT10__ECSPI2_MISO | MUX_PAD_CTRL(SPI_PAD_CTRL),
38         MX6_PAD_CSI0_DAT9__ECSPI2_MOSI  | MUX_PAD_CTRL(SPI_PAD_CTRL),
39         MX6_PAD_CSI0_DAT8__ECSPI2_SCLK  | MUX_PAD_CTRL(SPI_PAD_CTRL),
40         MX6_PAD_CSI0_DAT11__GPIO5_IO29  | MUX_PAD_CTRL(NO_PAD_CTRL),
41         MX6_PAD_SD3_DAT5__GPIO7_IO00    | MUX_PAD_CTRL(NO_PAD_CTRL),
42 };
43
44 int board_spi_cs_gpio(unsigned int bus, unsigned int cs)
45 {
46         if (bus != 1 || cs != 0)
47                 return -EINVAL;
48
49         return IMX_GPIO_NR(5, 29);
50 }
51
52 void displ5_set_iomux_ecspi_spl(void)
53 {
54         SETUP_IOMUX_PADS(ecspi2_pads);
55 }
56
57 #else
58 void displ5_set_iomux_ecspi_spl(void) {}
59 #endif
60
61 #ifdef CONFIG_FSL_ESDHC_IMX
62 iomux_v3_cfg_t const usdhc4_pads[] = {
63         MX6_PAD_SD4_CLK__SD4_CLK        | MUX_PAD_CTRL(USDHC_PAD_CTRL),
64         MX6_PAD_SD4_CMD__SD4_CMD        | MUX_PAD_CTRL(USDHC_PAD_CTRL),
65         MX6_PAD_SD4_DAT0__SD4_DATA0     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
66         MX6_PAD_SD4_DAT1__SD4_DATA1     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
67         MX6_PAD_SD4_DAT2__SD4_DATA2     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
68         MX6_PAD_SD4_DAT3__SD4_DATA3     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
69         MX6_PAD_SD4_DAT4__SD4_DATA4     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
70         MX6_PAD_SD4_DAT5__SD4_DATA5     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
71         MX6_PAD_SD4_DAT6__SD4_DATA6     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
72         MX6_PAD_SD4_DAT7__SD4_DATA7     | MUX_PAD_CTRL(USDHC_PAD_CTRL),
73         MX6_PAD_NANDF_ALE__SD4_RESET    | MUX_PAD_CTRL(USDHC_PAD_CTRL),
74 };
75
76 void displ5_set_iomux_usdhc_spl(void)
77 {
78         SETUP_IOMUX_PADS(usdhc4_pads);
79 }
80
81 #else
82 void displ5_set_iomux_usdhc_spl(void) {}
83 #endif