All of lore.kernel.org
 help / color / mirror / Atom feed
From: simon.guinot@sequanux.org (Simon Guinot)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: kirkwood: DT board setup for CloudBox
Date: Fri, 29 Mar 2013 19:41:10 +0100	[thread overview]
Message-ID: <20130329184109.GA16404@kw.sim.vm.gnt> (raw)
In-Reply-To: <20130329153132.GJ13280@titan.lakedaemon.net>

On Fri, Mar 29, 2013 at 11:31:32AM -0400, Jason Cooper wrote:
> Neat! another new board!

Others are coming :)

> 
> On Fri, Mar 29, 2013 at 12:06:46PM +0100, Simon Guinot wrote:
> > This patch adds DT board setup for the LaCie NAS CloudBox. The CloudBox
> > is a low cost NAS based on the Network Space v2.
> > 
> > Chipset list:
> > - CPU MARVELL 88F6702 1Ghz
> > - SDRAM memory: 256MB DDR2-800 (2x128MB x8) 400Mhz
> > - 1 Ethernet Gigabit port (PHY MARVELL 88E1318)
> > - SPI flash, NOR 512KB
> > - 1 push button
> > - 2 LEDs (red and blue)
> > 
> > Note that there is no EEPROM and no USB ports embedded.
> > 
> > Signed-off-by: Simon Guinot <simon.guinot@sequanux.org>
> > ---
> >  arch/arm/boot/dts/Makefile              |    3 +-
> >  arch/arm/boot/dts/kirkwood-cloudbox.dts |   89 +++++++++++++++++++++++++++++++
> >  arch/arm/configs/kirkwood_defconfig     |    1 +
> >  arch/arm/mach-kirkwood/Kconfig          |    7 +++
> >  arch/arm/mach-kirkwood/Makefile         |    1 +
> >  arch/arm/mach-kirkwood/board-dt.c       |    4 +-
> >  arch/arm/mach-kirkwood/board-ns2.c      |    3 +-
> >  arch/arm/mach-kirkwood/common.h         |    6 +++
> >  8 files changed, 111 insertions(+), 3 deletions(-)
> >  create mode 100644 arch/arm/boot/dts/kirkwood-cloudbox.dts
> > 
> > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> > index 9c62558..8b535ad 100644
> > --- a/arch/arm/boot/dts/Makefile
> > +++ b/arch/arm/boot/dts/Makefile
> > @@ -51,7 +51,8 @@ dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb \
> >  dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
> >  	integratorcp.dtb
> >  dtb-$(CONFIG_ARCH_LPC32XX) += ea3250.dtb phy3250.dtb
> > -dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-dns320.dtb \
> > +dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
> > +	kirkwood-dns320.dtb \
> >  	kirkwood-dns325.dtb \
> >  	kirkwood-dockstar.dtb \
> >  	kirkwood-dreamplug.dtb \
> > diff --git a/arch/arm/boot/dts/kirkwood-cloudbox.dts b/arch/arm/boot/dts/kirkwood-cloudbox.dts
> > new file mode 100644
> > index 0000000..93024b7
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
> > @@ -0,0 +1,89 @@
> > +/dts-v1/;
> > +
> > +/include/ "kirkwood.dtsi"
> > +/include/ "kirkwood-6281.dtsi"
> > +
> > +/ {
> > +	model = "LaCie CloudBox";
> > +	compatible = "lacie,cloudbox", "marvell,kirkwood-88f6702", "marvell,kirkwood";
> 
> Is there a more specific string we can add here?  eg
> "lacie,cloudbox-MODEL", "lacie,cloudbox", ...

Unfortunately no. CloudBox is a product name which is also used by LaCie
to name the board and the project.

> 
> > +
> > +	memory {
> > +		device_type = "memory";
> > +		reg = <0x00000000 0x10000000>;
> > +	};
> > +
> > +	chosen {
> > +		bootargs = "console=ttyS0,115200n8";
> > +	};
> > +
> > +	ocp at f1000000 {
> > +		pinctrl: pinctrl at 10000 {
> > +			pinctrl-0 = < &pmx_spi &pmx_twsi0 &pmx_uart0
> > +					&pmx_cloudbox_sata0 >;
> > +			pinctrl-names = "default";
> > +
> > +			pmx_cloudbox_sata0: pmx-cloudbox-sata0 {
> > +				marvell,pins = "mpp15";
> > +				marvell,function = "sata0";
> > +			};
> > +		};
> > +
> > +		serial at 12000 {
> > +			clock-frequency = <166666667>;
> > +			status = "okay";
> > +		};
> > +
> > +		sata at 80000 {
> > +			status = "okay";
> > +			nr-ports = <1>;
> > +		};
> > +
> > +		spi at 10600 {
> > +			status = "okay";
> > +
> > +			flash at 0 {
> > +				#address-cells = <1>;
> > +				#size-cells = <1>;
> > +				compatible = "mx25l4005a";
> > +				reg = <0>;
> > +				spi-max-frequency = <20000000>;
> > +				mode = <0>;
> > +
> > +				partition at 0 {
> > +					reg = <0x0 0x80000>;
> > +					label = "u-boot";
> > +				};
> 
> Is there a u-boot environment block we should add here?  Would be nice
> to be able to edit it from userspace.

The environment position depends from the U-Boot version: mainline or
LaCie stock. I think it is more simple to have a single partition.

Note that this not prevent from editing the environment. One has just to
provide the correct offset for the u-boot tools fw_{printenv/saveenv},
via a configuration file: /etc/fw_env.config.
 
> 
> > +			};
> > +		};
> > +	};
> > +
> > +	gpio_keys {
> > +		compatible = "gpio-keys";
> > +		#address-cells = <1>;
> > +		#size-cells = <0>;
> > +
> > +		button at 1 {
> > +			label = "Power push button";
> > +			linux,code = <116>;
> > +			gpios = <&gpio0 16 1>;
> > +		};
> > +	};
> > +
> > +	gpio-leds {
> > +		compatible = "gpio-leds";
> > +
> > +		red-fail {
> > +			label = "cloudbox:red:fail";
> > +			gpios = <&gpio0 14 0>;
> > +		};
> > +		blue-sata {
> > +			label = "cloudbox:blue:sata";
> > +			gpios = <&gpio0 15 0>;
> > +		};
> > +	};
> > +
> > +	gpio_poweroff {
> > +		compatible = "gpio-poweroff";
> > +		gpios = <&gpio0 17 0>;
> > +	};
> > +};
> > diff --git a/arch/arm/configs/kirkwood_defconfig b/arch/arm/configs/kirkwood_defconfig
> > index 13482ea..94aff34 100644
> > --- a/arch/arm/configs/kirkwood_defconfig
> > +++ b/arch/arm/configs/kirkwood_defconfig
> > @@ -35,6 +35,7 @@ CONFIG_MACH_NETSPACE_LITE_V2_DT=y
> >  CONFIG_MACH_NETSPACE_MINI_V2_DT=y
> >  CONFIG_MACH_OPENBLOCKS_A6_DT=y
> >  CONFIG_MACH_TOPKICK_DT=y
> > +CONFIG_MACH_CLOUDBOX_DT=y
> 
> Thanks for adding this.
> 
> >  CONFIG_MACH_TS219=y
> >  CONFIG_MACH_TS41X=y
> >  CONFIG_MACH_DOCKSTAR=y
> > diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
> > index 7b6a64b..c6ffbce 100644
> > --- a/arch/arm/mach-kirkwood/Kconfig
> > +++ b/arch/arm/mach-kirkwood/Kconfig
> > @@ -201,6 +201,13 @@ config MACH_TOPKICK_DT
> >  	  Say 'Y' here if you want your kernel to support the
> >  	  USI Topkick, using Flattened Device Tree
> >  
> > +config MACH_CLOUDBOX_DT
> > +	bool "LaCie CloudBox NAS (Flattened Device Tree)"
> > +	select ARCH_KIRKWOOD_DT
> > +	help
> > +	  Say 'Y' here if you want your kernel to support the LaCie
> > +	  CloudBox NAS, using Flattened Device Tree.
> > +
> 
> Could you please add this block alphabetically among the MACH_.*_DT
> entries?  It reduces the number of merge conflicts for us.

