* [U-Boot] [PATH v7 0/2] Add support for LaCie NAS Network Space v2
@ 2011-05-12 9:48 Simon Guinot
2011-05-12 9:48 ` [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check Simon Guinot
2011-05-12 9:48 ` [U-Boot] [PATH v7 2/2] Add support for Network Space v2 Simon Guinot
0 siblings, 2 replies; 14+ messages in thread
From: Simon Guinot @ 2011-05-12 9:48 UTC (permalink / raw)
To: u-boot
This patch series adds support for Network Space v2 board and parents.
Changes for v2:
- netconsole: restore NetOurIP check
- add entries to MAINTAINERS file
- move boards from root Makefile to boards.cfg
- move MACH_TYPE definition into netspace_v2.h
- remove CONFIG_SYS_HZ redefinition
- turn PHY initialization message into debug()
Changes for v3:
- drop patch for Macronix MX25L4005A
- rewrite patch "sf: disable write protection for Macronix flash",
using the common spi flash code
- fix "Definitions" typo in mv-common.h
- netconsole: add a "/* Fall through */" comment before the NETCONS
case label
Changes for v4:
- sf macronix: use spi_flash_cmd_write_enable()
- enhance commit message for patch "Add support for Network Space v2"
Changes for v5:
- add a changelog per patch
Changes for v6:
- drop accepted patches
- enable device tree support for netspace_v2
- clean some "#define" in netspace_v2.h
- enhance commit message for patch "Add support for Network Space v2":
provide description URL and mention SoC family
- rebase patch "Add support for Network Space v2" against
u-boot-{arm,marvell}/master branches
- enhance commit message for patch "netconsole: remove `serverip'
check"
Changes for v7:
- rebase patch "Add support for Network Space v2" against
u-boot-marvell branch
Simon Guinot (2):
netconsole: remove `serverip' check
Add support for Network Space v2
MAINTAINERS | 6 +
board/LaCie/netspace_v2/Makefile | 49 ++++++++++
board/LaCie/netspace_v2/kwbimage.cfg | 162 +++++++++++++++++++++++++++++++++
board/LaCie/netspace_v2/netspace_v2.c | 144 +++++++++++++++++++++++++++++
board/LaCie/netspace_v2/netspace_v2.h | 39 ++++++++
boards.cfg | 3 +
include/configs/netspace_v2.h | 153 +++++++++++++++++++++++++++++++
net/net.c | 3 +-
8 files changed, 558 insertions(+), 1 deletions(-)
create mode 100644 board/LaCie/netspace_v2/Makefile
create mode 100644 board/LaCie/netspace_v2/kwbimage.cfg
create mode 100644 board/LaCie/netspace_v2/netspace_v2.c
create mode 100644 board/LaCie/netspace_v2/netspace_v2.h
create mode 100644 include/configs/netspace_v2.h
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 9:48 [U-Boot] [PATH v7 0/2] Add support for LaCie NAS Network Space v2 Simon Guinot
@ 2011-05-12 9:48 ` Simon Guinot
2011-05-12 10:17 ` Prafulla Wadaskar
2011-05-12 17:12 ` Wolfgang Denk
2011-05-12 9:48 ` [U-Boot] [PATH v7 2/2] Add support for Network Space v2 Simon Guinot
1 sibling, 2 replies; 14+ messages in thread
From: Simon Guinot @ 2011-05-12 9:48 UTC (permalink / raw)
To: u-boot
This patch allows to enable the netconsole even if `serverip' is not set.
Because netconsole use the environment variable `ncip' to configure the
destination IP, `serverip' don't need to be defined.
Signed-off-by: Simon Guinot <sguinot@lacie.com>
---
Changes for v2:
- restore NetOurIP check
Changes for v3:
- add a "/* Fall through */" comment before the NETCONS case label
Changes for v4,5: none
Changes for v6:
- enhance commit message
Changes for v7: none
net/net.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/net/net.c b/net/net.c
index e50bdf1..19ac019 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1718,7 +1718,6 @@ static int net_check_prereq (proto_t protocol)
#if defined(CONFIG_CMD_NFS)
case NFS:
#endif
- case NETCONS:
case TFTP:
if (NetServerIP == 0) {
puts ("*** ERROR: `serverip' not set\n");
@@ -1728,7 +1727,9 @@ static int net_check_prereq (proto_t protocol)
defined(CONFIG_CMD_DNS)
common:
#endif
+ /* Fall through */
+ case NETCONS:
if (NetOurIP == 0) {
puts ("*** ERROR: `ipaddr' not set\n");
return (1);
--
1.6.3.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 2/2] Add support for Network Space v2
2011-05-12 9:48 [U-Boot] [PATH v7 0/2] Add support for LaCie NAS Network Space v2 Simon Guinot
2011-05-12 9:48 ` [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check Simon Guinot
@ 2011-05-12 9:48 ` Simon Guinot
2011-05-12 10:36 ` Prafulla Wadaskar
1 sibling, 1 reply; 14+ messages in thread
From: Simon Guinot @ 2011-05-12 9:48 UTC (permalink / raw)
To: u-boot
This patch add support for the Network Space v2 board and parents, based
on the Marvell Kirkwood 6281 SoC. This include Network Space (Max) v2
and Internet Space v2.
Additional information is available at:
http://lacie-nas.org/doku.php?id=network_space_v2
Signed-off-by: Simon Guinot <sguinot@lacie.com>
---
Changes for v2:
- add entries to MAINTAINERS file
- move boards from root Makefile to boards.cfg
- move MACH_TYPE definition into netspace_v2.h
- remove CONFIG_SYS_HZ redefinition
- turn PHY initialization message into debug()
Changes for v3: none
Changes for v4:
- enhance commit message: add SoC information
Changes for v5: none
Changes for v6:
- enable device tree support
- clean some "#define" in netspace_v2.h
- enhance commit message: provide description URL and mention SoC
family
- rebase against u-boot-{arm,marvell}/master branches
Changes for v7:
- rebase against u-boot-marvell/master branch
MAINTAINERS | 6 +
board/LaCie/netspace_v2/Makefile | 49 ++++++++++
board/LaCie/netspace_v2/kwbimage.cfg | 162 +++++++++++++++++++++++++++++++++
board/LaCie/netspace_v2/netspace_v2.c | 144 +++++++++++++++++++++++++++++
board/LaCie/netspace_v2/netspace_v2.h | 39 ++++++++
boards.cfg | 3 +
include/configs/netspace_v2.h | 153 +++++++++++++++++++++++++++++++
7 files changed, 556 insertions(+), 0 deletions(-)
create mode 100644 board/LaCie/netspace_v2/Makefile
create mode 100644 board/LaCie/netspace_v2/kwbimage.cfg
create mode 100644 board/LaCie/netspace_v2/netspace_v2.c
create mode 100644 board/LaCie/netspace_v2/netspace_v2.h
create mode 100644 include/configs/netspace_v2.h
diff --git a/MAINTAINERS b/MAINTAINERS
index 24a55c2..47b724c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -645,6 +645,12 @@ Sedji Gaouaou<sedji.gaouaou@atmel.com>
at91sam9g10ek ARM926EJS (AT91SAM9G10 SoC)
at91sam9m10g45ek ARM926EJS (AT91SAM9G45 SoC)
+Simon Guinot <simon.guinot@sequanux.org>
+
+ inetspace_v2 ARM926EJS (Kirkwood SoC)
+ netspace_v2 ARM926EJS (Kirkwood SoC)
+ netspace_max_v2 ARM926EJS (Kirkwood SoC)
+
Marius Gr?ger <mag@sysgo.de>
impa7 ARM720T (EP7211)
diff --git a/board/LaCie/netspace_v2/Makefile b/board/LaCie/netspace_v2/Makefile
new file mode 100644
index 0000000..a245f2c
--- /dev/null
+++ b/board/LaCie/netspace_v2/Makefile
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
+#
+# Based on Kirkwood support:
+# (C) Copyright 2009
+# Marvell Semiconductor <www.marvell.com>
+# Written-by: Prafulla Wadaskar <prafulla@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
+
+LIB = $(obj)lib$(BOARD).o
+
+COBJS := netspace_v2.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))
+
+clean:
+ rm -f $(SOBJS) $(OBJS)
+
+distclean: clean
+ rm -f $(LIB) core *.bak .depend
+
+#########################################################################
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#########################################################################
diff --git a/board/LaCie/netspace_v2/kwbimage.cfg b/board/LaCie/netspace_v2/kwbimage.cfg
new file mode 100644
index 0000000..361feeb
--- /dev/null
+++ b/board/LaCie/netspace_v2/kwbimage.cfg
@@ -0,0 +1,162 @@
+#
+# Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
+#
+# Based on Kirkwood support:
+# (C) Copyright 2009
+# Marvell Semiconductor <www.marvell.com>
+# Written-by: Prafulla Wadaskar <prafulla@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.
+#
+# Refer docs/README.kwimage for more details about how-to configure
+# and create kirkwood boot image
+#
+
+# Boot Media configurations
+BOOT_FROM spi # Boot from SPI flash
+
+# SOC registers configuration using bootrom header extension
+# Maximum KWBIMAGE_MAX_CONFIG configurations allowed
+
+# Configure RGMII-0 interface pad voltage to 1.8V
+DATA 0xFFD100e0 0x1B1B1B9B
+
+#Dram initalization for SINGLE x16 CL=5 @ 400MHz
+DATA 0xFFD01400 0x43000618 # DDR Configuration register
+# bit13-0: 0xa00 (2560 DDR2 clks refresh rate)
+# bit23-14: zero
+# bit24: 1= enable exit self refresh mode on DDR access
+# bit25: 1 required
+# bit29-26: zero
+# bit31-30: 01
+
+DATA 0xFFD01404 0x35143000 # DDR Controller Control Low
+# bit 4: 0=addr/cmd in smame cycle
+# bit 5: 0=clk is driven during self refresh, we don't care for APX
+# bit 6: 0=use recommended falling edge of clk for addr/cmd
+# bit14: 0=input buffer always powered up
+# bit18: 1=cpu lock transaction enabled
+# bit23-20: 5=recommended value for CL=5 and STARTBURST_DEL disabled bit31=0
+# bit27-24: 8= CL+3, STARTBURST sample stages, for freqs 400MHz, unbuffered DIMM
+# bit30-28: 3 required
+# bit31: 0=no additional STARTBURST delay
+
+DATA 0xFFD01408 0x11012228 # DDR Timing (Low) (active cycles value +1)
+# bit7-4: TRCD
+# bit11- 8: TRP
+# bit15-12: TWR
+# bit19-16: TWTR
+# bit20: TRAS msb
+# bit23-21: 0x0
+# bit27-24: TRRD
+# bit31-28: TRTP
+
+DATA 0xFFD0140C 0x00000A19 # DDR Timing (High)
+# bit6-0: TRFC
+# bit8-7: TR2R
+# bit10-9: TR2W
+# bit12-11: TW2W
+# bit31-13: zero required
+
+DATA 0xFFD01410 0x0000CCCC # DDR Address Control
+# bit1-0: 01, Cs0width=x16
+# bit3-2: 11, Cs0size=1Gb
+# bit5-4: 00, Cs2width=nonexistent
+# bit7-6: 00, Cs1size =nonexistent
+# bit9-8: 00, Cs2width=nonexistent
+# bit11-10: 00, Cs2size =nonexistent
+# bit13-12: 00, Cs3width=nonexistent
+# bit15-14: 00, Cs3size =nonexistent
+# bit16: 0, Cs0AddrSel
+# bit17: 0, Cs1AddrSel
+# bit18: 0, Cs2AddrSel
+# bit19: 0, Cs3AddrSel
+# bit31-20: 0 required
+
+DATA 0xFFD01414 0x00000000 # DDR Open Pages Control
+# bit0: 0, OpenPage enabled
+# bit31-1: 0 required
+
+DATA 0xFFD01418 0x00000000 # DDR Operation
+# bit3-0: 0x0, DDR cmd
+# bit31-4: 0 required
+
+DATA 0xFFD0141C 0x00000632 # DDR Mode
+# bit2-0: 2, BurstLen=2 required
+# bit3: 0, BurstType=0 required
+# bit6-4: 4, CL=5
+# bit7: 0, TestMode=0 normal
+# bit8: 0, DLL reset=0 normal
+# bit11-9: 6, auto-precharge write recovery ????????????
+# bit12: 0, PD must be zero
+# bit31-13: 0 required
+
+DATA 0xFFD01420 0x00000004 # DDR Extended Mode
+# bit0: 0, DDR DLL enabled
+# bit1: 1, DDR drive strenght reduced
+# bit2: 1, DDR ODT control lsd enabled
+# bit5-3: 000, required
+# bit6: 1, DDR ODT control msb, enabled
+# bit9-7: 000, required
+# bit10: 0, differential DQS enabled
+# bit11: 0, required
+# bit12: 0, DDR output buffer enabled
+# bit31-13: 0 required
+
+DATA 0xFFD01424 0x0000F07F # DDR Controller Control High
+# bit2-0: 111, required
+# bit3 : 1 , MBUS Burst Chop disabled
+# bit6-4: 111, required
+# bit7 : 1 , D2P Latency enabled
+# bit8 : 1 , add writepath sample stage, must be 1 for DDR freq >= 300MHz
+# bit9 : 0 , no half clock cycle addition to dataout
+# bit10 : 0 , 1/4 clock cycle skew enabled for addr/ctl signals
+# bit11 : 0 , 1/4 clock cycle skew disabled for write mesh
+# bit15-12: 1111 required
+# bit31-16: 0 required
+
+DATA 0xFFD01428 0x00085520 # DDR2 ODT Read Timing (default values)
+DATA 0xFFD0147C 0x00008552 # DDR2 ODT Write Timing (default values)
+
+DATA 0xFFD01500 0x00000000 # CS[0]n Base address to 0x0
+DATA 0xFFD01504 0x0FFFFFF1 # CS[0]n Size
+# bit0: 1, Window enabled
+# bit1: 0, Write Protect disabled
+# bit3-2: 00, CS0 hit selected
+# bit23-4: ones, required
+# bit31-24: 0x07, Size (i.e. 128MB)
+
+DATA 0xFFD0150C 0x00000000 # CS[1]n Size, window disabled
+DATA 0xFFD01514 0x00000000 # CS[2]n Size, window disabled
+DATA 0xFFD0151C 0x00000000 # CS[3]n Size, window disabled
+
+DATA 0xFFD01494 0x00010000 # DDR ODT Control (Low)
+# bit3-0: 1, ODT0Rd, MODT[0] asserted during read from DRAM CS0
+# bit19-16:1, ODT0Wr, MODT[0] asserted during write to DRAM CS0
+
+DATA 0xFFD01498 0x00000000 # DDR ODT Control (High)
+# bit1-0: 00, ODT0 controlled by ODT Control (low) register above
+# bit3-2: 01, ODT1 active NEVER!
+# bit31-4: zero, required
+
+DATA 0xFFD0149C 0x0000E40F # CPU ODT Control
+# bit3-0: 1, ODT0Rd, Internal ODT asserted during read from DRAM bank0
+# bit7-4: 1, ODT0Wr, Internal ODT asserted during write to DRAM bank0
+# bit11-10:1, DQ_ODTSel. ODT select turned on
+
+DATA 0xFFD01480 0x00000001 # DDR Initialization Control
+#bit0=1, enable DDR init upon this register write
+
+# End of Header extension
+DATA 0x0 0x0
diff --git a/board/LaCie/netspace_v2/netspace_v2.c b/board/LaCie/netspace_v2/netspace_v2.c
new file mode 100644
index 0000000..9bc9940
--- /dev/null
+++ b/board/LaCie/netspace_v2/netspace_v2.c
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
+ *
+ * Based on Kirkwood support:
+ * (C) Copyright 2009
+ * Marvell Semiconductor <www.marvell.com>
+ * Written-by: Prafulla Wadaskar <prafulla@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 <miiphy.h>
+#include <netdev.h>
+#include <command.h>
+#include <asm/arch/kirkwood.h>
+#include <asm/arch/mpp.h>
+#include <asm/arch/gpio.h>
+#include "netspace_v2.h"
+
+DECLARE_GLOBAL_DATA_PTR;
+
+int board_early_init_f(void)
+{
+ /* Gpio configuration */
+ kw_config_gpio(NETSPACE_V2_OE_VAL_LOW, NETSPACE_V2_OE_VAL_HIGH,
+ NETSPACE_V2_OE_LOW, NETSPACE_V2_OE_HIGH);
+
+ /* Multi-Purpose Pins Functionality configuration */
+ u32 kwmpp_config[] = {
+ MPP0_SPI_SCn,
+ MPP1_SPI_MOSI,
+ MPP2_SPI_SCK,
+ MPP3_SPI_MISO,
+ MPP4_NF_IO6,
+ MPP5_NF_IO7,
+ MPP6_SYSRST_OUTn,
+ MPP7_GPO, /* Fan speed (bit 1) */
+ MPP8_TW_SDA,
+ MPP9_TW_SCK,
+ MPP10_UART0_TXD,
+ MPP11_UART0_RXD,
+ MPP12_GPO, /* Red led */
+ MPP14_GPIO, /* USB fuse */
+ MPP16_GPIO, /* SATA 0 power */
+ MPP17_GPIO, /* SATA 1 power */
+ MPP18_NF_IO0,
+ MPP19_NF_IO1,
+ MPP20_SATA1_ACTn,
+ MPP21_SATA0_ACTn,
+ MPP22_GPIO, /* Fan speed (bit 0) */
+ MPP23_GPIO, /* Fan power */
+ MPP24_GPIO, /* USB mode select */
+ MPP25_GPIO, /* Fan rotation fail */
+ MPP26_GPIO, /* USB vbus-in detection */
+ MPP28_GPIO, /* USB enable vbus-out */
+ MPP29_GPIO, /* Blue led (slow register) */
+ MPP30_GPIO, /* Blue led (command register) */
+ MPP31_GPIO, /* Board power off */
+ MPP32_GPIO, /* Button (0 = Released, 1 = Pushed) */
+ MPP33_GPIO, /* Fan speed (bit 2) */
+ 0
+ };
+ kirkwood_mpp_conf(kwmpp_config);
+
+ return 0;
+}
+
+int board_init(void)
+{
+ /* Machine number */
+ gd->bd->bi_arch_number = CONFIG_MACH_TYPE;
+
+ /* Boot parameters address */
+ gd->bd->bi_boot_params = kw_sdram_bar(0) + 0x100;
+
+ return 0;
+}
+
+void mv_phy_88e1116_init(char *name)
+{
+ u16 reg;
+ u16 devadr;
+
+ if (miiphy_set_current_dev(name))
+ return;
+
+ /* command to read PHY dev address */
+ if (miiphy_read(name, 0xEE, 0xEE, (u16 *) &devadr)) {
+ printf("Err..(%s) could not read PHY dev address\n", __func__);
+ return;
+ }
+
+ /*
+ * Enable RGMII delay on Tx and Rx for CPU port
+ * Ref: sec 4.7.2 of chip datasheet
+ */
+ miiphy_write(name, devadr, MV88E1116_PGADR_REG, 2);
+ miiphy_read(name, devadr, MV88E1116_MAC_CTRL_REG, ®);
+ reg |= (MV88E1116_RGMII_RXTM_CTRL | MV88E1116_RGMII_TXTM_CTRL);
+ miiphy_write(name, devadr, MV88E1116_MAC_CTRL_REG, reg);
+ miiphy_write(name, devadr, MV88E1116_PGADR_REG, 0);
+
+ /* reset the phy */
+ if (miiphy_read(name, devadr, MII_BMCR, ®) != 0) {
+ printf("Err..(%s) PHY status read failed\n", __func__);
+ return;
+ }
+ if (miiphy_write(name, devadr, MII_BMCR, reg | 0x8000) != 0) {
+ printf("Err..(%s) PHY reset failed\n", __func__);
+ return;
+ }
+
+ debug("88E1116 Initialized on %s\n", name);
+}
+
+/* Configure and initialize PHY */
+void reset_phy(void)
+{
+ mv_phy_88e1116_init("egiga0");
+}
+
+#define NETSPACE_V2_GPIO_BUTTON 32
+
+/* Return GPIO button status */
+static int
+do_read_button(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ return kw_gpio_get_value(NETSPACE_V2_GPIO_BUTTON);
+}
+
+U_BOOT_CMD(button, 1, 1, do_read_button,
+ "Return GPIO button status 0=off 1=on", "");
diff --git a/board/LaCie/netspace_v2/netspace_v2.h b/board/LaCie/netspace_v2/netspace_v2.h
new file mode 100644
index 0000000..c26a6e0
--- /dev/null
+++ b/board/LaCie/netspace_v2/netspace_v2.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
+ *
+ * Based on Kirkwood support:
+ * (C) Copyright 2009
+ * Marvell Semiconductor <www.marvell.com>
+ * Written-by: Prafulla Wadaskar <prafulla@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.
+ */
+
+#ifndef NETSPACE_V2_H
+#define NETSPACE_V2_H
+
+#define NETSPACE_V2_OE_LOW 0x06004000
+#define NETSPACE_V2_OE_HIGH 0x00000031
+#define NETSPACE_V2_OE_VAL_LOW 0x10030000
+#define NETSPACE_V2_OE_VAL_HIGH 0x00000000
+
+/* PHY related */
+#define MV88E1116_LED_FCTRL_REG 10
+#define MV88E1116_CPRSP_CR3_REG 21
+#define MV88E1116_MAC_CTRL_REG 21
+#define MV88E1116_PGADR_REG 22
+#define MV88E1116_RGMII_TXTM_CTRL (1 << 4)
+#define MV88E1116_RGMII_RXTM_CTRL (1 << 5)
+
+#endif /* NETSPACE_V2_H */
diff --git a/boards.cfg b/boards.cfg
index bc193c6..5bd320e 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -104,6 +104,9 @@ davinci_schmoogie arm arm926ejs schmoogie davinci
davinci_sffsdr arm arm926ejs sffsdr davinci davinci
davinci_sonata arm arm926ejs sonata davinci davinci
suen3 arm arm926ejs km_arm keymile kirkwood
+inetspace_v2 arm arm926ejs netspace_v2 LaCie kirkwood netspace_v2:INETSPACE_V2
+netspace_v2 arm arm926ejs netspace_v2 LaCie kirkwood netspace_v2:NETSPACE_V2
+netspace_max_v2 arm arm926ejs netspace_v2 LaCie kirkwood netspace_v2:NETSPACE_MAX_V2
guruplug arm arm926ejs - Marvell kirkwood
mv88f6281gtw_ge arm arm926ejs - Marvell kirkwood
openrd_base arm arm926ejs openrd Marvell kirkwood openrd:BOARD_IS_OPENRD_BASE
diff --git a/include/configs/netspace_v2.h b/include/configs/netspace_v2.h
new file mode 100644
index 0000000..95b1e4b
--- /dev/null
+++ b/include/configs/netspace_v2.h
@@ -0,0 +1,153 @@
+/*
+ * Copyright (C) 2011 Simon Guinot <sguinot@lacie.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.
+ */
+
+#ifndef _CONFIG_NETSPACE_V2_H
+#define _CONFIG_NETSPACE_V2_H
+
+/*
+ * Machine number definition
+ */
+#if defined(CONFIG_INETSPACE_V2)
+#define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2
+#define CONFIG_IDENT_STRING " LaCie Internet Space v2"
+#elif defined(CONFIG_NETSPACE_V2)
+#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2
+#define CONFIG_IDENT_STRING " LaCie Network Space v2"
+#elif defined(CONFIG_NETSPACE_MAX_V2)
+#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2
+#define CONFIG_IDENT_STRING " LaCie Network Space Max v2"
+#endif
+
+/*
+ * High Level Configuration Options (easy to change)
+ */
+#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */
+#define CONFIG_KIRKWOOD /* SOC Family Name */
+#define CONFIG_KW88F6281 /* SOC Name */
+#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_ENV
+#define CONFIG_CMD_DHCP
+#define CONFIG_CMD_PING
+#define CONFIG_CMD_SF
+#define CONFIG_CMD_I2C
+#define CONFIG_CMD_IDE
+#define CONFIG_CMD_USB
+
+/*
+ * Core clock definition.
+ */
+#define CONFIG_SYS_TCLK 166000000 /* 166MHz */
+
+/*
+ * mv-common.h should be defined after CMD configs since it used them
+ * to enable certain macros
+ */
+#define CONFIG_NR_DRAM_BANKS 2
+#include "mv-common.h"
+
+/* Remove or override few declarations from mv-common.h */
+#undef CONFIG_RBTREE
+#undef CONFIG_ENV_SPI_MAX_HZ
+#undef CONFIG_SYS_IDE_MAXBUS
+#undef CONFIG_SYS_IDE_MAXDEVICE
+#undef CONFIG_SYS_PROMPT
+#define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */
+#define CONFIG_SYS_IDE_MAXBUS 1
+#define CONFIG_SYS_IDE_MAXDEVICE 1
+#define CONFIG_SYS_PROMPT "ns2> "
+
+/*
+ * Ethernet Driver configuration
+ */
+#ifdef CONFIG_CMD_NET
+#define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */
+#define CONFIG_NETCONSOLE
+#endif
+
+/*
+ * SATA Driver configuration
+ */
+#ifdef CONFIG_MVSATA_IDE
+#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
+/* Network Space Max v2 use 2 SATA ports */
+#ifdef CONFIG_NETSPACE_MAX_V2
+#define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET
+#endif
+#endif
+
+/*
+ * Enable GPI0 support
+ */
+#define CONFIG_KIRKWOOD_GPIO
+
+/*
+ * File systems support
+ */
+#define CONFIG_CMD_EXT2
+#define CONFIG_CMD_FAT
+
+/*
+ * Use the HUSH parser
+ */
+#define CONFIG_SYS_HUSH_PARSER
+#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
+
+/*
+ * Console configuration
+ */
+#define CONFIG_CONSOLE_MUX
+#define CONFIG_SYS_CONSOLE_IS_IN_ENV
+
+/*
+ * Enable device tree support
+ */
+#define CONFIG_OF_LIBFDT
+
+/*
+ * Environment variables configurations
+ */
+#define CONFIG_ENV_IS_IN_SPI_FLASH
+#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */
+#define CONFIG_ENV_SIZE 0x1000 /* 4KB */
+#define CONFIG_ENV_ADDR 0x70000
+#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
+
+/*
+ * Default environment variables
+ */
+#define CONFIG_BOOTARGS "console=ttyS0,115200"
+
+#define CONFIG_BOOTCOMMAND \
+ "if run usbload || run diskload; then bootm 0x800000; fi"
+
+#define CONFIG_EXTRA_ENV_SETTINGS \
+ "stdin=serial,nc\0" \
+ "stdout=serial,nc\0" \
+ "stderr=serial,nc\0" \
+ "ipaddr=192.168.1.111\0" \
+ "diskload=ide reset && " \
+ "ext2load ide 0:1 0x800000 /boot/uImage\0" \
+ "usbload=usb start && " \
+ "fatload usb 0:1 0x800000 /boot/uImage\0"
+
+#endif /* _CONFIG_NETSPACE_V2_H */
--
1.6.3.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 9:48 ` [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check Simon Guinot
@ 2011-05-12 10:17 ` Prafulla Wadaskar
2011-05-12 11:55 ` Simon Guinot
2011-05-12 15:14 ` Mike Frysinger
2011-05-12 17:12 ` Wolfgang Denk
1 sibling, 2 replies; 14+ messages in thread
From: Prafulla Wadaskar @ 2011-05-12 10:17 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> Sent: Thursday, May 12, 2011 3:19 PM
> To: Prafulla Wadaskar
> Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> Subject: [PATH v7 1/2] netconsole: remove `serverip' check
>
> This patch allows to enable the netconsole even if `serverip' is not
> set.
>
> Because netconsole use the environment variable `ncip' to configure the
> destination IP, `serverip' don't need to be defined.
>
> Signed-off-by: Simon Guinot <sguinot@lacie.com>
> ---
> Changes for v2:
> - restore NetOurIP check
>
> Changes for v3:
> - add a "/* Fall through */" comment before the NETCONS case label
>
> Changes for v4,5: none
>
> Changes for v6:
> - enhance commit message
>
> Changes for v7: none
>
> net/net.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
This patch looks to be independent.
I don't have any comments for this.
Should be applied to u-boot-net.git.
Hi Ben/Wolfgang
Can you pls review/comment/pull it ?
Regards..
Prafulla . . .
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 2/2] Add support for Network Space v2
2011-05-12 9:48 ` [U-Boot] [PATH v7 2/2] Add support for Network Space v2 Simon Guinot
@ 2011-05-12 10:36 ` Prafulla Wadaskar
2011-05-12 11:47 ` Simon Guinot
0 siblings, 1 reply; 14+ messages in thread
From: Prafulla Wadaskar @ 2011-05-12 10:36 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> Sent: Thursday, May 12, 2011 3:19 PM
> To: Prafulla Wadaskar
> Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> Subject: [PATH v7 2/2] Add support for Network Space v2
>
> This patch add support for the Network Space v2 board and parents, based
> on the Marvell Kirkwood 6281 SoC. This include Network Space (Max) v2
> and Internet Space v2.
>
> Additional information is available at:
> http://lacie-nas.org/doku.php?id=network_space_v2
>
> Signed-off-by: Simon Guinot <sguinot@lacie.com>
> ---
> Changes for v2:
> - add entries to MAINTAINERS file
> - move boards from root Makefile to boards.cfg
> - move MACH_TYPE definition into netspace_v2.h
> - remove CONFIG_SYS_HZ redefinition
> - turn PHY initialization message into debug()
>
> Changes for v3: none
>
> Changes for v4:
> - enhance commit message: add SoC information
>
> Changes for v5: none
>
> Changes for v6:
> - enable device tree support
> - clean some "#define" in netspace_v2.h
> - enhance commit message: provide description URL and mention SoC
> family
> - rebase against u-boot-{arm,marvell}/master branches
>
> Changes for v7:
> - rebase against u-boot-marvell/master branch
>
> MAINTAINERS | 6 +
> board/LaCie/netspace_v2/Makefile | 49 ++++++++++
> board/LaCie/netspace_v2/kwbimage.cfg | 162
> +++++++++++++++++++++++++++++++++
> board/LaCie/netspace_v2/netspace_v2.c | 144
> +++++++++++++++++++++++++++++
> board/LaCie/netspace_v2/netspace_v2.h | 39 ++++++++
> boards.cfg | 3 +
> include/configs/netspace_v2.h | 153
> +++++++++++++++++++++++++++++++
> 7 files changed, 556 insertions(+), 0 deletions(-)
> create mode 100644 board/LaCie/netspace_v2/Makefile
> create mode 100644 board/LaCie/netspace_v2/kwbimage.cfg
> create mode 100644 board/LaCie/netspace_v2/netspace_v2.c
> create mode 100644 board/LaCie/netspace_v2/netspace_v2.h
> create mode 100644 include/configs/netspace_v2.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 24a55c2..47b724c 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -645,6 +645,12 @@ Sedji Gaouaou<sedji.gaouaou@atmel.com>
> at91sam9g10ek ARM926EJS (AT91SAM9G10 SoC)
> at91sam9m10g45ek ARM926EJS (AT91SAM9G45 SoC)
>
> +Simon Guinot <simon.guinot@sequanux.org>
> +
> + inetspace_v2 ARM926EJS (Kirkwood SoC)
> + netspace_v2 ARM926EJS (Kirkwood SoC)
> + netspace_max_v2 ARM926EJS (Kirkwood SoC)
You are adding three boards support, the subject does not say the same.
> +
> Marius Gr?ger <mag@sysgo.de>
>
> impa7 ARM720T (EP7211)
> diff --git a/board/LaCie/netspace_v2/Makefile
> b/board/LaCie/netspace_v2/Makefile
> new file mode 100644
> index 0000000..a245f2c
> --- /dev/null
> +++ b/board/LaCie/netspace_v2/Makefile
> @@ -0,0 +1,49 @@
> +#
> +# Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> +#
> +# Based on Kirkwood support:
> +# (C) Copyright 2009
> +# Marvell Semiconductor <www.marvell.com>
> +# Written-by: Prafulla Wadaskar <prafulla@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
> +
> +LIB = $(obj)lib$(BOARD).o
> +
> +COBJS := netspace_v2.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))
> +
> +clean:
> + rm -f $(SOBJS) $(OBJS)
> +
> +distclean: clean
> + rm -f $(LIB) core *.bak .depend
> +
> +#######################################################################
> ##
> +
> +# defines $(obj).depend target
> +include $(SRCTREE)/rules.mk
> +
> +sinclude $(obj).depend
> +
> +#######################################################################
> ##
> diff --git a/board/LaCie/netspace_v2/kwbimage.cfg
> b/board/LaCie/netspace_v2/kwbimage.cfg
> new file mode 100644
> index 0000000..361feeb
> --- /dev/null
> +++ b/board/LaCie/netspace_v2/kwbimage.cfg
> @@ -0,0 +1,162 @@
> +#
> +# Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> +#
> +# Based on Kirkwood support:
> +# (C) Copyright 2009
> +# Marvell Semiconductor <www.marvell.com>
> +# Written-by: Prafulla Wadaskar <prafulla@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.
> +#
> +# Refer docs/README.kwimage for more details about how-to configure
> +# and create kirkwood boot image
> +#
> +
> +# Boot Media configurations
> +BOOT_FROM spi # Boot from SPI flash
> +
> +# SOC registers configuration using bootrom header extension
> +# Maximum KWBIMAGE_MAX_CONFIG configurations allowed
> +
> +# Configure RGMII-0 interface pad voltage to 1.8V
> +DATA 0xFFD100e0 0x1B1B1B9B
> +
> +#Dram initalization for SINGLE x16 CL=5 @ 400MHz
> +DATA 0xFFD01400 0x43000618 # DDR Configuration register
> +# bit13-0: 0xa00 (2560 DDR2 clks refresh rate)
> +# bit23-14: zero
> +# bit24: 1= enable exit self refresh mode on DDR access
> +# bit25: 1 required
> +# bit29-26: zero
> +# bit31-30: 01
> +
> +DATA 0xFFD01404 0x35143000 # DDR Controller Control Low
> +# bit 4: 0=addr/cmd in smame cycle
> +# bit 5: 0=clk is driven during self refresh, we don't care for APX
> +# bit 6: 0=use recommended falling edge of clk for addr/cmd
> +# bit14: 0=input buffer always powered up
> +# bit18: 1=cpu lock transaction enabled
> +# bit23-20: 5=recommended value for CL=5 and STARTBURST_DEL disabled
> bit31=0
> +# bit27-24: 8= CL+3, STARTBURST sample stages, for freqs 400MHz,
> unbuffered DIMM
> +# bit30-28: 3 required
> +# bit31: 0=no additional STARTBURST delay
> +
> +DATA 0xFFD01408 0x11012228 # DDR Timing (Low) (active cycles value
> +1)
> +# bit7-4: TRCD
> +# bit11- 8: TRP
> +# bit15-12: TWR
> +# bit19-16: TWTR
> +# bit20: TRAS msb
> +# bit23-21: 0x0
> +# bit27-24: TRRD
> +# bit31-28: TRTP
> +
> +DATA 0xFFD0140C 0x00000A19 # DDR Timing (High)
> +# bit6-0: TRFC
> +# bit8-7: TR2R
> +# bit10-9: TR2W
> +# bit12-11: TW2W
> +# bit31-13: zero required
> +
> +DATA 0xFFD01410 0x0000CCCC # DDR Address Control
> +# bit1-0: 01, Cs0width=x16
> +# bit3-2: 11, Cs0size=1Gb
> +# bit5-4: 00, Cs2width=nonexistent
> +# bit7-6: 00, Cs1size =nonexistent
> +# bit9-8: 00, Cs2width=nonexistent
> +# bit11-10: 00, Cs2size =nonexistent
> +# bit13-12: 00, Cs3width=nonexistent
> +# bit15-14: 00, Cs3size =nonexistent
> +# bit16: 0, Cs0AddrSel
> +# bit17: 0, Cs1AddrSel
> +# bit18: 0, Cs2AddrSel
> +# bit19: 0, Cs3AddrSel
> +# bit31-20: 0 required
> +
> +DATA 0xFFD01414 0x00000000 # DDR Open Pages Control
> +# bit0: 0, OpenPage enabled
> +# bit31-1: 0 required
> +
> +DATA 0xFFD01418 0x00000000 # DDR Operation
> +# bit3-0: 0x0, DDR cmd
> +# bit31-4: 0 required
> +
> +DATA 0xFFD0141C 0x00000632 # DDR Mode
> +# bit2-0: 2, BurstLen=2 required
> +# bit3: 0, BurstType=0 required
> +# bit6-4: 4, CL=5
> +# bit7: 0, TestMode=0 normal
> +# bit8: 0, DLL reset=0 normal
> +# bit11-9: 6, auto-precharge write recovery ????????????
> +# bit12: 0, PD must be zero
> +# bit31-13: 0 required
> +
> +DATA 0xFFD01420 0x00000004 # DDR Extended Mode
> +# bit0: 0, DDR DLL enabled
> +# bit1: 1, DDR drive strenght reduced
> +# bit2: 1, DDR ODT control lsd enabled
> +# bit5-3: 000, required
> +# bit6: 1, DDR ODT control msb, enabled
> +# bit9-7: 000, required
> +# bit10: 0, differential DQS enabled
> +# bit11: 0, required
> +# bit12: 0, DDR output buffer enabled
> +# bit31-13: 0 required
> +
> +DATA 0xFFD01424 0x0000F07F # DDR Controller Control High
> +# bit2-0: 111, required
> +# bit3 : 1 , MBUS Burst Chop disabled
> +# bit6-4: 111, required
> +# bit7 : 1 , D2P Latency enabled
> +# bit8 : 1 , add writepath sample stage, must be 1 for DDR freq >=
> 300MHz
> +# bit9 : 0 , no half clock cycle addition to dataout
> +# bit10 : 0 , 1/4 clock cycle skew enabled for addr/ctl signals
> +# bit11 : 0 , 1/4 clock cycle skew disabled for write mesh
> +# bit15-12: 1111 required
> +# bit31-16: 0 required
> +
> +DATA 0xFFD01428 0x00085520 # DDR2 ODT Read Timing (default values)
> +DATA 0xFFD0147C 0x00008552 # DDR2 ODT Write Timing (default values)
> +
> +DATA 0xFFD01500 0x00000000 # CS[0]n Base address to 0x0
> +DATA 0xFFD01504 0x0FFFFFF1 # CS[0]n Size
> +# bit0: 1, Window enabled
> +# bit1: 0, Write Protect disabled
> +# bit3-2: 00, CS0 hit selected
> +# bit23-4: ones, required
> +# bit31-24: 0x07, Size (i.e. 128MB)
> +
> +DATA 0xFFD0150C 0x00000000 # CS[1]n Size, window disabled
> +DATA 0xFFD01514 0x00000000 # CS[2]n Size, window disabled
> +DATA 0xFFD0151C 0x00000000 # CS[3]n Size, window disabled
> +
> +DATA 0xFFD01494 0x00010000 # DDR ODT Control (Low)
> +# bit3-0: 1, ODT0Rd, MODT[0] asserted during read from DRAM CS0
> +# bit19-16:1, ODT0Wr, MODT[0] asserted during write to DRAM CS0
> +
> +DATA 0xFFD01498 0x00000000 # DDR ODT Control (High)
> +# bit1-0: 00, ODT0 controlled by ODT Control (low) register above
> +# bit3-2: 01, ODT1 active NEVER!
> +# bit31-4: zero, required
> +
> +DATA 0xFFD0149C 0x0000E40F # CPU ODT Control
> +# bit3-0: 1, ODT0Rd, Internal ODT asserted during read from DRAM bank0
> +# bit7-4: 1, ODT0Wr, Internal ODT asserted during write to DRAM bank0
> +# bit11-10:1, DQ_ODTSel. ODT select turned on
> +
> +DATA 0xFFD01480 0x00000001 # DDR Initialization Control
> +#bit0=1, enable DDR init upon this register write
> +
> +# End of Header extension
> +DATA 0x0 0x0
> diff --git a/board/LaCie/netspace_v2/netspace_v2.c
> b/board/LaCie/netspace_v2/netspace_v2.c
> new file mode 100644
> index 0000000..9bc9940
> --- /dev/null
> +++ b/board/LaCie/netspace_v2/netspace_v2.c
> @@ -0,0 +1,144 @@
> +/*
> + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> + *
> + * Based on Kirkwood support:
> + * (C) Copyright 2009
> + * Marvell Semiconductor <www.marvell.com>
> + * Written-by: Prafulla Wadaskar <prafulla@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 <miiphy.h>
> +#include <netdev.h>
> +#include <command.h>
> +#include <asm/arch/kirkwood.h>
> +#include <asm/arch/mpp.h>
> +#include <asm/arch/gpio.h>
> +#include "netspace_v2.h"
> +
> +DECLARE_GLOBAL_DATA_PTR;
> +
> +int board_early_init_f(void)
> +{
> + /* Gpio configuration */
> + kw_config_gpio(NETSPACE_V2_OE_VAL_LOW, NETSPACE_V2_OE_VAL_HIGH,
> + NETSPACE_V2_OE_LOW, NETSPACE_V2_OE_HIGH);
> +
> + /* Multi-Purpose Pins Functionality configuration */
> + u32 kwmpp_config[] = {
> + MPP0_SPI_SCn,
> + MPP1_SPI_MOSI,
> + MPP2_SPI_SCK,
> + MPP3_SPI_MISO,
> + MPP4_NF_IO6,
> + MPP5_NF_IO7,
> + MPP6_SYSRST_OUTn,
> + MPP7_GPO, /* Fan speed (bit 1) */
> + MPP8_TW_SDA,
> + MPP9_TW_SCK,
> + MPP10_UART0_TXD,
> + MPP11_UART0_RXD,
> + MPP12_GPO, /* Red led */
> + MPP14_GPIO, /* USB fuse */
> + MPP16_GPIO, /* SATA 0 power */
> + MPP17_GPIO, /* SATA 1 power */
> + MPP18_NF_IO0,
> + MPP19_NF_IO1,
> + MPP20_SATA1_ACTn,
> + MPP21_SATA0_ACTn,
> + MPP22_GPIO, /* Fan speed (bit 0) */
> + MPP23_GPIO, /* Fan power */
> + MPP24_GPIO, /* USB mode select */
> + MPP25_GPIO, /* Fan rotation fail */
> + MPP26_GPIO, /* USB vbus-in detection */
> + MPP28_GPIO, /* USB enable vbus-out */
> + MPP29_GPIO, /* Blue led (slow register) */
> + MPP30_GPIO, /* Blue led (command register) */
> + MPP31_GPIO, /* Board power off */
> + MPP32_GPIO, /* Button (0 = Released, 1 = Pushed) */
> + MPP33_GPIO, /* Fan speed (bit 2) */
> + 0
> + };
> + kirkwood_mpp_conf(kwmpp_config);
> +
> + return 0;
> +}
> +
> +int board_init(void)
> +{
> + /* Machine number */
> + gd->bd->bi_arch_number = CONFIG_MACH_TYPE;
> +
> + /* Boot parameters address */
> + gd->bd->bi_boot_params = kw_sdram_bar(0) + 0x100;
> +
> + return 0;
> +}
> +
> +void mv_phy_88e1116_init(char *name)
> +{
> + u16 reg;
> + u16 devadr;
> +
> + if (miiphy_set_current_dev(name))
> + return;
> +
> + /* command to read PHY dev address */
> + if (miiphy_read(name, 0xEE, 0xEE, (u16 *) &devadr)) {
> + printf("Err..(%s) could not read PHY dev address\n", __func__);
> + return;
> + }
> +
> + /*
> + * Enable RGMII delay on Tx and Rx for CPU port
> + * Ref: sec 4.7.2 of chip datasheet
> + */
> + miiphy_write(name, devadr, MV88E1116_PGADR_REG, 2);
> + miiphy_read(name, devadr, MV88E1116_MAC_CTRL_REG, ®);
> + reg |= (MV88E1116_RGMII_RXTM_CTRL | MV88E1116_RGMII_TXTM_CTRL);
> + miiphy_write(name, devadr, MV88E1116_MAC_CTRL_REG, reg);
> + miiphy_write(name, devadr, MV88E1116_PGADR_REG, 0);
> +
> + /* reset the phy */
> + if (miiphy_read(name, devadr, MII_BMCR, ®) != 0) {
> + printf("Err..(%s) PHY status read failed\n", __func__);
> + return;
> + }
> + if (miiphy_write(name, devadr, MII_BMCR, reg | 0x8000) != 0) {
> + printf("Err..(%s) PHY reset failed\n", __func__);
> + return;
> + }
> +
> + debug("88E1116 Initialized on %s\n", name);
> +}
> +
> +/* Configure and initialize PHY */
> +void reset_phy(void)
> +{
> + mv_phy_88e1116_init("egiga0");
> +}
> +
> +#define NETSPACE_V2_GPIO_BUTTON 32
How about defining this in header file ?
> +
> +/* Return GPIO button status */
> +static int
> +do_read_button(cmd_tbl_t *cmdtp, int flag, int argc, char * const
> argv[])
> +{
> + return kw_gpio_get_value(NETSPACE_V2_GPIO_BUTTON);
> +}
> +
> +U_BOOT_CMD(button, 1, 1, do_read_button,
> + "Return GPIO button status 0=off 1=on", "");
> diff --git a/board/LaCie/netspace_v2/netspace_v2.h
> b/board/LaCie/netspace_v2/netspace_v2.h
> new file mode 100644
> index 0000000..c26a6e0
> --- /dev/null
> +++ b/board/LaCie/netspace_v2/netspace_v2.h
> @@ -0,0 +1,39 @@
> +/*
> + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> + *
> + * Based on Kirkwood support:
> + * (C) Copyright 2009
> + * Marvell Semiconductor <www.marvell.com>
> + * Written-by: Prafulla Wadaskar <prafulla@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.
> + */
> +
> +#ifndef NETSPACE_V2_H
> +#define NETSPACE_V2_H
> +
> +#define NETSPACE_V2_OE_LOW 0x06004000
> +#define NETSPACE_V2_OE_HIGH 0x00000031
> +#define NETSPACE_V2_OE_VAL_LOW 0x10030000
> +#define NETSPACE_V2_OE_VAL_HIGH 0x00000000
> +
> +/* PHY related */
> +#define MV88E1116_LED_FCTRL_REG 10
> +#define MV88E1116_CPRSP_CR3_REG 21
> +#define MV88E1116_MAC_CTRL_REG 21
> +#define MV88E1116_PGADR_REG 22
> +#define MV88E1116_RGMII_TXTM_CTRL (1 << 4)
> +#define MV88E1116_RGMII_RXTM_CTRL (1 << 5)
> +
> +#endif /* NETSPACE_V2_H */
> diff --git a/boards.cfg b/boards.cfg
> index bc193c6..5bd320e 100644
> --- a/boards.cfg
> +++ b/boards.cfg
> @@ -104,6 +104,9 @@ davinci_schmoogie arm arm926ejs
> schmoogie davinci
> davinci_sffsdr arm arm926ejs sffsdr
> davinci davinci
> davinci_sonata arm arm926ejs sonata
> davinci davinci
> suen3 arm arm926ejs km_arm
> keymile kirkwood
> +inetspace_v2 arm arm926ejs netspace_v2
> LaCie kirkwood netspace_v2:INETSPACE_V2
> +netspace_v2 arm arm926ejs netspace_v2
> LaCie kirkwood netspace_v2:NETSPACE_V2
> +netspace_max_v2 arm arm926ejs netspace_v2
> LaCie kirkwood netspace_v2:NETSPACE_MAX_V2
> guruplug arm arm926ejs -
> Marvell kirkwood
> mv88f6281gtw_ge arm arm926ejs -
> Marvell kirkwood
> openrd_base arm arm926ejs openrd
> Marvell kirkwood openrd:BOARD_IS_OPENRD_BASE
> diff --git a/include/configs/netspace_v2.h
> b/include/configs/netspace_v2.h
> new file mode 100644
> index 0000000..95b1e4b
> --- /dev/null
> +++ b/include/configs/netspace_v2.h
> @@ -0,0 +1,153 @@
> +/*
> + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.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.
> + */
> +
> +#ifndef _CONFIG_NETSPACE_V2_H
> +#define _CONFIG_NETSPACE_V2_H
> +
> +/*
> + * Machine number definition
> + */
> +#if defined(CONFIG_INETSPACE_V2)
> +#define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2
> +#define CONFIG_IDENT_STRING " LaCie Internet Space v2"
Ident strings defined for each board are very long, can you use short names? The console logs with such long ident looks ugly.
> +#elif defined(CONFIG_NETSPACE_V2)
> +#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2
> +#define CONFIG_IDENT_STRING " LaCie Network Space v2"
> +#elif defined(CONFIG_NETSPACE_MAX_V2)
> +#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2
> +#define CONFIG_IDENT_STRING " LaCie Network Space Max v2"
> +#endif
There should be #elif for third board and #error for #else part
> +
> +/*
> + * High Level Configuration Options (easy to change)
> + */
> +#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */
> +#define CONFIG_KIRKWOOD /* SOC Family Name */
> +#define CONFIG_KW88F6281 /* SOC Name */
> +#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_ENV
> +#define CONFIG_CMD_DHCP
> +#define CONFIG_CMD_PING
> +#define CONFIG_CMD_SF
> +#define CONFIG_CMD_I2C
> +#define CONFIG_CMD_IDE
> +#define CONFIG_CMD_USB
> +
> +/*
> + * Core clock definition.
> + */
> +#define CONFIG_SYS_TCLK 166000000 /* 166MHz */
This is not needed, defined in ..arch-kirkwood/kw88f6xxx.h
> +
> +/*
> + * mv-common.h should be defined after CMD configs since it used them
> + * to enable certain macros
> + */
> +#define CONFIG_NR_DRAM_BANKS 2
> +#include "mv-common.h"
> +
> +/* Remove or override few declarations from mv-common.h */
> +#undef CONFIG_RBTREE
> +#undef CONFIG_ENV_SPI_MAX_HZ
> +#undef CONFIG_SYS_IDE_MAXBUS
> +#undef CONFIG_SYS_IDE_MAXDEVICE
> +#undef CONFIG_SYS_PROMPT
> +#define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */
> +#define CONFIG_SYS_IDE_MAXBUS 1
> +#define CONFIG_SYS_IDE_MAXDEVICE 1
> +#define CONFIG_SYS_PROMPT "ns2> "
> +
> +/*
> + * Ethernet Driver configuration
> + */
> +#ifdef CONFIG_CMD_NET
> +#define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */
> +#define CONFIG_NETCONSOLE
> +#endif
> +
> +/*
> + * SATA Driver configuration
> + */
> +#ifdef CONFIG_MVSATA_IDE
> +#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
> +/* Network Space Max v2 use 2 SATA ports */
> +#ifdef CONFIG_NETSPACE_MAX_V2
> +#define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET
> +#endif
> +#endif
> +
> +/*
> + * Enable GPI0 support
> + */
> +#define CONFIG_KIRKWOOD_GPIO
> +
> +/*
> + * File systems support
> + */
> +#define CONFIG_CMD_EXT2
> +#define CONFIG_CMD_FAT
Get rid of this, use CONFIG_SYS_MVFS
> +
> +/*
> + * Use the HUSH parser
> + */
> +#define CONFIG_SYS_HUSH_PARSER
> +#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
> +
> +/*
> + * Console configuration
> + */
> +#define CONFIG_CONSOLE_MUX
> +#define CONFIG_SYS_CONSOLE_IS_IN_ENV
> +
> +/*
> + * Enable device tree support
> + */
> +#define CONFIG_OF_LIBFDT
> +
> +/*
> + * Environment variables configurations
> + */
> +#define CONFIG_ENV_IS_IN_SPI_FLASH
> +#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */
> +#define CONFIG_ENV_SIZE 0x1000 /* 4KB */
> +#define CONFIG_ENV_ADDR 0x70000
> +#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
> +
> +/*
> + * Default environment variables
> + */
> +#define CONFIG_BOOTARGS "console=ttyS0,115200"
> +
> +#define CONFIG_BOOTCOMMAND \
> + "if run usbload || run diskload; then bootm 0x800000; fi"
> +
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> + "stdin=serial,nc\0" \
> + "stdout=serial,nc\0" \
> + "stderr=serial,nc\0" \
> + "ipaddr=192.168.1.111\0" \
NAK for ipaddr, no ip address should be defined by default.
> + "diskload=ide reset && " \
> + "ext2load ide 0:1 0x800000 /boot/uImage\0" \
> + "usbload=usb start && " \
> + "fatload usb 0:1 0x800000 /boot/uImage\0"
> +
> +#endif /* _CONFIG_NETSPACE_V2_H */
Regards..
Praufulla . .
> --
> 1.6.3.1
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 2/2] Add support for Network Space v2
2011-05-12 10:36 ` Prafulla Wadaskar
@ 2011-05-12 11:47 ` Simon Guinot
2011-05-12 12:04 ` Prafulla Wadaskar
2011-05-12 16:15 ` Wolfgang Denk
0 siblings, 2 replies; 14+ messages in thread
From: Simon Guinot @ 2011-05-12 11:47 UTC (permalink / raw)
To: u-boot
Hi Prafulla,
On Thu, May 12, 2011 at 03:36:48AM -0700, Prafulla Wadaskar wrote:
>
>
> > -----Original Message-----
> > From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> > Sent: Thursday, May 12, 2011 3:19 PM
> > To: Prafulla Wadaskar
> > Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> > Subject: [PATH v7 2/2] Add support for Network Space v2
> >
> > This patch add support for the Network Space v2 board and parents, based
> > on the Marvell Kirkwood 6281 SoC. This include Network Space (Max) v2
> > and Internet Space v2.
> >
> > Additional information is available at:
> > http://lacie-nas.org/doku.php?id=network_space_v2
> >
> > Signed-off-by: Simon Guinot <sguinot@lacie.com>
> > ---
> > Changes for v2:
> > - add entries to MAINTAINERS file
> > - move boards from root Makefile to boards.cfg
> > - move MACH_TYPE definition into netspace_v2.h
> > - remove CONFIG_SYS_HZ redefinition
> > - turn PHY initialization message into debug()
> >
> > Changes for v3: none
> >
> > Changes for v4:
> > - enhance commit message: add SoC information
> >
> > Changes for v5: none
> >
> > Changes for v6:
> > - enable device tree support
> > - clean some "#define" in netspace_v2.h
> > - enhance commit message: provide description URL and mention SoC
> > family
> > - rebase against u-boot-{arm,marvell}/master branches
> >
> > Changes for v7:
> > - rebase against u-boot-marvell/master branch
> >
> > MAINTAINERS | 6 +
> > board/LaCie/netspace_v2/Makefile | 49 ++++++++++
> > board/LaCie/netspace_v2/kwbimage.cfg | 162
> > +++++++++++++++++++++++++++++++++
> > board/LaCie/netspace_v2/netspace_v2.c | 144
> > +++++++++++++++++++++++++++++
> > board/LaCie/netspace_v2/netspace_v2.h | 39 ++++++++
> > boards.cfg | 3 +
> > include/configs/netspace_v2.h | 153
> > +++++++++++++++++++++++++++++++
> > 7 files changed, 556 insertions(+), 0 deletions(-)
> > create mode 100644 board/LaCie/netspace_v2/Makefile
> > create mode 100644 board/LaCie/netspace_v2/kwbimage.cfg
> > create mode 100644 board/LaCie/netspace_v2/netspace_v2.c
> > create mode 100644 board/LaCie/netspace_v2/netspace_v2.h
> > create mode 100644 include/configs/netspace_v2.h
> >
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 24a55c2..47b724c 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -645,6 +645,12 @@ Sedji Gaouaou<sedji.gaouaou@atmel.com>
> > at91sam9g10ek ARM926EJS (AT91SAM9G10 SoC)
> > at91sam9m10g45ek ARM926EJS (AT91SAM9G45 SoC)
> >
> > +Simon Guinot <simon.guinot@sequanux.org>
> > +
> > + inetspace_v2 ARM926EJS (Kirkwood SoC)
> > + netspace_v2 ARM926EJS (Kirkwood SoC)
> > + netspace_max_v2 ARM926EJS (Kirkwood SoC)
>
> You are adding three boards support, the subject does not say the same.
OK, I will enhance the subject description.
[ snip ]
> > diff --git a/board/LaCie/netspace_v2/netspace_v2.c
> > b/board/LaCie/netspace_v2/netspace_v2.c
> > new file mode 100644
> > index 0000000..9bc9940
> > --- /dev/null
> > +++ b/board/LaCie/netspace_v2/netspace_v2.c
> > @@ -0,0 +1,144 @@
> > +/*
> > + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> > + *
> > + * Based on Kirkwood support:
> > + * (C) Copyright 2009
> > + * Marvell Semiconductor <www.marvell.com>
> > + * Written-by: Prafulla Wadaskar <prafulla@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 <miiphy.h>
> > +#include <netdev.h>
> > +#include <command.h>
> > +#include <asm/arch/kirkwood.h>
> > +#include <asm/arch/mpp.h>
> > +#include <asm/arch/gpio.h>
> > +#include "netspace_v2.h"
> > +
> > +DECLARE_GLOBAL_DATA_PTR;
> > +
> > +int board_early_init_f(void)
> > +{
> > + /* Gpio configuration */
> > + kw_config_gpio(NETSPACE_V2_OE_VAL_LOW, NETSPACE_V2_OE_VAL_HIGH,
> > + NETSPACE_V2_OE_LOW, NETSPACE_V2_OE_HIGH);
> > +
> > + /* Multi-Purpose Pins Functionality configuration */
> > + u32 kwmpp_config[] = {
> > + MPP0_SPI_SCn,
> > + MPP1_SPI_MOSI,
> > + MPP2_SPI_SCK,
> > + MPP3_SPI_MISO,
> > + MPP4_NF_IO6,
> > + MPP5_NF_IO7,
> > + MPP6_SYSRST_OUTn,
> > + MPP7_GPO, /* Fan speed (bit 1) */
> > + MPP8_TW_SDA,
> > + MPP9_TW_SCK,
> > + MPP10_UART0_TXD,
> > + MPP11_UART0_RXD,
> > + MPP12_GPO, /* Red led */
> > + MPP14_GPIO, /* USB fuse */
> > + MPP16_GPIO, /* SATA 0 power */
> > + MPP17_GPIO, /* SATA 1 power */
> > + MPP18_NF_IO0,
> > + MPP19_NF_IO1,
> > + MPP20_SATA1_ACTn,
> > + MPP21_SATA0_ACTn,
> > + MPP22_GPIO, /* Fan speed (bit 0) */
> > + MPP23_GPIO, /* Fan power */
> > + MPP24_GPIO, /* USB mode select */
> > + MPP25_GPIO, /* Fan rotation fail */
> > + MPP26_GPIO, /* USB vbus-in detection */
> > + MPP28_GPIO, /* USB enable vbus-out */
> > + MPP29_GPIO, /* Blue led (slow register) */
> > + MPP30_GPIO, /* Blue led (command register) */
> > + MPP31_GPIO, /* Board power off */
> > + MPP32_GPIO, /* Button (0 = Released, 1 = Pushed) */
> > + MPP33_GPIO, /* Fan speed (bit 2) */
> > + 0
> > + };
> > + kirkwood_mpp_conf(kwmpp_config);
> > +
> > + return 0;
> > +}
> > +
> > +int board_init(void)
> > +{
> > + /* Machine number */
> > + gd->bd->bi_arch_number = CONFIG_MACH_TYPE;
> > +
> > + /* Boot parameters address */
> > + gd->bd->bi_boot_params = kw_sdram_bar(0) + 0x100;
> > +
> > + return 0;
> > +}
> > +
> > +void mv_phy_88e1116_init(char *name)
> > +{
> > + u16 reg;
> > + u16 devadr;
> > +
> > + if (miiphy_set_current_dev(name))
> > + return;
> > +
> > + /* command to read PHY dev address */
> > + if (miiphy_read(name, 0xEE, 0xEE, (u16 *) &devadr)) {
> > + printf("Err..(%s) could not read PHY dev address\n", __func__);
> > + return;
> > + }
> > +
> > + /*
> > + * Enable RGMII delay on Tx and Rx for CPU port
> > + * Ref: sec 4.7.2 of chip datasheet
> > + */
> > + miiphy_write(name, devadr, MV88E1116_PGADR_REG, 2);
> > + miiphy_read(name, devadr, MV88E1116_MAC_CTRL_REG, ®);
> > + reg |= (MV88E1116_RGMII_RXTM_CTRL | MV88E1116_RGMII_TXTM_CTRL);
> > + miiphy_write(name, devadr, MV88E1116_MAC_CTRL_REG, reg);
> > + miiphy_write(name, devadr, MV88E1116_PGADR_REG, 0);
> > +
> > + /* reset the phy */
> > + if (miiphy_read(name, devadr, MII_BMCR, ®) != 0) {
> > + printf("Err..(%s) PHY status read failed\n", __func__);
> > + return;
> > + }
> > + if (miiphy_write(name, devadr, MII_BMCR, reg | 0x8000) != 0) {
> > + printf("Err..(%s) PHY reset failed\n", __func__);
> > + return;
> > + }
> > +
> > + debug("88E1116 Initialized on %s\n", name);
> > +}
> > +
> > +/* Configure and initialize PHY */
> > +void reset_phy(void)
> > +{
> > + mv_phy_88e1116_init("egiga0");
> > +}
> > +
> > +#define NETSPACE_V2_GPIO_BUTTON 32
>
> How about defining this in header file ?
I don't know. The GPIO button value is only useful within this file.
Visualise both the define and the usage on the same screen is rather
comfortable. As an alternative, I could drop the define...
What is your opinion ?
>
> > +
> > +/* Return GPIO button status */
> > +static int
> > +do_read_button(cmd_tbl_t *cmdtp, int flag, int argc, char * const
> > argv[])
> > +{
> > + return kw_gpio_get_value(NETSPACE_V2_GPIO_BUTTON);
> > +}
> > +
> > +U_BOOT_CMD(button, 1, 1, do_read_button,
> > + "Return GPIO button status 0=off 1=on", "");
> > diff --git a/board/LaCie/netspace_v2/netspace_v2.h
> > b/board/LaCie/netspace_v2/netspace_v2.h
> > new file mode 100644
> > index 0000000..c26a6e0
> > --- /dev/null
> > +++ b/board/LaCie/netspace_v2/netspace_v2.h
> > @@ -0,0 +1,39 @@
> > +/*
> > + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.com>
> > + *
> > + * Based on Kirkwood support:
> > + * (C) Copyright 2009
> > + * Marvell Semiconductor <www.marvell.com>
> > + * Written-by: Prafulla Wadaskar <prafulla@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.
> > + */
> > +
> > +#ifndef NETSPACE_V2_H
> > +#define NETSPACE_V2_H
> > +
> > +#define NETSPACE_V2_OE_LOW 0x06004000
> > +#define NETSPACE_V2_OE_HIGH 0x00000031
> > +#define NETSPACE_V2_OE_VAL_LOW 0x10030000
> > +#define NETSPACE_V2_OE_VAL_HIGH 0x00000000
> > +
> > +/* PHY related */
> > +#define MV88E1116_LED_FCTRL_REG 10
> > +#define MV88E1116_CPRSP_CR3_REG 21
> > +#define MV88E1116_MAC_CTRL_REG 21
> > +#define MV88E1116_PGADR_REG 22
> > +#define MV88E1116_RGMII_TXTM_CTRL (1 << 4)
> > +#define MV88E1116_RGMII_RXTM_CTRL (1 << 5)
> > +
> > +#endif /* NETSPACE_V2_H */
> > diff --git a/boards.cfg b/boards.cfg
> > index bc193c6..5bd320e 100644
> > --- a/boards.cfg
> > +++ b/boards.cfg
> > @@ -104,6 +104,9 @@ davinci_schmoogie arm arm926ejs
> > schmoogie davinci
> > davinci_sffsdr arm arm926ejs sffsdr
> > davinci davinci
> > davinci_sonata arm arm926ejs sonata
> > davinci davinci
> > suen3 arm arm926ejs km_arm
> > keymile kirkwood
> > +inetspace_v2 arm arm926ejs netspace_v2
> > LaCie kirkwood netspace_v2:INETSPACE_V2
> > +netspace_v2 arm arm926ejs netspace_v2
> > LaCie kirkwood netspace_v2:NETSPACE_V2
> > +netspace_max_v2 arm arm926ejs netspace_v2
> > LaCie kirkwood netspace_v2:NETSPACE_MAX_V2
> > guruplug arm arm926ejs -
> > Marvell kirkwood
> > mv88f6281gtw_ge arm arm926ejs -
> > Marvell kirkwood
> > openrd_base arm arm926ejs openrd
> > Marvell kirkwood openrd:BOARD_IS_OPENRD_BASE
> > diff --git a/include/configs/netspace_v2.h
> > b/include/configs/netspace_v2.h
> > new file mode 100644
> > index 0000000..95b1e4b
> > --- /dev/null
> > +++ b/include/configs/netspace_v2.h
> > @@ -0,0 +1,153 @@
> > +/*
> > + * Copyright (C) 2011 Simon Guinot <sguinot@lacie.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.
> > + */
> > +
> > +#ifndef _CONFIG_NETSPACE_V2_H
> > +#define _CONFIG_NETSPACE_V2_H
> > +
> > +/*
> > + * Machine number definition
> > + */
> > +#if defined(CONFIG_INETSPACE_V2)
> > +#define CONFIG_MACH_TYPE MACH_TYPE_INETSPACE_V2
> > +#define CONFIG_IDENT_STRING " LaCie Internet Space v2"
>
> Ident strings defined for each board are very long, can you use short names? The console logs with such long ident looks ugly.
Ok, I could drop the LaCie prefix. Is it enough ?
Otherwise, I could use some alias but it could be confusing for board
identification.
>
> > +#elif defined(CONFIG_NETSPACE_V2)
> > +#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_V2
> > +#define CONFIG_IDENT_STRING " LaCie Network Space v2"
> > +#elif defined(CONFIG_NETSPACE_MAX_V2)
> > +#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2
> > +#define CONFIG_IDENT_STRING " LaCie Network Space Max v2"
> > +#endif
>
> There should be #elif for third board and #error for #else part
I have noticed this #error in the other board include files. Is it
really needed ? This file is only included if one machine is selected.
>
> > +
> > +/*
> > + * High Level Configuration Options (easy to change)
> > + */
> > +#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion */
> > +#define CONFIG_KIRKWOOD /* SOC Family Name */
> > +#define CONFIG_KW88F6281 /* SOC Name */
> > +#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_ENV
> > +#define CONFIG_CMD_DHCP
> > +#define CONFIG_CMD_PING
> > +#define CONFIG_CMD_SF
> > +#define CONFIG_CMD_I2C
> > +#define CONFIG_CMD_IDE
> > +#define CONFIG_CMD_USB
> > +
> > +/*
> > + * Core clock definition.
> > + */
> > +#define CONFIG_SYS_TCLK 166000000 /* 166MHz */
>
> This is not needed, defined in ..arch-kirkwood/kw88f6xxx.h
Actually it is. The core clock value is not standard for this boards.
For a 6281 SoC, TCLK is defined to 200MHz and Network Space v2 TCLK is
166MHz.
This define has been introduced with a previous patch (already merged):
18c4cb0f: Kirkwood: allow to override CONFIG_SYS_TCLK
>
> > +
> > +/*
> > + * mv-common.h should be defined after CMD configs since it used them
> > + * to enable certain macros
> > + */
> > +#define CONFIG_NR_DRAM_BANKS 2
> > +#include "mv-common.h"
> > +
> > +/* Remove or override few declarations from mv-common.h */
> > +#undef CONFIG_RBTREE
> > +#undef CONFIG_ENV_SPI_MAX_HZ
> > +#undef CONFIG_SYS_IDE_MAXBUS
> > +#undef CONFIG_SYS_IDE_MAXDEVICE
> > +#undef CONFIG_SYS_PROMPT
> > +#define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */
> > +#define CONFIG_SYS_IDE_MAXBUS 1
> > +#define CONFIG_SYS_IDE_MAXDEVICE 1
> > +#define CONFIG_SYS_PROMPT "ns2> "
> > +
> > +/*
> > + * Ethernet Driver configuration
> > + */
> > +#ifdef CONFIG_CMD_NET
> > +#define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only */
> > +#define CONFIG_NETCONSOLE
> > +#endif
> > +
> > +/*
> > + * SATA Driver configuration
> > + */
> > +#ifdef CONFIG_MVSATA_IDE
> > +#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
> > +/* Network Space Max v2 use 2 SATA ports */
> > +#ifdef CONFIG_NETSPACE_MAX_V2
> > +#define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET
> > +#endif
> > +#endif
> > +
> > +/*
> > + * Enable GPI0 support
> > + */
> > +#define CONFIG_KIRKWOOD_GPIO
> > +
> > +/*
> > + * File systems support
> > + */
> > +#define CONFIG_CMD_EXT2
> > +#define CONFIG_CMD_FAT
>
> Get rid of this, use CONFIG_SYS_MVFS
Outch. Please no :)
CONFIG_SYS_MVFS enable support for mtd, jffs2 and ubifs.
It is completely useless for a Network Space v2 board where the SPI
flash size is 512KB. The whole space is for U-Boot.
>
> > +
> > +/*
> > + * Use the HUSH parser
> > + */
> > +#define CONFIG_SYS_HUSH_PARSER
> > +#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
> > +
> > +/*
> > + * Console configuration
> > + */
> > +#define CONFIG_CONSOLE_MUX
> > +#define CONFIG_SYS_CONSOLE_IS_IN_ENV
> > +
> > +/*
> > + * Enable device tree support
> > + */
> > +#define CONFIG_OF_LIBFDT
> > +
> > +/*
> > + * Environment variables configurations
> > + */
> > +#define CONFIG_ENV_IS_IN_SPI_FLASH
> > +#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */
> > +#define CONFIG_ENV_SIZE 0x1000 /* 4KB */
> > +#define CONFIG_ENV_ADDR 0x70000
> > +#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
> > +
> > +/*
> > + * Default environment variables
> > + */
> > +#define CONFIG_BOOTARGS "console=ttyS0,115200"
> > +
> > +#define CONFIG_BOOTCOMMAND \
> > + "if run usbload || run diskload; then bootm 0x800000; fi"
> > +
> > +#define CONFIG_EXTRA_ENV_SETTINGS \
> > + "stdin=serial,nc\0" \
> > + "stdout=serial,nc\0" \
> > + "stderr=serial,nc\0" \
> > + "ipaddr=192.168.1.111\0" \
>
> NAK for ipaddr, no ip address should be defined by default.
I understand, but I need a known IP address.
I want people to be able to update the stock U-Boot using netconsole
(without a serial link which require to open the case). At restart,
right after the update, a user must be able to figure out the board IP.
An alternative could be using a DHCP configuration.
>
> > + "diskload=ide reset && " \
> > + "ext2load ide 0:1 0x800000 /boot/uImage\0" \
> > + "usbload=usb start && " \
> > + "fatload usb 0:1 0x800000 /boot/uImage\0"
> > +
> > +#endif /* _CONFIG_NETSPACE_V2_H */
Thanks for your comments.
Regards,
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/20110512/a0fce3c1/attachment.pgp
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 10:17 ` Prafulla Wadaskar
@ 2011-05-12 11:55 ` Simon Guinot
2011-05-12 12:14 ` Prafulla Wadaskar
2011-05-12 16:16 ` Wolfgang Denk
2011-05-12 15:14 ` Mike Frysinger
1 sibling, 2 replies; 14+ messages in thread
From: Simon Guinot @ 2011-05-12 11:55 UTC (permalink / raw)
To: u-boot
Hi Prafulla,
On Thu, May 12, 2011 at 03:17:24AM -0700, Prafulla Wadaskar wrote:
>
>
> > -----Original Message-----
> > From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> > Sent: Thursday, May 12, 2011 3:19 PM
> > To: Prafulla Wadaskar
> > Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> > Subject: [PATH v7 1/2] netconsole: remove `serverip' check
> >
> > This patch allows to enable the netconsole even if `serverip' is not
> > set.
> >
> > Because netconsole use the environment variable `ncip' to configure the
> > destination IP, `serverip' don't need to be defined.
> >
> > Signed-off-by: Simon Guinot <sguinot@lacie.com>
> > ---
> > Changes for v2:
> > - restore NetOurIP check
> >
> > Changes for v3:
> > - add a "/* Fall through */" comment before the NETCONS case label
> >
> > Changes for v4,5: none
> >
> > Changes for v6:
> > - enhance commit message
> >
> > Changes for v7: none
> >
> > net/net.c | 3 ++-
> > 1 files changed, 2 insertions(+), 1 deletions(-)
>
> This patch looks to be independent.
> I don't have any comments for this.
> Should be applied to u-boot-net.git.
The patch itself is independent but the Network Space v2 board setup
rely on it. Without this patch, the netconsole is not usable and the
netconsole is needed to update the stock U-Boot.
IMHO, this two patches should go in the same tree, to avoid a breakage
situation.
Regards,
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/20110512/b3bfb004/attachment.pgp
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 2/2] Add support for Network Space v2
2011-05-12 11:47 ` Simon Guinot
@ 2011-05-12 12:04 ` Prafulla Wadaskar
2011-05-12 16:15 ` Wolfgang Denk
1 sibling, 0 replies; 14+ messages in thread
From: Prafulla Wadaskar @ 2011-05-12 12:04 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Simon Guinot [mailto:simon at sequanux.org]
> Sent: Thursday, May 12, 2011 5:17 PM
> To: Prafulla Wadaskar
> Cc: Simon Guinot; Albert ARIBAUD; u-boot at lists.denx.de; Ashish Karkare;
> Prabhanjan Sarnaik
> Subject: Re: [PATH v7 2/2] Add support for Network Space v2
>
> Hi Prafulla,
>
> On Thu, May 12, 2011 at 03:36:48AM -0700, Prafulla Wadaskar wrote:
> >
> >
> > > -----Original Message-----
> > > From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> > > Sent: Thursday, May 12, 2011 3:19 PM
> > > To: Prafulla Wadaskar
> > > Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> > > Subject: [PATH v7 2/2] Add support for Network Space v2
> > >
> > > This patch add support for the Network Space v2 board and parents,
> based
> > > on the Marvell Kirkwood 6281 SoC. This include Network Space (Max)
> v2
> > > and Internet Space v2.
> > >
> > > Additional information is available at:
> > > http://lacie-nas.org/doku.php?id=network_space_v2
> > >
> > > Signed-off-by: Simon Guinot <sguinot@lacie.com>
> > > ---
> > > Changes for v2:
> > > - add entries to MAINTAINERS file
> > > - move boards from root Makefile to boards.cfg
> > > - move MACH_TYPE definition into netspace_v2.h
> > > - remove CONFIG_SYS_HZ redefinition
> > > - turn PHY initialization message into debug()
> > >
> > > Changes for v3: none
> > >
> > > Changes for v4:
> > > - enhance commit message: add SoC information
> > >
> > > Changes for v5: none
> > >
> > > Changes for v6:
> > > - enable device tree support
> > > - clean some "#define" in netspace_v2.h
> > > - enhance commit message: provide description URL and mention SoC
> > > family
> > > - rebase against u-boot-{arm,marvell}/master branches
> > >
> > > Changes for v7:
> > > - rebase against u-boot-marvell/master branch
> > >
> > > MAINTAINERS | 6 +
> > > board/LaCie/netspace_v2/Makefile | 49 ++++++++++
> > > board/LaCie/netspace_v2/kwbimage.cfg | 162
> > > +++++++++++++++++++++++++++++++++
> > > board/LaCie/netspace_v2/netspace_v2.c | 144
> > > +++++++++++++++++++++++++++++
> > > board/LaCie/netspace_v2/netspace_v2.h | 39 ++++++++
> > > boards.cfg | 3 +
> > > include/configs/netspace_v2.h | 153
> > > +++++++++++++++++++++++++++++++
> > > 7 files changed, 556 insertions(+), 0 deletions(-)
> > > create mode 100644 board/LaCie/netspace_v2/Makefile
> > > create mode 100644 board/LaCie/netspace_v2/kwbimage.cfg
> > > create mode 100644 board/LaCie/netspace_v2/netspace_v2.c
> > > create mode 100644 board/LaCie/netspace_v2/netspace_v2.h
> > > create mode 100644 include/configs/netspace_v2.h
> > >
...snip..
> > > +
> > > +/* Configure and initialize PHY */
> > > +void reset_phy(void)
> > > +{
> > > + mv_phy_88e1116_init("egiga0");
> > > +}
> > > +
> > > +#define NETSPACE_V2_GPIO_BUTTON 32
> >
> > How about defining this in header file ?
>
> I don't know. The GPIO button value is only useful within this file.
> Visualise both the define and the usage on the same screen is rather
> comfortable. As an alternative, I could drop the define...
>
> What is your opinion ?
Do not drop it, I will recommend to put it in board/LaCie/netspace_v2/netspace_v2.h.
...snip...
> > > +#endif
> >
> > There should be #elif for third board and #error for #else part
>
> I have noticed this #error in the other board include files. Is it
> really needed ? This file is only included if one machine is selected.
>
No it is not really needed, choice is yours :-)
> >
> > > +
> > > +/*
> > > + * High Level Configuration Options (easy to change)
> > > + */
> > > +#define CONFIG_FEROCEON_88FR131 /* CPU Core subversion
> */
> > > +#define CONFIG_KIRKWOOD /* SOC Family Name */
> > > +#define CONFIG_KW88F6281 /* SOC Name */
> > > +#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_ENV
> > > +#define CONFIG_CMD_DHCP
> > > +#define CONFIG_CMD_PING
> > > +#define CONFIG_CMD_SF
> > > +#define CONFIG_CMD_I2C
> > > +#define CONFIG_CMD_IDE
> > > +#define CONFIG_CMD_USB
> > > +
> > > +/*
> > > + * Core clock definition.
> > > + */
> > > +#define CONFIG_SYS_TCLK 166000000 /* 166MHz */
> >
> > This is not needed, defined in ..arch-kirkwood/kw88f6xxx.h
>
> Actually it is. The core clock value is not standard for this boards.
> For a 6281 SoC, TCLK is defined to 200MHz and Network Space v2 TCLK is
> 166MHz.
>
> This define has been introduced with a previous patch (already merged):
> 18c4cb0f: Kirkwood: allow to override CONFIG_SYS_TCLK
>
Okay I take my words back, I was referring kw88f6162.h :-(
> >
> > > +
> > > +/*
> > > + * mv-common.h should be defined after CMD configs since it used
> them
> > > + * to enable certain macros
> > > + */
> > > +#define CONFIG_NR_DRAM_BANKS 2
> > > +#include "mv-common.h"
> > > +
> > > +/* Remove or override few declarations from mv-common.h */
> > > +#undef CONFIG_RBTREE
> > > +#undef CONFIG_ENV_SPI_MAX_HZ
> > > +#undef CONFIG_SYS_IDE_MAXBUS
> > > +#undef CONFIG_SYS_IDE_MAXDEVICE
> > > +#undef CONFIG_SYS_PROMPT
> > > +#define CONFIG_ENV_SPI_MAX_HZ 20000000 /* 20Mhz */
> > > +#define CONFIG_SYS_IDE_MAXBUS 1
> > > +#define CONFIG_SYS_IDE_MAXDEVICE 1
> > > +#define CONFIG_SYS_PROMPT "ns2> "
> > > +
> > > +/*
> > > + * Ethernet Driver configuration
> > > + */
> > > +#ifdef CONFIG_CMD_NET
> > > +#define CONFIG_MVGBE_PORTS {1, 0} /* enable port 0 only
> */
> > > +#define CONFIG_NETCONSOLE
> > > +#endif
> > > +
> > > +/*
> > > + * SATA Driver configuration
> > > + */
> > > +#ifdef CONFIG_MVSATA_IDE
> > > +#define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
> > > +/* Network Space Max v2 use 2 SATA ports */
> > > +#ifdef CONFIG_NETSPACE_MAX_V2
> > > +#define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET
> > > +#endif
> > > +#endif
> > > +
> > > +/*
> > > + * Enable GPI0 support
> > > + */
> > > +#define CONFIG_KIRKWOOD_GPIO
> > > +
> > > +/*
> > > + * File systems support
> > > + */
> > > +#define CONFIG_CMD_EXT2
> > > +#define CONFIG_CMD_FAT
> >
> > Get rid of this, use CONFIG_SYS_MVFS
>
> Outch. Please no :)
>
> CONFIG_SYS_MVFS enable support for mtd, jffs2 and ubifs.
> It is completely useless for a Network Space v2 board where the SPI
> flash size is 512KB. The whole space is for U-Boot.
Okay..
>
> >
> > > +
> > > +/*
> > > + * Use the HUSH parser
> > > + */
> > > +#define CONFIG_SYS_HUSH_PARSER
> > > +#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
> > > +
> > > +/*
> > > + * Console configuration
> > > + */
> > > +#define CONFIG_CONSOLE_MUX
> > > +#define CONFIG_SYS_CONSOLE_IS_IN_ENV
> > > +
> > > +/*
> > > + * Enable device tree support
> > > + */
> > > +#define CONFIG_OF_LIBFDT
> > > +
> > > +/*
> > > + * Environment variables configurations
> > > + */
> > > +#define CONFIG_ENV_IS_IN_SPI_FLASH
> > > +#define CONFIG_ENV_SECT_SIZE 0x10000 /* 64KB */
> > > +#define CONFIG_ENV_SIZE 0x1000 /* 4KB */
> > > +#define CONFIG_ENV_ADDR 0x70000
> > > +#define CONFIG_ENV_OFFSET 0x70000 /* env starts here */
> > > +
> > > +/*
> > > + * Default environment variables
> > > + */
> > > +#define CONFIG_BOOTARGS "console=ttyS0,115200"
> > > +
> > > +#define CONFIG_BOOTCOMMAND \
> > > + "if run usbload || run diskload; then bootm 0x800000; fi"
> > > +
> > > +#define CONFIG_EXTRA_ENV_SETTINGS \
> > > + "stdin=serial,nc\0" \
> > > + "stdout=serial,nc\0" \
> > > + "stderr=serial,nc\0" \
> > > + "ipaddr=192.168.1.111\0" \
> >
> > NAK for ipaddr, no ip address should be defined by default.
>
> I understand, but I need a known IP address.
>
> I want people to be able to update the stock U-Boot using netconsole
> (without a serial link which require to open the case). At restart,
> right after the update, a user must be able to figure out the board IP.
>
> An alternative could be using a DHCP configuration.
I wish to know Wolfgang's or Ben's comments on this.
Because I remember strategically hard coding ipaddress is not recommend.
Regards..
Prafulla . .
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 11:55 ` Simon Guinot
@ 2011-05-12 12:14 ` Prafulla Wadaskar
2011-05-12 16:16 ` Wolfgang Denk
1 sibling, 0 replies; 14+ messages in thread
From: Prafulla Wadaskar @ 2011-05-12 12:14 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Simon Guinot [mailto:simon at sequanux.org]
> Sent: Thursday, May 12, 2011 5:25 PM
> To: Prafulla Wadaskar
> Cc: Simon Guinot; Albert ARIBAUD; u-boot at lists.denx.de; Wolfgang Denk;
> Ashish Karkare; Prabhanjan Sarnaik
> Subject: Re: [PATH v7 1/2] netconsole: remove `serverip' check
>
> Hi Prafulla,
>
> On Thu, May 12, 2011 at 03:17:24AM -0700, Prafulla Wadaskar wrote:
> >
> >
> > > -----Original Message-----
> > > From: Simon Guinot [mailto:simon.guinot at sequanux.org]
> > > Sent: Thursday, May 12, 2011 3:19 PM
> > > To: Prafulla Wadaskar
> > > Cc: Albert ARIBAUD; u-boot at lists.denx.de; Simon Guinot
> > > Subject: [PATH v7 1/2] netconsole: remove `serverip' check
> > >
> > > This patch allows to enable the netconsole even if `serverip' is not
> > > set.
> > >
> > > Because netconsole use the environment variable `ncip' to configure
> the
> > > destination IP, `serverip' don't need to be defined.
> > >
> > > Signed-off-by: Simon Guinot <sguinot@lacie.com>
> > > ---
> > > Changes for v2:
> > > - restore NetOurIP check
> > >
> > > Changes for v3:
> > > - add a "/* Fall through */" comment before the NETCONS case label
> > >
> > > Changes for v4,5: none
> > >
> > > Changes for v6:
> > > - enhance commit message
> > >
> > > Changes for v7: none
> > >
> > > net/net.c | 3 ++-
> > > 1 files changed, 2 insertions(+), 1 deletions(-)
> >
> > This patch looks to be independent.
> > I don't have any comments for this.
> > Should be applied to u-boot-net.git.
>
> The patch itself is independent but the Network Space v2 board setup
> rely on it. Without this patch, the netconsole is not usable and the
> netconsole is needed to update the stock U-Boot.
>
> IMHO, this two patches should go in the same tree, to avoid a breakage
> situation.
I understand the situation, at least we need acked by respective custodians.
Copying Wolfgang for the same
Regards..
Prafulla . .
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 10:17 ` Prafulla Wadaskar
2011-05-12 11:55 ` Simon Guinot
@ 2011-05-12 15:14 ` Mike Frysinger
1 sibling, 0 replies; 14+ messages in thread
From: Mike Frysinger @ 2011-05-12 15:14 UTC (permalink / raw)
To: u-boot
On Thursday, May 12, 2011 06:17:24 Prafulla Wadaskar wrote:
> Hi Ben/Wolfgang
> Can you pls review/comment/pull it ?
Ben is no longer here, and the u-boot-net tree is dead. Wolfgang is currently
covering things.
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20110512/fa767e3b/attachment.pgp
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 2/2] Add support for Network Space v2
2011-05-12 11:47 ` Simon Guinot
2011-05-12 12:04 ` Prafulla Wadaskar
@ 2011-05-12 16:15 ` Wolfgang Denk
1 sibling, 0 replies; 14+ messages in thread
From: Wolfgang Denk @ 2011-05-12 16:15 UTC (permalink / raw)
To: u-boot
Dear Simon Guinot,
In message <20110512114727.GC6693@kw.sim.vm.gnt> you wrote:
>
> > > +#define CONFIG_IDENT_STRING " LaCie Network Space v2"
> > > +#elif defined(CONFIG_NETSPACE_MAX_V2)
> > > +#define CONFIG_MACH_TYPE MACH_TYPE_NETSPACE_MAX_V2
> > > +#define CONFIG_IDENT_STRING " LaCie Network Space Max v2"
> > > +#endif
> >
> > There should be #elif for third board and #error for #else part
>
> I have noticed this #error in the other board include files. Is it
> really needed ? This file is only included if one machine is selected.
Defensive programming is a Good Thing. Today you remember that there
are only three boards. Next year somebody adds another one and fails
to update all relevant places.
> > > +#define CONFIG_CMD_EXT2
> > > +#define CONFIG_CMD_FAT
> >
> > Get rid of this, use CONFIG_SYS_MVFS
>
> Outch. Please no :)
Agreed. Leave as is.
> > > + "ipaddr=192.168.1.111\0" \
> >
> > NAK for ipaddr, no ip address should be defined by default.
>
> I understand, but I need a known IP address.
>
> I want people to be able to update the stock U-Boot using netconsole
> (without a serial link which require to open the case). At restart,
> right after the update, a user must be able to figure out the board IP.
>
> An alternative could be using a DHCP configuration.
Yes, that would be much better.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
It is easier to change the specification to fit the program than vice
versa.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 11:55 ` Simon Guinot
2011-05-12 12:14 ` Prafulla Wadaskar
@ 2011-05-12 16:16 ` Wolfgang Denk
1 sibling, 0 replies; 14+ messages in thread
From: Wolfgang Denk @ 2011-05-12 16:16 UTC (permalink / raw)
To: u-boot
Dear Simon Guinot,
In message <20110512115521.GD6693@kw.sim.vm.gnt> you wrote:
>
> > This patch looks to be independent.
> > I don't have any comments for this.
> > Should be applied to u-boot-net.git.
>
> The patch itself is independent but the Network Space v2 board setup
> rely on it. Without this patch, the netconsole is not usable and the
> netconsole is needed to update the stock U-Boot.
>
> IMHO, this two patches should go in the same tree, to avoid a breakage
> situation.
No. This will go into master. Soon.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Yes, it is written. Good shall always destroy evil.
-- Sirah the Yang, "The Omega Glory", stardate unknown
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 9:48 ` [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check Simon Guinot
2011-05-12 10:17 ` Prafulla Wadaskar
@ 2011-05-12 17:12 ` Wolfgang Denk
2011-05-13 11:52 ` Prafulla Wadaskar
1 sibling, 1 reply; 14+ messages in thread
From: Wolfgang Denk @ 2011-05-12 17:12 UTC (permalink / raw)
To: u-boot
Dear Simon Guinot,
In message <1305193737-5952-2-git-send-email-simon.guinot@sequanux.org> you wrote:
> This patch allows to enable the netconsole even if `serverip' is not set.
>
> Because netconsole use the environment variable `ncip' to configure the
> destination IP, `serverip' don't need to be defined.
>
> Signed-off-by: Simon Guinot <sguinot@lacie.com>
> ---
> Changes for v2:
> - restore NetOurIP check
>
> Changes for v3:
> - add a "/* Fall through */" comment before the NETCONS case label
>
> Changes for v4,5: none
>
> Changes for v6:
> - enhance commit message
>
> Changes for v7: none
>
> net/net.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
Applied, thanks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
In an organization, each person rises to the level of his own incom-
petency - The Peter Principle
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
2011-05-12 17:12 ` Wolfgang Denk
@ 2011-05-13 11:52 ` Prafulla Wadaskar
0 siblings, 0 replies; 14+ messages in thread
From: Prafulla Wadaskar @ 2011-05-13 11:52 UTC (permalink / raw)
To: u-boot
> -----Original Message-----
> From: Wolfgang Denk [mailto:wd at denx.de]
> Sent: Thursday, May 12, 2011 10:42 PM
> To: Simon Guinot
> Cc: Prafulla Wadaskar; u-boot at lists.denx.de
> Subject: Re: [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check
>
> Dear Simon Guinot,
>
> In message <1305193737-5952-2-git-send-email-simon.guinot@sequanux.org>
> you wrote:
> > This patch allows to enable the netconsole even if `serverip' is not
> set.
> >
> > Because netconsole use the environment variable `ncip' to configure
> the
> > destination IP, `serverip' don't need to be defined.
> >
> > Signed-off-by: Simon Guinot <sguinot@lacie.com>
> > ---
> > Changes for v2:
> > - restore NetOurIP check
> >
> > Changes for v3:
> > - add a "/* Fall through */" comment before the NETCONS case label
> >
> > Changes for v4,5: none
> >
> > Changes for v6:
> > - enhance commit message
> >
> > Changes for v7: none
> >
> > net/net.c | 3 ++-
> > 1 files changed, 2 insertions(+), 1 deletions(-)
>
> Applied, thanks.
Hi Albert
Since this patch is applied, Simon can post only one patch.
May you please pull it in u-boot-arm.git ?
Regards..
Prafulla . .
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2011-05-13 11:52 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-12 9:48 [U-Boot] [PATH v7 0/2] Add support for LaCie NAS Network Space v2 Simon Guinot
2011-05-12 9:48 ` [U-Boot] [PATH v7 1/2] netconsole: remove `serverip' check Simon Guinot
2011-05-12 10:17 ` Prafulla Wadaskar
2011-05-12 11:55 ` Simon Guinot
2011-05-12 12:14 ` Prafulla Wadaskar
2011-05-12 16:16 ` Wolfgang Denk
2011-05-12 15:14 ` Mike Frysinger
2011-05-12 17:12 ` Wolfgang Denk
2011-05-13 11:52 ` Prafulla Wadaskar
2011-05-12 9:48 ` [U-Boot] [PATH v7 2/2] Add support for Network Space v2 Simon Guinot
2011-05-12 10:36 ` Prafulla Wadaskar
2011-05-12 11:47 ` Simon Guinot
2011-05-12 12:04 ` Prafulla Wadaskar
2011-05-12 16:15 ` Wolfgang Denk
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.