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