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