arm: Disable ATAGs support
[platform/kernel/u-boot.git] / board / davinci / da8xxevm / da850evm.c
index 43483d5..2436aab 100644 (file)
 
 #include <common.h>
 #include <dm.h>
-#include <environment.h>
+#include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <net.h>
 #include <spi.h>
 #include <spi_flash.h>
 #include <asm/arch/hardware.h>
+#include <asm/global_data.h>
 #include <asm/ti-common/davinci_nand.h>
 #include <asm/arch/emac_defs.h>
 #include <asm/arch/pinmux_defs.h>
@@ -127,19 +129,12 @@ int misc_init_r(void)
 {
        dspwake();
 
-#if defined(CONFIG_MAC_ADDR_IN_SPIFLASH) || defined(CONFIG_MAC_ADDR_IN_EEPROM)
-
-       uchar env_enetaddr[6];
-       int enetaddr_found;
+#if defined(CONFIG_MAC_ADDR_IN_SPIFLASH)
+       uchar env_enetaddr[6], buff[6];
+       int enetaddr_found, spi_mac_read;
 
        enetaddr_found = eth_env_get_enetaddr("ethaddr", env_enetaddr);
 
-#endif
-
-#ifdef CONFIG_MAC_ADDR_IN_SPIFLASH
-       int spi_mac_read;
-       uchar buff[6];
-
        spi_mac_read = get_mac_addr(buff);
        buff[0] = 0;
 
@@ -171,40 +166,12 @@ int misc_init_r(void)
                                        "with the MAC address in the environment\n");
                printf("Default using MAC address from environment\n");
        }
-
-#elif defined(CONFIG_MAC_ADDR_IN_EEPROM)
-       uint8_t enetaddr[8];
-       int eeprom_mac_read;
-
-       /* Read Ethernet MAC address from EEPROM */
-       eeprom_mac_read = dvevm_read_mac_address(enetaddr);
-
-       /*
-        * MAC address not present in the environment
-        * try and read the MAC address from EEPROM flash
-        * and set it.
-        */
-       if (!enetaddr_found) {
-               if (eeprom_mac_read)
-                       /* Set Ethernet MAC address from EEPROM */
-                       davinci_sync_env_enetaddr(enetaddr);
-       } else {
-               /*
-                * MAC address present in environment compare it with
-                * the MAC address in EEPROM and warn on mismatch
-                */
-               if (eeprom_mac_read && memcmp(enetaddr, env_enetaddr, 6))
-                       printf("Warning: MAC address in EEPROM don't match "
-                                       "with the MAC address in the environment\n");
-               printf("Default using MAC address from environment\n");
-       }
-
 #endif
        return 0;
 }
 
 static const struct pinmux_config gpio_pins[] = {
-#ifdef CONFIG_USE_NOR
+#ifdef CONFIG_MTD_NOR_FLASH
        /* GP0[11] is required for NOR to work on Rev 3 EVMs */
        { pinmux(0), 8, 4 },    /* GP0[11] */
 #endif
@@ -215,43 +182,33 @@ static const struct pinmux_config gpio_pins[] = {
 };
 
 const struct pinmux_resource pinmuxes[] = {
-#ifndef CONFIG_SPL_BUILD
 #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 /* CONFIG_DRIVER_TI_EMAC */
-#endif /* CONFIG_DRIVER_TI_EMAC_USE_RMII */
-#endif /* CONFIG_SPL_BUILD */
+#endif
+#endif
 #ifdef CONFIG_SPI_FLASH
-#if !CONFIG_IS_ENABLED(PINCTRL)
        PINMUX_ITEM(spi1_pins_base),
        PINMUX_ITEM(spi1_pins_scs0),
 #endif
-#endif
-#if !CONFIG_IS_ENABLED(PINCTRL)
        PINMUX_ITEM(uart2_pins_txrx),
        PINMUX_ITEM(uart2_pins_rtscts),
-#endif
-#if !CONFIG_IS_ENABLED(PINCTRL)
        PINMUX_ITEM(i2c0_pins),
-#endif
 #ifdef CONFIG_NAND_DAVINCI
        PINMUX_ITEM(emifa_pins_cs3),
        PINMUX_ITEM(emifa_pins_cs4),
        PINMUX_ITEM(emifa_pins_nand),
-#elif defined(CONFIG_USE_NOR)
+#elif defined(CONFIG_MTD_NOR_FLASH)
        PINMUX_ITEM(emifa_pins_cs2),
        PINMUX_ITEM(emifa_pins_nor),
 #endif
        PINMUX_ITEM(gpio_pins),
 #ifdef CONFIG_MMC_DAVINCI
-#if !CONFIG_IS_ENABLED(PINCTRL)
        PINMUX_ITEM(mmc0_pins),
 #endif
-#endif
 };
 
 const int pinmuxes_size = ARRAY_SIZE(pinmuxes);
@@ -275,6 +232,7 @@ const int lpsc_size = ARRAY_SIZE(lpsc);
 
 #define REV_AM18X_EVM          0x100
 
+#ifdef CONFIG_REVISION_TAG
 /*
  * get_board_rev() - setup to pass kernel board revision information
  * Returns:
@@ -292,7 +250,7 @@ u32 get_board_rev(void)
 
        s = env_get("maxcpuclk");
        if (s)
-               maxcpuclk = simple_strtoul(s, NULL, 10);
+               maxcpuclk = dectoul(s, NULL);
 
        if (maxcpuclk >= 456000000)
                rev = 3;
@@ -300,11 +258,9 @@ u32 get_board_rev(void)
                rev = 2;
        else if (maxcpuclk >= 372000000)
                rev = 1;
-#ifdef CONFIG_DA850_AM18X_EVM
-       rev |= REV_AM18X_EVM;
-#endif
        return rev;
 }
+#endif
 
 int board_early_init_f(void)
 {
@@ -353,11 +309,7 @@ int board_init(void)
                 DAVINCI_SYSCFG_SUSPSRC_UART2),
               &davinci_syscfg_regs->suspsrc);
 
-       /* configure pinmux settings */
-       if (davinci_configure_pin_mux_items(pinmuxes, ARRAY_SIZE(pinmuxes)))
-               return 1;
-
-#ifdef CONFIG_USE_NOR
+#ifdef CONFIG_MTD_NOR_FLASH
        /* Set the GPIO direction as output */
        clrbits_le32((u32 *)GPIO_BANK0_REG_DIR_ADDR, (0x01 << 11));
 
@@ -377,11 +329,6 @@ int board_init(void)
        davinci_emac_mii_mode_sel(HAS_RMII);
 #endif /* CONFIG_DRIVER_TI_EMAC */
 
-       /* enable the console UART */
-       writel((DAVINCI_UART_PWREMU_MGMT_FREE | DAVINCI_UART_PWREMU_MGMT_URRST |
-               DAVINCI_UART_PWREMU_MGMT_UTRST),
-              &davinci_uart2_ctrl_regs->pwremu_mgmt);
-
        return 0;
 }
 
@@ -474,7 +421,7 @@ int rmii_hw_init(void)
 /*
  * Initializes on-board ethernet controllers.
  */
-int board_eth_init(bd_t *bis)
+int board_eth_init(struct bd_info *bis)
 {
 #ifdef CONFIG_DRIVER_TI_EMAC_USE_RMII
        /* Select RMII fucntion through the expander */