#define CALIMAIN_HWVERSION_SHIFT 24 /* Hardware version pinmux settings */ const struct pinmux_config hwversion_pins[] = { { pinmux(16), 8, 2 }, /* GP7[15] */ { pinmux(16), 8, 3 }, /* GP7[14] */ { pinmux(16), 8, 4 }, /* GP7[13] */ { pinmux(16), 8, 5 }, /* GP7[12] */ { pinmux(16), 8, 6 }, /* GP7[11] */ { pinmux(16), 8, 7 }, /* GP7[10] */ { pinmux(17), 8, 0 }, /* GP7[9] */ { pinmux(17), 8, 1 } /* GP7[8] */ }; const struct pinmux_resource pinmuxes[] = { PINMUX_ITEM(uart2_pins_txrx), PINMUX_ITEM(emac_pins_mii), PINMUX_ITEM(emac_pins_mdio), PINMUX_ITEM(emifa_pins_nor), PINMUX_ITEM(emifa_pins_cs2), PINMUX_ITEM(emifa_pins_cs3), }; const int pinmuxes_size = ARRAY_SIZE(pinmuxes); const struct lpsc_resource lpsc[] = { { DAVINCI_LPSC_AEMIF }, /* NAND, NOR */ { DAVINCI_LPSC_EMAC }, /* image download */ { DAVINCI_LPSC_UART2 }, /* console */ { DAVINCI_LPSC_GPIO }, };
.host_caps = MMC_MODE_4BIT, /* DA850 supports only 4-bit SD/MMC */ .voltages = MMC_VDD_32_33 | MMC_VDD_33_34, .version = MMC_CTLR_VERSION_2, }; int board_mmc_init(bd_t *bis) { mmc_sd0.input_clk = clk_get(DAVINCI_MMCSD_CLKID); /* Add slot-0 to mmc subsystem */ return davinci_mmc_init(bis, &mmc_sd0); } #endif const struct pinmux_resource pinmuxes[] = { PINMUX_ITEM(spi0_pins_base), PINMUX_ITEM(spi0_pins_scs0), PINMUX_ITEM(uart1_pins_txrx), PINMUX_ITEM(i2c0_pins), PINMUX_ITEM(mmc0_pins), }; const int pinmuxes_size = ARRAY_SIZE(pinmuxes); const struct lpsc_resource lpsc[] = { { DAVINCI_LPSC_SPI0 }, /* Serial Flash */ { DAVINCI_LPSC_UART1 }, /* console */ { DAVINCI_LPSC_MMC_SD }, }; const int lpsc_size = ARRAY_SIZE(lpsc);
}; /* I2C pin muxer settings */ static const struct pinmux_config i2c_pins[] = { { pinmux[8], 2, 3 }, { pinmux[8], 2, 4 } }; /* USB0_DRVVBUS pin muxer settings */ static const struct pinmux_config usb_pins[] = { { pinmux[9], 1, 1 } }; static const struct pinmux_resource pinmuxes[] = { #ifdef CONFIG_SPI_FLASH PINMUX_ITEM(spi0_pins), #endif PINMUX_ITEM(uart_pins), PINMUX_ITEM(i2c_pins), #ifdef CONFIG_USB_DA8XX PINMUX_ITEM(usb_pins), #endif #ifdef CONFIG_USE_NAND PINMUX_ITEM(emifa_nand_pins), #endif #if defined(CONFIG_DRIVER_TI_EMAC) PINMUX_ITEM(emac_pins), #endif }; int board_init(void)
{ pinmux(9), 1, 6 }, { pinmux(9), 1, 7 }, { pinmux(12), 1, 5 }, { pinmux(12), 1, 6 } }; #endif #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII #define HAS_RMII 1 #else #define HAS_RMII 0 #endif static const struct pinmux_resource pinmuxes[] = { PINMUX_ITEM(uart_pins), PINMUX_ITEM(i2c_pins), #ifdef CONFIG_NAND_DAVINCI PINMUX_ITEM(nand_pins), #endif }; static const struct lpsc_resource lpsc[] = { { DAVINCI_LPSC_AEMIF }, /* NAND, NOR */ { DAVINCI_LPSC_SPI1 }, /* Serial Flash */ { DAVINCI_LPSC_EMAC }, /* image download */ { DAVINCI_LPSC_UART2 }, /* console */ { DAVINCI_LPSC_GPIO }, #ifdef CONFIG_DAVINCI_MMC { DAVINCI_LPSC_MMC_SD }, #endif
{ pinmux(17), 2, 4 }, /* LCD_D_13 */ { pinmux(17), 2, 3 }, /* LCD_D_14 */ { pinmux(17), 2, 2 }, /* LCD_D_15 */ { pinmux(18), 2, 6 }, /* LCD_PCLK */ { pinmux(19), 2, 0 }, /* LCD_HSYNC */ { pinmux(19), 2, 1 }, /* LCD_VSYNC */ { pinmux(19), 2, 6 }, /* DA850_NLCD_AC_ENB_CS */ }; const struct pinmux_config halten_pin[] = { { pinmux(3), 4, 2 } /* GPIO8[6] HALTEN */ }; static const struct pinmux_resource pinmuxes[] = { #ifdef CONFIG_SPI_FLASH PINMUX_ITEM(spi1_pins), #endif PINMUX_ITEM(uart_pins), PINMUX_ITEM(i2c_pins), #ifdef CONFIG_NAND_DAVINCI PINMUX_ITEM(nand_pins), #endif #ifdef CONFIG_VIDEO PINMUX_ITEM(lcd_pins), #endif }; static const struct lpsc_resource lpsc[] = { { DAVINCI_LPSC_AEMIF }, /* NAND, NOR */ { DAVINCI_LPSC_SPI1 }, /* Serial Flash */ { DAVINCI_LPSC_EMAC }, /* image download */
#endif static const struct pinmux_config gpio_pins[] = { #ifdef CONFIG_USE_NOR /* GP0[11] is required for NOR to work on Rev 3 EVMs */ { pinmux(0), 8, 4 }, /* GP0[11] */ #endif #ifdef CONFIG_MMC_DAVINCI /* GP0[11] is required for SD to work on Rev 3 EVMs */ { pinmux(0), 8, 4 }, /* GP0[11] */ #endif }; const struct pinmux_resource pinmuxes[] = { #ifdef CONFIG_DRIVER_TI_EMAC PINMUX_ITEM(emac_pins_mdio), #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII PINMUX_ITEM(emac_pins_rmii), #else PINMUX_ITEM(emac_pins_mii), #endif #endif #ifdef CONFIG_SPI_FLASH PINMUX_ITEM(spi1_pins_base), PINMUX_ITEM(spi1_pins_scs0), #endif PINMUX_ITEM(uart2_pins_txrx), PINMUX_ITEM(uart2_pins_rtscts), PINMUX_ITEM(i2c0_pins), #ifdef CONFIG_NAND_DAVINCI PINMUX_ITEM(emifa_pins_cs3),
} int misc_init_r(void) { dspwake(); return 0; } static const struct pinmux_config gpio_pins[] = { /* GP7[14] selects bootmode*/ { pinmux(16), 8, 3 }, /* GP7[14] */ }; const struct pinmux_resource pinmuxes[] = { #ifdef CONFIG_DRIVER_TI_EMAC PINMUX_ITEM(emac_pins_mdio), #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII PINMUX_ITEM(emac_pins_rmii), #else PINMUX_ITEM(emac_pins_mii), #endif #endif PINMUX_ITEM(uart2_pins_txrx), PINMUX_ITEM(uart2_pins_rtscts), PINMUX_ITEM(uart0_pins_txrx), PINMUX_ITEM(uart0_pins_rtscts), #ifdef CONFIG_NAND_DAVINCI PINMUX_ITEM(emifa_pins_cs3), PINMUX_ITEM(emifa_pins_nand), #endif PINMUX_ITEM(gpio_pins),
#include <asm/arch/pinmux_defs.h> #include <asm/io.h> #include <nand.h> #include <asm/ti-common/davinci_nand.h> #include <asm/arch/davinci_misc.h> #ifdef CONFIG_DAVINCI_MMC #include <mmc.h> #include <asm/arch/sdmmc_defs.h> #endif DECLARE_GLOBAL_DATA_PTR; static const struct pinmux_resource pinmuxes[] = { #ifdef CONFIG_SPI_FLASH PINMUX_ITEM(spi0_pins_base), PINMUX_ITEM(spi0_pins_scs0), PINMUX_ITEM(spi0_pins_ena), #endif PINMUX_ITEM(uart2_pins_txrx), PINMUX_ITEM(i2c0_pins), #ifdef CONFIG_USB_DA8XX PINMUX_ITEM(usb_pins), #endif #ifdef CONFIG_USE_NAND PINMUX_ITEM(emifa_pins), PINMUX_ITEM(emifa_pins_cs0), PINMUX_ITEM(emifa_pins_cs2), PINMUX_ITEM(emifa_pins_cs3), #endif #if defined(CONFIG_DRIVER_TI_EMAC)
#include <asm/io.h> #include <asm/arch/davinci_misc.h> #include <asm/errno.h> #include <hwconfig.h> DECLARE_GLOBAL_DATA_PTR; int misc_init_r(void) { return 0; } const struct pinmux_resource pinmuxes[] = { PINMUX_ITEM(emac_pins_mdio), PINMUX_ITEM(emac_pins_mii), PINMUX_ITEM(uart1_pins_txrx), PINMUX_ITEM(uart1_pins_rtscts), PINMUX_ITEM(emifa_pins_cs3), PINMUX_ITEM(emifa_pins_nand), }; const int pinmuxes_size = ARRAY_SIZE(pinmuxes); const struct lpsc_resource lpsc[] = { { DAVINCI_LPSC_AEMIF }, /* NAND, NOR */ { DAVINCI_LPSC_EMAC }, /* image download */ { DAVINCI_LPSC_UART1 }, /* console */ { DAVINCI_LPSC_GPIO }, };