1f273e5b2SVipin KUMAR /* 2f273e5b2SVipin KUMAR * (C) Copyright 2009 3f273e5b2SVipin KUMAR * Vipin Kumar, STMicroelectronics, <vipin.kumar@st.com> 4f273e5b2SVipin KUMAR * 5f273e5b2SVipin KUMAR * See file CREDITS for list of people who contributed to this 6f273e5b2SVipin KUMAR * project. 7f273e5b2SVipin KUMAR * 8f273e5b2SVipin KUMAR * This program is free software; you can redistribute it and/or 9f273e5b2SVipin KUMAR * modify it under the terms of the GNU General Public License as 10f273e5b2SVipin KUMAR * published by the Free Software Foundation; either version 2 of 11f273e5b2SVipin KUMAR * the License, or (at your option) any later version. 12f273e5b2SVipin KUMAR * 13f273e5b2SVipin KUMAR * This program is distributed in the hope that it will be useful, 14f273e5b2SVipin KUMAR * but WITHOUT ANY WARRANTY; without even the implied warranty of 15f273e5b2SVipin KUMAR * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16f273e5b2SVipin KUMAR * GNU General Public License for more details. 17f273e5b2SVipin KUMAR * 18f273e5b2SVipin KUMAR * You should have received a copy of the GNU General Public License 19f273e5b2SVipin KUMAR * along with this program; if not, write to the Free Software 20f273e5b2SVipin KUMAR * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21f273e5b2SVipin KUMAR * MA 02111-1307 USA 22f273e5b2SVipin KUMAR */ 23f273e5b2SVipin KUMAR 24f273e5b2SVipin KUMAR #ifndef __CONFIG_H 25f273e5b2SVipin KUMAR #define __CONFIG_H 26f273e5b2SVipin KUMAR 27f273e5b2SVipin KUMAR /* 28f273e5b2SVipin KUMAR * High Level Configuration Options 29f273e5b2SVipin KUMAR * (easy to change) 30f273e5b2SVipin KUMAR */ 31f273e5b2SVipin KUMAR #if defined(CONFIG_spear300) 32f273e5b2SVipin KUMAR #define CONFIG_SPEAR3XX 1 33f273e5b2SVipin KUMAR #define CONFIG_SPEAR300 1 34f273e5b2SVipin KUMAR #elif defined(CONFIG_spear310) 35f273e5b2SVipin KUMAR #define CONFIG_SPEAR3XX 1 36f273e5b2SVipin KUMAR #define CONFIG_SPEAR310 1 37f273e5b2SVipin KUMAR #elif defined(CONFIG_spear320) 38f273e5b2SVipin KUMAR #define CONFIG_SPEAR3XX 1 39f273e5b2SVipin KUMAR #define CONFIG_SPEAR320 1 40f273e5b2SVipin KUMAR #endif 41f273e5b2SVipin KUMAR 42f273e5b2SVipin KUMAR #if defined(CONFIG_usbtty) 43f273e5b2SVipin KUMAR #define CONFIG_SPEAR_USBTTY 44f273e5b2SVipin KUMAR #endif 45f273e5b2SVipin KUMAR 46f273e5b2SVipin KUMAR #if defined(CONFIG_nand) 47f273e5b2SVipin KUMAR #define CONFIG_ENV_IS_IN_NAND 48f273e5b2SVipin KUMAR #else 49f273e5b2SVipin KUMAR #define CONFIG_ENV_IS_IN_FLASH 50f273e5b2SVipin KUMAR #endif 51f273e5b2SVipin KUMAR 52f273e5b2SVipin KUMAR #include <configs/spear-common.h> 53f273e5b2SVipin KUMAR 54f273e5b2SVipin KUMAR /* Ethernet driver configuration */ 55f273e5b2SVipin KUMAR #define CONFIG_DW_ALTDESCRIPTOR 1 56f273e5b2SVipin KUMAR 57f273e5b2SVipin KUMAR #if defined(CONFIG_SPEAR310) 58f273e5b2SVipin KUMAR #define CONFIG_MACB 1 59f273e5b2SVipin KUMAR #define CONFIG_MACB0_PHY 0x01 60f273e5b2SVipin KUMAR #define CONFIG_MACB1_PHY 0x03 61f273e5b2SVipin KUMAR #define CONFIG_MACB2_PHY 0x05 62f273e5b2SVipin KUMAR #define CONFIG_MACB3_PHY 0x07 63f273e5b2SVipin KUMAR 64f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR320) 65f273e5b2SVipin KUMAR #define CONFIG_MACB 1 66f273e5b2SVipin KUMAR #define CONFIG_MACB0_PHY 0x01 67f273e5b2SVipin KUMAR 68f273e5b2SVipin KUMAR #endif 69f273e5b2SVipin KUMAR 70f273e5b2SVipin KUMAR /* Serial Configuration (PL011) */ 71f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL0 0xD0000000 72f273e5b2SVipin KUMAR 73f273e5b2SVipin KUMAR #if defined(CONFIG_SPEAR300) 74f273e5b2SVipin KUMAR #define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0} 75f273e5b2SVipin KUMAR 76f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR310) 77f273e5b2SVipin KUMAR 78f273e5b2SVipin KUMAR #if (CONFIG_CONS_INDEX) 79f273e5b2SVipin KUMAR #undef CONFIG_PL011_CLOCK 80f273e5b2SVipin KUMAR #define CONFIG_PL011_CLOCK (83 * 1000 * 1000) 81f273e5b2SVipin KUMAR #endif 82f273e5b2SVipin KUMAR 83f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL1 0xB2000000 84f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL2 0xB2080000 85f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL3 0xB2100000 86f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL4 0xB2180000 87f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL5 0xB2200000 88f273e5b2SVipin KUMAR #define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0, \ 89f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL1, \ 90f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL2, \ 91f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL3, \ 92f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL4, \ 93f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL5 } 94f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR320) 95f273e5b2SVipin KUMAR 96f273e5b2SVipin KUMAR #if (CONFIG_CONS_INDEX) 97f273e5b2SVipin KUMAR #undef CONFIG_PL011_CLOCK 98f273e5b2SVipin KUMAR #define CONFIG_PL011_CLOCK (83 * 1000 * 1000) 99f273e5b2SVipin KUMAR #endif 100f273e5b2SVipin KUMAR 101f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL1 0xA3000000 102f273e5b2SVipin KUMAR #define CONFIG_SYS_SERIAL2 0xA4000000 103f273e5b2SVipin KUMAR #define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0, \ 104f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL1, \ 105f273e5b2SVipin KUMAR (void *)CONFIG_SYS_SERIAL2 } 106f273e5b2SVipin KUMAR #endif 107f273e5b2SVipin KUMAR 108f273e5b2SVipin KUMAR #if defined(CONFIG_SPEAR_EMI) 109f273e5b2SVipin KUMAR 110f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_CFI 111f273e5b2SVipin KUMAR #define CONFIG_FLASH_CFI_DRIVER 112f273e5b2SVipin KUMAR 113f273e5b2SVipin KUMAR #if defined(CONFIG_SPEAR310) 114*484e0b05SVipin Kumar #define CONFIG_SYS_FLASH_PROTECTION 115f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_BASE 0x50000000 116f273e5b2SVipin KUMAR #define CONFIG_SYS_CS1_FLASH_BASE 0x60000000 117f273e5b2SVipin KUMAR #define CONFIG_SYS_CS2_FLASH_BASE 0x70000000 118f273e5b2SVipin KUMAR #define CONFIG_SYS_CS3_FLASH_BASE 0x80000000 119f273e5b2SVipin KUMAR #define CONFIG_SYS_CS4_FLASH_BASE 0x90000000 120f273e5b2SVipin KUMAR #define CONFIG_SYS_CS5_FLASH_BASE 0xA0000000 121f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE, \ 122f273e5b2SVipin KUMAR CONFIG_SYS_CS1_FLASH_BASE, \ 123f273e5b2SVipin KUMAR CONFIG_SYS_CS2_FLASH_BASE, \ 124f273e5b2SVipin KUMAR CONFIG_SYS_CS3_FLASH_BASE, \ 125f273e5b2SVipin KUMAR CONFIG_SYS_CS4_FLASH_BASE, \ 126f273e5b2SVipin KUMAR CONFIG_SYS_CS5_FLASH_BASE } 127f273e5b2SVipin KUMAR #define CONFIG_SYS_MAX_FLASH_BANKS 6 128f273e5b2SVipin KUMAR 129f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR320) 130*484e0b05SVipin Kumar #define CONFIG_SYS_FLASH_PROTECTION 131f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_BASE 0x44000000 132f273e5b2SVipin KUMAR #define CONFIG_SYS_CS1_FLASH_BASE 0x45000000 133f273e5b2SVipin KUMAR #define CONFIG_SYS_CS2_FLASH_BASE 0x46000000 134f273e5b2SVipin KUMAR #define CONFIG_SYS_CS3_FLASH_BASE 0x47000000 135f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE, \ 136f273e5b2SVipin KUMAR CONFIG_SYS_CS1_FLASH_BASE, \ 137f273e5b2SVipin KUMAR CONFIG_SYS_CS2_FLASH_BASE, \ 138f273e5b2SVipin KUMAR CONFIG_SYS_CS3_FLASH_BASE } 139f273e5b2SVipin KUMAR #define CONFIG_SYS_MAX_FLASH_BANKS 4 140f273e5b2SVipin KUMAR 141f273e5b2SVipin KUMAR #endif 142f273e5b2SVipin KUMAR 143f273e5b2SVipin KUMAR #define CONFIG_SYS_MAX_FLASH_SECT (127 + 8) 144f273e5b2SVipin KUMAR #define CONFIG_SYS_FLASH_QUIET_TEST 1 145f273e5b2SVipin KUMAR 146f273e5b2SVipin KUMAR #endif 147f273e5b2SVipin KUMAR 148f273e5b2SVipin KUMAR /* NAND flash configuration */ 149f273e5b2SVipin KUMAR #define CONFIG_SYS_FSMC_NAND_SP 150f273e5b2SVipin KUMAR #define CONFIG_SYS_FSMC_NAND_8BIT 151f273e5b2SVipin KUMAR 152f273e5b2SVipin KUMAR #if defined(CONFIG_SPEAR300) 153f273e5b2SVipin KUMAR #define CONFIG_SYS_NAND_BASE (0x80000000) 154f273e5b2SVipin KUMAR 155f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR310) 156f273e5b2SVipin KUMAR #define CONFIG_SYS_NAND_BASE (0x40000000) 157f273e5b2SVipin KUMAR 158f273e5b2SVipin KUMAR #elif defined(CONFIG_SPEAR320) 159f273e5b2SVipin KUMAR #define CONFIG_SYS_NAND_BASE (0x50000000) 160f273e5b2SVipin KUMAR 161f273e5b2SVipin KUMAR #endif 162f273e5b2SVipin KUMAR 1631b7935cdSVipin KUMAR /* Environment Settings */ 1641b7935cdSVipin KUMAR #if defined(CONFIG_SPEAR300) 1651b7935cdSVipin KUMAR #define CONFIG_EXTRA_ENV_SETTINGS CONFIG_EXTRA_ENV_USBTTY 1661b7935cdSVipin KUMAR 1671b7935cdSVipin KUMAR #elif defined(CONFIG_SPEAR310) || defined(CONFIG_SPEAR320) 1681b7935cdSVipin KUMAR #define CONFIG_EXTRA_ENV_UNLOCK "unlock=yes\0" 1691b7935cdSVipin KUMAR #define CONFIG_EXTRA_ENV_SETTINGS CONFIG_EXTRA_ENV_USBTTY \ 1701b7935cdSVipin KUMAR CONFIG_EXTRA_ENV_UNLOCK 1711b7935cdSVipin KUMAR #endif 1721b7935cdSVipin KUMAR 173f273e5b2SVipin KUMAR #endif /* __CONFIG_H */ 174