PageRenderTime 56ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/packages/tools/u-boot/patches/u-boot-2011.03-rc1-0013-omap4-separate-mux-settings-into-essential-and-non-e.patch

http://github.com/OpenELEC/OpenELEC.tv
Patch | 1294 lines | 1274 code | 20 blank | 0 comment | 0 complexity | a4428fcc8ce4371f4cc8e1418ae10f75 MD5 | raw file
Possible License(s): CC0-1.0
  1. From c46103152b4875805e05752b3684038798ffaf32 Mon Sep 17 00:00:00 2001
  2. From: Aneesh V <aneesh@ti.com>
  3. Date: Thu, 17 Feb 2011 01:48:11 +0530
  4. Subject: [PATCH 13/22] omap4: separate mux settings into essential and non essential parts
  5. Do the essential part from SPL and non-essential part from U-Boot
  6. - Essential part is what is essential for u-boot to function
  7. - Essential part is also largely board independent(at least
  8. as of now)
  9. - So essential part is moved out to SoC directory instead of
  10. keeping in board directory. This helps in having single SPL
  11. that works for Panda and SDP.
  12. - Non-essential part is what is set by u-boot for kernel to
  13. function correctly
  14. - Ideally non-essential part should be phased out eventually
  15. Signed-off-by: Aneesh V <aneesh@ti.com>
  16. ---
  17. arch/arm/cpu/armv7/omap4/board.c | 53 +++++-
  18. arch/arm/cpu/armv7/omap4/omap4_mux_data.h | 76 ++++++++
  19. arch/arm/include/asm/arch-omap4/sys_proto.h | 4 +-
  20. board/ti/panda/panda.c | 25 +--
  21. board/ti/panda/panda.h | 264 ---------------------------
  22. board/ti/panda/panda_mux_data.h | 229 +++++++++++++++++++++++
  23. board/ti/sdp4430/sdp.c | 25 +--
  24. board/ti/sdp4430/sdp.h | 264 ---------------------------
  25. board/ti/sdp4430/sdp4430_mux_data.h | 227 +++++++++++++++++++++++
  26. 9 files changed, 597 insertions(+), 570 deletions(-)
  27. create mode 100644 arch/arm/cpu/armv7/omap4/omap4_mux_data.h
  28. delete mode 100644 board/ti/panda/panda.h
  29. create mode 100644 board/ti/panda/panda_mux_data.h
  30. delete mode 100644 board/ti/sdp4430/sdp.h
  31. create mode 100644 board/ti/sdp4430/sdp4430_mux_data.h
  32. diff --git a/arch/arm/cpu/armv7/omap4/board.c b/arch/arm/cpu/armv7/omap4/board.c
  33. index da79669..95b6a96 100644
  34. --- a/arch/arm/cpu/armv7/omap4/board.c
  35. +++ b/arch/arm/cpu/armv7/omap4/board.c
  36. @@ -32,9 +32,30 @@
  37. #include <asm/arch/cpu.h>
  38. #include <asm/arch/sys_proto.h>
  39. #include <asm/sizes.h>
  40. +#include "omap4_mux_data.h"
  41. DECLARE_GLOBAL_DATA_PTR;
  42. +void do_set_mux(u32 base, struct pad_conf_entry const *array, int size)
  43. +{
  44. + int i;
  45. + struct pad_conf_entry *pad = (struct pad_conf_entry *) array;
  46. +
  47. + for (i = 0; i < size; i++, pad++)
  48. + writew(pad->val, base + pad->offset);
  49. +}
  50. +
  51. +static void set_muxconf_regs_essential(void)
  52. +{
  53. + do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array_essential,
  54. + sizeof(core_padconf_array_essential) /
  55. + sizeof(struct pad_conf_entry));
  56. +
  57. + do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array_essential,
  58. + sizeof(wkup_padconf_array_essential) /
  59. + sizeof(struct pad_conf_entry));
  60. +}
  61. +
  62. #ifdef CONFIG_PRELOADER
  63. u32 omap4_boot_device = BOOT_DEVICE_MMC1;
  64. u32 omap4_boot_mode = MMCSD_MODE_FAT;
  65. @@ -49,14 +70,41 @@ u32 omap_boot_mode(void)
  66. }
  67. #endif
  68. +static void set_mux_conf_regs(void)
  69. +{
  70. + switch (omap4_hw_init_context()) {
  71. + case OMAP_INIT_CONTEXT_SPL:
  72. + set_muxconf_regs_essential();
  73. + break;
  74. + case OMAP_INIT_CONTEXT_UBOOT_LOADED_BY_SPL:
  75. + set_muxconf_regs_non_essential();
  76. + break;
  77. + case OMAP_INIT_CONTEXT_XIP_UBOOT:
  78. + case OMAP_INIT_CONTEXT_UBOOT_LOADED_BY_CH:
  79. + set_muxconf_regs_essential();
  80. + set_muxconf_regs_non_essential();
  81. + break;
  82. + }
  83. +}
  84. +
  85. /*
  86. * Routine: s_init
  87. - * Description: Does early system init of muxing and clocks.
  88. - * - Called path is with SRAM stack.
  89. + * Description: Does early system init of watchdog, muxing, clocks, and
  90. + * sdram. Watchdog disable is done always. For the rest what gets done
  91. + * depends on the boot mode in which this function is executed
  92. + * 1. s_init of SPL running from SRAM
  93. + * 2. s_init of U-Boot running from FLASH
  94. + * 3. s_init of U-Boot loaded to SDRAM by SPL
  95. + * 4. s_init of U-Boot loaded to SDRAM by ROM code using the Configuration
  96. + * Header feature
  97. + * Please have a look at the respective functions to see what gets done in
  98. + * each of these cases
  99. + * This function is called with SRAM stack.
  100. */
  101. void s_init(void)
  102. {
  103. watchdog_init();
  104. + set_mux_conf_regs();
  105. #ifdef CONFIG_PRELOADER
  106. preloader_console_init();
  107. #endif
  108. @@ -142,7 +190,6 @@ int checkboard(void)
  109. */
  110. int arch_cpu_init(void)
  111. {
  112. - set_muxconf_regs();
  113. return 0;
  114. }
  115. diff --git a/arch/arm/cpu/armv7/omap4/omap4_mux_data.h b/arch/arm/cpu/armv7/omap4/omap4_mux_data.h
  116. new file mode 100644
  117. index 0000000..00c52f8
  118. --- /dev/null
  119. +++ b/arch/arm/cpu/armv7/omap4/omap4_mux_data.h
  120. @@ -0,0 +1,76 @@
  121. + /*
  122. + * (C) Copyright 2010
  123. + * Texas Instruments Incorporated, <www.ti.com>
  124. + *
  125. + * Balaji Krishnamoorthy <balajitk@ti.com>
  126. + * Aneesh V <aneesh@ti.com>
  127. + *
  128. + * See file CREDITS for list of people who contributed to this
  129. + * project.
  130. + *
  131. + * This program is free software; you can redistribute it and/or
  132. + * modify it under the terms of the GNU General Public License as
  133. + * published by the Free Software Foundation; either version 2 of
  134. + * the License, or (at your option) any later version.
  135. + *
  136. + * This program is distributed in the hope that it will be useful,
  137. + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  138. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  139. + * GNU General Public License for more details.
  140. + *
  141. + * You should have received a copy of the GNU General Public License
  142. + * along with this program; if not, write to the Free Software
  143. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  144. + * MA 02111-1307 USA
  145. + */
  146. +#ifndef _OMAP4_MUX_DATA_H_
  147. +#define _OMAP4_MUX_DATA_H_
  148. +
  149. +#include <asm/arch/mux_omap4.h>
  150. +
  151. +const struct pad_conf_entry core_padconf_array_essential[] = {
  152. +
  153. +{GPMC_AD0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat0 */
  154. +{GPMC_AD1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat1 */
  155. +{GPMC_AD2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat2 */
  156. +{GPMC_AD3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat3 */
  157. +{GPMC_AD4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat4 */
  158. +{GPMC_AD5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat5 */
  159. +{GPMC_AD6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat6 */
  160. +{GPMC_AD7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat7 */
  161. +{GPMC_NOE, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M1)}, /* sdmmc2_clk */
  162. +{GPMC_NWE, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_cmd */
  163. +{SDMMC1_CLK, (PTU | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc1_clk */
  164. +{SDMMC1_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_cmd */
  165. +{SDMMC1_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat0 */
  166. +{SDMMC1_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat1 */
  167. +{SDMMC1_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat2 */
  168. +{SDMMC1_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat3 */
  169. +{SDMMC1_DAT4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat4 */
  170. +{SDMMC1_DAT5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat5 */
  171. +{SDMMC1_DAT6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat6 */
  172. +{SDMMC1_DAT7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat7 */
  173. +{I2C1_SCL, (PTU | IEN | M0)}, /* i2c1_scl */
  174. +{I2C1_SDA, (PTU | IEN | M0)}, /* i2c1_sda */
  175. +{I2C2_SCL, (PTU | IEN | M0)}, /* i2c2_scl */
  176. +{I2C2_SDA, (PTU | IEN | M0)}, /* i2c2_sda */
  177. +{I2C3_SCL, (PTU | IEN | M0)}, /* i2c3_scl */
  178. +{I2C3_SDA, (PTU | IEN | M0)}, /* i2c3_sda */
  179. +{I2C4_SCL, (PTU | IEN | M0)}, /* i2c4_scl */
  180. +{I2C4_SDA, (PTU | IEN | M0)}, /* i2c4_sda */
  181. +{UART3_CTS_RCTX, (PTU | IEN | M0)}, /* uart3_tx */
  182. +{UART3_RTS_SD, (M0)}, /* uart3_rts_sd */
  183. +{UART3_RX_IRRX, (IEN | M0)}, /* uart3_rx */
  184. +{UART3_TX_IRTX, (M0)} /* uart3_tx */
  185. +
  186. +};
  187. +
  188. +const struct pad_conf_entry wkup_padconf_array_essential[] = {
  189. +
  190. +{PAD1_SR_SCL, (PTU | IEN | M0)}, /* sr_scl */
  191. +{PAD0_SR_SDA, (PTU | IEN | M0)}, /* sr_sda */
  192. +{PAD1_SYS_32K, (IEN | M0)} /* sys_32k */
  193. +
  194. +};
  195. +
  196. +#endif /* _OMAP4_MUX_DATA_H_ */
  197. diff --git a/arch/arm/include/asm/arch-omap4/sys_proto.h b/arch/arm/include/asm/arch-omap4/sys_proto.h
  198. index 19da2e1..33a1666 100644
  199. --- a/arch/arm/include/asm/arch-omap4/sys_proto.h
  200. +++ b/arch/arm/include/asm/arch-omap4/sys_proto.h
  201. @@ -24,6 +24,7 @@
  202. #include <asm/arch/omap4.h>
  203. #include <asm/io.h>
  204. #include <asm/omap_common.h>
  205. +#include <asm/arch/mux_omap4.h>
  206. struct omap_sysinfo {
  207. char *board_string;
  208. @@ -33,7 +34,8 @@ void gpmc_init(void);
  209. void watchdog_init(void);
  210. u32 get_device_type(void);
  211. void invalidate_dcache(u32);
  212. -void set_muxconf_regs(void);
  213. +void do_set_mux(u32 base, struct pad_conf_entry const *array, int size);
  214. +void set_muxconf_regs_non_essential(void);
  215. void sr32(void *, u32, u32, u32);
  216. u32 wait_on_value(u32, u32, void *, u32);
  217. void sdelay(unsigned long);
  218. diff --git a/board/ti/panda/panda.c b/board/ti/panda/panda.c
  219. index 78e1910..9afed80 100644
  220. --- a/board/ti/panda/panda.c
  221. +++ b/board/ti/panda/panda.c
  222. @@ -25,7 +25,7 @@
  223. #include <asm/arch/sys_proto.h>
  224. #include <asm/arch/mmc_host_def.h>
  225. -#include "panda.h"
  226. +#include "panda_mux_data.h"
  227. DECLARE_GLOBAL_DATA_PTR;
  228. @@ -65,27 +65,14 @@ int misc_init_r(void)
  229. return 0;
  230. }
  231. -void do_set_mux(u32 base, struct pad_conf_entry const *array, int size)
  232. +void set_muxconf_regs_non_essential(void)
  233. {
  234. - int i;
  235. - struct pad_conf_entry *pad = (struct pad_conf_entry *) array;
  236. -
  237. - for (i = 0; i < size; i++, pad++)
  238. - writew(pad->val, base + pad->offset);
  239. -}
  240. -
  241. -/**
  242. - * @brief set_muxconf_regs Setting up the configuration Mux registers
  243. - * specific to the board.
  244. - */
  245. -void set_muxconf_regs(void)
  246. -{
  247. - do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array,
  248. - sizeof(core_padconf_array) /
  249. + do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array_non_essential,
  250. + sizeof(core_padconf_array_non_essential) /
  251. sizeof(struct pad_conf_entry));
  252. - do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array,
  253. - sizeof(wkup_padconf_array) /
  254. + do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array_non_essential,
  255. + sizeof(wkup_padconf_array_non_essential) /
  256. sizeof(struct pad_conf_entry));
  257. }
  258. diff --git a/board/ti/panda/panda.h b/board/ti/panda/panda.h
  259. deleted file mode 100644
  260. index e3d090e..0000000
  261. --- a/board/ti/panda/panda.h
  262. +++ /dev/null
  263. @@ -1,264 +0,0 @@
  264. -/*
  265. - * (C) Copyright 2010
  266. - * Texas Instruments Incorporated, <www.ti.com>
  267. - *
  268. - * Balaji Krishnamoorthy <balajitk@ti.com>
  269. - * Aneesh V <aneesh@ti.com>
  270. - *
  271. - * See file CREDITS for list of people who contributed to this
  272. - * project.
  273. - *
  274. - * This program is free software; you can redistribute it and/or
  275. - * modify it under the terms of the GNU General Public License as
  276. - * published by the Free Software Foundation; either version 2 of
  277. - * the License, or (at your option) any later version.
  278. - *
  279. - * This program is distributed in the hope that it will be useful,
  280. - * but WITHOUT ANY WARRANTY; without even the implied warranty of
  281. - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  282. - * GNU General Public License for more details.
  283. - *
  284. - * You should have received a copy of the GNU General Public License
  285. - * along with this program; if not, write to the Free Software
  286. - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  287. - * MA 02111-1307 USA
  288. - */
  289. -
  290. -#ifndef _PANDA_H_
  291. -#define _PANDA_H_
  292. -
  293. -#include <asm/io.h>
  294. -#include <asm/arch/mux_omap4.h>
  295. -
  296. -const struct pad_conf_entry core_padconf_array[] = {
  297. - {GPMC_AD0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat0 */
  298. - {GPMC_AD1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat1 */
  299. - {GPMC_AD2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat2 */
  300. - {GPMC_AD3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat3 */
  301. - {GPMC_AD4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat4 */
  302. - {GPMC_AD5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat5 */
  303. - {GPMC_AD6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat6 */
  304. - {GPMC_AD7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat7 */
  305. - {GPMC_AD8, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* gpio_32 */
  306. - {GPMC_AD9, (PTU | IEN | M3)}, /* gpio_33 */
  307. - {GPMC_AD10, (PTU | IEN | M3)}, /* gpio_34 */
  308. - {GPMC_AD11, (PTU | IEN | M3)}, /* gpio_35 */
  309. - {GPMC_AD12, (PTU | IEN | M3)}, /* gpio_36 */
  310. - {GPMC_AD13, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_37 */
  311. - {GPMC_AD14, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_38 */
  312. - {GPMC_AD15, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_39 */
  313. - {GPMC_A16, (M3)}, /* gpio_40 */
  314. - {GPMC_A17, (PTD | M3)}, /* gpio_41 */
  315. - {GPMC_A18, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row6 */
  316. - {GPMC_A19, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row7 */
  317. - {GPMC_A20, (IEN | M3)}, /* gpio_44 */
  318. - {GPMC_A21, (M3)}, /* gpio_45 */
  319. - {GPMC_A22, (M3)}, /* gpio_46 */
  320. - {GPMC_A23, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col7 */
  321. - {GPMC_A24, (PTD | M3)}, /* gpio_48 */
  322. - {GPMC_A25, (PTD | M3)}, /* gpio_49 */
  323. - {GPMC_NCS0, (M3)}, /* gpio_50 */
  324. - {GPMC_NCS1, (IEN | M3)}, /* gpio_51 */
  325. - {GPMC_NCS2, (IEN | M3)}, /* gpio_52 */
  326. - {GPMC_NCS3, (IEN | M3)}, /* gpio_53 */
  327. - {GPMC_NWP, (M3)}, /* gpio_54 */
  328. - {GPMC_CLK, (PTD | M3)}, /* gpio_55 */
  329. - {GPMC_NADV_ALE, (M3)}, /* gpio_56 */
  330. - {GPMC_NOE, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M1)}, /* sdmmc2_clk */
  331. - {GPMC_NWE, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_cmd */
  332. - {GPMC_NBE0_CLE, (M3)}, /* gpio_59 */
  333. - {GPMC_NBE1, (PTD | M3)}, /* gpio_60 */
  334. - {GPMC_WAIT0, (PTU | IEN | M3)}, /* gpio_61 */
  335. - {GPMC_WAIT1, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_62 */
  336. - {C2C_DATA11, (PTD | M3)}, /* gpio_100 */
  337. - {C2C_DATA12, (PTU | IEN | M3)}, /* gpio_101 */
  338. - {C2C_DATA13, (PTD | M3)}, /* gpio_102 */
  339. - {C2C_DATA14, (M1)}, /* dsi2_te0 */
  340. - {C2C_DATA15, (PTD | M3)}, /* gpio_104 */
  341. - {HDMI_HPD, (M0)}, /* hdmi_hpd */
  342. - {HDMI_CEC, (M0)}, /* hdmi_cec */
  343. - {HDMI_DDC_SCL, (PTU | M0)}, /* hdmi_ddc_scl */
  344. - {HDMI_DDC_SDA, (PTU | IEN | M0)}, /* hdmi_ddc_sda */
  345. - {CSI21_DX0, (IEN | M0)}, /* csi21_dx0 */
  346. - {CSI21_DY0, (IEN | M0)}, /* csi21_dy0 */
  347. - {CSI21_DX1, (IEN | M0)}, /* csi21_dx1 */
  348. - {CSI21_DY1, (IEN | M0)}, /* csi21_dy1 */
  349. - {CSI21_DX2, (IEN | M0)}, /* csi21_dx2 */
  350. - {CSI21_DY2, (IEN | M0)}, /* csi21_dy2 */
  351. - {CSI21_DX3, (PTD | M7)}, /* csi21_dx3 */
  352. - {CSI21_DY3, (PTD | M7)}, /* csi21_dy3 */
  353. - {CSI21_DX4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dx4 */
  354. - {CSI21_DY4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dy4 */
  355. - {CSI22_DX0, (IEN | M0)}, /* csi22_dx0 */
  356. - {CSI22_DY0, (IEN | M0)}, /* csi22_dy0 */
  357. - {CSI22_DX1, (IEN | M0)}, /* csi22_dx1 */
  358. - {CSI22_DY1, (IEN | M0)}, /* csi22_dy1 */
  359. - {CAM_SHUTTER, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_shutter */
  360. - {CAM_STROBE, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_strobe */
  361. - {CAM_GLOBALRESET, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_83 */
  362. - {USBB1_ULPITLL_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M4)},/* usbb1_ulpiphy_clk */
  363. - {USBB1_ULPITLL_STP, (OFF_EN | OFF_OUT_PTD | M4)}, /* usbb1_ulpiphy_stp */
  364. - {USBB1_ULPITLL_DIR, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dir */
  365. - {USBB1_ULPITLL_NXT, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_nxt */
  366. - {USBB1_ULPITLL_DAT0, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat0 */
  367. - {USBB1_ULPITLL_DAT1, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat1 */
  368. - {USBB1_ULPITLL_DAT2, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat2 */
  369. - {USBB1_ULPITLL_DAT3, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat3 */
  370. - {USBB1_ULPITLL_DAT4, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat4 */
  371. - {USBB1_ULPITLL_DAT5, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat5 */
  372. - {USBB1_ULPITLL_DAT6, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat6 */
  373. - {USBB1_ULPITLL_DAT7, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat7 */
  374. - {USBB1_HSIC_DATA, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_data */
  375. - {USBB1_HSIC_STROBE, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_strobe */
  376. - {USBC1_ICUSB_DP, (IEN | M0)}, /* usbc1_icusb_dp */
  377. - {USBC1_ICUSB_DM, (IEN | M0)}, /* usbc1_icusb_dm */
  378. - {SDMMC1_CLK, (PTU | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc1_clk */
  379. - {SDMMC1_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_cmd */
  380. - {SDMMC1_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat0 */
  381. - {SDMMC1_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat1 */
  382. - {SDMMC1_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat2 */
  383. - {SDMMC1_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat3 */
  384. - {SDMMC1_DAT4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat4 */
  385. - {SDMMC1_DAT5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat5 */
  386. - {SDMMC1_DAT6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat6 */
  387. - {SDMMC1_DAT7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat7 */
  388. - {ABE_MCBSP2_CLKX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_clkx */
  389. - {ABE_MCBSP2_DR, (IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dr */
  390. - {ABE_MCBSP2_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dx */
  391. - {ABE_MCBSP2_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_fsx */
  392. - {ABE_MCBSP1_CLKX, (IEN | M1)}, /* abe_slimbus1_clock */
  393. - {ABE_MCBSP1_DR, (IEN | M1)}, /* abe_slimbus1_data */
  394. - {ABE_MCBSP1_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp1_dx */
  395. - {ABE_MCBSP1_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp1_fsx */
  396. - {ABE_PDM_UL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_ul_data */
  397. - {ABE_PDM_DL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_dl_data */
  398. - {ABE_PDM_FRAME, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_frame */
  399. - {ABE_PDM_LB_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_lb_clk */
  400. - {ABE_CLKS, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_clks */
  401. - {ABE_DMIC_CLK1, (M0)}, /* abe_dmic_clk1 */
  402. - {ABE_DMIC_DIN1, (IEN | M0)}, /* abe_dmic_din1 */
  403. - {ABE_DMIC_DIN2, (IEN | M0)}, /* abe_dmic_din2 */
  404. - {ABE_DMIC_DIN3, (IEN | M0)}, /* abe_dmic_din3 */
  405. - {UART2_CTS, (PTU | IEN | M0)}, /* uart2_cts */
  406. - {UART2_RTS, (M0)}, /* uart2_rts */
  407. - {UART2_RX, (PTU | IEN | M0)}, /* uart2_rx */
  408. - {UART2_TX, (M0)}, /* uart2_tx */
  409. - {HDQ_SIO, (M3)}, /* gpio_127 */
  410. - {I2C1_SCL, (PTU | IEN | M0)}, /* i2c1_scl */
  411. - {I2C1_SDA, (PTU | IEN | M0)}, /* i2c1_sda */
  412. - {I2C2_SCL, (PTU | IEN | M0)}, /* i2c2_scl */
  413. - {I2C2_SDA, (PTU | IEN | M0)}, /* i2c2_sda */
  414. - {I2C3_SCL, (PTU | IEN | M0)}, /* i2c3_scl */
  415. - {I2C3_SDA, (PTU | IEN | M0)}, /* i2c3_sda */
  416. - {I2C4_SCL, (PTU | IEN | M0)}, /* i2c4_scl */
  417. - {I2C4_SDA, (PTU | IEN | M0)}, /* i2c4_sda */
  418. - {MCSPI1_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_clk */
  419. - {MCSPI1_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_somi */
  420. - {MCSPI1_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_simo */
  421. - {MCSPI1_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_cs0 */
  422. - {MCSPI1_CS1, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* mcspi1_cs1 */
  423. - {MCSPI1_CS2, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_139 */
  424. - {MCSPI1_CS3, (PTU | IEN | M3)}, /* gpio_140 */
  425. - {UART3_CTS_RCTX, (PTU | IEN | M0)}, /* uart3_tx */
  426. - {UART3_RTS_SD, (M0)}, /* uart3_rts_sd */
  427. - {UART3_RX_IRRX, (IEN | M0)}, /* uart3_rx */
  428. - {UART3_TX_IRTX, (M0)}, /* uart3_tx */
  429. - {SDMMC5_CLK, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc5_clk */
  430. - {SDMMC5_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_cmd */
  431. - {SDMMC5_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat0 */
  432. - {SDMMC5_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat1 */
  433. - {SDMMC5_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat2 */
  434. - {SDMMC5_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat3 */
  435. - {MCSPI4_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_clk */
  436. - {MCSPI4_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_simo */
  437. - {MCSPI4_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_somi */
  438. - {MCSPI4_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_cs0 */
  439. - {UART4_RX, (IEN | M0)}, /* uart4_rx */
  440. - {UART4_TX, (M0)}, /* uart4_tx */
  441. - {USBB2_ULPITLL_CLK, (IEN | M3)}, /* gpio_157 */
  442. - {USBB2_ULPITLL_STP, (IEN | M5)}, /* dispc2_data23 */
  443. - {USBB2_ULPITLL_DIR, (IEN | M5)}, /* dispc2_data22 */
  444. - {USBB2_ULPITLL_NXT, (IEN | M5)}, /* dispc2_data21 */
  445. - {USBB2_ULPITLL_DAT0, (IEN | M5)}, /* dispc2_data20 */
  446. - {USBB2_ULPITLL_DAT1, (IEN | M5)}, /* dispc2_data19 */
  447. - {USBB2_ULPITLL_DAT2, (IEN | M5)}, /* dispc2_data18 */
  448. - {USBB2_ULPITLL_DAT3, (IEN | M5)}, /* dispc2_data15 */
  449. - {USBB2_ULPITLL_DAT4, (IEN | M5)}, /* dispc2_data14 */
  450. - {USBB2_ULPITLL_DAT5, (IEN | M5)}, /* dispc2_data13 */
  451. - {USBB2_ULPITLL_DAT6, (IEN | M5)}, /* dispc2_data12 */
  452. - {USBB2_ULPITLL_DAT7, (IEN | M5)}, /* dispc2_data11 */
  453. - {USBB2_HSIC_DATA, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_169 */
  454. - {USBB2_HSIC_STROBE, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_170 */
  455. - {UNIPRO_TX0, (PTD | IEN | M3)}, /* gpio_171 */
  456. - {UNIPRO_TY0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col1 */
  457. - {UNIPRO_TX1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col2 */
  458. - {UNIPRO_TY1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col3 */
  459. - {UNIPRO_TX2, (PTU | IEN | M3)}, /* gpio_0 */
  460. - {UNIPRO_TY2, (PTU | IEN | M3)}, /* gpio_1 */
  461. - {UNIPRO_RX0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row0 */
  462. - {UNIPRO_RY0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row1 */
  463. - {UNIPRO_RX1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row2 */
  464. - {UNIPRO_RY1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row3 */
  465. - {UNIPRO_RX2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row4 */
  466. - {UNIPRO_RY2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row5 */
  467. - {USBA0_OTG_CE, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* usba0_otg_ce */
  468. - {USBA0_OTG_DP, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dp */
  469. - {USBA0_OTG_DM, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dm */
  470. - {FREF_CLK1_OUT, (M0)}, /* fref_clk1_out */
  471. - {FREF_CLK2_OUT, (PTU | IEN | M3)}, /* gpio_182 */
  472. - {SYS_NIRQ1, (PTU | IEN | M0)}, /* sys_nirq1 */
  473. - {SYS_NIRQ2, (PTU | IEN | M0)}, /* sys_nirq2 */
  474. - {SYS_BOOT0, (PTU | IEN | M3)}, /* gpio_184 */
  475. - {SYS_BOOT1, (M3)}, /* gpio_185 */
  476. - {SYS_BOOT2, (PTD | IEN | M3)}, /* gpio_186 */
  477. - {SYS_BOOT3, (M3)}, /* gpio_187 */
  478. - {SYS_BOOT4, (M3)}, /* gpio_188 */
  479. - {SYS_BOOT5, (PTD | IEN | M3)}, /* gpio_189 */
  480. - {DPM_EMU0, (IEN | M0)}, /* dpm_emu0 */
  481. - {DPM_EMU1, (IEN | M0)}, /* dpm_emu1 */
  482. - {DPM_EMU2, (IEN | M0)}, /* dpm_emu2 */
  483. - {DPM_EMU3, (IEN | M5)}, /* dispc2_data10 */
  484. - {DPM_EMU4, (IEN | M5)}, /* dispc2_data9 */
  485. - {DPM_EMU5, (IEN | M5)}, /* dispc2_data16 */
  486. - {DPM_EMU6, (IEN | M5)}, /* dispc2_data17 */
  487. - {DPM_EMU7, (IEN | M5)}, /* dispc2_hsync */
  488. - {DPM_EMU8, (IEN | M5)}, /* dispc2_pclk */
  489. - {DPM_EMU9, (IEN | M5)}, /* dispc2_vsync */
  490. - {DPM_EMU10, (IEN | M5)}, /* dispc2_de */
  491. - {DPM_EMU11, (IEN | M5)}, /* dispc2_data8 */
  492. - {DPM_EMU12, (IEN | M5)}, /* dispc2_data7 */
  493. - {DPM_EMU13, (IEN | M5)}, /* dispc2_data6 */
  494. - {DPM_EMU14, (IEN | M5)}, /* dispc2_data5 */
  495. - {DPM_EMU15, (IEN | M5)}, /* dispc2_data4 */
  496. - {DPM_EMU16, (M3)}, /* gpio_27 */
  497. - {DPM_EMU17, (IEN | M5)}, /* dispc2_data2 */
  498. - {DPM_EMU18, (IEN | M5)}, /* dispc2_data1 */
  499. - {DPM_EMU19, (IEN | M5)}, /* dispc2_data0 */
  500. -};
  501. -
  502. -const struct pad_conf_entry wkup_padconf_array[] = {
  503. - {PAD0_SIM_IO, (IEN | M0)}, /* sim_io */
  504. - {PAD1_SIM_CLK, (M0)}, /* sim_clk */
  505. - {PAD0_SIM_RESET, (M0)}, /* sim_reset */
  506. - {PAD1_SIM_CD, (PTU | IEN | M0)}, /* sim_cd */
  507. - {PAD0_SIM_PWRCTRL, (M0)}, /* sim_pwrctrl */
  508. - {PAD1_SR_SCL, (PTU | IEN | M0)}, /* sr_scl */
  509. - {PAD0_SR_SDA, (PTU | IEN | M0)}, /* sr_sda */
  510. - {PAD1_FREF_XTAL_IN, (M0)}, /* # */
  511. - {PAD0_FREF_SLICER_IN, (M0)}, /* fref_slicer_in */
  512. - {PAD1_FREF_CLK_IOREQ, (M0)}, /* fref_clk_ioreq */
  513. - {PAD0_FREF_CLK0_OUT, (M2)}, /* sys_drm_msecure */
  514. - {PAD1_FREF_CLK3_REQ, (M3)}, /* gpio_wk30 */
  515. - {PAD0_FREF_CLK3_OUT, (M0)}, /* fref_clk3_out */
  516. - {PAD1_FREF_CLK4_REQ, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* led status_1 */
  517. - {PAD0_FREF_CLK4_OUT, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* led status_2 */
  518. - {PAD1_SYS_32K, (IEN | M0)}, /* sys_32k */
  519. - {PAD0_SYS_NRESPWRON, (M0)}, /* sys_nrespwron */
  520. - {PAD1_SYS_NRESWARM, (M0)}, /* sys_nreswarm */
  521. - {PAD0_SYS_PWR_REQ, (PTU | M0)}, /* sys_pwr_req */
  522. - {PAD1_SYS_PWRON_RESET, (M3)}, /* gpio_wk29 */
  523. - {PAD0_SYS_BOOT6, (IEN | M3)}, /* gpio_wk9 */
  524. - {PAD1_SYS_BOOT7, (IEN | M3)}, /* gpio_wk10 */
  525. -};
  526. -
  527. -#endif
  528. diff --git a/board/ti/panda/panda_mux_data.h b/board/ti/panda/panda_mux_data.h
  529. new file mode 100644
  530. index 0000000..8bb7fe5
  531. --- /dev/null
  532. +++ b/board/ti/panda/panda_mux_data.h
  533. @@ -0,0 +1,229 @@
  534. +/*
  535. + * (C) Copyright 2010
  536. + * Texas Instruments Incorporated, <www.ti.com>
  537. + *
  538. + * Balaji Krishnamoorthy <balajitk@ti.com>
  539. + * Aneesh V <aneesh@ti.com>
  540. + *
  541. + * See file CREDITS for list of people who contributed to this
  542. + * project.
  543. + *
  544. + * This program is free software; you can redistribute it and/or
  545. + * modify it under the terms of the GNU General Public License as
  546. + * published by the Free Software Foundation; either version 2 of
  547. + * the License, or (at your option) any later version.
  548. + *
  549. + * This program is distributed in the hope that it will be useful,
  550. + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  551. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  552. + * GNU General Public License for more details.
  553. + *
  554. + * You should have received a copy of the GNU General Public License
  555. + * along with this program; if not, write to the Free Software
  556. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  557. + * MA 02111-1307 USA
  558. + */
  559. +
  560. +#ifndef _PANDA_MUX_DATA_H_
  561. +#define _PANDA_MUX_DATA_H_
  562. +
  563. +#include <asm/io.h>
  564. +#include <asm/arch/mux_omap4.h>
  565. +
  566. +const struct pad_conf_entry core_padconf_array_non_essential[] = {
  567. + {GPMC_AD8, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* gpio_32 */
  568. + {GPMC_AD9, (PTU | IEN | M3)}, /* gpio_33 */
  569. + {GPMC_AD10, (PTU | IEN | M3)}, /* gpio_34 */
  570. + {GPMC_AD11, (PTU | IEN | M3)}, /* gpio_35 */
  571. + {GPMC_AD12, (PTU | IEN | M3)}, /* gpio_36 */
  572. + {GPMC_AD13, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_37 */
  573. + {GPMC_AD14, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_38 */
  574. + {GPMC_AD15, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_39 */
  575. + {GPMC_A16, (M3)}, /* gpio_40 */
  576. + {GPMC_A17, (PTD | M3)}, /* gpio_41 */
  577. + {GPMC_A18, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row6 */
  578. + {GPMC_A19, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row7 */
  579. + {GPMC_A20, (IEN | M3)}, /* gpio_44 */
  580. + {GPMC_A21, (M3)}, /* gpio_45 */
  581. + {GPMC_A22, (M3)}, /* gpio_46 */
  582. + {GPMC_A23, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col7 */
  583. + {GPMC_A24, (PTD | M3)}, /* gpio_48 */
  584. + {GPMC_A25, (PTD | M3)}, /* gpio_49 */
  585. + {GPMC_NCS0, (M3)}, /* gpio_50 */
  586. + {GPMC_NCS1, (IEN | M3)}, /* gpio_51 */
  587. + {GPMC_NCS2, (IEN | M3)}, /* gpio_52 */
  588. + {GPMC_NCS3, (IEN | M3)}, /* gpio_53 */
  589. + {GPMC_NWP, (M3)}, /* gpio_54 */
  590. + {GPMC_CLK, (PTD | M3)}, /* gpio_55 */
  591. + {GPMC_NADV_ALE, (M3)}, /* gpio_56 */
  592. + {GPMC_NBE0_CLE, (M3)}, /* gpio_59 */
  593. + {GPMC_NBE1, (PTD | M3)}, /* gpio_60 */
  594. + {GPMC_WAIT0, (PTU | IEN | M3)}, /* gpio_61 */
  595. + {GPMC_WAIT1, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_62 */
  596. + {C2C_DATA11, (PTD | M3)}, /* gpio_100 */
  597. + {C2C_DATA12, (PTU | IEN | M3)}, /* gpio_101 */
  598. + {C2C_DATA13, (PTD | M3)}, /* gpio_102 */
  599. + {C2C_DATA14, (M1)}, /* dsi2_te0 */
  600. + {C2C_DATA15, (PTD | M3)}, /* gpio_104 */
  601. + {HDMI_HPD, (M0)}, /* hdmi_hpd */
  602. + {HDMI_CEC, (M0)}, /* hdmi_cec */
  603. + {HDMI_DDC_SCL, (PTU | M0)}, /* hdmi_ddc_scl */
  604. + {HDMI_DDC_SDA, (PTU | IEN | M0)}, /* hdmi_ddc_sda */
  605. + {CSI21_DX0, (IEN | M0)}, /* csi21_dx0 */
  606. + {CSI21_DY0, (IEN | M0)}, /* csi21_dy0 */
  607. + {CSI21_DX1, (IEN | M0)}, /* csi21_dx1 */
  608. + {CSI21_DY1, (IEN | M0)}, /* csi21_dy1 */
  609. + {CSI21_DX2, (IEN | M0)}, /* csi21_dx2 */
  610. + {CSI21_DY2, (IEN | M0)}, /* csi21_dy2 */
  611. + {CSI21_DX3, (PTD | M7)}, /* csi21_dx3 */
  612. + {CSI21_DY3, (PTD | M7)}, /* csi21_dy3 */
  613. + {CSI21_DX4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dx4 */
  614. + {CSI21_DY4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dy4 */
  615. + {CSI22_DX0, (IEN | M0)}, /* csi22_dx0 */
  616. + {CSI22_DY0, (IEN | M0)}, /* csi22_dy0 */
  617. + {CSI22_DX1, (IEN | M0)}, /* csi22_dx1 */
  618. + {CSI22_DY1, (IEN | M0)}, /* csi22_dy1 */
  619. + {CAM_SHUTTER, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_shutter */
  620. + {CAM_STROBE, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_strobe */
  621. + {CAM_GLOBALRESET, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_83 */
  622. + {USBB1_ULPITLL_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M4)},/* usbb1_ulpiphy_clk */
  623. + {USBB1_ULPITLL_STP, (OFF_EN | OFF_OUT_PTD | M4)}, /* usbb1_ulpiphy_stp */
  624. + {USBB1_ULPITLL_DIR, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dir */
  625. + {USBB1_ULPITLL_NXT, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_nxt */
  626. + {USBB1_ULPITLL_DAT0, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat0 */
  627. + {USBB1_ULPITLL_DAT1, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat1 */
  628. + {USBB1_ULPITLL_DAT2, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat2 */
  629. + {USBB1_ULPITLL_DAT3, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat3 */
  630. + {USBB1_ULPITLL_DAT4, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat4 */
  631. + {USBB1_ULPITLL_DAT5, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat5 */
  632. + {USBB1_ULPITLL_DAT6, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat6 */
  633. + {USBB1_ULPITLL_DAT7, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat7 */
  634. + {USBB1_HSIC_DATA, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_data */
  635. + {USBB1_HSIC_STROBE, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_strobe */
  636. + {USBC1_ICUSB_DP, (IEN | M0)}, /* usbc1_icusb_dp */
  637. + {USBC1_ICUSB_DM, (IEN | M0)}, /* usbc1_icusb_dm */
  638. + {ABE_MCBSP2_CLKX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_clkx */
  639. + {ABE_MCBSP2_DR, (IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dr */
  640. + {ABE_MCBSP2_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dx */
  641. + {ABE_MCBSP2_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_fsx */
  642. + {ABE_MCBSP1_CLKX, (IEN | M1)}, /* abe_slimbus1_clock */
  643. + {ABE_MCBSP1_DR, (IEN | M1)}, /* abe_slimbus1_data */
  644. + {ABE_MCBSP1_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp1_dx */
  645. + {ABE_MCBSP1_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp1_fsx */
  646. + {ABE_PDM_UL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_ul_data */
  647. + {ABE_PDM_DL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_dl_data */
  648. + {ABE_PDM_FRAME, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_frame */
  649. + {ABE_PDM_LB_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_lb_clk */
  650. + {ABE_CLKS, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_clks */
  651. + {ABE_DMIC_CLK1, (M0)}, /* abe_dmic_clk1 */
  652. + {ABE_DMIC_DIN1, (IEN | M0)}, /* abe_dmic_din1 */
  653. + {ABE_DMIC_DIN2, (IEN | M0)}, /* abe_dmic_din2 */
  654. + {ABE_DMIC_DIN3, (IEN | M0)}, /* abe_dmic_din3 */
  655. + {UART2_CTS, (PTU | IEN | M0)}, /* uart2_cts */
  656. + {UART2_RTS, (M0)}, /* uart2_rts */
  657. + {UART2_RX, (PTU | IEN | M0)}, /* uart2_rx */
  658. + {UART2_TX, (M0)}, /* uart2_tx */
  659. + {HDQ_SIO, (M3)}, /* gpio_127 */
  660. + {MCSPI1_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_clk */
  661. + {MCSPI1_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_somi */
  662. + {MCSPI1_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_simo */
  663. + {MCSPI1_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_cs0 */
  664. + {MCSPI1_CS1, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* mcspi1_cs1 */
  665. + {MCSPI1_CS2, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_139 */
  666. + {MCSPI1_CS3, (PTU | IEN | M3)}, /* gpio_140 */
  667. + {SDMMC5_CLK, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc5_clk */
  668. + {SDMMC5_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_cmd */
  669. + {SDMMC5_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat0 */
  670. + {SDMMC5_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat1 */
  671. + {SDMMC5_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat2 */
  672. + {SDMMC5_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat3 */
  673. + {MCSPI4_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_clk */
  674. + {MCSPI4_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_simo */
  675. + {MCSPI4_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_somi */
  676. + {MCSPI4_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_cs0 */
  677. + {UART4_RX, (IEN | M0)}, /* uart4_rx */
  678. + {UART4_TX, (M0)}, /* uart4_tx */
  679. + {USBB2_ULPITLL_CLK, (IEN | M3)}, /* gpio_157 */
  680. + {USBB2_ULPITLL_STP, (IEN | M5)}, /* dispc2_data23 */
  681. + {USBB2_ULPITLL_DIR, (IEN | M5)}, /* dispc2_data22 */
  682. + {USBB2_ULPITLL_NXT, (IEN | M5)}, /* dispc2_data21 */
  683. + {USBB2_ULPITLL_DAT0, (IEN | M5)}, /* dispc2_data20 */
  684. + {USBB2_ULPITLL_DAT1, (IEN | M5)}, /* dispc2_data19 */
  685. + {USBB2_ULPITLL_DAT2, (IEN | M5)}, /* dispc2_data18 */
  686. + {USBB2_ULPITLL_DAT3, (IEN | M5)}, /* dispc2_data15 */
  687. + {USBB2_ULPITLL_DAT4, (IEN | M5)}, /* dispc2_data14 */
  688. + {USBB2_ULPITLL_DAT5, (IEN | M5)}, /* dispc2_data13 */
  689. + {USBB2_ULPITLL_DAT6, (IEN | M5)}, /* dispc2_data12 */
  690. + {USBB2_ULPITLL_DAT7, (IEN | M5)}, /* dispc2_data11 */
  691. + {USBB2_HSIC_DATA, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_169 */
  692. + {USBB2_HSIC_STROBE, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_170 */
  693. + {UNIPRO_TX0, (PTD | IEN | M3)}, /* gpio_171 */
  694. + {UNIPRO_TY0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col1 */
  695. + {UNIPRO_TX1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col2 */
  696. + {UNIPRO_TY1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col3 */
  697. + {UNIPRO_TX2, (PTU | IEN | M3)}, /* gpio_0 */
  698. + {UNIPRO_TY2, (PTU | IEN | M3)}, /* gpio_1 */
  699. + {UNIPRO_RX0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row0 */
  700. + {UNIPRO_RY0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row1 */
  701. + {UNIPRO_RX1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row2 */
  702. + {UNIPRO_RY1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row3 */
  703. + {UNIPRO_RX2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row4 */
  704. + {UNIPRO_RY2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row5 */
  705. + {USBA0_OTG_CE, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* usba0_otg_ce */
  706. + {USBA0_OTG_DP, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dp */
  707. + {USBA0_OTG_DM, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dm */
  708. + {FREF_CLK1_OUT, (M0)}, /* fref_clk1_out */
  709. + {FREF_CLK2_OUT, (PTU | IEN | M3)}, /* gpio_182 */
  710. + {SYS_NIRQ1, (PTU | IEN | M0)}, /* sys_nirq1 */
  711. + {SYS_NIRQ2, (PTU | IEN | M0)}, /* sys_nirq2 */
  712. + {SYS_BOOT0, (PTU | IEN | M3)}, /* gpio_184 */
  713. + {SYS_BOOT1, (M3)}, /* gpio_185 */
  714. + {SYS_BOOT2, (PTD | IEN | M3)}, /* gpio_186 */
  715. + {SYS_BOOT3, (M3)}, /* gpio_187 */
  716. + {SYS_BOOT4, (M3)}, /* gpio_188 */
  717. + {SYS_BOOT5, (PTD | IEN | M3)}, /* gpio_189 */
  718. + {DPM_EMU0, (IEN | M0)}, /* dpm_emu0 */
  719. + {DPM_EMU1, (IEN | M0)}, /* dpm_emu1 */
  720. + {DPM_EMU2, (IEN | M0)}, /* dpm_emu2 */
  721. + {DPM_EMU3, (IEN | M5)}, /* dispc2_data10 */
  722. + {DPM_EMU4, (IEN | M5)}, /* dispc2_data9 */
  723. + {DPM_EMU5, (IEN | M5)}, /* dispc2_data16 */
  724. + {DPM_EMU6, (IEN | M5)}, /* dispc2_data17 */
  725. + {DPM_EMU7, (IEN | M5)}, /* dispc2_hsync */
  726. + {DPM_EMU8, (IEN | M5)}, /* dispc2_pclk */
  727. + {DPM_EMU9, (IEN | M5)}, /* dispc2_vsync */
  728. + {DPM_EMU10, (IEN | M5)}, /* dispc2_de */
  729. + {DPM_EMU11, (IEN | M5)}, /* dispc2_data8 */
  730. + {DPM_EMU12, (IEN | M5)}, /* dispc2_data7 */
  731. + {DPM_EMU13, (IEN | M5)}, /* dispc2_data6 */
  732. + {DPM_EMU14, (IEN | M5)}, /* dispc2_data5 */
  733. + {DPM_EMU15, (IEN | M5)}, /* dispc2_data4 */
  734. + {DPM_EMU16, (M3)}, /* gpio_27 */
  735. + {DPM_EMU17, (IEN | M5)}, /* dispc2_data2 */
  736. + {DPM_EMU18, (IEN | M5)}, /* dispc2_data1 */
  737. + {DPM_EMU19, (IEN | M5)}, /* dispc2_data0 */
  738. +};
  739. +
  740. +const struct pad_conf_entry wkup_padconf_array_non_essential[] = {
  741. + {PAD0_SIM_IO, (IEN | M0)}, /* sim_io */
  742. + {PAD1_SIM_CLK, (M0)}, /* sim_clk */
  743. + {PAD0_SIM_RESET, (M0)}, /* sim_reset */
  744. + {PAD1_SIM_CD, (PTU | IEN | M0)}, /* sim_cd */
  745. + {PAD0_SIM_PWRCTRL, (M0)}, /* sim_pwrctrl */
  746. + {PAD1_FREF_XTAL_IN, (M0)}, /* # */
  747. + {PAD0_FREF_SLICER_IN, (M0)}, /* fref_slicer_in */
  748. + {PAD1_FREF_CLK_IOREQ, (M0)}, /* fref_clk_ioreq */
  749. + {PAD0_FREF_CLK0_OUT, (M2)}, /* sys_drm_msecure */
  750. + {PAD1_FREF_CLK3_REQ, (M3)}, /* gpio_wk30 */
  751. + {PAD0_FREF_CLK3_OUT, (M0)}, /* fref_clk3_out */
  752. + {PAD1_FREF_CLK4_REQ, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* led status_1 */
  753. + {PAD0_FREF_CLK4_OUT, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* led status_2 */
  754. + {PAD0_SYS_NRESPWRON, (M0)}, /* sys_nrespwron */
  755. + {PAD1_SYS_NRESWARM, (M0)}, /* sys_nreswarm */
  756. + {PAD0_SYS_PWR_REQ, (PTU | M0)}, /* sys_pwr_req */
  757. + {PAD1_SYS_PWRON_RESET, (M3)}, /* gpio_wk29 */
  758. + {PAD0_SYS_BOOT6, (IEN | M3)}, /* gpio_wk9 */
  759. + {PAD1_SYS_BOOT7, (IEN | M3)}, /* gpio_wk10 */
  760. +};
  761. +
  762. +#endif /* _PANDA_MUX_DATA_H_ */
  763. diff --git a/board/ti/sdp4430/sdp.c b/board/ti/sdp4430/sdp.c
  764. index b13c4c5..a5ea682 100644
  765. --- a/board/ti/sdp4430/sdp.c
  766. +++ b/board/ti/sdp4430/sdp.c
  767. @@ -27,7 +27,7 @@
  768. #include <asm/arch/sys_proto.h>
  769. #include <asm/arch/mmc_host_def.h>
  770. -#include "sdp.h"
  771. +#include "sdp4430_mux_data.h"
  772. DECLARE_GLOBAL_DATA_PTR;
  773. @@ -70,27 +70,14 @@ int misc_init_r(void)
  774. return 0;
  775. }
  776. -void do_set_mux(u32 base, struct pad_conf_entry const *array, int size)
  777. +void set_muxconf_regs_non_essential(void)
  778. {
  779. - int i;
  780. - struct pad_conf_entry *pad = (struct pad_conf_entry *) array;
  781. -
  782. - for (i = 0; i < size; i++, pad++)
  783. - writew(pad->val, base + pad->offset);
  784. -}
  785. -
  786. -/**
  787. - * @brief set_muxconf_regs Setting up the configuration Mux registers
  788. - * specific to the board.
  789. - */
  790. -void set_muxconf_regs(void)
  791. -{
  792. - do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array,
  793. - sizeof(core_padconf_array) /
  794. + do_set_mux(CONTROL_PADCONF_CORE, core_padconf_array_non_essential,
  795. + sizeof(core_padconf_array_non_essential) /
  796. sizeof(struct pad_conf_entry));
  797. - do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array,
  798. - sizeof(wkup_padconf_array) /
  799. + do_set_mux(CONTROL_PADCONF_WKUP, wkup_padconf_array_non_essential,
  800. + sizeof(wkup_padconf_array_non_essential) /
  801. sizeof(struct pad_conf_entry));
  802. }
  803. diff --git a/board/ti/sdp4430/sdp.h b/board/ti/sdp4430/sdp.h
  804. deleted file mode 100644
  805. index bf41067..0000000
  806. --- a/board/ti/sdp4430/sdp.h
  807. +++ /dev/null
  808. @@ -1,264 +0,0 @@
  809. -/*
  810. - * (C) Copyright 2010
  811. - * Texas Instruments Incorporated, <www.ti.com>
  812. - *
  813. - * Balaji Krishnamoorthy <balajitk@ti.com>
  814. - * Aneesh V <aneesh@ti.com>
  815. - *
  816. - * See file CREDITS for list of people who contributed to this
  817. - * project.
  818. - *
  819. - * This program is free software; you can redistribute it and/or
  820. - * modify it under the terms of the GNU General Public License as
  821. - * published by the Free Software Foundation; either version 2 of
  822. - * the License, or (at your option) any later version.
  823. - *
  824. - * This program is distributed in the hope that it will be useful,
  825. - * but WITHOUT ANY WARRANTY; without even the implied warranty of
  826. - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  827. - * GNU General Public License for more details.
  828. - *
  829. - * You should have received a copy of the GNU General Public License
  830. - * along with this program; if not, write to the Free Software
  831. - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  832. - * MA 02111-1307 USA
  833. - */
  834. -
  835. -#ifndef _SDP_H_
  836. -#define _SDP_H_
  837. -
  838. -#include <asm/io.h>
  839. -#include <asm/arch/mux_omap4.h>
  840. -
  841. -const struct pad_conf_entry core_padconf_array[] = {
  842. - {GPMC_AD0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat0 */
  843. - {GPMC_AD1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat1 */
  844. - {GPMC_AD2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat2 */
  845. - {GPMC_AD3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat3 */
  846. - {GPMC_AD4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat4 */
  847. - {GPMC_AD5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat5 */
  848. - {GPMC_AD6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat6 */
  849. - {GPMC_AD7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_dat7 */
  850. - {GPMC_AD8, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* gpio_32 */
  851. - {GPMC_AD9, (PTU | IEN | M3)}, /* gpio_33 */
  852. - {GPMC_AD10, (PTU | IEN | M3)}, /* gpio_34 */
  853. - {GPMC_AD11, (PTU | IEN | M3)}, /* gpio_35 */
  854. - {GPMC_AD12, (PTU | IEN | M3)}, /* gpio_36 */
  855. - {GPMC_AD13, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_37 */
  856. - {GPMC_AD14, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_38 */
  857. - {GPMC_AD15, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_39 */
  858. - {GPMC_A16, (M3)}, /* gpio_40 */
  859. - {GPMC_A17, (PTD | M3)}, /* gpio_41 */
  860. - {GPMC_A18, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row6 */
  861. - {GPMC_A19, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row7 */
  862. - {GPMC_A20, (IEN | M3)}, /* gpio_44 */
  863. - {GPMC_A21, (M3)}, /* gpio_45 */
  864. - {GPMC_A22, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col6 */
  865. - {GPMC_A23, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col7 */
  866. - {GPMC_A24, (PTD | M3)}, /* gpio_48 */
  867. - {GPMC_A25, (PTD | M3)}, /* gpio_49 */
  868. - {GPMC_NCS0, (M3)}, /* gpio_50 */
  869. - {GPMC_NCS1, (IEN | M3)}, /* gpio_51 */
  870. - {GPMC_NCS2, (IEN | M3)}, /* gpio_52 */
  871. - {GPMC_NCS3, (IEN | M3)}, /* gpio_53 */
  872. - {GPMC_NWP, (M3)}, /* gpio_54 */
  873. - {GPMC_CLK, (PTD | M3)}, /* gpio_55 */
  874. - {GPMC_NADV_ALE, (M3)}, /* gpio_56 */
  875. - {GPMC_NOE, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M1)}, /* sdmmc2_clk */
  876. - {GPMC_NWE, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* sdmmc2_cmd */
  877. - {GPMC_NBE0_CLE, (M3)}, /* gpio_59 */
  878. - {GPMC_NBE1, (PTD | M3)}, /* gpio_60 */
  879. - {GPMC_WAIT0, (PTU | IEN | M3)}, /* gpio_61 */
  880. - {GPMC_WAIT1, (IEN | M3)}, /* gpio_62 */
  881. - {C2C_DATA11, (PTD | M3)}, /* gpio_100 */
  882. - {C2C_DATA12, (M1)}, /* dsi1_te0 */
  883. - {C2C_DATA13, (PTD | M3)}, /* gpio_102 */
  884. - {C2C_DATA14, (M1)}, /* dsi2_te0 */
  885. - {C2C_DATA15, (PTD | M3)}, /* gpio_104 */
  886. - {HDMI_HPD, (M0)}, /* hdmi_hpd */
  887. - {HDMI_CEC, (M0)}, /* hdmi_cec */
  888. - {HDMI_DDC_SCL, (PTU | M0)}, /* hdmi_ddc_scl */
  889. - {HDMI_DDC_SDA, (PTU | IEN | M0)}, /* hdmi_ddc_sda */
  890. - {CSI21_DX0, (IEN | M0)}, /* csi21_dx0 */
  891. - {CSI21_DY0, (IEN | M0)}, /* csi21_dy0 */
  892. - {CSI21_DX1, (IEN | M0)}, /* csi21_dx1 */
  893. - {CSI21_DY1, (IEN | M0)}, /* csi21_dy1 */
  894. - {CSI21_DX2, (IEN | M0)}, /* csi21_dx2 */
  895. - {CSI21_DY2, (IEN | M0)}, /* csi21_dy2 */
  896. - {CSI21_DX3, (PTD | M7)}, /* csi21_dx3 */
  897. - {CSI21_DY3, (PTD | M7)}, /* csi21_dy3 */
  898. - {CSI21_DX4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dx4 */
  899. - {CSI21_DY4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dy4 */
  900. - {CSI22_DX0, (IEN | M0)}, /* csi22_dx0 */
  901. - {CSI22_DY0, (IEN | M0)}, /* csi22_dy0 */
  902. - {CSI22_DX1, (IEN | M0)}, /* csi22_dx1 */
  903. - {CSI22_DY1, (IEN | M0)}, /* csi22_dy1 */
  904. - {CAM_SHUTTER, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_shutter */
  905. - {CAM_STROBE, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_strobe */
  906. - {CAM_GLOBALRESET, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_83 */
  907. - {USBB1_ULPITLL_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M4)},/* usbb1_ulpiphy_clk */
  908. - {USBB1_ULPITLL_STP, (OFF_EN | OFF_OUT_PTD | M4)}, /* usbb1_ulpiphy_stp */
  909. - {USBB1_ULPITLL_DIR, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dir */
  910. - {USBB1_ULPITLL_NXT, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_nxt */
  911. - {USBB1_ULPITLL_DAT0, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat0 */
  912. - {USBB1_ULPITLL_DAT1, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat1 */
  913. - {USBB1_ULPITLL_DAT2, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat2 */
  914. - {USBB1_ULPITLL_DAT3, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat3 */
  915. - {USBB1_ULPITLL_DAT4, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat4 */
  916. - {USBB1_ULPITLL_DAT5, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat5 */
  917. - {USBB1_ULPITLL_DAT6, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat6 */
  918. - {USBB1_ULPITLL_DAT7, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat7 */
  919. - {USBB1_HSIC_DATA, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_data */
  920. - {USBB1_HSIC_STROBE, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_strobe */
  921. - {USBC1_ICUSB_DP, (IEN | M0)}, /* usbc1_icusb_dp */
  922. - {USBC1_ICUSB_DM, (IEN | M0)}, /* usbc1_icusb_dm */
  923. - {SDMMC1_CLK, (PTU | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc1_clk */
  924. - {SDMMC1_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_cmd */
  925. - {SDMMC1_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat0 */
  926. - {SDMMC1_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat1 */
  927. - {SDMMC1_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat2 */
  928. - {SDMMC1_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat3 */
  929. - {SDMMC1_DAT4, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat4 */
  930. - {SDMMC1_DAT5, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat5 */
  931. - {SDMMC1_DAT6, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat6 */
  932. - {SDMMC1_DAT7, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc1_dat7 */
  933. - {ABE_MCBSP2_CLKX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_clkx */
  934. - {ABE_MCBSP2_DR, (IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dr */
  935. - {ABE_MCBSP2_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dx */
  936. - {ABE_MCBSP2_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_fsx */
  937. - {ABE_MCBSP1_CLKX, (IEN | M1)}, /* abe_slimbus1_clock */
  938. - {ABE_MCBSP1_DR, (IEN | M1)}, /* abe_slimbus1_data */
  939. - {ABE_MCBSP1_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp1_dx */
  940. - {ABE_MCBSP1_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp1_fsx */
  941. - {ABE_PDM_UL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_ul_data */
  942. - {ABE_PDM_DL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_dl_data */
  943. - {ABE_PDM_FRAME, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_frame */
  944. - {ABE_PDM_LB_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_lb_clk */
  945. - {ABE_CLKS, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_clks */
  946. - {ABE_DMIC_CLK1, (M0)}, /* abe_dmic_clk1 */
  947. - {ABE_DMIC_DIN1, (IEN | M0)}, /* abe_dmic_din1 */
  948. - {ABE_DMIC_DIN2, (IEN | M0)}, /* abe_dmic_din2 */
  949. - {ABE_DMIC_DIN3, (IEN | M0)}, /* abe_dmic_din3 */
  950. - {UART2_CTS, (PTU | IEN | M0)}, /* uart2_cts */
  951. - {UART2_RTS, (M0)}, /* uart2_rts */
  952. - {UART2_RX, (PTU | IEN | M0)}, /* uart2_rx */
  953. - {UART2_TX, (M0)}, /* uart2_tx */
  954. - {HDQ_SIO, (M3)}, /* gpio_127 */
  955. - {I2C1_SCL, (PTU | IEN | M0)}, /* i2c1_scl */
  956. - {I2C1_SDA, (PTU | IEN | M0)}, /* i2c1_sda */
  957. - {I2C2_SCL, (PTU | IEN | M0)}, /* i2c2_scl */
  958. - {I2C2_SDA, (PTU | IEN | M0)}, /* i2c2_sda */
  959. - {I2C3_SCL, (PTU | IEN | M0)}, /* i2c3_scl */
  960. - {I2C3_SDA, (PTU | IEN | M0)}, /* i2c3_sda */
  961. - {I2C4_SCL, (PTU | IEN | M0)}, /* i2c4_scl */
  962. - {I2C4_SDA, (PTU | IEN | M0)}, /* i2c4_sda */
  963. - {MCSPI1_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_clk */
  964. - {MCSPI1_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_somi */
  965. - {MCSPI1_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_simo */
  966. - {MCSPI1_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_cs0 */
  967. - {MCSPI1_CS1, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* mcspi1_cs1 */
  968. - {MCSPI1_CS2, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_139 */
  969. - {MCSPI1_CS3, (PTU | IEN | M3)}, /* gpio_140 */
  970. - {UART3_CTS_RCTX, (PTU | IEN | M0)}, /* uart3_tx */
  971. - {UART3_RTS_SD, (M0)}, /* uart3_rts_sd */
  972. - {UART3_RX_IRRX, (IEN | M0)}, /* uart3_rx */
  973. - {UART3_TX_IRTX, (M0)}, /* uart3_tx */
  974. - {SDMMC5_CLK, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc5_clk */
  975. - {SDMMC5_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_cmd */
  976. - {SDMMC5_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat0 */
  977. - {SDMMC5_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat1 */
  978. - {SDMMC5_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat2 */
  979. - {SDMMC5_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat3 */
  980. - {MCSPI4_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_clk */
  981. - {MCSPI4_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_simo */
  982. - {MCSPI4_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_somi */
  983. - {MCSPI4_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_cs0 */
  984. - {UART4_RX, (IEN | M0)}, /* uart4_rx */
  985. - {UART4_TX, (M0)}, /* uart4_tx */
  986. - {USBB2_ULPITLL_CLK, (IEN | M3)}, /* gpio_157 */
  987. - {USBB2_ULPITLL_STP, (IEN | M5)}, /* dispc2_data23 */
  988. - {USBB2_ULPITLL_DIR, (IEN | M5)}, /* dispc2_data22 */
  989. - {USBB2_ULPITLL_NXT, (IEN | M5)}, /* dispc2_data21 */
  990. - {USBB2_ULPITLL_DAT0, (IEN | M5)}, /* dispc2_data20 */
  991. - {USBB2_ULPITLL_DAT1, (IEN | M5)}, /* dispc2_data19 */
  992. - {USBB2_ULPITLL_DAT2, (IEN | M5)}, /* dispc2_data18 */
  993. - {USBB2_ULPITLL_DAT3, (IEN | M5)}, /* dispc2_data15 */
  994. - {USBB2_ULPITLL_DAT4, (IEN | M5)}, /* dispc2_data14 */
  995. - {USBB2_ULPITLL_DAT5, (IEN | M5)}, /* dispc2_data13 */
  996. - {USBB2_ULPITLL_DAT6, (IEN | M5)}, /* dispc2_data12 */
  997. - {USBB2_ULPITLL_DAT7, (IEN | M5)}, /* dispc2_data11 */
  998. - {USBB2_HSIC_DATA, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_169 */
  999. - {USBB2_HSIC_STROBE, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_170 */
  1000. - {UNIPRO_TX0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col0 */
  1001. - {UNIPRO_TY0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col1 */
  1002. - {UNIPRO_TX1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col2 */
  1003. - {UNIPRO_TY1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col3 */
  1004. - {UNIPRO_TX2, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col4 */
  1005. - {UNIPRO_TY2, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col5 */
  1006. - {UNIPRO_RX0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row0 */
  1007. - {UNIPRO_RY0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row1 */
  1008. - {UNIPRO_RX1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row2 */
  1009. - {UNIPRO_RY1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row3 */
  1010. - {UNIPRO_RX2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row4 */
  1011. - {UNIPRO_RY2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row5 */
  1012. - {USBA0_OTG_CE, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* usba0_otg_ce */
  1013. - {USBA0_OTG_DP, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dp */
  1014. - {USBA0_OTG_DM, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dm */
  1015. - {FREF_CLK1_OUT, (M0)}, /* fref_clk1_out */
  1016. - {FREF_CLK2_OUT, (M0)}, /* fref_clk2_out */
  1017. - {SYS_NIRQ1, (PTU | IEN | M0)}, /* sys_nirq1 */
  1018. - {SYS_NIRQ2, (PTU | IEN | M0)}, /* sys_nirq2 */
  1019. - {SYS_BOOT0, (PTU | IEN | M3)}, /* gpio_184 */
  1020. - {SYS_BOOT1, (M3)}, /* gpio_185 */
  1021. - {SYS_BOOT2, (PTD | IEN | M3)}, /* gpio_186 */
  1022. - {SYS_BOOT3, (M3)}, /* gpio_187 */
  1023. - {SYS_BOOT4, (M3)}, /* gpio_188 */
  1024. - {SYS_BOOT5, (PTD | IEN | M3)}, /* gpio_189 */
  1025. - {DPM_EMU0, (IEN | M0)}, /* dpm_emu0 */
  1026. - {DPM_EMU1, (IEN | M0)}, /* dpm_emu1 */
  1027. - {DPM_EMU2, (IEN | M0)}, /* dpm_emu2 */
  1028. - {DPM_EMU3, (IEN | M5)}, /* dispc2_data10 */
  1029. - {DPM_EMU4, (IEN | M5)}, /* dispc2_data9 */
  1030. - {DPM_EMU5, (IEN | M5)}, /* dispc2_data16 */
  1031. - {DPM_EMU6, (IEN | M5)}, /* dispc2_data17 */
  1032. - {DPM_EMU7, (IEN | M5)}, /* dispc2_hsync */
  1033. - {DPM_EMU8, (IEN | M5)}, /* dispc2_pclk */
  1034. - {DPM_EMU9, (IEN | M5)}, /* dispc2_vsync */
  1035. - {DPM_EMU10, (IEN | M5)}, /* dispc2_de */
  1036. - {DPM_EMU11, (IEN | M5)}, /* dispc2_data8 */
  1037. - {DPM_EMU12, (IEN | M5)}, /* dispc2_data7 */
  1038. - {DPM_EMU13, (IEN | M5)}, /* dispc2_data6 */
  1039. - {DPM_EMU14, (IEN | M5)}, /* dispc2_data5 */
  1040. - {DPM_EMU15, (IEN | M5)}, /* dispc2_data4 */
  1041. - {DPM_EMU16, (M3)}, /* gpio_27 */
  1042. - {DPM_EMU17, (IEN | M5)}, /* dispc2_data2 */
  1043. - {DPM_EMU18, (IEN | M5)}, /* dispc2_data1 */
  1044. - {DPM_EMU19, (IEN | M5)}, /* dispc2_data0 */
  1045. -};
  1046. -
  1047. -const struct pad_conf_entry wkup_padconf_array[] = {
  1048. - {PAD0_SIM_IO, (IEN | M0)}, /* sim_io */
  1049. - {PAD1_SIM_CLK, (M0)}, /* sim_clk */
  1050. - {PAD0_SIM_RESET, (M0)}, /* sim_reset */
  1051. - {PAD1_SIM_CD, (PTU | IEN | M0)}, /* sim_cd */
  1052. - {PAD0_SIM_PWRCTRL, (M0)}, /* sim_pwrctrl */
  1053. - {PAD1_SR_SCL, (PTU | IEN | M0)}, /* sr_scl */
  1054. - {PAD0_SR_SDA, (PTU | IEN | M0)}, /* sr_sda */
  1055. - {PAD1_FREF_XTAL_IN, (M0)}, /* # */
  1056. - {PAD0_FREF_SLICER_IN, (M0)}, /* fref_slicer_in */
  1057. - {PAD1_FREF_CLK_IOREQ, (M0)}, /* fref_clk_ioreq */
  1058. - {PAD0_FREF_CLK0_OUT, (M2)}, /* sys_drm_msecure */
  1059. - {PAD1_FREF_CLK3_REQ, (PTU | IEN | M0)}, /* # */
  1060. - {PAD0_FREF_CLK3_OUT, (M0)}, /* fref_clk3_out */
  1061. - {PAD1_FREF_CLK4_REQ, (PTU | IEN | M0)}, /* # */
  1062. - {PAD0_FREF_CLK4_OUT, (M0)}, /* # */
  1063. - {PAD1_SYS_32K, (IEN | M0)}, /* sys_32k */
  1064. - {PAD0_SYS_NRESPWRON, (M0)}, /* sys_nrespwron */
  1065. - {PAD1_SYS_NRESWARM, (M0)}, /* sys_nreswarm */
  1066. - {PAD0_SYS_PWR_REQ, (PTU | M0)}, /* sys_pwr_req */
  1067. - {PAD1_SYS_PWRON_RESET, (M3)}, /* gpio_wk29 */
  1068. - {PAD0_SYS_BOOT6, (IEN | M3)}, /* gpio_wk9 */
  1069. - {PAD1_SYS_BOOT7, (IEN | M3)}, /* gpio_wk10 */
  1070. -};
  1071. -
  1072. -#endif
  1073. diff --git a/board/ti/sdp4430/sdp4430_mux_data.h b/board/ti/sdp4430/sdp4430_mux_data.h
  1074. new file mode 100644
  1075. index 0000000..e6081dc
  1076. --- /dev/null
  1077. +++ b/board/ti/sdp4430/sdp4430_mux_data.h
  1078. @@ -0,0 +1,227 @@
  1079. +/*
  1080. + * (C) Copyright 2010
  1081. + * Texas Instruments Incorporated, <www.ti.com>
  1082. + *
  1083. + * Balaji Krishnamoorthy <balajitk@ti.com>
  1084. + * Aneesh V <aneesh@ti.com>
  1085. + *
  1086. + * See file CREDITS for list of people who contributed to this
  1087. + * project.
  1088. + *
  1089. + * This program is free software; you can redistribute it and/or
  1090. + * modify it under the terms of the GNU General Public License as
  1091. + * published by the Free Software Foundation; either version 2 of
  1092. + * the License, or (at your option) any later version.
  1093. + *
  1094. + * This program is distributed in the hope that it will be useful,
  1095. + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  1096. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  1097. + * GNU General Public License for more details.
  1098. + *
  1099. + * You should have received a copy of the GNU General Public License
  1100. + * along with this program; if not, write to the Free Software
  1101. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  1102. + * MA 02111-1307 USA
  1103. + */
  1104. +#ifndef _SDP4430_MUX_DATA_H
  1105. +#define _SDP4430_MUX_DATA_H
  1106. +
  1107. +#include <asm/arch/mux_omap4.h>
  1108. +
  1109. +const struct pad_conf_entry core_padconf_array_non_essential[] = {
  1110. + {GPMC_AD8, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* gpio_32 */
  1111. + {GPMC_AD9, (PTU | IEN | M3)}, /* gpio_33 */
  1112. + {GPMC_AD10, (PTU | IEN | M3)}, /* gpio_34 */
  1113. + {GPMC_AD11, (PTU | IEN | M3)}, /* gpio_35 */
  1114. + {GPMC_AD12, (PTU | IEN | M3)}, /* gpio_36 */
  1115. + {GPMC_AD13, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_37 */
  1116. + {GPMC_AD14, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_38 */
  1117. + {GPMC_AD15, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_39 */
  1118. + {GPMC_A16, (M3)}, /* gpio_40 */
  1119. + {GPMC_A17, (PTD | M3)}, /* gpio_41 */
  1120. + {GPMC_A18, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row6 */
  1121. + {GPMC_A19, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row7 */
  1122. + {GPMC_A20, (IEN | M3)}, /* gpio_44 */
  1123. + {GPMC_A21, (M3)}, /* gpio_45 */
  1124. + {GPMC_A22, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col6 */
  1125. + {GPMC_A23, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col7 */
  1126. + {GPMC_A24, (PTD | M3)}, /* gpio_48 */
  1127. + {GPMC_A25, (PTD | M3)}, /* gpio_49 */
  1128. + {GPMC_NCS0, (M3)}, /* gpio_50 */
  1129. + {GPMC_NCS1, (IEN | M3)}, /* gpio_51 */
  1130. + {GPMC_NCS2, (IEN | M3)}, /* gpio_52 */
  1131. + {GPMC_NCS3, (IEN | M3)}, /* gpio_53 */
  1132. + {GPMC_NWP, (M3)}, /* gpio_54 */
  1133. + {GPMC_CLK, (PTD | M3)}, /* gpio_55 */
  1134. + {GPMC_NADV_ALE, (M3)}, /* gpio_56 */
  1135. + {GPMC_NBE0_CLE, (M3)}, /* gpio_59 */
  1136. + {GPMC_NBE1, (PTD | M3)}, /* gpio_60 */
  1137. + {GPMC_WAIT0, (PTU | IEN | M3)}, /* gpio_61 */
  1138. + {GPMC_WAIT1, (IEN | M3)}, /* gpio_62 */
  1139. + {C2C_DATA11, (PTD | M3)}, /* gpio_100 */
  1140. + {C2C_DATA12, (M1)}, /* dsi1_te0 */
  1141. + {C2C_DATA13, (PTD | M3)}, /* gpio_102 */
  1142. + {C2C_DATA14, (M1)}, /* dsi2_te0 */
  1143. + {C2C_DATA15, (PTD | M3)}, /* gpio_104 */
  1144. + {HDMI_HPD, (M0)}, /* hdmi_hpd */
  1145. + {HDMI_CEC, (M0)}, /* hdmi_cec */
  1146. + {HDMI_DDC_SCL, (PTU | M0)}, /* hdmi_ddc_scl */
  1147. + {HDMI_DDC_SDA, (PTU | IEN | M0)}, /* hdmi_ddc_sda */
  1148. + {CSI21_DX0, (IEN | M0)}, /* csi21_dx0 */
  1149. + {CSI21_DY0, (IEN | M0)}, /* csi21_dy0 */
  1150. + {CSI21_DX1, (IEN | M0)}, /* csi21_dx1 */
  1151. + {CSI21_DY1, (IEN | M0)}, /* csi21_dy1 */
  1152. + {CSI21_DX2, (IEN | M0)}, /* csi21_dx2 */
  1153. + {CSI21_DY2, (IEN | M0)}, /* csi21_dy2 */
  1154. + {CSI21_DX3, (PTD | M7)}, /* csi21_dx3 */
  1155. + {CSI21_DY3, (PTD | M7)}, /* csi21_dy3 */
  1156. + {CSI21_DX4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dx4 */
  1157. + {CSI21_DY4, (PTD | OFF_EN | OFF_PD | OFF_IN | M7)}, /* csi21_dy4 */
  1158. + {CSI22_DX0, (IEN | M0)}, /* csi22_dx0 */
  1159. + {CSI22_DY0, (IEN | M0)}, /* csi22_dy0 */
  1160. + {CSI22_DX1, (IEN | M0)}, /* csi22_dx1 */
  1161. + {CSI22_DY1, (IEN | M0)}, /* csi22_dy1 */
  1162. + {CAM_SHUTTER, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_shutter */
  1163. + {CAM_STROBE, (OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* cam_strobe */
  1164. + {CAM_GLOBALRESET, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M3)}, /* gpio_83 */
  1165. + {USBB1_ULPITLL_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M4)},/* usbb1_ulpiphy_clk */
  1166. + {USBB1_ULPITLL_STP, (OFF_EN | OFF_OUT_PTD | M4)}, /* usbb1_ulpiphy_stp */
  1167. + {USBB1_ULPITLL_DIR, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dir */
  1168. + {USBB1_ULPITLL_NXT, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_nxt */
  1169. + {USBB1_ULPITLL_DAT0, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat0 */
  1170. + {USBB1_ULPITLL_DAT1, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat1 */
  1171. + {USBB1_ULPITLL_DAT2, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat2 */
  1172. + {USBB1_ULPITLL_DAT3, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat3 */
  1173. + {USBB1_ULPITLL_DAT4, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat4 */
  1174. + {USBB1_ULPITLL_DAT5, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat5 */
  1175. + {USBB1_ULPITLL_DAT6, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat6 */
  1176. + {USBB1_ULPITLL_DAT7, (IEN | OFF_EN | OFF_PD | OFF_IN | M4)}, /* usbb1_ulpiphy_dat7 */
  1177. + {USBB1_HSIC_DATA, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_data */
  1178. + {USBB1_HSIC_STROBE, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usbb1_hsic_strobe */
  1179. + {USBC1_ICUSB_DP, (IEN | M0)}, /* usbc1_icusb_dp */
  1180. + {USBC1_ICUSB_DM, (IEN | M0)}, /* usbc1_icusb_dm */
  1181. + {ABE_MCBSP2_CLKX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_clkx */
  1182. + {ABE_MCBSP2_DR, (IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dr */
  1183. + {ABE_MCBSP2_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp2_dx */
  1184. + {ABE_MCBSP2_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp2_fsx */
  1185. + {ABE_MCBSP1_CLKX, (IEN | M1)}, /* abe_slimbus1_clock */
  1186. + {ABE_MCBSP1_DR, (IEN | M1)}, /* abe_slimbus1_data */
  1187. + {ABE_MCBSP1_DX, (OFF_EN | OFF_OUT_PTD | M0)}, /* abe_mcbsp1_dx */
  1188. + {ABE_MCBSP1_FSX, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_mcbsp1_fsx */
  1189. + {ABE_PDM_UL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_ul_data */
  1190. + {ABE_PDM_DL_DATA, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_dl_data */
  1191. + {ABE_PDM_FRAME, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_frame */
  1192. + {ABE_PDM_LB_CLK, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_pdm_lb_clk */
  1193. + {ABE_CLKS, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* abe_clks */
  1194. + {ABE_DMIC_CLK1, (M0)}, /* abe_dmic_clk1 */
  1195. + {ABE_DMIC_DIN1, (IEN | M0)}, /* abe_dmic_din1 */
  1196. + {ABE_DMIC_DIN2, (IEN | M0)}, /* abe_dmic_din2 */
  1197. + {ABE_DMIC_DIN3, (IEN | M0)}, /* abe_dmic_din3 */
  1198. + {UART2_CTS, (PTU | IEN | M0)}, /* uart2_cts */
  1199. + {UART2_RTS, (M0)}, /* uart2_rts */
  1200. + {UART2_RX, (PTU | IEN | M0)}, /* uart2_rx */
  1201. + {UART2_TX, (M0)}, /* uart2_tx */
  1202. + {HDQ_SIO, (M3)}, /* gpio_127 */
  1203. + {MCSPI1_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_clk */
  1204. + {MCSPI1_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_somi */
  1205. + {MCSPI1_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_simo */
  1206. + {MCSPI1_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi1_cs0 */
  1207. + {MCSPI1_CS1, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M3)}, /* mcspi1_cs1 */
  1208. + {MCSPI1_CS2, (PTU | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_139 */
  1209. + {MCSPI1_CS3, (PTU | IEN | M3)}, /* gpio_140 */
  1210. + {SDMMC5_CLK, (PTU | IEN | OFF_EN | OFF_OUT_PTD | M0)}, /* sdmmc5_clk */
  1211. + {SDMMC5_CMD, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_cmd */
  1212. + {SDMMC5_DAT0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat0 */
  1213. + {SDMMC5_DAT1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat1 */
  1214. + {SDMMC5_DAT2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat2 */
  1215. + {SDMMC5_DAT3, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* sdmmc5_dat3 */
  1216. + {MCSPI4_CLK, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_clk */
  1217. + {MCSPI4_SIMO, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_simo */
  1218. + {MCSPI4_SOMI, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_somi */
  1219. + {MCSPI4_CS0, (PTD | IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* mcspi4_cs0 */
  1220. + {UART4_RX, (IEN | M0)}, /* uart4_rx */
  1221. + {UART4_TX, (M0)}, /* uart4_tx */
  1222. + {USBB2_ULPITLL_CLK, (IEN | M3)}, /* gpio_157 */
  1223. + {USBB2_ULPITLL_STP, (IEN | M5)}, /* dispc2_data23 */
  1224. + {USBB2_ULPITLL_DIR, (IEN | M5)}, /* dispc2_data22 */
  1225. + {USBB2_ULPITLL_NXT, (IEN | M5)}, /* dispc2_data21 */
  1226. + {USBB2_ULPITLL_DAT0, (IEN | M5)}, /* dispc2_data20 */
  1227. + {USBB2_ULPITLL_DAT1, (IEN | M5)}, /* dispc2_data19 */
  1228. + {USBB2_ULPITLL_DAT2, (IEN | M5)}, /* dispc2_data18 */
  1229. + {USBB2_ULPITLL_DAT3, (IEN | M5)}, /* dispc2_data15 */
  1230. + {USBB2_ULPITLL_DAT4, (IEN | M5)}, /* dispc2_data14 */
  1231. + {USBB2_ULPITLL_DAT5, (IEN | M5)}, /* dispc2_data13 */
  1232. + {USBB2_ULPITLL_DAT6, (IEN | M5)}, /* dispc2_data12 */
  1233. + {USBB2_ULPITLL_DAT7, (IEN | M5)}, /* dispc2_data11 */
  1234. + {USBB2_HSIC_DATA, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_169 */
  1235. + {USBB2_HSIC_STROBE, (PTD | OFF_EN | OFF_OUT_PTU | M3)}, /* gpio_170 */
  1236. + {UNIPRO_TX0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col0 */
  1237. + {UNIPRO_TY0, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col1 */
  1238. + {UNIPRO_TX1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col2 */
  1239. + {UNIPRO_TY1, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col3 */
  1240. + {UNIPRO_TX2, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col4 */
  1241. + {UNIPRO_TY2, (OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_col5 */
  1242. + {UNIPRO_RX0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row0 */
  1243. + {UNIPRO_RY0, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row1 */
  1244. + {UNIPRO_RX1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row2 */
  1245. + {UNIPRO_RY1, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row3 */
  1246. + {UNIPRO_RX2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row4 */
  1247. + {UNIPRO_RY2, (PTU | IEN | OFF_EN | OFF_PD | OFF_IN | M1)}, /* kpd_row5 */
  1248. + {USBA0_OTG_CE, (PTD | OFF_EN | OFF_PD | OFF_OUT_PTD | M0)}, /* usba0_otg_ce */
  1249. + {USBA0_OTG_DP, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dp */
  1250. + {USBA0_OTG_DM, (IEN | OFF_EN | OFF_PD | OFF_IN | M0)}, /* usba0_otg_dm */
  1251. + {FREF_CLK1_OUT, (M0)}, /* fref_clk1_out */
  1252. + {FREF_CLK2_OUT, (M0)}, /* fref_clk2_out */
  1253. + {SYS_NIRQ1, (PTU | IEN | M0)}, /* sys_nirq1 */
  1254. + {SYS_NIRQ2, (PTU | IEN | M0)}, /* sys_nirq2 */
  1255. + {SYS_BOOT0, (PTU | IEN | M3)}, /* gpio_184 */
  1256. + {SYS_BOOT1, (M3)}, /* gpio_185 */
  1257. + {SYS_BOOT2, (PTD | IEN | M3)}, /* gpio_186 */
  1258. + {SYS_BOOT3, (M3)}, /* gpio_187 */
  1259. + {SYS_BOOT4, (M3)}, /* gpio_188 */
  1260. + {SYS_BOOT5, (PTD | IEN | M3)}, /* gpio_189 */
  1261. + {DPM_EMU0, (IEN | M0)}, /* dpm_emu0 */
  1262. + {DPM_EMU1, (IEN | M0)}, /* dpm_emu1 */
  1263. + {DPM_EMU2, (IEN | M0)}, /* dpm_emu2 */
  1264. + {DPM_EMU3, (IEN | M5)}, /* dispc2_data10 */
  1265. + {DPM_EMU4, (IEN | M5)}, /* dispc2_data9 */
  1266. + {DPM_EMU5, (IEN | M5)}, /* dispc2_data16 */
  1267. + {DPM_EMU6, (IEN | M5)}, /* dispc2_data17 */
  1268. + {DPM_EMU7, (IEN | M5)}, /* dispc2_hsync */
  1269. + {DPM_EMU8, (IEN | M5)}, /* dispc2_pclk */
  1270. + {DPM_EMU9, (IEN | M5)}, /* dispc2_vsync */
  1271. + {DPM_EMU10, (IEN | M5)}, /* dispc2_de */
  1272. + {DPM_EMU11, (IEN | M5)}, /* dispc2_data8 */
  1273. + {DPM_EMU12, (IEN | M5)}, /* dispc2_data7 */
  1274. + {DPM_EMU13, (IEN | M5)}, /* disp