1 /* 2 * Copyright (C) 2011 3 * Stefan Herbrechtsmeier <stefan@code.herbrechtsmeier.net> 4 * 5 * Based on Kirkwood support: 6 * (C) Copyright 2009 7 * Marvell Semiconductor <www.marvell.com> 8 * Written-by: Prafulla Wadaskar <prafulla@marvell.com> 9 * 10 * SPDX-License-Identifier: GPL-2.0+ 11 */ 12 13 #ifndef _CONFIG_DNS325_H 14 #define _CONFIG_DNS325_H 15 16 /* 17 * Machine number definition 18 */ 19 #define MACH_TYPE_DNS325 3800 20 #define CONFIG_MACH_TYPE MACH_TYPE_DNS325 21 #define CONFIG_IDENT_STRING "\nD-Link DNS-325" 22 23 /* 24 * High Level Configuration Options (easy to change) 25 */ 26 #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ 27 #define CONFIG_KIRKWOOD /* SOC Family Name */ 28 #define CONFIG_KW88F6281 /* SOC Name */ 29 #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ 30 31 /* 32 * Commands configuration 33 */ 34 #define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ 35 #include <config_cmd_default.h> 36 #define CONFIG_CMD_DHCP 37 #define CONFIG_CMD_ENV 38 #define CONFIG_CMD_NAND 39 #define CONFIG_CMD_PING 40 #define CONFIG_CMD_USB 41 #define CONFIG_CMD_IDE 42 #define CONFIG_CMD_DATE 43 #define CONFIG_SYS_MVFS 44 45 #define CONFIG_NR_DRAM_BANKS 1 46 47 /* 48 * mv-common.h should be defined after CMD configs since it used them 49 * to enable certain macros 50 */ 51 #include "mv-common.h" 52 53 /* Remove or override few declarations from mv-common.h */ 54 #undef CONFIG_SYS_PROMPT 55 #define CONFIG_SYS_PROMPT "=> " 56 57 /* 58 * Ethernet Driver configuration 59 */ 60 #ifdef CONFIG_CMD_NET 61 #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ 62 #define CONFIG_NETCONSOLE 63 #endif 64 65 /* 66 * SATA Driver configuration 67 */ 68 #ifdef CONFIG_MVSATA_IDE 69 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET 70 #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET 71 #endif 72 73 /* 74 * RTC driver configuration 75 */ 76 #ifdef CONFIG_CMD_DATE 77 #define CONFIG_RTC_MV 78 #endif 79 80 /* 81 * Enable GPI0 support 82 */ 83 #define CONFIG_KIRKWOOD_GPIO 84 85 /* 86 * Use the HUSH parser 87 */ 88 #define CONFIG_SYS_HUSH_PARSER 89 90 /* 91 * Console configuration 92 */ 93 #define CONFIG_CONSOLE_MUX 94 #define CONFIG_SYS_CONSOLE_IS_IN_ENV 95 96 /* 97 * Enable device tree support 98 */ 99 #define CONFIG_OF_LIBFDT 100 101 /* 102 * Display cpu info at boot 103 */ 104 #define CONFIG_DISPLAY_CPUINFO 105 106 /* 107 * Environment variables configurations 108 */ 109 #ifdef CONFIG_CMD_NAND 110 #define CONFIG_ENV_IS_IN_NAND 111 #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128KB */ 112 #else 113 #define CONFIG_ENV_IS_NOWHERE 114 #endif 115 116 #define CONFIG_ENV_SIZE 0x20000 /* 128KB */ 117 #define CONFIG_ENV_ADDR 0xe0000 118 #define CONFIG_ENV_OFFSET 0xe0000 /* env starts here */ 119 120 /* 121 * Default environment variables 122 */ 123 #define MTDIDS_DEFAULT "nand0=orion_nand" 124 125 #define MTDPARTS_DEFAULT "mtdparts=orion_nand:" \ 126 "896k(u-boot),128k(u-boot-env),5m(kernel),-(rootfs)\0" 127 128 #define CONFIG_EXTRA_ENV_SETTINGS \ 129 "stdin=serial\0" \ 130 "stdout=serial\0" \ 131 "stderr=serial\0" \ 132 "loadaddr=0x800000\0" \ 133 "autoload=no\0" \ 134 "console=ttyS0,115200\0" \ 135 "mtdparts="MTDPARTS_DEFAULT \ 136 "optargs=\0" \ 137 "bootenv=uEnv.txt\0" \ 138 "importbootenv=echo Importing environment ...; " \ 139 "env import -t ${loadaddr} ${filesize}\0" \ 140 "loadbootenv=fatload usb 0 ${loadaddr} ${bootenv}\0" \ 141 "setbootargs=setenv bootargs console=${console} " \ 142 "${optargs} " \ 143 "${mtdparts} " \ 144 "root=${bootenvroot} " \ 145 "rootfstype=${bootenvrootfstype}\0" \ 146 "subbootcmd=run setbootargs; " \ 147 "if run bootenvloadimage; then " \ 148 "bootm ${loadaddr};" \ 149 "fi;\0" \ 150 "nandroot=ubi0:rootfs ubi.mtd=rootfs\0" \ 151 "nandrootfstype=ubifs\0" \ 152 "nandloadimage=nand read ${loadaddr} kernel\0" \ 153 "setnandbootenv=echo Booting from nand ...; " \ 154 "setenv bootenvroot ${nandroot}; " \ 155 "setenv bootenvrootfstype ${nandrootfstype}; " \ 156 "setenv bootenvloadimage ${nandloadimage}\0" 157 158 #define CONFIG_BOOTCOMMAND \ 159 "if test -n ${bootenv} && usb start; then " \ 160 "if run loadbootenv; then " \ 161 "echo Loaded environment ${bootenv} from usb;" \ 162 "run importbootenv;" \ 163 "fi;" \ 164 "if test -n ${bootenvcmd}; then " \ 165 "echo Running bootenvcmd ...;" \ 166 "run bootenvcmd;" \ 167 "fi;" \ 168 "fi;" \ 169 "run setnandbootenv subbootcmd;" 170 171 #endif /* _CONFIG_DNS325_H */ 172