Oh sorry, I missed that.

> 
> >  config MACH_TS219
> >  	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
> >  	help
> > diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
> > index 4cc4bee..c1b81d3 100644
> > --- a/arch/arm/mach-kirkwood/Makefile
> > +++ b/arch/arm/mach-kirkwood/Makefile
> > @@ -40,3 +40,4 @@ obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT)	+= board-ns2.o
> >  obj-$(CONFIG_MACH_NSA310_DT)		+= board-nsa310.o
> >  obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT)	+= board-openblocks_a6.o
> >  obj-$(CONFIG_MACH_TOPKICK_DT)		+= board-usi_topkick.o
> > +obj-$(CONFIG_MACH_CLOUDBOX_DT)		+= board-ns2.o
> > diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
> > index d367aa6..fdaac4e 100644
> > --- a/arch/arm/mach-kirkwood/board-dt.c
> > +++ b/arch/arm/mach-kirkwood/board-dt.c
> > @@ -143,7 +143,8 @@ static void __init kirkwood_dt_init(void)
> >  	    of_machine_is_compatible("lacie,netspace_v2") ||
> >  	    of_machine_is_compatible("lacie,netspace_max_v2") ||
> >  	    of_machine_is_compatible("lacie,netspace_lite_v2") ||
> > -	    of_machine_is_compatible("lacie,netspace_mini_v2"))
> > +	    of_machine_is_compatible("lacie,netspace_mini_v2") ||
> > +	    of_machine_is_compatible("lacie,cloudbox"))
> 
> alphabetical here, too (I know, it's not perfect right now :) )

No problem.

> 
> >  		ns2_init();
> >  
> >  	if (of_machine_is_compatible("mpl,cec4"))
> > @@ -180,6 +181,7 @@ static const char * const kirkwood_dt_board_compat[] = {
> >  	"plathome,openblocks-a6",
> >  	"usi,topkick",
> >  	"zyxel,nsa310",
> > +	"lacie,cloudbox",
> 
> alpha...

OK again.

Thanks.

Simon
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20130329/60c332cb/attachment-0001.sig>

  reply	other threads:[~2013-03-29 18:41 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-29 11:06 [PATCH] ARM: kirkwood: DT board setup for CloudBox Simon Guinot
2013-03-29 15:31 ` Jason Cooper
2013-03-29 18:41   ` Simon Guinot [this message]
2013-03-30  6:51     ` Chris Moore
2013-03-30 15:08       ` Jason Cooper
2013-04-01 16:44         ` Simon Guinot
2013-04-01 16:33       ` Simon Guinot
2013-04-02  4:17         ` Chris Moore
2013-04-02 11:04           ` Simon Guinot
2013-04-02 11:45           ` Jason Cooper
2013-04-02 12:54             ` Simon Guinot
2013-04-02 17:24               ` Jason Cooper
2013-04-04  4:54                 ` Chris Moore
2013-04-04  8:00                   ` Simon Guinot
2013-04-04  9:34                     ` Simon Guinot
2013-04-05  1:11                       ` Jason Cooper
2013-04-05  5:14                         ` Chris Moore
2013-04-08 17:00                           ` Jason Cooper
2013-03-29 17:09 ` Andrew Lunn
2013-03-29 18:51   ` Simon Guinot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130329184109.GA16404@kw.sim.vm.gnt \
    --to=simon.guinot@sequanux.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.