blob: 19ee5bc2f85cf22c9a049cc7b73adc3420d0e759 [file] [log] [blame]
Michael Walledccfa462012-06-05 11:33:17 +00001/*
2 * Copyright (c) 2012 Michael Walle
3 * Michael Walle <michael@walle.cc>
4 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Michael Walledccfa462012-06-05 11:33:17 +00006 */
7
8#ifndef _CONFIG_LSXL_H
9#define _CONFIG_LSXL_H
10
Michael Walle9f061452014-09-28 00:05:23 +020011
Michael Walledccfa462012-06-05 11:33:17 +000012/*
13 * Version number information
14 */
15#if defined(CONFIG_LSCHLV2)
16#define CONFIG_IDENT_STRING " LS-CHLv2"
Masahiro Yamadad6acdf22014-03-11 11:05:17 +090017#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg
Michael Walledccfa462012-06-05 11:33:17 +000018#define CONFIG_MACH_TYPE 3006
19#define CONFIG_SYS_TCLK 166666667 /* 166 MHz */
20#elif defined(CONFIG_LSXHL)
21#define CONFIG_IDENT_STRING " LS-XHL"
Masahiro Yamadad6acdf22014-03-11 11:05:17 +090022#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg
Michael Walledccfa462012-06-05 11:33:17 +000023#define CONFIG_MACH_TYPE 2663
24/* CONFIG_SYS_TCLK is 200000000 by default */
25#else
26#error "unknown board"
27#endif
28
29/*
30 * General configuration options
31 */
32#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */
Michael Walledccfa462012-06-05 11:33:17 +000033#define CONFIG_KW88F6281 /* SOC Name */
34
35#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
36#define CONFIG_MISC_INIT_R
37#define CONFIG_SHOW_BOOT_PROGRESS
38
Michael Walledccfa462012-06-05 11:33:17 +000039#define CONFIG_KIRKWOOD_GPIO
40#define CONFIG_OF_LIBFDT
41
42#define CONFIG_SYS_NO_FLASH
43#define CONFIG_SYS_HUSH_PARSER
44#define CONFIG_SYS_CONSOLE_IS_IN_ENV
45#define CONFIG_SYS_CONSOLE_INFO_QUIET
46
47/*
48 * Enable u-boot API for standalone programs.
49 */
50#define CONFIG_API
51
52/*
53 * Commands configuration
54 */
Michael Walle22316a52015-02-08 20:06:07 +010055#define CONFIG_CMD_BOOTZ
Michael Walledccfa462012-06-05 11:33:17 +000056#define CONFIG_CMD_DHCP
Michael Walledccfa462012-06-05 11:33:17 +000057#define CONFIG_CMD_ENV
58#define CONFIG_CMD_EXT2
59#define CONFIG_CMD_FAT
60#define CONFIG_CMD_IDE
61#define CONFIG_CMD_PING
62#define CONFIG_CMD_PING
63#define CONFIG_CMD_SF
64#define CONFIG_CMD_SPI
65#define CONFIG_CMD_USB
Michael Walle35e6e292014-04-01 20:09:14 +020066#define CONFIG_CMD_FS_GENERIC
Michael Walledccfa462012-06-05 11:33:17 +000067
68#define CONFIG_DOS_PARTITION
69#define CONFIG_EFI_PARTITION
70
71/*
72 * mv-common.h should be defined after CMD configs since it used them
73 * to enable certain macros
74 */
75#include "mv-common.h"
76
Michael Walle22316a52015-02-08 20:06:07 +010077/* loading initramfs images without uimage header */
78#define CONFIG_SUPPORT_RAW_INITRD
79
Michael Walledccfa462012-06-05 11:33:17 +000080/* ST M25P40 */
Michael Walledccfa462012-06-05 11:33:17 +000081#undef CONFIG_ENV_SPI_MAX_HZ
82#define CONFIG_ENV_SPI_MAX_HZ 25000000
83#undef CONFIG_SF_DEFAULT_SPEED
84#define CONFIG_SF_DEFAULT_SPEED 25000000
85
86
Michael Walledccfa462012-06-05 11:33:17 +000087#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
88
89/*
90 * Environment variables configurations
91 */
92#ifdef CONFIG_SPI_FLASH
93#define CONFIG_SYS_MAX_FLASH_BANKS 1
94#define CONFIG_SYS_MAX_FLASH_SECT 8
95#define CONFIG_ENV_IS_IN_SPI_FLASH 1
96#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
97#else
98#define CONFIG_ENV_IS_NOWHERE
99#endif
100
101#define CONFIG_ENV_SIZE 0x10000 /* 64k */
102#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
103
104/*
105 * Default environment variables
106 */
107#define CONFIG_LOADADDR 0x00800000
108#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
109#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle35e6e292014-04-01 20:09:14 +0200110
111#if defined(CONFIG_LSXHL)
112#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
113#elif defined(CONFIG_LSCHLV2)
114#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
115#else
116#error "Unsupported board"
117#endif
118
Michael Walledccfa462012-06-05 11:33:17 +0000119#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle35e6e292014-04-01 20:09:14 +0200120 "bootsource=legacy\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000121 "hdpart=0:1\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200122 "kernel_addr=0x00800000\0" \
123 "ramdisk_addr=0x01000000\0" \
Michael Wallebe083382015-02-08 20:06:06 +0100124 "fdt_addr=0x00ff0000\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200125 "bootcmd_legacy=ide reset " \
Michael Walledaffcc52015-02-08 20:06:05 +0100126 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
127 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
128 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle22316a52015-02-08 20:06:07 +0100129 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
130 "&& tftpboot ${ramdisk_addr} initrd.img " \
131 "&& setenv ramdisk_len ${filesize} " \
Michael Walle35e6e292014-04-01 20:09:14 +0200132 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle22316a52015-02-08 20:06:07 +0100133 "&& bootz ${kernel_addr} " \
134 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000135 "bootcmd_hdd=ide reset " \
Michael Walle22316a52015-02-08 20:06:07 +0100136 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
137 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
138 "&& setenv ramdisk_len ${filesize} " \
139 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
140 "&& bootz ${kernel_addr} " \
141 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000142 "bootcmd_usb=usb start " \
Michael Walle22316a52015-02-08 20:06:07 +0100143 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
144 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
145 "&& setenv ramdisk_len ${filesize} " \
146 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
147 "&& bootz ${kernel_addr} " \
148 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000149 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
150 "eraseenv=sf probe 0 " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200151 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
152 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000153 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
154 "setenv autoload no " \
155 "&& bootp " \
Michael Walledc3ba8e2012-10-04 06:54:25 +0000156 "&& setenv ncip " \
Michael Walledccfa462012-06-05 11:33:17 +0000157 "&& setenv autoload ${autoload_old}; " \
158 "setenv autoload_old\0" \
159 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
160 "setenv ncip; setenv gatewayip; setenv ethact; " \
161 "setenv bootfile; setenv dnsip; " \
Michael Walle9f061452014-09-28 00:05:23 +0200162 "setenv bootsource legacy; run ser\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000163 "restore_env=run standard_env; saveenv; reset\0" \
164 "ser=setenv stdin serial; setenv stdout serial; " \
165 "setenv stderr serial\0" \
166 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
167 "stdin=serial\0" \
168 "stdout=serial\0" \
169 "stderr=serial\0"
170
171/*
172 * Ethernet Driver configuration
173 */
174#ifdef CONFIG_CMD_NET
175#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
176#define CONFIG_PHY_BASE_ADR 7
177#undef CONFIG_RESET_PHY_R
178#endif /* CONFIG_CMD_NET */
179
180#ifdef CONFIG_CMD_IDE
181#undef CONFIG_IDE_LED
182#undef CONFIG_SYS_IDE_MAXBUS
183#define CONFIG_SYS_IDE_MAXBUS 1
184#undef CONFIG_SYS_IDE_MAXDEVICE
185#define CONFIG_SYS_IDE_MAXDEVICE 1
186#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Wallef2f14da2014-04-01 20:09:13 +0200187#define CONFIG_SYS_64BIT_LBA
Michael Walledccfa462012-06-05 11:33:17 +0000188#endif
189
190#endif /* _CONFIG_LSXL_H */