[U-Boot] [PATCH v3] Seagate FreeAgent DockStar support
Prafulla Wadaskar
prafulla at marvell.com
Mon Nov 22 06:37:18 CET 2010
> -----Original Message-----
> From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de]
> On Behalf Of Eric Cooper
> Sent: Monday, November 22, 2010 2:59 AM
> To: u-boot at lists.denx.de
> Subject: [U-Boot] [PATCH v3] Seagate FreeAgent DockStar support
>
> start with sheevaplug configuration
> add modifications by Alexander Holler <holler at ahsoftware.de>
> change RAM definitions to one bank (128 MB)
> change ident string and prompt
> change environment to 0xA0000
> define MTD partitions and default environment variables
> add support for LEDs
>
> Signed-off-by: Eric Cooper <ecc at cmu.edu>
> ---
> Changes for v2:
> - rebased on master, post ARM and kirkwood relocation changes
> - squashed into single commit
>
> Changes for v3:
> - moved files to board/Seagate/dockstar/ and updated copyright notices
> - removed dockstar entry from MAKEALL
> - moved CONFIG_SYS_TEXT_BASE from config.mk to
> include/configs/dockstar.h
> - corrected comment in board/Seagate/dockstar/kwbimage.cfg
>
> MAINTAINERS | 4 +
> board/Seagate/dockstar/Makefile | 54 +++++++++++
> board/Seagate/dockstar/dockstar.c | 181
> +++++++++++++++++++++++++++++++++++
> board/Seagate/dockstar/dockstar.h | 44 +++++++++
> board/Seagate/dockstar/kwbimage.cfg | 165
> +++++++++++++++++++++++++++++++
> boards.cfg | 1 +
> include/configs/dockstar.h | 125 ++++++++++++++++++++++++
> 7 files changed, 574 insertions(+), 0 deletions(-)
> create mode 100644 board/Seagate/dockstar/Makefile
> create mode 100644 board/Seagate/dockstar/dockstar.c
> create mode 100644 board/Seagate/dockstar/dockstar.h
> create mode 100644 board/Seagate/dockstar/kwbimage.cfg
> create mode 100644 include/configs/dockstar.h
>
...snip...
> diff --git a/board/Seagate/dockstar/kwbimage.cfg
> b/board/Seagate/dockstar/kwbimage.cfg
> new file mode 100644
> index 0000000..98b514d
> --- /dev/null
> +++ b/board/Seagate/dockstar/kwbimage.cfg
> @@ -0,0 +1,165 @@
> +#
> +# Copyright (C) 2010 Eric C. Cooper <ecc at cmu.edu>
> +#
> +# Based on sheevaplug/kwbimage.cfg originally written by
> +# Prafulla Wadaskar <prafulla at marvell.com>
> +# (C) Copyright 2009
> +# Marvell Semiconductor <www.marvell.com>
> +#
> +# See file CREDITS for list of people who contributed to this
> +# project.
> +#
> +# This program is free software; you can redistribute it and/or
> +# modify it under the terms of the GNU General Public License as
> +# published by the Free Software Foundation; either version 2 of
> +# the License, or (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, write to the Free Software
> +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
> +# MA 02110-1301 USA
> +#
> +# Refer docs/README.kwimage for more details about how-to configure
> +# and create kirkwood boot image
> +#
> +
> +# Boot Media configurations
> +BOOT_FROM nand
> +NAND_ECC_MODE default
> +NAND_PAGE_SIZE 0x0800
Are the contents for this file exactly same as sheevaplug/kwbimage.cfg?
If yes then you can reuse that file and avoid adding this file here by using configuration in board config file.
...snip...
> diff --git a/boards.cfg b/boards.cfg
> index 08e531e..50e9d1b 100644
> --- a/boards.cfg
> +++ b/boards.cfg
> @@ -376,6 +376,7 @@ guruplug arm arm926ejs - Marvell
> kirkwood
> mv88f6281gtw_ge arm arm926ejs - Marvell kirkwood
> openrd_base arm arm926ejs - Marvell kirkwood
> sheevaplug arm arm926ejs - Marvell kirkwood
> +dockstar arm arm926ejs - Seagate Kirkwood
Please check if you have missed to maintain this in order
> imx27lite arm arm926ejs imx27lite logicpd mx27
> magnesium arm arm926ejs imx27lite logicpd mx27
> omap5912osk arm arm926ejs - ti omap
> diff --git a/include/configs/dockstar.h b/include/configs/dockstar.h
> new file mode 100644
> index 0000000..5a058b6
> --- /dev/null
> +++ b/include/configs/dockstar.h
> @@ -0,0 +1,125 @@
> +/*
> + * Copyright (C) 2010 Eric C. Cooper <ecc at cmu.edu>
> + *
> + * Based on sheevaplug.h originally written by
> + * Prafulla Wadaskar <prafulla at marvell.com>
> + * (C) Copyright 2009
> + * Marvell Semiconductor <www.marvell.com>
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
> + * MA 02110-1301 USA
> + */
> +
> +#ifndef _CONFIG_DOCKSTAR_H
> +#define _CONFIG_DOCKSTAR_H
> +
> +/*
> + * Version number information
> + */
> +#define CONFIG_IDENT_STRING "\nSeagate FreeAgent DockStar"
> +
> +/*
> + * High Level Configuration Options (easy to change)
> + */
> +#define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */
> +#define CONFIG_KIRKWOOD 1 /* SOC Family Name */
> +#define CONFIG_KW88F6281 1 /* SOC Name */
> +#define CONFIG_MACH_DOCKSTAR /* Machine type */
> +#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
> +
> +/*
> + * Commands configuration
> + */
> +#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */
> +#include <config_cmd_default.h>
> +#define CONFIG_CMD_DHCP
> +#define CONFIG_CMD_ENV
> +#define CONFIG_CMD_MII
> +#define CONFIG_CMD_NAND
> +#define CONFIG_CMD_PING
> +#define CONFIG_CMD_USB
> +/*
> + * mv-common.h should be defined after CMD configs since it used them
> + * to enable certain macros
> + */
> +#include "mv-common.h"
> +
> +#undef CONFIG_SYS_PROMPT /* previously defined in mv-common.h */
> +#define CONFIG_SYS_PROMPT "DockStar> " /* Command Prompt */
> +
> +/*
> + * Environment variables configurations
> + */
> +#ifdef CONFIG_CMD_NAND
> +#define CONFIG_ENV_IS_IN_NAND 1
> +#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K */
> +#else
> +#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
> +#endif
> +/*
> + * max 4k env size is enough, but in case of nand
> + * it has to be rounded to sector size
> + */
> +#define CONFIG_ENV_SIZE 0x20000 /* 128k */
> +#define CONFIG_ENV_ADDR 0xA0000
> +#define CONFIG_ENV_OFFSET 0xA0000 /* env starts here */
u-boot.bin is not more than 0x60000, its better to use env offset at 0x60000 to pack u-boot+env in first 512kb
Regards..
Prafulla . .
More information about the U-Boot
mailing list