Message ID | 00000150d49a8745-1c2bc8d4-1333-46bb-bf0e-5508ef988c73-000000@email.amazonses.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
> + chosen { > + bootargs = "console=ttyS0,115200n8 earlyprintk root=/dev/sda1 rootdelay=10"; It is not normal to specify the root device. Is this really required? And rootdelay is also unusual. > + stdout-path = &uart0; > + }; > + > + ocp@f1000000 { > + pinctrl: pin-controller@10000 { > + pmx_usb_power_enable: pmx-usb-power-enable { > + marvell,pins = "mpp29"; > + marvell,function = "gpio"; > + }; > + pmx_led_white: pmx-led-white { > + marvell,pins = "mpp40"; > + marvell,function = "gpio"; > + }; > + pmx_led_green: pmx-led_green { > + marvell,pins = "mpp46"; That last _ should be -.. > + marvell,function = "gpio"; > + }; > + pmx_led_orange: pmx-led-orange { > + marvell,pins = "mpp47"; > + marvell,function = "gpio"; > + }; > + }; > + serial@12000 { > + status = "ok"; > + }; > + > + sata@80000 { > + status = "okay"; > + nr-ports = <2>; > + }; > + > + }; > + gpio-leds { > + compatible = "gpio-leds"; > + > + health { > + label = "status:green:health"; This does not fit the naming convention. status should be the machine name. Andrew
Hi Luka, On Wed, Nov 04, 2015 at 10:25:08PM +0000, Luka Perkov wrote: > Based on dts files from OpenWrt. > > Signed-off-by: Luka Perkov <luka.perkov@sartura.hr> > --- > .../devicetree/bindings/arm/marvell,kirkwood.txt | 1 + > arch/arm/boot/dts/Makefile | 1 + > arch/arm/boot/dts/kirkwood-goflexhome.dts | 127 +++++++++++++++++++++ > 3 files changed, 129 insertions(+) > create mode 100644 arch/arm/boot/dts/kirkwood-goflexhome.dts > > diff --git a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt > index ed381a3..37bd190 100644 > --- a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt > +++ b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt > @@ -72,6 +72,7 @@ board. Currently known boards are: > "raidsonic,ib-nas6220-b" > "raidsonic,ib-nas62x0" > "seagate,dockstar" > +"seagate,goflexhome" > "seagate,goflexnet" > "synology,ds109" > "synology,ds110jv10" > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index ebe5b73..1d6fb0d 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -170,6 +170,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \ > kirkwood-ds411slim.dtb \ > kirkwood-ea3500.dtb \ > kirkwood-ea4500.dtb \ > + kirkwood-goflexhome.dtb \ > kirkwood-goflexnet.dtb \ > kirkwood-guruplug-server-plus.dtb \ > kirkwood-ib62x0.dtb \ > diff --git a/arch/arm/boot/dts/kirkwood-goflexhome.dts b/arch/arm/boot/dts/kirkwood-goflexhome.dts > new file mode 100644 > index 0000000..5f933d4 > --- /dev/null > +++ b/arch/arm/boot/dts/kirkwood-goflexhome.dts > @@ -0,0 +1,127 @@ > +/dts-v1/; > + > +#include "kirkwood.dtsi" > +#include "kirkwood-6281.dtsi" > + > +/ { > + model = "Seagate GoFlex Home"; > + compatible = "seagate,goflexhome", "marvell,kirkwood-88f6281", "marvell,kirkwood"; > + > + memory { > + device_type = "memory"; > + reg = <0x00000000 0x8000000>; > + }; > + > + chosen { > + bootargs = "console=ttyS0,115200n8 earlyprintk root=/dev/sda1 rootdelay=10"; > + stdout-path = &uart0; > + }; > + > + ocp@f1000000 { > + pinctrl: pin-controller@10000 { > + pmx_usb_power_enable: pmx-usb-power-enable { > + marvell,pins = "mpp29"; > + marvell,function = "gpio"; > + }; > + pmx_led_white: pmx-led-white { > + marvell,pins = "mpp40"; > + marvell,function = "gpio"; > + }; > + pmx_led_green: pmx-led_green { > + marvell,pins = "mpp46"; > + marvell,function = "gpio"; > + }; > + pmx_led_orange: pmx-led-orange { > + marvell,pins = "mpp47"; > + marvell,function = "gpio"; > + }; > + }; > + serial@12000 { > + status = "ok"; > + }; > + > + sata@80000 { > + status = "okay"; > + nr-ports = <2>; I think nr-ports should be set to 1. This device only allows to plug a single HDD and there is no eSATA connectors. > + }; > + > + }; > + gpio-leds { > + compatible = "gpio-leds"; > + > + health { > + label = "status:green:health"; > + gpios = <&gpio1 14 1>; It would be better to use GPIO_ACTIVE_LOW instead of 1. The same comment applies to the other LEDs. > + linux,default-trigger = "default-on"; > + }; > + fault { > + label = "status:orange:fault"; > + gpios = <&gpio1 15 1>; > + }; > + misc { > + label = "status:white:misc"; > + gpios = <&gpio1 8 1>; > + linux,default-trigger = "ide-disk"; ide-disk ? Really ? There is no way this can be correct :) > + }; > + }; > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + pinctrl-0 = <&pmx_usb_power_enable>; > + pinctrl-names = "default"; > + > + usb_power: regulator@1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "USB Power"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + enable-active-high; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>; > + }; > + }; > +}; > + > +&nand { > + chip-delay = <40>; > + status = "okay"; > + > + partition@0 { > + label = "u-boot"; > + reg = <0x0000000 0x100000>; > + read-only; > + }; > + > + partition@100000 { > + label = "uImage"; > + reg = <0x0100000 0x400000>; > + }; > + > + partition@500000 { > + label = "pogoplug"; > + reg = <0x0500000 0x2000000>; > + }; > + > + partition@2500000 { > + label = "root"; > + reg = <0x02500000 0xd800000>; > + }; > +}; > + > +&mdio { > + status = "okay"; > + > + ethphy0: ethernet-phy@0 { > + reg = <0>; > + }; > +}; > + > +ð0 { > + status = "okay"; > + ethernet0-port@0 { > + phy-handle = <ðphy0>; > + }; > +}; Is there a power-off GPIO on this board ? Regards, Simon
Hi Luka, I tested your patch on the GoFlex Home. > + gpio-leds { > + compatible = "gpio-leds"; > + > + health { > + label = "status:green:health"; > + gpios = <&gpio1 14 1>; > + linux,default-trigger = "default-on"; > + }; > + fault { > + label = "status:orange:fault"; > + gpios = <&gpio1 15 1>; > + }; > + misc { > + label = "status:white:misc"; > + gpios = <&gpio1 8 1>; > + linux,default-trigger = "ide-disk"; > + }; > + }; I noticed green and orange leds were working fine (0 == off, 1 == on). But white led polarity is inverted (1 == off, 0 == on). > + partition@500000 { > + label = "pogoplug"; > + reg = <0x0500000 0x2000000>; > + }; I don't think pogoplug is the proper label for this partition. It seems duplicated from "kirkwood-goflexnet.dts" I guess you could label it "data" for instance. Tested-by: Yoann Sculo <yoann@printk.fr> Yoann
Hi Luka, Did you have the time to look at those issues ? Yoann Le 06/11/2015 17:05, Yoann Sculo a écrit : > Hi Luka, > > I tested your patch on the GoFlex Home. > >> + gpio-leds { >> + compatible = "gpio-leds"; >> + >> + health { >> + label = "status:green:health"; >> + gpios = <&gpio1 14 1>; >> + linux,default-trigger = "default-on"; >> + }; >> + fault { >> + label = "status:orange:fault"; >> + gpios = <&gpio1 15 1>; >> + }; >> + misc { >> + label = "status:white:misc"; >> + gpios = <&gpio1 8 1>; >> + linux,default-trigger = "ide-disk"; >> + }; >> + }; > > I noticed green and orange leds were working fine (0 == off, 1 == on). > But white led polarity is inverted (1 == off, 0 == on). > >> + partition@500000 { >> + label = "pogoplug"; >> + reg = <0x0500000 0x2000000>; >> + }; > > I don't think pogoplug is the proper label for this partition. It seems > duplicated from "kirkwood-goflexnet.dts" I guess you could label it > "data" for instance. > > Tested-by: Yoann Sculo <yoann@printk.fr> > > Yoann
diff --git a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt index ed381a3..37bd190 100644 --- a/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt +++ b/Documentation/devicetree/bindings/arm/marvell,kirkwood.txt @@ -72,6 +72,7 @@ board. Currently known boards are: "raidsonic,ib-nas6220-b" "raidsonic,ib-nas62x0" "seagate,dockstar" +"seagate,goflexhome" "seagate,goflexnet" "synology,ds109" "synology,ds110jv10" diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index ebe5b73..1d6fb0d 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -170,6 +170,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \ kirkwood-ds411slim.dtb \ kirkwood-ea3500.dtb \ kirkwood-ea4500.dtb \ + kirkwood-goflexhome.dtb \ kirkwood-goflexnet.dtb \ kirkwood-guruplug-server-plus.dtb \ kirkwood-ib62x0.dtb \ diff --git a/arch/arm/boot/dts/kirkwood-goflexhome.dts b/arch/arm/boot/dts/kirkwood-goflexhome.dts new file mode 100644 index 0000000..5f933d4 --- /dev/null +++ b/arch/arm/boot/dts/kirkwood-goflexhome.dts @@ -0,0 +1,127 @@ +/dts-v1/; + +#include "kirkwood.dtsi" +#include "kirkwood-6281.dtsi" + +/ { + model = "Seagate GoFlex Home"; + compatible = "seagate,goflexhome", "marvell,kirkwood-88f6281", "marvell,kirkwood"; + + memory { + device_type = "memory"; + reg = <0x00000000 0x8000000>; + }; + + chosen { + bootargs = "console=ttyS0,115200n8 earlyprintk root=/dev/sda1 rootdelay=10"; + stdout-path = &uart0; + }; + + ocp@f1000000 { + pinctrl: pin-controller@10000 { + pmx_usb_power_enable: pmx-usb-power-enable { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + pmx_led_white: pmx-led-white { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + pmx_led_green: pmx-led_green { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + pmx_led_orange: pmx-led-orange { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + }; + serial@12000 { + status = "ok"; + }; + + sata@80000 { + status = "okay"; + nr-ports = <2>; + }; + + }; + gpio-leds { + compatible = "gpio-leds"; + + health { + label = "status:green:health"; + gpios = <&gpio1 14 1>; + linux,default-trigger = "default-on"; + }; + fault { + label = "status:orange:fault"; + gpios = <&gpio1 15 1>; + }; + misc { + label = "status:white:misc"; + gpios = <&gpio1 8 1>; + linux,default-trigger = "ide-disk"; + }; + }; + regulators { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + pinctrl-0 = <&pmx_usb_power_enable>; + pinctrl-names = "default"; + + usb_power: regulator@1 { + compatible = "regulator-fixed"; + reg = <1>; + regulator-name = "USB Power"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + enable-active-high; + regulator-always-on; + regulator-boot-on; + gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&nand { + chip-delay = <40>; + status = "okay"; + + partition@0 { + label = "u-boot"; + reg = <0x0000000 0x100000>; + read-only; + }; + + partition@100000 { + label = "uImage"; + reg = <0x0100000 0x400000>; + }; + + partition@500000 { + label = "pogoplug"; + reg = <0x0500000 0x2000000>; + }; + + partition@2500000 { + label = "root"; + reg = <0x02500000 0xd800000>; + }; +}; + +&mdio { + status = "okay"; + + ethphy0: ethernet-phy@0 { + reg = <0>; + }; +}; + +ð0 { + status = "okay"; + ethernet0-port@0 { + phy-handle = <ðphy0>; + }; +};
Based on dts files from OpenWrt. Signed-off-by: Luka Perkov <luka.perkov@sartura.hr> --- .../devicetree/bindings/arm/marvell,kirkwood.txt | 1 + arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/kirkwood-goflexhome.dts | 127 +++++++++++++++++++++ 3 files changed, 129 insertions(+) create mode 100644 arch/arm/boot/dts/kirkwood-goflexhome.dts