blob: ddbf5cec67f14bb09e9a4f2b5ad47d10342228c1 [file] [log] [blame]
Michael Wallef214a202012-06-05 11:33:17 +00001/*
2 * Copyright (c) 2012 Michael Walle
3 * Michael Walle <michael@walle.cc>
4 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Michael Wallef214a202012-06-05 11:33:17 +00006 */
7
8#ifndef _CONFIG_LSXL_H
9#define _CONFIG_LSXL_H
10
Michael Walle45e60c22014-09-28 00:05:23 +020011#define CONFIG_SYS_GENERIC_BOARD
12
Michael Wallef214a202012-06-05 11:33:17 +000013/*
14 * Version number information
15 */
16#if defined(CONFIG_LSCHLV2)
17#define CONFIG_IDENT_STRING " LS-CHLv2"
Masahiro Yamada4ab3fc52014-03-11 11:05:17 +090018#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg
Michael Wallef214a202012-06-05 11:33:17 +000019#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"
Masahiro Yamada4ab3fc52014-03-11 11:05:17 +090023#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg
Michael Wallef214a202012-06-05 11:33:17 +000024#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 */
Michael Wallef214a202012-06-05 11:33:17 +000034#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
Michael Wallef214a202012-06-05 11:33:17 +000040#define CONFIG_KIRKWOOD_GPIO
41#define CONFIG_OF_LIBFDT
42
43#define CONFIG_SYS_NO_FLASH
44#define CONFIG_SYS_HUSH_PARSER
45#define CONFIG_SYS_CONSOLE_IS_IN_ENV
46#define CONFIG_SYS_CONSOLE_INFO_QUIET
47
48/*
49 * Enable u-boot API for standalone programs.
50 */
51#define CONFIG_API
52
53/*
54 * Commands configuration
55 */
Michael Walle4fe49d72015-02-08 20:06:07 +010056#define CONFIG_CMD_BOOTZ
Michael Wallef214a202012-06-05 11:33:17 +000057#define CONFIG_CMD_DHCP
58#define CONFIG_CMD_ELF
59#define CONFIG_CMD_ENV
60#define CONFIG_CMD_EXT2
61#define CONFIG_CMD_FAT
62#define CONFIG_CMD_IDE
63#define CONFIG_CMD_PING
64#define CONFIG_CMD_PING
65#define CONFIG_CMD_SF
66#define CONFIG_CMD_SPI
67#define CONFIG_CMD_USB
Michael Walle848fe232014-04-01 20:09:14 +020068#define CONFIG_CMD_FS_GENERIC
Michael Wallef214a202012-06-05 11:33:17 +000069
70#define CONFIG_DOS_PARTITION
71#define CONFIG_EFI_PARTITION
72
73/*
74 * mv-common.h should be defined after CMD configs since it used them
75 * to enable certain macros
76 */
77#include "mv-common.h"
78
Michael Walle4fe49d72015-02-08 20:06:07 +010079/* loading initramfs images without uimage header */
80#define CONFIG_SUPPORT_RAW_INITRD
81
Michael Wallef214a202012-06-05 11:33:17 +000082/* ST M25P40 */
83#undef CONFIG_SPI_FLASH_MACRONIX
84#define CONFIG_SPI_FLASH_STMICRO
85#undef CONFIG_ENV_SPI_MAX_HZ
86#define CONFIG_ENV_SPI_MAX_HZ 25000000
87#undef CONFIG_SF_DEFAULT_SPEED
88#define CONFIG_SF_DEFAULT_SPEED 25000000
89
90
91#undef CONFIG_SYS_PROMPT
Michael Wallef214a202012-06-05 11:33:17 +000092#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
93
94/*
95 * Environment variables configurations
96 */
97#ifdef CONFIG_SPI_FLASH
98#define CONFIG_SYS_MAX_FLASH_BANKS 1
99#define CONFIG_SYS_MAX_FLASH_SECT 8
100#define CONFIG_ENV_IS_IN_SPI_FLASH 1
101#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
102#else
103#define CONFIG_ENV_IS_NOWHERE
104#endif
105
106#define CONFIG_ENV_SIZE 0x10000 /* 64k */
107#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
108
109/*
110 * Default environment variables
111 */
112#define CONFIG_LOADADDR 0x00800000
113#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
114#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle848fe232014-04-01 20:09:14 +0200115
116#if defined(CONFIG_LSXHL)
117#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
118#elif defined(CONFIG_LSCHLV2)
119#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
120#else
121#error "Unsupported board"
122#endif
123
Michael Wallef214a202012-06-05 11:33:17 +0000124#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle848fe232014-04-01 20:09:14 +0200125 "bootsource=legacy\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000126 "hdpart=0:1\0" \
Michael Walle848fe232014-04-01 20:09:14 +0200127 "kernel_addr=0x00800000\0" \
128 "ramdisk_addr=0x01000000\0" \
Michael Walle145df6f2015-02-08 20:06:06 +0100129 "fdt_addr=0x00ff0000\0" \
Michael Walle848fe232014-04-01 20:09:14 +0200130 "bootcmd_legacy=ide reset " \
Michael Wallebc2ad9f02015-02-08 20:06:05 +0100131 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
132 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
133 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle4fe49d72015-02-08 20:06:07 +0100134 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
135 "&& tftpboot ${ramdisk_addr} initrd.img " \
136 "&& setenv ramdisk_len ${filesize} " \
Michael Walle848fe232014-04-01 20:09:14 +0200137 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle4fe49d72015-02-08 20:06:07 +0100138 "&& bootz ${kernel_addr} " \
139 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000140 "bootcmd_hdd=ide reset " \
Michael Walle4fe49d72015-02-08 20:06:07 +0100141 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
142 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
143 "&& setenv ramdisk_len ${filesize} " \
144 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
145 "&& bootz ${kernel_addr} " \
146 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000147 "bootcmd_usb=usb start " \
Michael Walle4fe49d72015-02-08 20:06:07 +0100148 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
149 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
150 "&& setenv ramdisk_len ${filesize} " \
151 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
152 "&& bootz ${kernel_addr} " \
153 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000154 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
155 "eraseenv=sf probe 0 " \
Marek Vasut5368c552012-09-23 17:41:24 +0200156 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
157 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000158 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
159 "setenv autoload no " \
160 "&& bootp " \
Michael Walle23c99462012-10-04 06:54:25 +0000161 "&& setenv ncip " \
Michael Wallef214a202012-06-05 11:33:17 +0000162 "&& setenv autoload ${autoload_old}; " \
163 "setenv autoload_old\0" \
164 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
165 "setenv ncip; setenv gatewayip; setenv ethact; " \
166 "setenv bootfile; setenv dnsip; " \
Michael Walle45e60c22014-09-28 00:05:23 +0200167 "setenv bootsource legacy; run ser\0" \
Michael Wallef214a202012-06-05 11:33:17 +0000168 "restore_env=run standard_env; saveenv; reset\0" \
169 "ser=setenv stdin serial; setenv stdout serial; " \
170 "setenv stderr serial\0" \
171 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
172 "stdin=serial\0" \
173 "stdout=serial\0" \
174 "stderr=serial\0"
175
176/*
177 * Ethernet Driver configuration
178 */
179#ifdef CONFIG_CMD_NET
180#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
181#define CONFIG_PHY_BASE_ADR 7
182#undef CONFIG_RESET_PHY_R
183#endif /* CONFIG_CMD_NET */
184
185#ifdef CONFIG_CMD_IDE
186#undef CONFIG_IDE_LED
187#undef CONFIG_SYS_IDE_MAXBUS
188#define CONFIG_SYS_IDE_MAXBUS 1
189#undef CONFIG_SYS_IDE_MAXDEVICE
190#define CONFIG_SYS_IDE_MAXDEVICE 1
191#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Walle9e5f0602014-04-01 20:09:13 +0200192#define CONFIG_SYS_64BIT_LBA
Michael Wallef214a202012-06-05 11:33:17 +0000193#endif
194
195#endif /* _CONFIG_LSXL_H */