1 /* 2 * Copyright (c) 2012 Michael Walle 3 * Michael Walle <michael@walle.cc> 4 * 5 * SPDX-License-Identifier: GPL-2.0+ 6 */ 7 8 #ifndef _CONFIG_LSXL_H 9 #define _CONFIG_LSXL_H 10 11 #define CONFIG_SYS_GENERIC_BOARD 12 13 /* 14 * Version number information 15 */ 16 #if defined(CONFIG_LSCHLV2) 17 #define CONFIG_IDENT_STRING " LS-CHLv2" 18 #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg 19 #define CONFIG_MACH_TYPE 3006 20 #define CONFIG_SYS_TCLK 166666667 /* 166 MHz */ 21 #elif defined(CONFIG_LSXHL) 22 #define CONFIG_IDENT_STRING " LS-XHL" 23 #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg 24 #define CONFIG_MACH_TYPE 2663 25 /* CONFIG_SYS_TCLK is 200000000 by default */ 26 #else 27 #error "unknown board" 28 #endif 29 30 /* 31 * General configuration options 32 */ 33 #define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */ 34 #define CONFIG_KW88F6281 /* SOC Name */ 35 36 #define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ 37 #define CONFIG_MISC_INIT_R 38 #define CONFIG_SHOW_BOOT_PROGRESS 39 40 #define CONFIG_RANDOM_MACADDR 41 #define CONFIG_LIB_RAND 42 #define CONFIG_KIRKWOOD_GPIO 43 #define CONFIG_OF_LIBFDT 44 45 #define CONFIG_SYS_NO_FLASH 46 #define CONFIG_SYS_HUSH_PARSER 47 #define CONFIG_SYS_CONSOLE_IS_IN_ENV 48 #define CONFIG_SYS_CONSOLE_INFO_QUIET 49 50 /* 51 * Enable u-boot API for standalone programs. 52 */ 53 #define CONFIG_API 54 55 /* 56 * Commands configuration 57 */ 58 #include <config_cmd_default.h> 59 #define CONFIG_CMD_BOOTZ 60 #define CONFIG_CMD_DHCP 61 #define CONFIG_CMD_ELF 62 #define CONFIG_CMD_ENV 63 #define CONFIG_CMD_EXT2 64 #define CONFIG_CMD_FAT 65 #define CONFIG_CMD_IDE 66 #define CONFIG_CMD_PING 67 #define CONFIG_CMD_PING 68 #define CONFIG_CMD_SF 69 #define CONFIG_CMD_SPI 70 #define CONFIG_CMD_USB 71 #define CONFIG_CMD_FS_GENERIC 72 73 #define CONFIG_DOS_PARTITION 74 #define CONFIG_EFI_PARTITION 75 76 /* 77 * mv-common.h should be defined after CMD configs since it used them 78 * to enable certain macros 79 */ 80 #include "mv-common.h" 81 82 /* loading initramfs images without uimage header */ 83 #define CONFIG_SUPPORT_RAW_INITRD 84 85 /* ST M25P40 */ 86 #undef CONFIG_SPI_FLASH_MACRONIX 87 #define CONFIG_SPI_FLASH_STMICRO 88 #undef CONFIG_ENV_SPI_MAX_HZ 89 #define CONFIG_ENV_SPI_MAX_HZ 25000000 90 #undef CONFIG_SF_DEFAULT_SPEED 91 #define CONFIG_SF_DEFAULT_SPEED 25000000 92 93 94 #undef CONFIG_SYS_PROMPT 95 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 96 97 /* 98 * Environment variables configurations 99 */ 100 #ifdef CONFIG_SPI_FLASH 101 #define CONFIG_SYS_MAX_FLASH_BANKS 1 102 #define CONFIG_SYS_MAX_FLASH_SECT 8 103 #define CONFIG_ENV_IS_IN_SPI_FLASH 1 104 #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */ 105 #else 106 #define CONFIG_ENV_IS_NOWHERE 107 #endif 108 109 #define CONFIG_ENV_SIZE 0x10000 /* 64k */ 110 #define CONFIG_ENV_OFFSET 0x70000 /* env starts here */ 111 112 /* 113 * Default environment variables 114 */ 115 #define CONFIG_LOADADDR 0x00800000 116 #define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}" 117 #define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2" 118 119 #if defined(CONFIG_LSXHL) 120 #define CONFIG_FDTFILE "kirkwood-lsxhl.dtb" 121 #elif defined(CONFIG_LSCHLV2) 122 #define CONFIG_FDTFILE "kirkwood-lschlv2.dtb" 123 #else 124 #error "Unsupported board" 125 #endif 126 127 #define CONFIG_EXTRA_ENV_SETTINGS \ 128 "bootsource=legacy\0" \ 129 "hdpart=0:1\0" \ 130 "kernel_addr=0x00800000\0" \ 131 "ramdisk_addr=0x01000000\0" \ 132 "fdt_addr=0x00ff0000\0" \ 133 "bootcmd_legacy=ide reset " \ 134 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \ 135 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\ 136 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \ 137 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \ 138 "&& tftpboot ${ramdisk_addr} initrd.img " \ 139 "&& setenv ramdisk_len ${filesize} " \ 140 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \ 141 "&& bootz ${kernel_addr} " \ 142 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \ 143 "bootcmd_hdd=ide reset " \ 144 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \ 145 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \ 146 "&& setenv ramdisk_len ${filesize} " \ 147 "&& load ide ${hdpart} ${fdt_addr} /dtb " \ 148 "&& bootz ${kernel_addr} " \ 149 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \ 150 "bootcmd_usb=usb start " \ 151 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \ 152 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \ 153 "&& setenv ramdisk_len ${filesize} " \ 154 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \ 155 "&& bootz ${kernel_addr} " \ 156 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \ 157 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \ 158 "eraseenv=sf probe 0 " \ 159 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \ 160 " +" __stringify(CONFIG_ENV_SIZE) "\0" \ 161 "config_nc_dhcp=setenv autoload_old ${autoload}; " \ 162 "setenv autoload no " \ 163 "&& bootp " \ 164 "&& setenv ncip " \ 165 "&& setenv autoload ${autoload_old}; " \ 166 "setenv autoload_old\0" \ 167 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \ 168 "setenv ncip; setenv gatewayip; setenv ethact; " \ 169 "setenv bootfile; setenv dnsip; " \ 170 "setenv bootsource legacy; run ser\0" \ 171 "restore_env=run standard_env; saveenv; reset\0" \ 172 "ser=setenv stdin serial; setenv stdout serial; " \ 173 "setenv stderr serial\0" \ 174 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \ 175 "stdin=serial\0" \ 176 "stdout=serial\0" \ 177 "stderr=serial\0" 178 179 /* 180 * Ethernet Driver configuration 181 */ 182 #ifdef CONFIG_CMD_NET 183 #define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */ 184 #define CONFIG_PHY_BASE_ADR 7 185 #undef CONFIG_RESET_PHY_R 186 #endif /* CONFIG_CMD_NET */ 187 188 #ifdef CONFIG_CMD_IDE 189 #undef CONFIG_IDE_LED 190 #undef CONFIG_SYS_IDE_MAXBUS 191 #define CONFIG_SYS_IDE_MAXBUS 1 192 #undef CONFIG_SYS_IDE_MAXDEVICE 193 #define CONFIG_SYS_IDE_MAXDEVICE 1 194 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET 195 #define CONFIG_SYS_64BIT_LBA 196 #endif 197 198 #endif /* _CONFIG_LSXL_H */ 199