177ea071fSSimon Guinot /* 277ea071fSSimon Guinot * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com> 377ea071fSSimon Guinot * 477ea071fSSimon Guinot * See file CREDITS for list of people who contributed to this 577ea071fSSimon Guinot * project. 677ea071fSSimon Guinot * 777ea071fSSimon Guinot * This program is free software; you can redistribute it and/or 877ea071fSSimon Guinot * modify it under the terms of the GNU General Public License as 977ea071fSSimon Guinot * published by the Free Software Foundation; either version 2 of 1077ea071fSSimon Guinot * the License, or (at your option) any later version. 1177ea071fSSimon Guinot * 1277ea071fSSimon Guinot * This program is distributed in the hope that it will be useful, 1377ea071fSSimon Guinot * but WITHOUT ANY WARRANTY; without even the implied warranty of 1477ea071fSSimon Guinot * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1577ea071fSSimon Guinot * GNU General Public License for more details. 1677ea071fSSimon Guinot */ 1777ea071fSSimon Guinot 1877ea071fSSimon Guinot #ifndef _CONFIG_LACIE_KW_H 1977ea071fSSimon Guinot #define _CONFIG_LACIE_KW_H 2077ea071fSSimon Guinot 2177ea071fSSimon Guinot /* 2277ea071fSSimon Guinot * Machine number definition 2377ea071fSSimon Guinot */ 2477ea071fSSimon Guinot #if defined(CONFIG_INETSPACE_V2) 2577ea071fSSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2 2677ea071fSSimon Guinot #define CONFIG_IDENT_STRING " IS v2" 2777ea071fSSimon Guinot #elif defined(CONFIG_NETSPACE_V2) 2877ea071fSSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2 2977ea071fSSimon Guinot #define CONFIG_IDENT_STRING " NS v2" 3037235496SSimon Guinot #elif defined(CONFIG_NETSPACE_LITE_V2) 3137235496SSimon Guinot #define MACH_TYPE_NETSPACE_LITE_V2 2983 /* missing in mach-types.h */ 3237235496SSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_LITE_V2 3337235496SSimon Guinot #define CONFIG_IDENT_STRING " NS v2 Lite" 3437235496SSimon Guinot #elif defined(CONFIG_NETSPACE_MINI_V2) 3537235496SSimon Guinot #define MACH_TYPE_NETSPACE_MINI_V2 2831 /* missing in mach-types.h */ 3637235496SSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MINI_V2 3737235496SSimon Guinot #define CONFIG_IDENT_STRING " NS v2 Mini" 3877ea071fSSimon Guinot #elif defined(CONFIG_NETSPACE_MAX_V2) 3977ea071fSSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2 4077ea071fSSimon Guinot #define CONFIG_IDENT_STRING " NS Max v2" 41*ee8f6d23SSimon Guinot #elif defined(CONFIG_D2NET_V2) 42*ee8f6d23SSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_D2NET_V2 43*ee8f6d23SSimon Guinot #define CONFIG_IDENT_STRING " D2 v2" 4477ea071fSSimon Guinot #elif defined(CONFIG_NET2BIG_V2) 4577ea071fSSimon Guinot #define CONFIG_MACH_TYPE MACH_TYPE_NET2BIG_V2 4677ea071fSSimon Guinot #define CONFIG_IDENT_STRING " 2Big v2" 4777ea071fSSimon Guinot #else 4877ea071fSSimon Guinot #error "Unknown board" 4977ea071fSSimon Guinot #endif 5077ea071fSSimon Guinot 5177ea071fSSimon Guinot /* 5277ea071fSSimon Guinot * High Level Configuration Options (easy to change) 5377ea071fSSimon Guinot */ 5477ea071fSSimon Guinot #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ 5537235496SSimon Guinot #define CONFIG_KIRKWOOD /* SoC Family Name */ 5637235496SSimon Guinot /* SoC name */ 5737235496SSimon Guinot #if defined(CONFIG_NETSPACE_LITE_V2) || defined(CONFIG_NETSPACE_MINI_V2) 5837235496SSimon Guinot #define CONFIG_KW88F6192 5937235496SSimon Guinot #else 6037235496SSimon Guinot #define CONFIG_KW88F6281 6137235496SSimon Guinot #endif 6277ea071fSSimon Guinot #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ 6377ea071fSSimon Guinot 6477ea071fSSimon Guinot /* 6577ea071fSSimon Guinot * Commands configuration 6677ea071fSSimon Guinot */ 6777ea071fSSimon Guinot #define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ 6877ea071fSSimon Guinot #include <config_cmd_default.h> 6977ea071fSSimon Guinot #define CONFIG_CMD_ENV 7077ea071fSSimon Guinot #define CONFIG_CMD_DHCP 7177ea071fSSimon Guinot #define CONFIG_CMD_PING 7277ea071fSSimon Guinot #define CONFIG_CMD_SF 7377ea071fSSimon Guinot #define CONFIG_CMD_I2C 7477ea071fSSimon Guinot #define CONFIG_CMD_IDE 7537235496SSimon Guinot #ifndef CONFIG_NETSPACE_MINI_V2 /* No USB ports on Network Space v2 Mini */ 7677ea071fSSimon Guinot #define CONFIG_CMD_USB 7737235496SSimon Guinot #endif 7877ea071fSSimon Guinot 7977ea071fSSimon Guinot /* 8077ea071fSSimon Guinot * Core clock definition 8177ea071fSSimon Guinot */ 8277ea071fSSimon Guinot #define CONFIG_SYS_TCLK 166000000 /* 166MHz */ 8377ea071fSSimon Guinot 8477ea071fSSimon Guinot /* 8577ea071fSSimon Guinot * SDRAM configuration 8677ea071fSSimon Guinot */ 8777ea071fSSimon Guinot #define CONFIG_NR_DRAM_BANKS 1 8877ea071fSSimon Guinot 8937235496SSimon Guinot /* 9037235496SSimon Guinot * Different SDRAM configuration and size for some of the boards derived 9137235496SSimon Guinot * from the Network Space v2 9237235496SSimon Guinot */ 9337235496SSimon Guinot #if defined(CONFIG_INETSPACE_V2) 94d92151b9SSimon Guinot #define CONFIG_SYS_KWD_CONFIG $(SRCTREE)/$(CONFIG_BOARDDIR)/kwbimage-is2.cfg 9537235496SSimon Guinot #elif defined(CONFIG_NETSPACE_LITE_V2) || defined(CONFIG_NETSPACE_MINI_V2) 9637235496SSimon Guinot #define CONFIG_SYS_KWD_CONFIG $(SRCTREE)/$(CONFIG_BOARDDIR)/kwbimage-ns2l.cfg 9777ea071fSSimon Guinot #endif 9877ea071fSSimon Guinot 9977ea071fSSimon Guinot /* 10077ea071fSSimon Guinot * mv-common.h should be defined after CMD configs since it used them 10177ea071fSSimon Guinot * to enable certain macros 10277ea071fSSimon Guinot */ 10377ea071fSSimon Guinot #include "mv-common.h" 10477ea071fSSimon Guinot 10577ea071fSSimon Guinot /* Remove or override few declarations from mv-common.h */ 10677ea071fSSimon Guinot #undef CONFIG_RBTREE 10777ea071fSSimon Guinot #undef CONFIG_ENV_SPI_MAX_HZ 10877ea071fSSimon Guinot #undef CONFIG_SYS_IDE_MAXBUS 10977ea071fSSimon Guinot #undef CONFIG_SYS_IDE_MAXDEVICE 11077ea071fSSimon Guinot #undef CONFIG_SYS_PROMPT 11177ea071fSSimon Guinot #define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */ 11277ea071fSSimon Guinot #define CONFIG_SYS_IDE_MAXBUS 1 11377ea071fSSimon Guinot #define CONFIG_SYS_IDE_MAXDEVICE 1 114*ee8f6d23SSimon Guinot #if defined(CONFIG_D2NET_V2) 115*ee8f6d23SSimon Guinot #define CONFIG_SYS_PROMPT "d2v2> " 116*ee8f6d23SSimon Guinot #elif defined(CONFIG_NET2BIG_V2) 11777ea071fSSimon Guinot #define CONFIG_SYS_PROMPT "2big2> " 11877ea071fSSimon Guinot #else 11977ea071fSSimon Guinot #define CONFIG_SYS_PROMPT "ns2> " 12077ea071fSSimon Guinot #endif 12177ea071fSSimon Guinot 12277ea071fSSimon Guinot /* 12377ea071fSSimon Guinot * Ethernet Driver configuration 12477ea071fSSimon Guinot */ 12577ea071fSSimon Guinot #ifdef CONFIG_CMD_NET 12677ea071fSSimon Guinot #define CONFIG_MISC_INIT_R /* Call misc_init_r() to initialize MAC address */ 12777ea071fSSimon Guinot #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ 12877ea071fSSimon Guinot #define CONFIG_NETCONSOLE 12977ea071fSSimon Guinot #endif 13077ea071fSSimon Guinot 13177ea071fSSimon Guinot /* 13277ea071fSSimon Guinot * SATA Driver configuration 13377ea071fSSimon Guinot */ 13477ea071fSSimon Guinot #ifdef CONFIG_MVSATA_IDE 13577ea071fSSimon Guinot #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET 136*ee8f6d23SSimon Guinot #if defined(CONFIG_NETSPACE_MAX_V2) || defined(CONFIG_D2NET_V2) || \ 137*ee8f6d23SSimon Guinot defined(CONFIG_NET2BIG_V2) 13877ea071fSSimon Guinot #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET 13977ea071fSSimon Guinot #endif 14077ea071fSSimon Guinot #endif /* CONFIG_MVSATA_IDE */ 14177ea071fSSimon Guinot 14277ea071fSSimon Guinot /* 14377ea071fSSimon Guinot * Enable GPI0 support 14477ea071fSSimon Guinot */ 14577ea071fSSimon Guinot #define CONFIG_KIRKWOOD_GPIO 14677ea071fSSimon Guinot 14777ea071fSSimon Guinot /* 14877ea071fSSimon Guinot * Enable I2C support 14977ea071fSSimon Guinot */ 15077ea071fSSimon Guinot #ifdef CONFIG_CMD_I2C 15177ea071fSSimon Guinot /* I2C EEPROM HT24LC04 (512B - 32 pages of 16 Bytes) */ 15277ea071fSSimon Guinot #define CONFIG_CMD_EEPROM 15377ea071fSSimon Guinot #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 15477ea071fSSimon Guinot #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4 /* 16-byte page size */ 15577ea071fSSimon Guinot #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 /* 8-bit device address */ 15677ea071fSSimon Guinot #endif /* CONFIG_CMD_I2C */ 15777ea071fSSimon Guinot 15877ea071fSSimon Guinot /* 1598e622436SSimon Guinot * Partition support 1608e622436SSimon Guinot */ 1618e622436SSimon Guinot #define CONFIG_DOS_PARTITION 1628e622436SSimon Guinot #define CONFIG_EFI_PARTITION 1638e622436SSimon Guinot 1648e622436SSimon Guinot /* 16577ea071fSSimon Guinot * File systems support 16677ea071fSSimon Guinot */ 16777ea071fSSimon Guinot #define CONFIG_CMD_EXT2 16877ea071fSSimon Guinot #define CONFIG_CMD_FAT 16977ea071fSSimon Guinot 17077ea071fSSimon Guinot /* 17177ea071fSSimon Guinot * Use the HUSH parser 17277ea071fSSimon Guinot */ 17377ea071fSSimon Guinot #define CONFIG_SYS_HUSH_PARSER 17477ea071fSSimon Guinot 17577ea071fSSimon Guinot /* 17677ea071fSSimon Guinot * Console configuration 17777ea071fSSimon Guinot */ 17877ea071fSSimon Guinot #define CONFIG_CONSOLE_MUX 17977ea071fSSimon Guinot #define CONFIG_SYS_CONSOLE_IS_IN_ENV 18077ea071fSSimon Guinot 18177ea071fSSimon Guinot /* 18277ea071fSSimon Guinot * Enable device tree support 18377ea071fSSimon Guinot */ 18477ea071fSSimon Guinot #define CONFIG_OF_LIBFDT 18577ea071fSSimon Guinot 18677ea071fSSimon Guinot /* 18777ea071fSSimon Guinot * Environment variables configurations 18877ea071fSSimon Guinot */ 18977ea071fSSimon Guinot #define CONFIG_ENV_IS_IN_SPI_FLASH 19077ea071fSSimon Guinot #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */ 19177ea071fSSimon Guinot #define CONFIG_ENV_SIZE 0x1000 /* 4KB */ 19277ea071fSSimon Guinot #define CONFIG_ENV_ADDR 0x70000 19377ea071fSSimon Guinot #define CONFIG_ENV_OFFSET 0x70000 /* env starts here */ 19477ea071fSSimon Guinot 19577ea071fSSimon Guinot /* 19677ea071fSSimon Guinot * Default environment variables 19777ea071fSSimon Guinot */ 19877ea071fSSimon Guinot #define CONFIG_BOOTARGS "console=ttyS0,115200" 19977ea071fSSimon Guinot 20077ea071fSSimon Guinot #define CONFIG_BOOTCOMMAND \ 20177ea071fSSimon Guinot "dhcp && run netconsole; " \ 20277ea071fSSimon Guinot "if run usbload || run diskload; then bootm; fi" 20377ea071fSSimon Guinot 20477ea071fSSimon Guinot #define CONFIG_EXTRA_ENV_SETTINGS \ 20577ea071fSSimon Guinot "stdin=serial\0" \ 20677ea071fSSimon Guinot "stdout=serial\0" \ 20777ea071fSSimon Guinot "stderr=serial\0" \ 20877ea071fSSimon Guinot "bootfile=uImage\0" \ 20977ea071fSSimon Guinot "loadaddr=0x800000\0" \ 21077ea071fSSimon Guinot "autoload=no\0" \ 21177ea071fSSimon Guinot "netconsole=" \ 21277ea071fSSimon Guinot "set stdin $stdin,nc; " \ 21377ea071fSSimon Guinot "set stdout $stdout,nc; " \ 21477ea071fSSimon Guinot "set stderr $stderr,nc;\0" \ 21577ea071fSSimon Guinot "diskload=ide reset && " \ 21677ea071fSSimon Guinot "ext2load ide 0:1 $loadaddr /boot/$bootfile\0" \ 21777ea071fSSimon Guinot "usbload=usb start && " \ 21877ea071fSSimon Guinot "fatload usb 0:1 $loadaddr /boot/$bootfile\0" 21977ea071fSSimon Guinot 22077ea071fSSimon Guinot #endif /* _CONFIG_LACIE_KW_H */ 221