blob: 59542a62e4751fec398372400bf1ba193dd23fd0 [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_IDE
Michael Walledccfa462012-06-05 11:33:17 +000042
Michael Walledccfa462012-06-05 11:33:17 +000043/*
44 * mv-common.h should be defined after CMD configs since it used them
45 * to enable certain macros
46 */
47#include "mv-common.h"
48
Michael Walle22316a52015-02-08 20:06:07 +010049/* loading initramfs images without uimage header */
50#define CONFIG_SUPPORT_RAW_INITRD
51
Michael Walledccfa462012-06-05 11:33:17 +000052/* ST M25P40 */
Michael Walledccfa462012-06-05 11:33:17 +000053#undef CONFIG_ENV_SPI_MAX_HZ
54#define CONFIG_ENV_SPI_MAX_HZ 25000000
55#undef CONFIG_SF_DEFAULT_SPEED
56#define CONFIG_SF_DEFAULT_SPEED 25000000
57
Michael Walledccfa462012-06-05 11:33:17 +000058/*
59 * Environment variables configurations
60 */
61#ifdef CONFIG_SPI_FLASH
62#define CONFIG_SYS_MAX_FLASH_BANKS 1
63#define CONFIG_SYS_MAX_FLASH_SECT 8
64#define CONFIG_ENV_IS_IN_SPI_FLASH 1
65#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K */
66#else
67#define CONFIG_ENV_IS_NOWHERE
68#endif
69
70#define CONFIG_ENV_SIZE 0x10000 /* 64k */
71#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
72
73/*
74 * Default environment variables
75 */
76#define CONFIG_LOADADDR 0x00800000
77#define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}"
78#define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
Michael Walle35e6e292014-04-01 20:09:14 +020079
80#if defined(CONFIG_LSXHL)
81#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
82#elif defined(CONFIG_LSCHLV2)
83#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
84#else
85#error "Unsupported board"
86#endif
87
Michael Walledccfa462012-06-05 11:33:17 +000088#define CONFIG_EXTRA_ENV_SETTINGS \
Michael Walle35e6e292014-04-01 20:09:14 +020089 "bootsource=legacy\0" \
Michael Walledccfa462012-06-05 11:33:17 +000090 "hdpart=0:1\0" \
Michael Walle35e6e292014-04-01 20:09:14 +020091 "kernel_addr=0x00800000\0" \
92 "ramdisk_addr=0x01000000\0" \
Michael Wallebe083382015-02-08 20:06:06 +010093 "fdt_addr=0x00ff0000\0" \
Michael Walle35e6e292014-04-01 20:09:14 +020094 "bootcmd_legacy=ide reset " \
Michael Walledaffcc52015-02-08 20:06:05 +010095 "&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo " \
96 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
97 "&& bootm ${kernel_addr} ${ramdisk_addr}\0" \
Michael Walle22316a52015-02-08 20:06:07 +010098 "bootcmd_net=bootp ${kernel_addr} vmlinuz " \
99 "&& tftpboot ${ramdisk_addr} initrd.img " \
100 "&& setenv ramdisk_len ${filesize} " \
Michael Walle35e6e292014-04-01 20:09:14 +0200101 "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
Michael Walle22316a52015-02-08 20:06:07 +0100102 "&& bootz ${kernel_addr} " \
103 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000104 "bootcmd_hdd=ide reset " \
Michael Walle22316a52015-02-08 20:06:07 +0100105 "&& load ide ${hdpart} ${kernel_addr} /vmlinuz " \
106 "&& load ide ${hdpart} ${ramdisk_addr} /initrd.img " \
107 "&& setenv ramdisk_len ${filesize} " \
108 "&& load ide ${hdpart} ${fdt_addr} /dtb " \
109 "&& bootz ${kernel_addr} " \
110 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000111 "bootcmd_usb=usb start " \
Michael Walle22316a52015-02-08 20:06:07 +0100112 "&& load usb 0:1 ${kernel_addr} /vmlinuz " \
113 "&& load usb 0:1 ${ramdisk_addr} /initrd.img " \
114 "&& setenv ramdisk_len ${filesize} " \
115 "&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " " \
116 "&& bootz ${kernel_addr} " \
117 "${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000118 "bootcmd_rescue=run config_nc_dhcp; run nc\0" \
119 "eraseenv=sf probe 0 " \
Marek Vasut0b3176c2012-09-23 17:41:24 +0200120 "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \
121 " +" __stringify(CONFIG_ENV_SIZE) "\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000122 "config_nc_dhcp=setenv autoload_old ${autoload}; " \
123 "setenv autoload no " \
124 "&& bootp " \
Michael Walledc3ba8e2012-10-04 06:54:25 +0000125 "&& setenv ncip " \
Michael Walledccfa462012-06-05 11:33:17 +0000126 "&& setenv autoload ${autoload_old}; " \
127 "setenv autoload_old\0" \
128 "standard_env=setenv ipaddr; setenv netmask; setenv serverip; " \
129 "setenv ncip; setenv gatewayip; setenv ethact; " \
130 "setenv bootfile; setenv dnsip; " \
Michael Walle9f061452014-09-28 00:05:23 +0200131 "setenv bootsource legacy; run ser\0" \
Michael Walledccfa462012-06-05 11:33:17 +0000132 "restore_env=run standard_env; saveenv; reset\0" \
133 "ser=setenv stdin serial; setenv stdout serial; " \
134 "setenv stderr serial\0" \
135 "nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0" \
136 "stdin=serial\0" \
137 "stdout=serial\0" \
138 "stderr=serial\0"
139
140/*
141 * Ethernet Driver configuration
142 */
143#ifdef CONFIG_CMD_NET
144#define CONFIG_MVGBE_PORTS {0, 1} /* enable port 1 only */
145#define CONFIG_PHY_BASE_ADR 7
146#undef CONFIG_RESET_PHY_R
147#endif /* CONFIG_CMD_NET */
148
149#ifdef CONFIG_CMD_IDE
150#undef CONFIG_IDE_LED
151#undef CONFIG_SYS_IDE_MAXBUS
152#define CONFIG_SYS_IDE_MAXBUS 1
153#undef CONFIG_SYS_IDE_MAXDEVICE
154#define CONFIG_SYS_IDE_MAXDEVICE 1
155#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
Michael Wallef2f14da2014-04-01 20:09:13 +0200156#define CONFIG_SYS_64BIT_LBA
Michael Walledccfa462012-06-05 11:33:17 +0000157#endif
158
159#endif /* _CONFIG_LSXL_H */