blob: 8fb0135c97d41bc80c2756a35170c1cab685e2c3 [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
Michael Walledccfa462012-06-05 11:33:17 +000040
41#define CONFIG_SYS_NO_FLASH
42#define CONFIG_SYS_HUSH_PARSER
43#define CONFIG_SYS_CONSOLE_IS_IN_ENV
44#define CONFIG_SYS_CONSOLE_INFO_QUIET
45
46/*
47 * Enable u-boot API for standalone programs.
48 */
49#define CONFIG_API
50
51/*
52 * Commands configuration
53 */
Michael Walle22316a52015-02-08 20:06:07 +010054#define CONFIG_CMD_BOOTZ
Michael Walledccfa462012-06-05 11:33:17 +000055#define CONFIG_CMD_DHCP
Michael Walledccfa462012-06-05 11:33:17 +000056#define CONFIG_CMD_ENV
57#define CONFIG_CMD_EXT2
58#define CONFIG_CMD_FAT
59#define CONFIG_CMD_IDE
60#define CONFIG_CMD_PING
61#define CONFIG_CMD_PING
62#define CONFIG_CMD_SF
63#define CONFIG_CMD_SPI
64#define CONFIG_CMD_USB
Michael Walle35e6e292014-04-01 20:09:14 +020065#define CONFIG_CMD_FS_GENERIC
Michael Walledccfa462012-06-05 11:33:17 +000066
67#define CONFIG_DOS_PARTITION
68#define CONFIG_EFI_PARTITION
69
70/*
71 * mv-common.h should be defined after CMD configs since it used them
72 * to enable certain macros
73 */
74#include "mv-common.h"
75
Michael Walle22316a52015-02-08 20:06:07 +010076/* loading initramfs images without uimage header */
77#define CONFIG_SUPPORT_RAW_INITRD
78
Michael Walledccfa462012-06-05 11:33:17 +000079/* ST M25P40 */
Michael Walledccfa462012-06-05 11:33:17 +000080#undef CONFIG_ENV_SPI_MAX_HZ
81#define CONFIG_ENV_SPI_MAX_HZ 25000000
82#undef CONFIG_SF_DEFAULT_SPEED
83#define CONFIG_SF_DEFAULT_SPEED 25000000
84
85
Michael Walledccfa462012-06-05 11:33:17 +000086#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
87
88/*
89 * Environment variables configurations
90 */
91#ifdef CONFIG_SPI_FLASH
92#define CONFIG_SYS_MAX_FLASH_BANKS 1
93#define CONFIG_SYS_MAX_FLASH_SECT 8
94#define CONFIG_ENV_IS_IN_SPI_FLASH 1
95#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
96#else
97#define CONFIG_ENV_IS_NOWHERE
98#endif
99
100#define CONFIG_ENV_SIZE 0x10000 /* 64k */
101#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
102
103/*
104 * Default environment variables
105 */
106#define CONFIG_LOADADDR 0x00800000
107#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
108#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle35e6e292014-04-01 20:09:14 +0200109
110#if defined(CONFIG_LSXHL)
111#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
112#elif defined(CONFIG_LSCHLV2)
113#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
114#else
115#error "Unsupported board"
116#endif
117
Michael Walledccfa462012-06-05 11:33:17 +0000118#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle35e6e292014-04-01 20:09:14 +0200119 "bootsource=legacy\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000120 "hdpart=0:1\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200121 "kernel_addr=0x00800000\0" \
122 "ramdisk_addr=0x01000000\0" \
Michael Wallebe083382015-02-08 20:06:06 +0100123 "fdt_addr=0x00ff0000\0" \
Michael Walle35e6e292014-04-01 20:09:14 +0200124 "bootcmd_legacy=ide reset " \
Michael Walledaffcc52015-02-08 20:06:05 +0100125 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
126 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
127 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle22316a52015-02-08 20:06:07 +0100128 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
129 "&& tftpboot ${ramdisk_addr} initrd.img " \
130 "&& setenv ramdisk_len ${filesize} " \
Michael Walle35e6e292014-04-01 20:09:14 +0200131 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle22316a52015-02-08 20:06:07 +0100132 "&& bootz ${kernel_addr} " \
133 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000134 "bootcmd_hdd=ide reset " \
Michael Walle22316a52015-02-08 20:06:07 +0100135 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
136 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
137 "&& setenv ramdisk_len ${filesize} " \
138 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
139 "&& bootz ${kernel_addr} " \
140 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000141 "bootcmd_usb=usb start " \
Michael Walle22316a52015-02-08 20:06:07 +0100142 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
143 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
144 "&& setenv ramdisk_len ${filesize} " \
145 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
146 "&& bootz ${kernel_addr} " \
147 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000148 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
149 "eraseenv=sf probe 0 " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200150 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
151 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000152 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
153 "setenv autoload no " \
154 "&& bootp " \
Michael Walledc3ba8e2012-10-04 06:54:25 +0000155 "&& setenv ncip " \
Michael Walledccfa462012-06-05 11:33:17 +0000156 "&& setenv autoload ${autoload_old}; " \
157 "setenv autoload_old\0" \
158 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
159 "setenv ncip; setenv gatewayip; setenv ethact; " \
160 "setenv bootfile; setenv dnsip; " \
Michael Walle9f061452014-09-28 00:05:23 +0200161 "setenv bootsource legacy; run ser\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000162 "restore_env=run standard_env; saveenv; reset\0" \
163 "ser=setenv stdin serial; setenv stdout serial; " \
164 "setenv stderr serial\0" \
165 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
166 "stdin=serial\0" \
167 "stdout=serial\0" \
168 "stderr=serial\0"
169
170/*
171 * Ethernet Driver configuration
172 */
173#ifdef CONFIG_CMD_NET
174#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
175#define CONFIG_PHY_BASE_ADR 7
176#undef CONFIG_RESET_PHY_R
177#endif /* CONFIG_CMD_NET */
178
179#ifdef CONFIG_CMD_IDE
180#undef CONFIG_IDE_LED
181#undef CONFIG_SYS_IDE_MAXBUS
182#define CONFIG_SYS_IDE_MAXBUS 1
183#undef CONFIG_SYS_IDE_MAXDEVICE
184#define CONFIG_SYS_IDE_MAXDEVICE 1
185#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Wallef2f14da2014-04-01 20:09:13 +0200186#define CONFIG_SYS_64BIT_LBA
Michael Walledccfa462012-06-05 11:33:17 +0000187#endif
188
189#endif /* _CONFIG_LSXL_H */