1 /* 2 * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com> 3 * 4 * See file CREDITS for list of people who contributed to this 5 * project. 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License as 9 * published by the Free Software Foundation; either version 2 of 10 * the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 */ 17 18 #ifndef _CONFIG_LACIE_KW_H 19 #define _CONFIG_LACIE_KW_H 20 21 /* 22 * Machine number definition 23 */ 24 #if defined(CONFIG_INETSPACE_V2) 25 #define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2 26 #define CONFIG_IDENT_STRING " IS v2" 27 #elif defined(CONFIG_NETSPACE_V2) 28 #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2 29 #define CONFIG_IDENT_STRING " NS v2" 30 #elif defined(CONFIG_NETSPACE_MAX_V2) 31 #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2 32 #define CONFIG_IDENT_STRING " NS Max v2" 33 #elif defined(CONFIG_NET2BIG_V2) 34 #define CONFIG_MACH_TYPE MACH_TYPE_NET2BIG_V2 35 #define CONFIG_IDENT_STRING " 2Big v2" 36 #else 37 #error "Unknown board" 38 #endif 39 40 /* 41 * High Level Configuration Options (easy to change) 42 */ 43 #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ 44 #define CONFIG_KIRKWOOD /* SOC Family Name */ 45 #define CONFIG_KW88F6281 /* SOC Name */ 46 #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ 47 48 /* 49 * Commands configuration 50 */ 51 #define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ 52 #include <config_cmd_default.h> 53 #define CONFIG_CMD_ENV 54 #define CONFIG_CMD_DHCP 55 #define CONFIG_CMD_PING 56 #define CONFIG_CMD_SF 57 #define CONFIG_CMD_I2C 58 #define CONFIG_CMD_IDE 59 #define CONFIG_CMD_USB 60 61 /* 62 * Core clock definition 63 */ 64 #define CONFIG_SYS_TCLK 166000000 /* 166MHz */ 65 66 /* 67 * SDRAM configuration 68 */ 69 #if defined(CONFIG_NET2BIG_V2) 70 #define CONFIG_NR_DRAM_BANKS 2 71 #else 72 #define CONFIG_NR_DRAM_BANKS 1 73 #endif 74 75 #ifdef CONFIG_INETSPACE_V2 76 /* Different SDRAM configuration and size for Internet Space v2 */ 77 #define CONFIG_SYS_KWD_CONFIG ($(SRCTREE)/$(CONFIG_BOARDDIR)/kwbimage-is2.cfg) 78 #endif 79 80 /* 81 * mv-common.h should be defined after CMD configs since it used them 82 * to enable certain macros 83 */ 84 #include "mv-common.h" 85 86 /* Remove or override few declarations from mv-common.h */ 87 #undef CONFIG_RBTREE 88 #undef CONFIG_ENV_SPI_MAX_HZ 89 #undef CONFIG_SYS_IDE_MAXBUS 90 #undef CONFIG_SYS_IDE_MAXDEVICE 91 #undef CONFIG_SYS_PROMPT 92 #define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */ 93 #define CONFIG_SYS_IDE_MAXBUS 1 94 #define CONFIG_SYS_IDE_MAXDEVICE 1 95 #if defined(CONFIG_NET2BIG_V2) 96 #define CONFIG_SYS_PROMPT "2big2> " 97 #else 98 #define CONFIG_SYS_PROMPT "ns2> " 99 #endif 100 101 /* 102 * Ethernet Driver configuration 103 */ 104 #ifdef CONFIG_CMD_NET 105 #define CONFIG_MISC_INIT_R /* Call misc_init_r() to initialize MAC address */ 106 #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ 107 #define CONFIG_NETCONSOLE 108 #endif 109 110 /* 111 * SATA Driver configuration 112 */ 113 #ifdef CONFIG_MVSATA_IDE 114 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET 115 #if defined(CONFIG_NETSPACE_MAX_V2) || defined(CONFIG_NET2BIG_V2) 116 #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET 117 #endif 118 #endif /* CONFIG_MVSATA_IDE */ 119 120 /* 121 * Enable GPI0 support 122 */ 123 #define CONFIG_KIRKWOOD_GPIO 124 125 /* 126 * Enable I2C support 127 */ 128 #ifdef CONFIG_CMD_I2C 129 /* I2C EEPROM HT24LC04 (512B - 32 pages of 16 Bytes) */ 130 #define CONFIG_CMD_EEPROM 131 #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 132 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4 /* 16-byte page size */ 133 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 /* 8-bit device address */ 134 #endif /* CONFIG_CMD_I2C */ 135 136 /* 137 * File systems support 138 */ 139 #define CONFIG_CMD_EXT2 140 #define CONFIG_CMD_FAT 141 142 /* 143 * Use the HUSH parser 144 */ 145 #define CONFIG_SYS_HUSH_PARSER 146 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 147 148 /* 149 * Console configuration 150 */ 151 #define CONFIG_CONSOLE_MUX 152 #define CONFIG_SYS_CONSOLE_IS_IN_ENV 153 154 /* 155 * Enable device tree support 156 */ 157 #define CONFIG_OF_LIBFDT 158 159 /* 160 * Environment variables configurations 161 */ 162 #define CONFIG_ENV_IS_IN_SPI_FLASH 163 #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */ 164 #define CONFIG_ENV_SIZE 0x1000 /* 4KB */ 165 #define CONFIG_ENV_ADDR 0x70000 166 #define CONFIG_ENV_OFFSET 0x70000 /* env starts here */ 167 168 /* 169 * Default environment variables 170 */ 171 #define CONFIG_BOOTARGS "console=ttyS0,115200" 172 173 #define CONFIG_BOOTCOMMAND \ 174 "dhcp && run netconsole; " \ 175 "if run usbload || run diskload; then bootm; fi" 176 177 #define CONFIG_EXTRA_ENV_SETTINGS \ 178 "stdin=serial\0" \ 179 "stdout=serial\0" \ 180 "stderr=serial\0" \ 181 "bootfile=uImage\0" \ 182 "loadaddr=0x800000\0" \ 183 "autoload=no\0" \ 184 "netconsole=" \ 185 "set stdin $stdin,nc; " \ 186 "set stdout $stdout,nc; " \ 187 "set stderr $stderr,nc;\0" \ 188 "diskload=ide reset && " \ 189 "ext2load ide 0:1 $loadaddr /boot/$bootfile\0" \ 190 "usbload=usb start && " \ 191 "fatload usb 0:1 $loadaddr /boot/$bootfile\0" 192 193 #endif /* _CONFIG_LACIE_KW_H */ 194