* [PATCH 0/4] Support for DLINK DIR665
@ 2014-10-31 22:13 Andrew Lunn
2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn
` (4 more replies)
0 siblings, 5 replies; 12+ messages in thread
From: Andrew Lunn @ 2014-10-31 22:13 UTC (permalink / raw)
To: linux-arm-kernel
The DLINK is a wireless access point using a Kirkwood processor
and a Marvell TopDog wifi chipset.
The base device tree file was provided by Claudio Leite. I've
performed a few cleanups, added dsa support for the in build switch,
and extended the defconfigs for regression testing.
Andrew Lunn (3):
ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture
ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig
ARM: config: Add DLINK DIR665 options to multi_v5_defconfig
Claudio Leite (1):
ARM: Kirkwood: Add support for DLink DIR665
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/kirkwood-dir665.dts | 278 ++++++++++++++++++++++++++++++++++
arch/arm/configs/multi_v5_defconfig | 2 +
arch/arm/configs/mvebu_v5_defconfig | 2 +
4 files changed, 283 insertions(+)
create mode 100644 arch/arm/boot/dts/kirkwood-dir665.dts
--
2.1.1
^ permalink raw reply [flat|nested] 12+ messages in thread* [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn @ 2014-10-31 22:13 ` Andrew Lunn 2014-10-31 22:45 ` Claudio Leite 2014-11-01 16:03 ` Jason Cooper 2014-10-31 22:13 ` [PATCH 2/4] ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture Andrew Lunn ` (3 subsequent siblings) 4 siblings, 2 replies; 12+ messages in thread From: Andrew Lunn @ 2014-10-31 22:13 UTC (permalink / raw) To: linux-arm-kernel From: Claudio Leite <leitec@staticky.com> Add a device tree description of the DLINK DIR665 wireless access point. The support for the 88E6171 switch will be added in a later patch. Signed-off-by: Andrew Lunn <andrew@lunn.ch> --- This description was mostly produced by Claudio Leite with a few minor cleanups by my. --- arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/kirkwood-dir665.dts | 233 ++++++++++++++++++++++++++++++++++ 2 files changed, 234 insertions(+) create mode 100644 arch/arm/boot/dts/kirkwood-dir665.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 38c89cafa1ab..31529ccc67a0 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -104,6 +104,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += kirkwood-b3.dtb \ kirkwood-d2net.dtb \ kirkwood-db-88f6281.dtb \ kirkwood-db-88f6282.dtb \ + kirkwood-dir665.dtb \ kirkwood-dns320.dtb \ kirkwood-dns325.dtb \ kirkwood-dockstar.dtb \ diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts new file mode 100644 index 000000000000..ac945ea49940 --- /dev/null +++ b/arch/arm/boot/dts/kirkwood-dir665.dts @@ -0,0 +1,233 @@ +/* + * Copyright (C) 2014 Claudio Leite <leitec@staticky.com> + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + */ + +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" + +/ { + model = "D-Link DIR-665"; + compatible = "dlink,dir-665", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + memory { + device_type = "memory"; + reg = <0x00000000 0x8000000>; /* 128 MB */ + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk"; + stdout-path = &uart0; + }; + + mbus { + pcie-controller { + status = "okay"; + + pcie at 1,0 { + status = "okay"; + }; + }; + }; + + ocp at f1000000 { + pinctrl: pin-controller at 10000 { + pinctrl-0 =< &pmx_led_usb + &pmx_led_internet_blue + &pmx_led_internet_amber + &pmx_led_5g &pmx_led_status_blue + &pmx_led_wps &pmx_led_status_amber + &pmx_led_24g + &pmx_btn_restart &pmx_btn_wps>; + pinctrl-names = "default"; + + pmx_led_usb: pmx-led-usb { + marvell,pins = "mpp12"; + marvell,function = "gpio"; + }; + pmx_led_internet_blue: pmx-led-internet-blue { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_led_internet_amber: pmx-led-internet-amber { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_led_5g: pmx-led-5g { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_led_status_blue: pmx-led-status-blue { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + pmx_led_wps: pmx-led-wps { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + pmx_led_status_amber: pmx-led-status-amber { + marvell,pins = "mpp48"; + marvell,function = "gpio"; + }; + pmx_led_24g: pmx-led-24g { + marvell,pins = "mpp49"; + marvell,function = "gpio"; + }; + pmx_btn_restart: pmx-btn-restart { + marvell,pins = "mpp28"; + marvell,function = "gpio"; + }; + pmx_btn_wps: pmx-btn-wps { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + }; + + spi at 10600 { + status = "okay"; + m25p80 at 0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "mxicy,mx25l12805d"; + spi-max-frequency = <50000000>; + reg = <0>; + + partition at 0 { + label = "uboot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition at 30000 { + label = "nvram"; + reg = <0x30000 0x10000>; + read-only; + }; + + partition at 40000 { + label = "kernel"; + reg = <0x40000 0x180000>; + }; + + partition at 1c0000 { + label = "rootfs"; + reg = <0x1c0000 0xe00000>; + }; + + cal_data: partition at fc0000 { + label = "cal_data"; + reg = <0xfc0000 0x10000>; + read-only; + }; + + partition at fd0000 { + label = "lang_pack"; + reg = <0xfd0000 0x30000>; + read-only; + }; + }; + }; + + serial at 12000 { + status = "okay"; + }; + + i2c at 11000 { + status = "okay"; + }; + + ehci at 50000 { + status = "okay"; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + blue-usb { + label = "dir665:blue:usb"; + gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; + }; + blue-internet { + /* Can only be turned on if the Internet + * Ethernet port has Link + */ + label = "dir665:blue:internet"; + gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; + }; + amber-internet { + label = "dir665:amber:internet"; + gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; + }; + blue-wifi5g { + label = "dir665:blue:5g"; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + }; + blue-status { + label = "dir665:blue:status"; + gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; + }; + blue-wps { + label = "dir665:blue:wps"; + gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; + }; + amber-status { + label = "dir665:amber:status"; + gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; + }; + blue-24g { + label = "dir665:blue:24g"; + gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + + reset { + label = "reset"; + linux,code = <KEY_RESTART>; + gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; + }; + wps { + label = "wps"; + linux,code = <KEY_WPS_BUTTON>; + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&mdio { + status = "okay"; +}; + +/* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set + * fixed speed and duplex. */ +ð0 { + status = "okay"; + + ethernet0-port at 0 { + speed = <1000>; + duplex = <1>; + }; +}; + +/* eth1 is connected to the switch as well. However DSA only supports a + * single CPU port. So leave this port disabled to avoid confusion. */ + +ð1 { + status = "disabled"; +}; + +/* There is no battery on the boards, so the RTC does not keep time + * when there is now power, making it useless. */ +&rtc { + status = "disabled"; +}; -- 2.1.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn @ 2014-10-31 22:45 ` Claudio Leite 2014-11-01 16:03 ` Jason Cooper 1 sibling, 0 replies; 12+ messages in thread From: Claudio Leite @ 2014-10-31 22:45 UTC (permalink / raw) To: linux-arm-kernel * Andrew Lunn (andrew at lunn.ch) wrote: > From: Claudio Leite <leitec@staticky.com> > > Add a device tree description of the DLINK DIR665 wireless access > point. The support for the 88E6171 switch will be added in a later > patch. > > Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Claudio Leite <leitec@staticky.com> > --- > > This description was mostly produced by Claudio Leite with a few > minor cleanups by my. > --- > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/kirkwood-dir665.dts | 233 ++++++++++++++++++++++++++++++++++ > 2 files changed, 234 insertions(+) > create mode 100644 arch/arm/boot/dts/kirkwood-dir665.dts > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index 38c89cafa1ab..31529ccc67a0 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -104,6 +104,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += kirkwood-b3.dtb \ > kirkwood-d2net.dtb \ > kirkwood-db-88f6281.dtb \ > kirkwood-db-88f6282.dtb \ > + kirkwood-dir665.dtb \ > kirkwood-dns320.dtb \ > kirkwood-dns325.dtb \ > kirkwood-dockstar.dtb \ > diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts > new file mode 100644 > index 000000000000..ac945ea49940 > --- /dev/null > +++ b/arch/arm/boot/dts/kirkwood-dir665.dts > @@ -0,0 +1,233 @@ > +/* > + * Copyright (C) 2014 Claudio Leite <leitec@staticky.com> > + * > + * This file is licensed under the terms of the GNU General Public > + * License version 2. This program is licensed "as is" without any > + * warranty of any kind, whether express or implied. > + */ > + > +/dts-v1/; > + > +#include "kirkwood.dtsi" > +#include "kirkwood-6281.dtsi" > + > +/ { > + model = "D-Link DIR-665"; > + compatible = "dlink,dir-665", "marvell,kirkwood-88f6281", "marvell,kirkwood"; > + > + memory { > + device_type = "memory"; > + reg = <0x00000000 0x8000000>; /* 128 MB */ > + }; > + > + chosen { > + bootargs = "console=ttyS0,115200n8 earlyprintk"; > + stdout-path = &uart0; > + }; > + > + mbus { > + pcie-controller { > + status = "okay"; > + > + pcie at 1,0 { > + status = "okay"; > + }; > + }; > + }; > + > + ocp at f1000000 { > + pinctrl: pin-controller at 10000 { > + pinctrl-0 =< &pmx_led_usb > + &pmx_led_internet_blue > + &pmx_led_internet_amber > + &pmx_led_5g &pmx_led_status_blue > + &pmx_led_wps &pmx_led_status_amber > + &pmx_led_24g > + &pmx_btn_restart &pmx_btn_wps>; > + pinctrl-names = "default"; > + > + pmx_led_usb: pmx-led-usb { > + marvell,pins = "mpp12"; > + marvell,function = "gpio"; > + }; > + pmx_led_internet_blue: pmx-led-internet-blue { > + marvell,pins = "mpp42"; > + marvell,function = "gpio"; > + }; > + pmx_led_internet_amber: pmx-led-internet-amber { > + marvell,pins = "mpp43"; > + marvell,function = "gpio"; > + }; > + pmx_led_5g: pmx-led-5g { > + marvell,pins = "mpp44"; > + marvell,function = "gpio"; > + }; > + pmx_led_status_blue: pmx-led-status-blue { > + marvell,pins = "mpp45"; > + marvell,function = "gpio"; > + }; > + pmx_led_wps: pmx-led-wps { > + marvell,pins = "mpp47"; > + marvell,function = "gpio"; > + }; > + pmx_led_status_amber: pmx-led-status-amber { > + marvell,pins = "mpp48"; > + marvell,function = "gpio"; > + }; > + pmx_led_24g: pmx-led-24g { > + marvell,pins = "mpp49"; > + marvell,function = "gpio"; > + }; > + pmx_btn_restart: pmx-btn-restart { > + marvell,pins = "mpp28"; > + marvell,function = "gpio"; > + }; > + pmx_btn_wps: pmx-btn-wps { > + marvell,pins = "mpp46"; > + marvell,function = "gpio"; > + }; > + }; > + > + spi at 10600 { > + status = "okay"; > + m25p80 at 0 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "mxicy,mx25l12805d"; > + spi-max-frequency = <50000000>; > + reg = <0>; > + > + partition at 0 { > + label = "uboot"; > + reg = <0x0 0x30000>; > + read-only; > + }; > + > + partition at 30000 { > + label = "nvram"; > + reg = <0x30000 0x10000>; > + read-only; > + }; > + > + partition at 40000 { > + label = "kernel"; > + reg = <0x40000 0x180000>; > + }; > + > + partition at 1c0000 { > + label = "rootfs"; > + reg = <0x1c0000 0xe00000>; > + }; > + > + cal_data: partition at fc0000 { > + label = "cal_data"; > + reg = <0xfc0000 0x10000>; > + read-only; > + }; > + > + partition at fd0000 { > + label = "lang_pack"; > + reg = <0xfd0000 0x30000>; > + read-only; > + }; > + }; > + }; > + > + serial at 12000 { > + status = "okay"; > + }; > + > + i2c at 11000 { > + status = "okay"; > + }; > + > + ehci at 50000 { > + status = "okay"; > + }; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + blue-usb { > + label = "dir665:blue:usb"; > + gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; > + }; > + blue-internet { > + /* Can only be turned on if the Internet > + * Ethernet port has Link > + */ > + label = "dir665:blue:internet"; > + gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; > + }; > + amber-internet { > + label = "dir665:amber:internet"; > + gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; > + }; > + blue-wifi5g { > + label = "dir665:blue:5g"; > + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; > + }; > + blue-status { > + label = "dir665:blue:status"; > + gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; > + }; > + blue-wps { > + label = "dir665:blue:wps"; > + gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; > + }; > + amber-status { > + label = "dir665:amber:status"; > + gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; > + }; > + blue-24g { > + label = "dir665:blue:24g"; > + gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + reset { > + label = "reset"; > + linux,code = <KEY_RESTART>; > + gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; > + }; > + wps { > + label = "wps"; > + linux,code = <KEY_WPS_BUTTON>; > + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; > + }; > + }; > +}; > + > +&mdio { > + status = "okay"; > +}; > + > +/* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set > + * fixed speed and duplex. */ > +ð0 { > + status = "okay"; > + > + ethernet0-port at 0 { > + speed = <1000>; > + duplex = <1>; > + }; > +}; > + > +/* eth1 is connected to the switch as well. However DSA only supports a > + * single CPU port. So leave this port disabled to avoid confusion. */ > + > +ð1 { > + status = "disabled"; > +}; > + > +/* There is no battery on the boards, so the RTC does not keep time > + * when there is now power, making it useless. */ > +&rtc { > + status = "disabled"; > +}; > -- > 2.1.1 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn 2014-10-31 22:45 ` Claudio Leite @ 2014-11-01 16:03 ` Jason Cooper 2014-11-01 20:11 ` Andrew Lunn 1 sibling, 1 reply; 12+ messages in thread From: Jason Cooper @ 2014-11-01 16:03 UTC (permalink / raw) To: linux-arm-kernel On Fri, Oct 31, 2014 at 11:13:30PM +0100, Andrew Lunn wrote: > From: Claudio Leite <leitec@staticky.com> > > Add a device tree description of the DLINK DIR665 wireless access > point. The support for the 88E6171 switch will be added in a later > patch. > > Signed-off-by: Andrew Lunn <andrew@lunn.ch> > --- > > This description was mostly produced by Claudio Leite with a few > minor cleanups by my. > --- > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/kirkwood-dir665.dts | 233 ++++++++++++++++++++++++++++++++++ > 2 files changed, 234 insertions(+) > create mode 100644 arch/arm/boot/dts/kirkwood-dir665.dts > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index 38c89cafa1ab..31529ccc67a0 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -104,6 +104,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += kirkwood-b3.dtb \ > kirkwood-d2net.dtb \ > kirkwood-db-88f6281.dtb \ > kirkwood-db-88f6282.dtb \ > + kirkwood-dir665.dtb \ > kirkwood-dns320.dtb \ > kirkwood-dns325.dtb \ > kirkwood-dockstar.dtb \ > diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts > new file mode 100644 > index 000000000000..ac945ea49940 > --- /dev/null > +++ b/arch/arm/boot/dts/kirkwood-dir665.dts > @@ -0,0 +1,233 @@ > +/* > + * Copyright (C) 2014 Claudio Leite <leitec@staticky.com> > + * > + * This file is licensed under the terms of the GNU General Public > + * License version 2. This program is licensed "as is" without any > + * warranty of any kind, whether express or implied. > + */ > + > +/dts-v1/; > + > +#include "kirkwood.dtsi" > +#include "kirkwood-6281.dtsi" > + > +/ { > + model = "D-Link DIR-665"; > + compatible = "dlink,dir-665", "marvell,kirkwood-88f6281", "marvell,kirkwood"; > + > + memory { > + device_type = "memory"; > + reg = <0x00000000 0x8000000>; /* 128 MB */ > + }; > + > + chosen { > + bootargs = "console=ttyS0,115200n8 earlyprintk"; > + stdout-path = &uart0; > + }; > + > + mbus { > + pcie-controller { > + status = "okay"; > + > + pcie at 1,0 { > + status = "okay"; > + }; > + }; > + }; > + > + ocp at f1000000 { > + pinctrl: pin-controller at 10000 { > + pinctrl-0 =< &pmx_led_usb > + &pmx_led_internet_blue > + &pmx_led_internet_amber > + &pmx_led_5g &pmx_led_status_blue > + &pmx_led_wps &pmx_led_status_amber > + &pmx_led_24g > + &pmx_btn_restart &pmx_btn_wps>; > + pinctrl-names = "default"; > + > + pmx_led_usb: pmx-led-usb { > + marvell,pins = "mpp12"; > + marvell,function = "gpio"; > + }; > + pmx_led_internet_blue: pmx-led-internet-blue { > + marvell,pins = "mpp42"; > + marvell,function = "gpio"; > + }; > + pmx_led_internet_amber: pmx-led-internet-amber { > + marvell,pins = "mpp43"; > + marvell,function = "gpio"; > + }; > + pmx_led_5g: pmx-led-5g { > + marvell,pins = "mpp44"; > + marvell,function = "gpio"; > + }; > + pmx_led_status_blue: pmx-led-status-blue { > + marvell,pins = "mpp45"; > + marvell,function = "gpio"; > + }; > + pmx_led_wps: pmx-led-wps { > + marvell,pins = "mpp47"; > + marvell,function = "gpio"; > + }; > + pmx_led_status_amber: pmx-led-status-amber { > + marvell,pins = "mpp48"; > + marvell,function = "gpio"; > + }; > + pmx_led_24g: pmx-led-24g { > + marvell,pins = "mpp49"; > + marvell,function = "gpio"; > + }; > + pmx_btn_restart: pmx-btn-restart { > + marvell,pins = "mpp28"; > + marvell,function = "gpio"; > + }; > + pmx_btn_wps: pmx-btn-wps { > + marvell,pins = "mpp46"; > + marvell,function = "gpio"; > + }; > + }; > + > + spi at 10600 { > + status = "okay"; > + m25p80 at 0 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "mxicy,mx25l12805d"; > + spi-max-frequency = <50000000>; > + reg = <0>; > + > + partition at 0 { > + label = "uboot"; > + reg = <0x0 0x30000>; > + read-only; > + }; > + > + partition at 30000 { > + label = "nvram"; > + reg = <0x30000 0x10000>; > + read-only; > + }; > + > + partition at 40000 { > + label = "kernel"; > + reg = <0x40000 0x180000>; > + }; > + > + partition at 1c0000 { > + label = "rootfs"; > + reg = <0x1c0000 0xe00000>; > + }; > + > + cal_data: partition at fc0000 { > + label = "cal_data"; > + reg = <0xfc0000 0x10000>; > + read-only; > + }; > + > + partition at fd0000 { > + label = "lang_pack"; > + reg = <0xfd0000 0x30000>; > + read-only; > + }; > + }; > + }; > + > + serial at 12000 { > + status = "okay"; > + }; > + > + i2c at 11000 { > + status = "okay"; > + }; > + > + ehci at 50000 { > + status = "okay"; > + }; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + blue-usb { > + label = "dir665:blue:usb"; > + gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; > + }; > + blue-internet { > + /* Can only be turned on if the Internet > + * Ethernet port has Link > + */ > + label = "dir665:blue:internet"; > + gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; > + }; > + amber-internet { > + label = "dir665:amber:internet"; > + gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; > + }; > + blue-wifi5g { > + label = "dir665:blue:5g"; > + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; > + }; > + blue-status { > + label = "dir665:blue:status"; > + gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; > + }; > + blue-wps { > + label = "dir665:blue:wps"; > + gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; > + }; > + amber-status { > + label = "dir665:amber:status"; > + gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; > + }; > + blue-24g { > + label = "dir665:blue:24g"; > + gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + reset { > + label = "reset"; > + linux,code = <KEY_RESTART>; > + gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; > + }; > + wps { > + label = "wps"; > + linux,code = <KEY_WPS_BUTTON>; > + gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; > + }; > + }; > +}; > + > +&mdio { > + status = "okay"; > +}; > + > +/* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set > + * fixed speed and duplex. */ > +ð0 { > + status = "okay"; > + > + ethernet0-port at 0 { > + speed = <1000>; > + duplex = <1>; > + }; > +}; > + > +/* eth1 is connected to the switch as well. However DSA only supports a > + * single CPU port. So leave this port disabled to avoid confusion. */ > + > +ð1 { > + status = "disabled"; > +}; > + > +/* There is no battery on the boards, so the RTC does not keep time > + * when there is now power, making it useless. */ Wow... so much for accurate logging. At any rate, s/now/no/. I'll fix it up when I pull it in if there's nothing else. thx, Jason. > +&rtc { > + status = "disabled"; > +}; > -- > 2.1.1 > ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 2014-11-01 16:03 ` Jason Cooper @ 2014-11-01 20:11 ` Andrew Lunn 2014-11-01 20:16 ` Jason Cooper 0 siblings, 1 reply; 12+ messages in thread From: Andrew Lunn @ 2014-11-01 20:11 UTC (permalink / raw) To: linux-arm-kernel > > +/* There is no battery on the boards, so the RTC does not keep time > > + * when there is now power, making it useless. */ > > Wow... so much for accurate logging. At any rate, s/now/no/. I'll fix > it up when I pull it in if there's nothing else. Hi Jason I assume the firmware use NTP, But strangely, there does appear to be a crystal, at least i assume there is since there is no error message at boot time about the clock not ticking. So it probably does keep time so long as the power is on. I did wonder if my board has a flat battery, but i cannot find a battery... Andrew ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 2014-11-01 20:11 ` Andrew Lunn @ 2014-11-01 20:16 ` Jason Cooper 0 siblings, 0 replies; 12+ messages in thread From: Jason Cooper @ 2014-11-01 20:16 UTC (permalink / raw) To: linux-arm-kernel On Sat, Nov 01, 2014 at 09:11:39PM +0100, Andrew Lunn wrote: > > > +/* There is no battery on the boards, so the RTC does not keep time > > > + * when there is now power, making it useless. */ > > > > Wow... so much for accurate logging. At any rate, s/now/no/. I'll fix > > it up when I pull it in if there's nothing else. > > Hi Jason > > I assume the firmware use NTP, But strangely, there does appear to be > a crystal, at least i assume there is since there is no error message > at boot time about the clock not ticking. So it probably does keep > time so long as the power is on. I did wonder if my board has a flat > battery, but i cannot find a battery... supercap? thx, Jason. ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/4] ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn 2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn @ 2014-10-31 22:13 ` Andrew Lunn 2014-10-31 22:13 ` [PATCH 3/4] ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig Andrew Lunn ` (2 subsequent siblings) 4 siblings, 0 replies; 12+ messages in thread From: Andrew Lunn @ 2014-10-31 22:13 UTC (permalink / raw) To: linux-arm-kernel The DIR665 has an 8 port Ethernet Switch, a Marvell mv88e6171. Add a DSA node in DT, to instantiate DSA support for the 4 back panel ports, the Internet port, and the port to the CPU which is connected to eth0. Signed-off-by: Andrew Lunn <andrew@lunn.ch> --- arch/arm/boot/dts/kirkwood-dir665.dts | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/arch/arm/boot/dts/kirkwood-dir665.dts b/arch/arm/boot/dts/kirkwood-dir665.dts index ac945ea49940..656e61ce414d 100644 --- a/arch/arm/boot/dts/kirkwood-dir665.dts +++ b/arch/arm/boot/dts/kirkwood-dir665.dts @@ -202,6 +202,51 @@ gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; }; }; + + dsa at 0 { + compatible = "marvell,dsa"; + #address-cells = <2>; + #size-cells = <0>; + + dsa,ethernet = <ð0port>; + dsa,mii-bus = <&mdio>; + + switch at 0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0 0>; /* MDIO address 0, switch 0 in tree */ + + port at 0 { + reg = <0>; + label = "lan4"; + }; + + port at 1 { + reg = <1>; + label = "lan3"; + }; + + port at 2 { + reg = <2>; + label = "lan2"; + }; + + port at 3 { + reg = <3>; + label = "lan1"; + }; + + port at 4 { + reg = <4>; + label = "wan"; + }; + + port at 6 { + reg = <6>; + label = "cpu"; + }; + }; + }; }; &mdio { -- 2.1.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/4] ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn 2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn 2014-10-31 22:13 ` [PATCH 2/4] ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture Andrew Lunn @ 2014-10-31 22:13 ` Andrew Lunn 2014-10-31 22:13 ` [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig Andrew Lunn 2014-11-01 23:40 ` [PATCH 0/4] Support for DLINK DIR665 Jason Cooper 4 siblings, 0 replies; 12+ messages in thread From: Andrew Lunn @ 2014-10-31 22:13 UTC (permalink / raw) To: linux-arm-kernel Enable building of the switch chip driver and the wireless driver needed by the DLINK DIR665 Signed-off-by: Andrew Lunn <andrew@lunn.ch> --- arch/arm/configs/mvebu_v5_defconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/configs/mvebu_v5_defconfig b/arch/arm/configs/mvebu_v5_defconfig index 22058e18dfaa..824de499237b 100644 --- a/arch/arm/configs/mvebu_v5_defconfig +++ b/arch/arm/configs/mvebu_v5_defconfig @@ -67,9 +67,11 @@ CONFIG_SATA_AHCI=y CONFIG_SATA_MV=y CONFIG_NETDEVICES=y CONFIG_NET_DSA_MV88E6123_61_65=y +CONFIG_NET_DSA_MV88E6171=y CONFIG_MV643XX_ETH=y CONFIG_R8169=y CONFIG_MARVELL_PHY=y +CONFIG_MWL8K=m CONFIG_LIBERTAS=y CONFIG_LIBERTAS_SDIO=y CONFIG_INPUT_EVDEV=y -- 2.1.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn ` (2 preceding siblings ...) 2014-10-31 22:13 ` [PATCH 3/4] ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig Andrew Lunn @ 2014-10-31 22:13 ` Andrew Lunn 2014-11-01 23:42 ` Jason Cooper 2014-11-01 23:40 ` [PATCH 0/4] Support for DLINK DIR665 Jason Cooper 4 siblings, 1 reply; 12+ messages in thread From: Andrew Lunn @ 2014-10-31 22:13 UTC (permalink / raw) To: linux-arm-kernel Enable building of the switch chip driver and the wireless driver needed by the DLINK DIR665 Signed-off-by: Andrew Lunn <andrew@lunn.ch> Cc: arm at kernel.org --- arch/arm/configs/multi_v5_defconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/configs/multi_v5_defconfig b/arch/arm/configs/multi_v5_defconfig index 018bef9fa7e8..9d56781a8f80 100644 --- a/arch/arm/configs/multi_v5_defconfig +++ b/arch/arm/configs/multi_v5_defconfig @@ -67,9 +67,11 @@ CONFIG_SATA_AHCI=y CONFIG_SATA_MV=y CONFIG_NETDEVICES=y CONFIG_NET_DSA_MV88E6123_61_65=y +CONFIG_NET_DSA_MV88E6171=y CONFIG_MV643XX_ETH=y CONFIG_R8169=y CONFIG_MARVELL_PHY=y +CONFIG_MWL8K=m CONFIG_LIBERTAS=y CONFIG_LIBERTAS_SDIO=y CONFIG_INPUT_EVDEV=y -- 2.1.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig 2014-10-31 22:13 ` [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig Andrew Lunn @ 2014-11-01 23:42 ` Jason Cooper 2014-11-02 21:41 ` Olof Johansson 0 siblings, 1 reply; 12+ messages in thread From: Jason Cooper @ 2014-11-01 23:42 UTC (permalink / raw) To: linux-arm-kernel arm-soc folks, On Fri, Oct 31, 2014 at 11:13:33PM +0100, Andrew Lunn wrote: > Enable building of the switch chip driver and the wireless driver > needed by the DLINK DIR665 > > Signed-off-by: Andrew Lunn <andrew@lunn.ch> > Cc: arm at kernel.org > --- > arch/arm/configs/multi_v5_defconfig | 2 ++ > 1 file changed, 2 insertions(+) I went ahead and picked this since I don't foresee too many conflicts like there are with multi_v7_defconfig. Please let me know if you would prefer to take changes to this file directly. thx, Jason. ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig 2014-11-01 23:42 ` Jason Cooper @ 2014-11-02 21:41 ` Olof Johansson 0 siblings, 0 replies; 12+ messages in thread From: Olof Johansson @ 2014-11-02 21:41 UTC (permalink / raw) To: linux-arm-kernel On Sat, Nov 01, 2014 at 07:42:20PM -0400, Jason Cooper wrote: > arm-soc folks, > > On Fri, Oct 31, 2014 at 11:13:33PM +0100, Andrew Lunn wrote: > > Enable building of the switch chip driver and the wireless driver > > needed by the DLINK DIR665 > > > > Signed-off-by: Andrew Lunn <andrew@lunn.ch> > > Cc: arm at kernel.org > > --- > > arch/arm/configs/multi_v5_defconfig | 2 ++ > > 1 file changed, 2 insertions(+) > > I went ahead and picked this since I don't foresee too many conflicts > like there are with multi_v7_defconfig. Please let me know if you would > prefer to take changes to this file directly. Depends on if there's much other v5 activity this cycle or not. I don't think there is a whole lot so you should be safe. -Olof ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 0/4] Support for DLINK DIR665 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn ` (3 preceding siblings ...) 2014-10-31 22:13 ` [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig Andrew Lunn @ 2014-11-01 23:40 ` Jason Cooper 4 siblings, 0 replies; 12+ messages in thread From: Jason Cooper @ 2014-11-01 23:40 UTC (permalink / raw) To: linux-arm-kernel On Fri, Oct 31, 2014 at 11:13:29PM +0100, Andrew Lunn wrote: > The DLINK is a wireless access point using a Kirkwood processor > and a Marvell TopDog wifi chipset. > > The base device tree file was provided by Claudio Leite. I've > performed a few cleanups, added dsa support for the in build switch, > and extended the defconfigs for regression testing. > > Andrew Lunn (3): > ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture > ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig > ARM: config: Add DLINK DIR665 options to multi_v5_defconfig > > Claudio Leite (1): > ARM: Kirkwood: Add support for DLink DIR665 > > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/kirkwood-dir665.dts | 278 ++++++++++++++++++++++++++++++++++ > arch/arm/configs/multi_v5_defconfig | 2 + > arch/arm/configs/mvebu_v5_defconfig | 2 + > 4 files changed, 283 insertions(+) > create mode 100644 arch/arm/boot/dts/kirkwood-dir665.dts Applied patches 1 and 2 with a small comment tweak to mvebu/dt. Applied patches 3 and 4 to mvebu/defconfig since we are the only active modifiers of multi_v5_defconfig, so I don't foresee huge conflicts there like we get with multi_v7_defconfig. thx, Jason. ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2014-11-02 21:41 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-10-31 22:13 [PATCH 0/4] Support for DLINK DIR665 Andrew Lunn 2014-10-31 22:13 ` [PATCH 1/4] ARM: Kirkwood: Add support for DLink DIR665 Andrew Lunn 2014-10-31 22:45 ` Claudio Leite 2014-11-01 16:03 ` Jason Cooper 2014-11-01 20:11 ` Andrew Lunn 2014-11-01 20:16 ` Jason Cooper 2014-10-31 22:13 ` [PATCH 2/4] ARM: Kirkwood: DIR665: Instantiate Distributed Switch Architecture Andrew Lunn 2014-10-31 22:13 ` [PATCH 3/4] ARM: mvebu: Add DLINK DIR665 options to mvebu_v5_defconfig Andrew Lunn 2014-10-31 22:13 ` [PATCH 4/4] ARM: config: Add DLINK DIR665 options to multi_v5_defconfig Andrew Lunn 2014-11-01 23:42 ` Jason Cooper 2014-11-02 21:41 ` Olof Johansson 2014-11-01 23:40 ` [PATCH 0/4] Support for DLINK DIR665 Jason Cooper
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.