blob: ce6d7c99985662f2c09139d84aac125350099ea7 [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
11/*
12 * Version number information
13 */
14#if defined(CONFIG_LSCHLV2)
Masahiro Yamadad6acdf22014-03-11 11:05:17 +090015#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg
Michael Walledccfa462012-06-05 11:33:17 +000016#define CONFIG_MACH_TYPE 3006
17#define CONFIG_SYS_TCLK 166666667 /* 166 MHz */
18#elif defined(CONFIG_LSXHL)
Masahiro Yamadad6acdf22014-03-11 11:05:17 +090019#define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg
Michael Walledccfa462012-06-05 11:33:17 +000020#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 */
Michael Walledccfa462012-06-05 11:33:17 +000030#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
Michael Walledccfa462012-06-05 11:33:17 +000036#define CONFIG_KIRKWOOD_GPIO
Michael Walledccfa462012-06-05 11:33:17 +000037
Michael Walledccfa462012-06-05 11:33:17 +000038/*
Michael Walledccfa462012-06-05 11:33:17 +000039 * Commands configuration
40 */
Michael Walledccfa462012-06-05 11:33:17 +000041#define CONFIG_CMD_ENV
Michael Walledccfa462012-06-05 11:33:17 +000042#define CONFIG_CMD_IDE
Michael Walledccfa462012-06-05 11:33:17 +000043
Michael Walledccfa462012-06-05 11:33:17 +000044/*
45 * mv-common.h should be defined after CMD configs since it used them
46 * to enable certain macros
47 */
48#include "mv-common.h"
49
Michael Walle22316a52015-02-08 20:06:07 +010050/* loading initramfs images without uimage header */
51#define CONFIG_SUPPORT_RAW_INITRD
52
Michael Walledccfa462012-06-05 11:33:17 +000053/* ST M25P40 */
Michael Walledccfa462012-06-05 11:33:17 +000054#undef CONFIG_ENV_SPI_MAX_HZ
55#define CONFIG_ENV_SPI_MAX_HZ 25000000
56#undef CONFIG_SF_DEFAULT_SPEED
57#define CONFIG_SF_DEFAULT_SPEED 25000000
58
Michael Walledccfa462012-06-05 11:33:17 +000059/*
60 * Environment variables configurations
61 */
62#ifdef CONFIG_SPI_FLASH
63#define CONFIG_SYS_MAX_FLASH_BANKS 1
64#define CONFIG_SYS_MAX_FLASH_SECT 8
65#define CONFIG_ENV_IS_IN_SPI_FLASH 1
66#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
67#else
68#define CONFIG_ENV_IS_NOWHERE
69#endif
70
71#define CONFIG_ENV_SIZE 0x10000 /* 64k */
72#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
73
74/*
75 * Default environment variables
76 */
77#define CONFIG_LOADADDR 0x00800000
78#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
79#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle35e6e292014-04-01 20:09:14 +020080
81#if defined(CONFIG_LSXHL)
82#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
83#elif defined(CONFIG_LSCHLV2)
84#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
85#else
86#error "Unsupported board"
87#endif
88
Michael Walledccfa462012-06-05 11:33:17 +000089#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle35e6e292014-04-01 20:09:14 +020090 "bootsource=legacy\0" \
Michael Walledccfa462012-06-05 11:33:17 +000091 "hdpart=0:1\0" \
Michael Walle35e6e292014-04-01 20:09:14 +020092 "kernel_addr=0x00800000\0" \
93 "ramdisk_addr=0x01000000\0" \
Michael Wallebe083382015-02-08 20:06:06 +010094 "fdt_addr=0x00ff0000\0" \
Michael Walle35e6e292014-04-01 20:09:14 +020095 "bootcmd_legacy=ide reset " \
Michael Walledaffcc52015-02-08 20:06:05 +010096 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
97 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
98 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle22316a52015-02-08 20:06:07 +010099 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
100 "&& tftpboot ${ramdisk_addr} initrd.img " \
101 "&& setenv ramdisk_len ${filesize} " \
Michael Walle35e6e292014-04-01 20:09:14 +0200102 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle22316a52015-02-08 20:06:07 +0100103 "&& bootz ${kernel_addr} " \
104 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000105 "bootcmd_hdd=ide reset " \
Michael Walle22316a52015-02-08 20:06:07 +0100106 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
107 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
108 "&& setenv ramdisk_len ${filesize} " \
109 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
110 "&& bootz ${kernel_addr} " \
111 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000112 "bootcmd_usb=usb start " \
Michael Walle22316a52015-02-08 20:06:07 +0100113 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
114 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
115 "&& setenv ramdisk_len ${filesize} " \
116 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
117 "&& bootz ${kernel_addr} " \
118 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000119 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
120 "eraseenv=sf probe 0 " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200121 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
122 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000123 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
124 "setenv autoload no " \
125 "&& bootp " \
Michael Walledc3ba8e2012-10-04 06:54:25 +0000126 "&& setenv ncip " \
Michael Walledccfa462012-06-05 11:33:17 +0000127 "&& setenv autoload ${autoload_old}; " \
128 "setenv autoload_old\0" \
129 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
130 "setenv ncip; setenv gatewayip; setenv ethact; " \
131 "setenv bootfile; setenv dnsip; " \
Michael Walle9f061452014-09-28 00:05:23 +0200132 "setenv bootsource legacy; run ser\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000133 "restore_env=run standard_env; saveenv; reset\0" \
134 "ser=setenv stdin serial; setenv stdout serial; " \
135 "setenv stderr serial\0" \
136 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
137 "stdin=serial\0" \
138 "stdout=serial\0" \
139 "stderr=serial\0"
140
141/*
142 * Ethernet Driver configuration
143 */
144#ifdef CONFIG_CMD_NET
145#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
146#define CONFIG_PHY_BASE_ADR 7
147#undef CONFIG_RESET_PHY_R
148#endif /* CONFIG_CMD_NET */
149
150#ifdef CONFIG_CMD_IDE
151#undef CONFIG_IDE_LED
152#undef CONFIG_SYS_IDE_MAXBUS
153#define CONFIG_SYS_IDE_MAXBUS 1
154#undef CONFIG_SYS_IDE_MAXDEVICE
155#define CONFIG_SYS_IDE_MAXDEVICE 1
156#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Wallef2f14da2014-04-01 20:09:13 +0200157#define CONFIG_SYS_64BIT_LBA
Michael Walledccfa462012-06-05 11:33:17 +0000158#endif
159
160#endif /* _CONFIG_LSXL_H */