1 /* 2 * Copyright (C) 2011 3 * Stefan Herbrechtsmeier <stefan@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_KW88F6281 /* SOC Name */ 28 #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ 29 30 /* 31 * Commands configuration 32 */ 33 #define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ 34 #define CONFIG_CMD_ENV 35 #define CONFIG_CMD_NAND 36 #define CONFIG_CMD_IDE 37 #define CONFIG_CMD_DATE 38 #define CONFIG_SYS_MVFS 39 40 #define CONFIG_NR_DRAM_BANKS 1 41 42 /* 43 * mv-common.h should be defined after CMD configs since it used them 44 * to enable certain macros 45 */ 46 #include "mv-common.h" 47 48 /* Remove or override few declarations from mv-common.h */ 49 50 /* 51 * Ethernet Driver configuration 52 */ 53 #ifdef CONFIG_CMD_NET 54 #define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */ 55 #define CONFIG_NETCONSOLE 56 #endif 57 58 /* 59 * SATA Driver configuration 60 */ 61 #ifdef CONFIG_MVSATA_IDE 62 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET 63 #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET 64 #endif 65 66 /* 67 * RTC driver configuration 68 */ 69 #ifdef CONFIG_CMD_DATE 70 #define CONFIG_RTC_MV 71 #endif 72 73 /* 74 * Enable GPI0 support 75 */ 76 #define CONFIG_KIRKWOOD_GPIO 77 78 /* 79 * Console configuration 80 */ 81 #define CONFIG_CONSOLE_MUX 82 #define CONFIG_SYS_CONSOLE_IS_IN_ENV 83 84 /* 85 * Display cpu info at boot 86 */ 87 #define CONFIG_DISPLAY_CPUINFO 88 89 /* 90 * Environment variables configurations 91 */ 92 #ifdef CONFIG_CMD_NAND 93 #define CONFIG_ENV_IS_IN_NAND 94 #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128KB */ 95 #else 96 #define CONFIG_ENV_IS_NOWHERE 97 #endif 98 99 #define CONFIG_ENV_SIZE 0x20000 /* 128KB */ 100 #define CONFIG_ENV_ADDR 0xe0000 101 #define CONFIG_ENV_OFFSET 0xe0000 /* env starts here */ 102 103 /* 104 * Default environment variables 105 */ 106 #define MTDIDS_DEFAULT "nand0=orion_nand" 107 108 #define MTDPARTS_DEFAULT "mtdparts=orion_nand:" \ 109 "896k(u-boot),128k(u-boot-env),5m(kernel),-(rootfs)\0" 110 111 #define CONFIG_EXTRA_ENV_SETTINGS \ 112 "stdin=serial\0" \ 113 "stdout=serial\0" \ 114 "stderr=serial\0" \ 115 "loadaddr=0x800000\0" \ 116 "autoload=no\0" \ 117 "console=ttyS0,115200\0" \ 118 "mtdparts="MTDPARTS_DEFAULT \ 119 "optargs=\0" \ 120 "bootenv=uEnv.txt\0" \ 121 "importbootenv=echo Importing environment ...; " \ 122 "env import -t ${loadaddr} ${filesize}\0" \ 123 "loadbootenv=fatload usb 0 ${loadaddr} ${bootenv}\0" \ 124 "setbootargs=setenv bootargs console=${console} " \ 125 "${optargs} " \ 126 "${mtdparts} " \ 127 "root=${bootenvroot} " \ 128 "rootfstype=${bootenvrootfstype}\0" \ 129 "subbootcmd=run setbootargs; " \ 130 "if run bootenvloadimage; then " \ 131 "bootm ${loadaddr};" \ 132 "fi;\0" \ 133 "nandroot=ubi0:rootfs ubi.mtd=rootfs\0" \ 134 "nandrootfstype=ubifs\0" \ 135 "nandloadimage=nand read ${loadaddr} kernel\0" \ 136 "setnandbootenv=echo Booting from nand ...; " \ 137 "setenv bootenvroot ${nandroot}; " \ 138 "setenv bootenvrootfstype ${nandrootfstype}; " \ 139 "setenv bootenvloadimage ${nandloadimage}\0" 140 141 #define CONFIG_BOOTCOMMAND \ 142 "if test -n ${bootenv} && usb start; then " \ 143 "if run loadbootenv; then " \ 144 "echo Loaded environment ${bootenv} from usb;" \ 145 "run importbootenv;" \ 146 "fi;" \ 147 "if test -n ${bootenvcmd}; then " \ 148 "echo Running bootenvcmd ...;" \ 149 "run bootenvcmd;" \ 150 "fi;" \ 151 "fi;" \ 152 "run setnandbootenv subbootcmd;" 153 154 #endif /* _CONFIG_DNS325_H */ 155