blob: f9bced3f8f24b5934bc2c4e6748523dca6caf2d5 [file] [log] [blame]
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +00001/*
2 * Copyright (C) 2013 Suriyan Ramasami <suriyan.r@gmail.com>
3 *
4 * Based on dockstar.h originally written by
5 * Copyright (C) 2010 Eric C. Cooper <ecc@cmu.edu>
6 *
7 * Based on sheevaplug.h originally written by
8 * Prafulla Wadaskar <prafulla@marvell.com>
9 * (C) Copyright 2009
10 * Marvell Semiconductor <www.marvell.com>
11 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +020012 * SPDX-License-Identifier: GPL-2.0+
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000013 */
14
15#ifndef _CONFIG_GOFLEXHOME_H
16#define _CONFIG_GOFLEXHOME_H
17
18/*
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000019 * High Level Configuration Options (easy to change)
20 */
21#define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000022#define CONFIG_KW88F6281 1 /* SOC Name */
23#define CONFIG_MACH_GOFLEXHOME /* Machine type */
24#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
25
26/*
27 * Default GPIO configuration and LED status
28 */
29#define GOFLEXHOME_OE_LOW (~(0))
30#define GOFLEXHOME_OE_HIGH (~(0))
31#define GOFLEXHOME_OE_VAL_LOW (1 << 29) /* USB_PWEN low */
32#define GOFLEXHOME_OE_VAL_HIGH (1 << 17) /* LED pin high */
33
34/* PHY related */
35#define MV88E1116_LED_FCTRL_REG 10
36#define MV88E1116_CPRSP_CR3_REG 21
37#define MV88E1116_MAC_CTRL_REG 21
38#define MV88E1116_PGADR_REG 22
39#define MV88E1116_RGMII_TXTM_CTRL (1 << 4)
40#define MV88E1116_RGMII_RXTM_CTRL (1 << 5)
41
42/*
43 * Commands configuration
44 */
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000045
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000046#define CONFIG_CMD_ENV
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000047#define CONFIG_CMD_NAND
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000048#define CONFIG_CMD_IDE
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000049#define CONFIG_SYS_MVFS /* Picks up Filesystem from mv-common.h */
50
51/*
52 * mv-common.h should be defined after CMD configs since it used them
53 * to enable certain macros
54 */
55#include "mv-common.h"
56
Suriyan Ramasamif0ec8af2013-04-11 07:17:25 +000057/*
58 * Environment variables configurations
59 */
60#ifdef CONFIG_CMD_NAND
61#define CONFIG_ENV_IS_IN_NAND 1
62#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K */
63#else
64#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
65#endif
66/*
67 * max 4k env size is enough, but in case of nand
68 * it has to be rounded to sector size
69 */
70#define CONFIG_ENV_SIZE 0x20000 /* 128k */
71#define CONFIG_ENV_ADDR 0xC0000
72#define CONFIG_ENV_OFFSET 0xC0000 /* env starts here */
73
74/*
75 * Default environment variables
76 */
77#define CONFIG_BOOTCOMMAND \
78 "setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \
79 "ubi part root; " \
80 "ubifsmount ubi:root; " \
81 "ubifsload 0x800000 ${kernel}; " \
82 "bootm 0x800000"
83
84#define CONFIG_MTDPARTS \
85 "mtdparts=orion_nand:1m(uboot),6M(uImage),-(root)\0"
86
87#define CONFIG_EXTRA_ENV_SETTINGS \
88 "console=console=ttyS0,115200\0" \
89 "mtdids=nand0=orion_nand\0" \
90 "mtdparts="CONFIG_MTDPARTS \
91 "kernel=/boot/uImage\0" \
92 "bootargs_root=ubi.mtd=root root=ubi0:root rootfstype=ubifs ro\0"
93
94/*
95 * Ethernet Driver configuration
96 */
97#ifdef CONFIG_CMD_NET
98#define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */
99#define CONFIG_PHY_BASE_ADR 0
100#endif /* CONFIG_CMD_NET */
101
102/*
103 * * SATA Driver configuration
104 * */
105#ifdef CONFIG_MVSATA_IDE
106#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
107#endif /*CONFIG_MVSATA_IDE*/
108
109/*
110 * * RTC driver configuration
111 * */
112#ifdef CONFIG_CMD_DATE
113#define CONFIG_RTC_MV
114#endif /* CONFIG_CMD_DATE */
115
116#endif /* _CONFIG_GOFLEXHOME_H */