blob: 4194a0ff8bbc032954fe74c529b05d5c6adc7dba [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 */
81#undef CONFIG_SPI_FLASH_MACRONIX
82#define CONFIG_SPI_FLASH_STMICRO
83#undef CONFIG_ENV_SPI_MAX_HZ
84#define CONFIG_ENV_SPI_MAX_HZ 25000000
85#undef CONFIG_SF_DEFAULT_SPEED
86#define CONFIG_SF_DEFAULT_SPEED 25000000
87
88
Michael Walledccfa462012-06-05 11:33:17 +000089#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
90
91/*
92 * Environment variables configurations
93 */
94#ifdef CONFIG_SPI_FLASH
95#define CONFIG_SYS_MAX_FLASH_BANKS 1
96#define CONFIG_SYS_MAX_FLASH_SECT 8
97#define CONFIG_ENV_IS_IN_SPI_FLASH 1
98#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
99#else
100#define CONFIG_ENV_IS_NOWHERE
101#endif
102
103#define CONFIG_ENV_SIZE 0x10000 /* 64k */
104#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
105
106/*
107 * Default environment variables
108 */
109#define CONFIG_LOADADDR 0x00800000
110#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
111#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle35e6e292014-04-01 20:09:14 +0200112
113#if defined(CONFIG_LSXHL)
114#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
115#elif defined(CONFIG_LSCHLV2)
116#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
117#else
118#error "Unsupported board"
119#endif
120
Michael Walledccfa462012-06-05 11:33:17 +0000121#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle35e6e292014-04-01 20:09:14 +0200122 "bootsource=legacy\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000123 "hdpart=0:1\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200124 "kernel_addr=0x00800000\0" \
125 "ramdisk_addr=0x01000000\0" \
Michael Wallebe083382015-02-08 20:06:06 +0100126 "fdt_addr=0x00ff0000\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200127 "bootcmd_legacy=ide reset " \
Michael Walledaffcc52015-02-08 20:06:05 +0100128 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
129 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
130 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle22316a52015-02-08 20:06:07 +0100131 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
132 "&& tftpboot ${ramdisk_addr} initrd.img " \
133 "&& setenv ramdisk_len ${filesize} " \
Michael Walle35e6e292014-04-01 20:09:14 +0200134 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle22316a52015-02-08 20:06:07 +0100135 "&& bootz ${kernel_addr} " \
136 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000137 "bootcmd_hdd=ide reset " \
Michael Walle22316a52015-02-08 20:06:07 +0100138 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
139 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
140 "&& setenv ramdisk_len ${filesize} " \
141 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
142 "&& bootz ${kernel_addr} " \
143 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000144 "bootcmd_usb=usb start " \
Michael Walle22316a52015-02-08 20:06:07 +0100145 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
146 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
147 "&& setenv ramdisk_len ${filesize} " \
148 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
149 "&& bootz ${kernel_addr} " \
150 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000151 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
152 "eraseenv=sf probe 0 " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200153 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
154 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000155 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
156 "setenv autoload no " \
157 "&& bootp " \
Michael Walledc3ba8e2012-10-04 06:54:25 +0000158 "&& setenv ncip " \
Michael Walledccfa462012-06-05 11:33:17 +0000159 "&& setenv autoload ${autoload_old}; " \
160 "setenv autoload_old\0" \
161 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
162 "setenv ncip; setenv gatewayip; setenv ethact; " \
163 "setenv bootfile; setenv dnsip; " \
Michael Walle9f061452014-09-28 00:05:23 +0200164 "setenv bootsource legacy; run ser\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000165 "restore_env=run standard_env; saveenv; reset\0" \
166 "ser=setenv stdin serial; setenv stdout serial; " \
167 "setenv stderr serial\0" \
168 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
169 "stdin=serial\0" \
170 "stdout=serial\0" \
171 "stderr=serial\0"
172
173/*
174 * Ethernet Driver configuration
175 */
176#ifdef CONFIG_CMD_NET
177#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
178#define CONFIG_PHY_BASE_ADR 7
179#undef CONFIG_RESET_PHY_R
180#endif /* CONFIG_CMD_NET */
181
182#ifdef CONFIG_CMD_IDE
183#undef CONFIG_IDE_LED
184#undef CONFIG_SYS_IDE_MAXBUS
185#define CONFIG_SYS_IDE_MAXBUS 1
186#undef CONFIG_SYS_IDE_MAXDEVICE
187#define CONFIG_SYS_IDE_MAXDEVICE 1
188#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Wallef2f14da2014-04-01 20:09:13 +0200189#define CONFIG_SYS_64BIT_LBA
Michael Walledccfa462012-06-05 11:33:17 +0000190#endif
191
192#endif /* _CONFIG_LSXL_H */