[U-Boot] [PATCH 1/2] arm: add support for LaCie CloudBox
Simon Guinot
simon.guinot at sequanux.org
Tue Jun 25 22:50:56 CEST 2013
On Tue, Jun 25, 2013 at 06:49:04PM +0200, Frederic Leroy wrote:
> From: Frédéric Leroy <fredo at starox.org>
Hi Frédéric,
>
> The LaCie CloudBox device is a Kirkwood based nas :
>
> - SoC: Marvell 88F6700 1000Mhz
88F6702
> - SDRAM memory: 256MB DDR2 400Mhz
> - Gigabit ethernet: PHY Marvell 88E1318
> - Flash memory: SPI NOR 512KB (Macronix MX25L4005A)
> - 1 push button
> - 1 reset switch
> - 1 SATA port
> - 1 LED (bi-color, blue and red)
>
> Signed-off-by: Frédéric Leroy <fredo at starox.org>
> ---
> board/LaCie/cloudbox/Makefile | 46 +++++++++++
> board/LaCie/cloudbox/cloudbox.c | 104 ++++++++++++++++++++++++
> board/LaCie/cloudbox/cloudbox.h | 36 ++++++++
> board/LaCie/cloudbox/kwbimage.cfg | 167 ++++++++++++++++++++++++++++++++++++++
> boards.cfg | 1 +
> include/configs/lacie_kw.h | 8 +-
> 6 files changed, 361 insertions(+), 1 deletion(-)
> create mode 100644 board/LaCie/cloudbox/Makefile
> create mode 100644 board/LaCie/cloudbox/cloudbox.c
> create mode 100644 board/LaCie/cloudbox/cloudbox.h
> create mode 100644 board/LaCie/cloudbox/kwbimage.cfg
>
> diff --git a/board/LaCie/cloudbox/Makefile b/board/LaCie/cloudbox/Makefile
> new file mode 100644
> index 0000000..d656951
> --- /dev/null
> +++ b/board/LaCie/cloudbox/Makefile
> @@ -0,0 +1,46 @@
> +#
> +# Copyright (C) 2013 Frederic Leroy <fredo at starox.org>
> +#
> +# Based on Kirkwood support:
> +# (C) Copyright 2009
> +# Marvell Semiconductor <www.marvell.com>
> +# Written-by: Prafulla Wadaskar <prafulla at 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.
> +#
> +
> +include $(TOPDIR)/config.mk
> +ifneq ($(OBJTREE),$(SRCTREE))
> +$(shell mkdir -p $(obj)../common)
> +endif
> +
> +LIB = $(obj)lib$(BOARD).o
> +
> +COBJS := $(BOARD).o ../common/common.o
> +
> +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
> +OBJS := $(addprefix $(obj),$(COBJS))
> +SOBJS := $(addprefix $(obj),$(SOBJS))
> +
> +$(LIB): $(obj).depend $(OBJS) $(SOBJS)
> + $(call cmd_link_o_target, $(OBJS) $(SOBJS))
> +
> +#########################################################################
> +
> +# defines $(obj).depend target
> +include $(SRCTREE)/rules.mk
> +
> +sinclude $(obj).depend
> +
> +#########################################################################
> diff --git a/board/LaCie/cloudbox/cloudbox.c b/board/LaCie/cloudbox/cloudbox.c
> new file mode 100644
> index 0000000..6604a3c
> --- /dev/null
> +++ b/board/LaCie/cloudbox/cloudbox.c
> @@ -0,0 +1,104 @@
> +/*
> + * Copyright (C) 2013 Frederic Leroy <fredo at starox.org>
> + *
> + * Based on Kirkwood support:
> + * (C) Copyright 2009
> + * Marvell Semiconductor <www.marvell.com>
> + * Written-by: Prafulla Wadaskar <prafulla at 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.
> + */
> +
> +#include <common.h>
> +#include <command.h>
> +#include <asm/arch/cpu.h>
> +#include <asm/arch/kirkwood.h>
> +#include <asm/arch/mpp.h>
> +#include <asm/arch/gpio.h>
> +
> +#include "cloudbox.h"
> +#include "../common/common.h"
> +
> +DECLARE_GLOBAL_DATA_PTR;
> +
> +int board_early_init_f(void)
> +{
> + /* Gpio configuration */
> + kw_config_gpio(CLOUDBOX_OE_VAL_LOW, CLOUDBOX_OE_VAL_HIGH,
> + CLOUDBOX_OE_LOW, CLOUDBOX_OE_HIGH);
> +
> + /* Multi-Purpose Pins Functionality configuration */
> + static const u32 kwmpp_config[] = {
> + MPP0_SPI_SCn,
> + MPP1_SPI_MOSI,
> + MPP2_SPI_SCK,
> + MPP3_SPI_MISO,
> + MPP4_GPIO, /* hard disk power */
> + MPP5_GPO,
> + MPP6_SYSRST_OUTn,
> + MPP7_GPO,
> + MPP8_TW_SDA,
> + MPP9_TW_SCK,
> + MPP10_UART0_TXD,
> + MPP11_UART0_RXD,
> + MPP12_GPO,
> + MPP14_GPIO, /* LED red control */
> + MPP15_SATA0_ACTn, /* LED blue control */
> + MPP16_GPIO, /* power push buton */
> + MPP17_GPIO, /* board power off */
> + MPP20_GPIO, /* Ethernet PHY interrupt (WoL) */
> + MPP28_GPIO, /* board revision (LSB) */
> + MPP29_GPIO, /* board revision */
> + MPP30_GPIO, /* board revision */
> + MPP31_GPIO, /* board revision */
> + MPP32_GPIO, /* board revision (MSB) */
> + 0
The MPPs 5, 7 and 12 are not used. Please drop their configuration.
Moreover, AFAIK, the board revision GPIOs are not used. I am not even
sure they hold a coherent value.
> + };
> + kirkwood_mpp_conf(kwmpp_config, NULL);
> +
> + return 0;
> +}
> +
> +int board_init(void)
> +{
> + /* Nothing to do with fdt */
> + return 0;
In addition, can we also set the machine ID ? Without breaking the DT
boot ? It would be nice to support the two Linux booting methods: DT
and legacy (machine ID, ATAGs). Note that the Linux kernel provided by
the LaCie stock firmware is not DT compliant.
> +}
> +
> +#if defined(CONFIG_MISC_INIT_R)
> +int misc_init_r(void)
> +{
> + return 0;
> +}
> +#endif /* CONFIG_MISC_INIT_R */
Maybe you could simply undef CONFIG_MISC_INIT_R ?
Except the points above, the whole patch looks good to me.
Thanks,
Simon
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130625/fbca2899/attachment.pgp>
More information about the U-Boot
mailing list