mtd: nand: davinci: add header file for driver definitions
[platform/kernel/u-boot.git] / board / davinci / da8xxevm / da830evm.c
index bf014ae..c40587f 100644 (file)
  * Copyright (C) 2004 Texas Instruments.
  *
  * ----------------------------------------------------------------------------
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * SPDX-License-Identifier:    GPL-2.0+
  * ----------------------------------------------------------------------------
  */
 
 #include <net.h>
 #include <netdev.h>
 #include <asm/arch/hardware.h>
-#include <asm/arch/emif_defs.h>
 #include <asm/arch/emac_defs.h>
+#include <asm/arch/pinmux_defs.h>
 #include <asm/io.h>
 #include <nand.h>
-#include <asm/arch/nand_defs.h>
+#include <asm/ti-common/davinci_nand.h>
 #include <asm/arch/davinci_misc.h>
 
 #ifdef CONFIG_DAVINCI_MMC
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/* SPI0 pin muxer settings */
-static const struct pinmux_config spi0_pins[] = {
-       { pinmux(7), 1, 3 },
-       { pinmux(7), 1, 4 },
-       { pinmux(7), 1, 5 },
-       { pinmux(7), 1, 6 },
-       { pinmux(7), 1, 7 }
-};
-
-/* EMIF-A bus pins for 8-bit NAND support on CS3 */
-static const struct pinmux_config emifa_nand_pins[] = {
-       { pinmux(13), 1, 6 },
-       { pinmux(13), 1, 7 },
-       { pinmux(14), 1, 0 },
-       { pinmux(14), 1, 1 },
-       { pinmux(14), 1, 2 },
-       { pinmux(14), 1, 3 },
-       { pinmux(14), 1, 4 },
-       { pinmux(14), 1, 5 },
-       { pinmux(15), 1, 7 },
-       { pinmux(16), 1, 0 },
-       { pinmux(18), 1, 1 },
-       { pinmux(18), 1, 4 },
-       { pinmux(18), 1, 5 },
-};
-
-/* EMAC PHY interface pins */
-static const struct pinmux_config emac_pins[] = {
-       { pinmux(9), 0, 5 },
-       { pinmux(10), 2, 1 },
-       { pinmux(10), 2, 2 },
-       { pinmux(10), 2, 3 },
-       { pinmux(10), 2, 4 },
-       { pinmux(10), 2, 5 },
-       { pinmux(10), 2, 6 },
-       { pinmux(10), 2, 7 },
-       { pinmux(11), 2, 0 },
-       { pinmux(11), 2, 1 },
-};
-
-/* UART pin muxer settings */
-static const struct pinmux_config uart_pins[] = {
-       { pinmux(8), 2, 7 },
-       { pinmux(9), 2, 0 }
-};
-
-/* I2C pin muxer settings */
-static const struct pinmux_config i2c_pins[] = {
-       { pinmux(8), 2, 3 },
-       { pinmux(8), 2, 4 }
-};
-
-#ifdef CONFIG_USE_NAND
-/* NAND pin muxer settings */
-const struct pinmux_config aemif_pins[] = {
-       { pinmux(13), 1, 6 },
-       { pinmux(13), 1, 7 },
-       { pinmux(14), 1, 0 },
-       { pinmux(14), 1, 1 },
-       { pinmux(14), 1, 2 },
-       { pinmux(14), 1, 3 },
-       { pinmux(14), 1, 4 },
-       { pinmux(14), 1, 5 },
-       { pinmux(14), 1, 6 },
-       { pinmux(14), 1, 7 },
-       { pinmux(15), 1, 0 },
-       { pinmux(15), 1, 1 },
-       { pinmux(15), 1, 2 },
-       { pinmux(15), 1, 3 },
-       { pinmux(15), 1, 4 },
-       { pinmux(15), 1, 5 },
-       { pinmux(15), 1, 6 },
-       { pinmux(15), 1, 7 },
-       { pinmux(16), 1, 0 },
-       { pinmux(16), 1, 1 },
-       { pinmux(16), 1, 2 },
-       { pinmux(16), 1, 3 },
-       { pinmux(16), 1, 4 },
-       { pinmux(16), 1, 5 },
-       { pinmux(16), 1, 6 },
-       { pinmux(16), 1, 7 },
-       { pinmux(17), 1, 0 },
-       { pinmux(17), 1, 1 },
-       { pinmux(17), 1, 2 },
-       { pinmux(17), 1, 3 },
-       { pinmux(17), 1, 4 },
-       { pinmux(17), 1, 5 },
-       { pinmux(17), 1, 6 },
-       { pinmux(17), 1, 7 },
-       { pinmux(18), 1, 0 },
-       { pinmux(18), 1, 1 },
-       { pinmux(18), 1, 2 },
-       { pinmux(18), 1, 3 },
-       { pinmux(18), 1, 4 },
-       { pinmux(18), 1, 5 },
-       { pinmux(18), 1, 6 },
-       { pinmux(18), 1, 7 },
-       { pinmux(10), 1, 0 }
-};
-#endif
-
-
-/* USB0_DRVVBUS pin muxer settings */
-static const struct pinmux_config usb_pins[] = {
-       { pinmux(9), 1, 1 }
-};
-
-#ifdef CONFIG_DAVINCI_MMC
-/* MMC0 pin muxer settings */
-const struct pinmux_config mmc0_pins[] = {
-       { pinmux(15), 2, 7 },   /* MMCSD0_CLK */
-       { pinmux(16), 2, 0 },   /* MMCSD0_CMD */
-       { pinmux(13), 2, 6 },   /* MMCSD0_DAT_0 */
-       { pinmux(13), 2, 7 },   /* MMCSD0_DAT_1 */
-       { pinmux(14), 2, 0 },   /* MMCSD0_DAT_2 */
-       { pinmux(14), 2, 1 },   /* MMCSD0_DAT_3 */
-       { pinmux(14), 2, 2 },   /* MMCSD0_DAT_4 */
-       { pinmux(14), 2, 3 },   /* MMCSD0_DAT_5 */
-       { pinmux(14), 2, 4 },   /* MMCSD0_DAT_6 */
-       { pinmux(14), 2, 5 },   /* MMCSD0_DAT_7 */
-       /* DA830 supports 8-bit mode */
-};
-#endif
-
 static const struct pinmux_resource pinmuxes[] = {
 #ifdef CONFIG_SPI_FLASH
-       PINMUX_ITEM(spi0_pins),
+       PINMUX_ITEM(spi0_pins_base),
+       PINMUX_ITEM(spi0_pins_scs0),
+       PINMUX_ITEM(spi0_pins_ena),
 #endif
-       PINMUX_ITEM(uart_pins),
-       PINMUX_ITEM(i2c_pins),
+       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_nand_pins),
-       PINMUX_ITEM(aemif_pins),
+       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)
-       PINMUX_ITEM(emac_pins),
+       PINMUX_ITEM(emac_pins_rmii),
+       PINMUX_ITEM(emac_pins_mdio),
+       PINMUX_ITEM(emac_pins_rmii_clk_source),
 #endif
 #ifdef CONFIG_DAVINCI_MMC
-       PINMUX_ITEM(mmc0_pins),
+       PINMUX_ITEM(mmc0_pins_8bit)
 #endif
 };