From: tomas.hlavacek-x+rMaJPWets@public.gmane.org To: "Uwe Kleine-König" <uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.org> Cc: "Jason Cooper" <jason-NLaQJdtUoK4Be96aLqz0jA@public.gmane.org>, "Andrew Lunn" <andrew-g2DYL2Zd6BY@public.gmane.org>, "Gregory Clement" <gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>, "Sebastian Hesselbarth" <sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, "Martin Strbačka" <martin.strbacka-x+rMaJPWets@public.gmane.org>, "Rob Herring" <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>, "Mark Rutland" <mark.rutland-5wv7dgnIgG8@public.gmane.org>, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Subject: Re: [PATCH RFC] ARM: dts: add support for Turris Omnia Date: Mon, 14 Nov 2016 13:23:05 +0100 [thread overview] Message-ID: <1479126185.15557.5@smtp.gmail.com> (raw) In-Reply-To: <20161105203841.9661-1-uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.org> Hello Uwe and all! On Sat, Nov 5, 2016 at 9:38 PM, Uwe Kleine-König <uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.org> wrote: > This machine is an open hardware router by cz.nic driven by a > Marvell Armada 385. > > Signed-off-by: Uwe Kleine-König <uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.org> > --- > > Hello, > > the following components are working: > > - WAN port > - eMMC But I not not sure about DDR50 mode. At least with kernel 4.4, that we use in production, we had to limit to SDR50 to overcome I/O errors and communication instability, if I can remember it correctly. So it might need more testing with the current kernel. > > - UART0 > - USB It is worth noting that the USB 2.0 interface of Armada 385 is wired to USB pinout of the last (right-most) PCIe connector. The two USB3 interfaces routed through SERDES 1 and 3 go directly to the external USB connectors. > > Still missing is support for the switch. Wireless fails to probe, > didn't > debug this up to now. SFP is untested as is UART1. Actually SFP is connected to SGMII interface of eth1, which is routed through SERDES 5. The SGMII line is shared between the SFP and metallic PHY 88E1514. There is a autonomous high-speed switch connected to the SFPDET signal from SFP cage. It disconnects the metallic SFP and connects SGMII to SFP once the module is connected. The SFP is also connected to the I2C mux port 4 and to GPIO expander for reading/driving SFPDET, LOS, TXFLT, TXDIS signals: &i2c0 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins>; status = "okay"; clock-frequency = <100000>; i2cmux@70 { compatible = "nxp,pca9547"; #address-cells = <1>; #size-cells = <0>; reg = <0x70>; status = "okay"; ... i2c@7 { /* SFP+ GPIO expander */ #address-cells = <1>; #size-cells = <0>; reg = <7>; sfpgpio: gpio@71 { compatible = "nxp,pca9538"; reg = <0x71>; interrupt-parent = <&gpio1>; interrupts = <14 IRQ_TYPE_LEVEL_LOW>; gpio-controller; #gpio-cells = <2>; }; }; }; }; We have our proprietary support hacked onto mvneta driver for disconnecting PHY on the fly. It is a bit nasty, so I suggest to ignore SFP in this DTS altogether and let's wait till "phylink based SFP module support" or something alike hits upstream, so we can base the SFP support on solid code; unless somebody has a better idea, of course. > > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts > b/arch/arm/boot/dts/armada-385-turris-omnia.dts > new file mode 100644 > index 000000000000..d3cd8a4d713d > --- /dev/null > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts > @@ -0,0 +1,246 @@ ... > + > + /* USB part of the eSATA/USB 2.0 port */ This comment is perhaps some error inherited from my development DTS. We do not have any eSATA, perhaps PCIe/USB 2.0 slot. > > + usb@58000 { > + status = "okay"; > + }; > + > + > +ð0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&ge0_rgmii_pins>; > + status = "okay"; > + phy-mode = "rgmii-id"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > +}; > + > +ð1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&ge1_rgmii_pins>; > + status = "okay"; > + phy-mode = "rgmii-id"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > +}; > + Actually eth0 and eth1 (both are RGMII) are connected to the 88E6176 switch. The problem is that from what I have read so far the switch can not operate in DSA mode with two CPU ports. We currently operate the switch in "normal mode" with the eth0 and eth1 set to fixed-link 1000/full and with proprietary driver (derived from OpenWRT switch drivers). I would say that these records for eth0 and eth1 are therefore redundant, because it does nothing without the switch support and it would most likely change once we have DSA driver (using only eth0). Tomas -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: tomas.hlavacek@nic.cz (tomas.hlavacek at nic.cz) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH RFC] ARM: dts: add support for Turris Omnia Date: Mon, 14 Nov 2016 13:23:05 +0100 [thread overview] Message-ID: <1479126185.15557.5@smtp.gmail.com> (raw) In-Reply-To: <20161105203841.9661-1-uwe@kleine-koenig.org> Hello Uwe and all! On Sat, Nov 5, 2016 at 9:38 PM, Uwe Kleine-K?nig <uwe@kleine-koenig.org> wrote: > This machine is an open hardware router by cz.nic driven by a > Marvell Armada 385. > > Signed-off-by: Uwe Kleine-K?nig <uwe@kleine-koenig.org> > --- > > Hello, > > the following components are working: > > - WAN port > - eMMC But I not not sure about DDR50 mode. At least with kernel 4.4, that we use in production, we had to limit to SDR50 to overcome I/O errors and communication instability, if I can remember it correctly. So it might need more testing with the current kernel. > > - UART0 > - USB It is worth noting that the USB 2.0 interface of Armada 385 is wired to USB pinout of the last (right-most) PCIe connector. The two USB3 interfaces routed through SERDES 1 and 3 go directly to the external USB connectors. > > Still missing is support for the switch. Wireless fails to probe, > didn't > debug this up to now. SFP is untested as is UART1. Actually SFP is connected to SGMII interface of eth1, which is routed through SERDES 5. The SGMII line is shared between the SFP and metallic PHY 88E1514. There is a autonomous high-speed switch connected to the SFPDET signal from SFP cage. It disconnects the metallic SFP and connects SGMII to SFP once the module is connected. The SFP is also connected to the I2C mux port 4 and to GPIO expander for reading/driving SFPDET, LOS, TXFLT, TXDIS signals: &i2c0 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins>; status = "okay"; clock-frequency = <100000>; i2cmux at 70 { compatible = "nxp,pca9547"; #address-cells = <1>; #size-cells = <0>; reg = <0x70>; status = "okay"; ... i2c at 7 { /* SFP+ GPIO expander */ #address-cells = <1>; #size-cells = <0>; reg = <7>; sfpgpio: gpio at 71 { compatible = "nxp,pca9538"; reg = <0x71>; interrupt-parent = <&gpio1>; interrupts = <14 IRQ_TYPE_LEVEL_LOW>; gpio-controller; #gpio-cells = <2>; }; }; }; }; We have our proprietary support hacked onto mvneta driver for disconnecting PHY on the fly. It is a bit nasty, so I suggest to ignore SFP in this DTS altogether and let's wait till "phylink based SFP module support" or something alike hits upstream, so we can base the SFP support on solid code; unless somebody has a better idea, of course. > > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts > b/arch/arm/boot/dts/armada-385-turris-omnia.dts > new file mode 100644 > index 000000000000..d3cd8a4d713d > --- /dev/null > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts > @@ -0,0 +1,246 @@ ... > + > + /* USB part of the eSATA/USB 2.0 port */ This comment is perhaps some error inherited from my development DTS. We do not have any eSATA, perhaps PCIe/USB 2.0 slot. > > + usb at 58000 { > + status = "okay"; > + }; > + > + > +ð0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&ge0_rgmii_pins>; > + status = "okay"; > + phy-mode = "rgmii-id"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > +}; > + > +ð1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&ge1_rgmii_pins>; > + status = "okay"; > + phy-mode = "rgmii-id"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > +}; > + Actually eth0 and eth1 (both are RGMII) are connected to the 88E6176 switch. The problem is that from what I have read so far the switch can not operate in DSA mode with two CPU ports. We currently operate the switch in "normal mode" with the eth0 and eth1 set to fixed-link 1000/full and with proprietary driver (derived from OpenWRT switch drivers). I would say that these records for eth0 and eth1 are therefore redundant, because it does nothing without the switch support and it would most likely change once we have DSA driver (using only eth0). Tomas
next prev parent reply other threads:[~2016-11-14 12:23 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-11-05 20:38 [PATCH RFC] ARM: dts: add support for Turris Omnia Uwe Kleine-König 2016-11-05 20:38 ` Uwe Kleine-König [not found] ` <20161105203841.9661-1-uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.org> 2016-11-05 21:04 ` Andrew Lunn 2016-11-05 21:04 ` Andrew Lunn [not found] ` <20161105210441.GB1216-g2DYL2Zd6BY@public.gmane.org> 2016-11-05 22:08 ` Uwe Kleine-König 2016-11-05 22:08 ` Uwe Kleine-König [not found] ` <20161105220848.k6rrjmvvhdaeduma-jgopVnDzZD+b0XQX99//ntPVjbGH4+40kFgPdswSElo@public.gmane.org> 2016-11-06 10:19 ` Andrew Lunn 2016-11-06 10:19 ` Andrew Lunn 2016-11-05 21:23 ` Andrew Lunn 2016-11-05 21:23 ` Andrew Lunn [not found] ` <20161105212326.GC1216-g2DYL2Zd6BY@public.gmane.org> 2016-11-05 21:27 ` Uwe Kleine-König 2016-11-05 21:27 ` Uwe Kleine-König [not found] ` <20161105212748.vtdprlxxismy5xmk-jgopVnDzZD+b0XQX99//ntPVjbGH4+40kFgPdswSElo@public.gmane.org> 2016-11-05 21:37 ` Andrew Lunn 2016-11-05 21:37 ` Andrew Lunn [not found] ` <20161106104534.lsdyppz5qcnjcqe4@perseus.defre.kleine-koenig.org> [not found] ` <20161106111109.GD9617@lunn.ch> [not found] ` <20161106141716.fwgje74rhhixnixq@perseus.defre.kleine-koenig.org> [not found] ` <20161106162809.GA14042@lunn.ch> [not found] ` <20161106162809.GA14042-g2DYL2Zd6BY@public.gmane.org> 2016-11-06 19:32 ` Uwe Kleine-König 2016-11-06 19:32 ` Uwe Kleine-König 2016-11-07 7:41 ` Martin Strbačka 2016-11-07 7:41 ` Martin Strbačka 2016-11-14 12:23 ` tomas.hlavacek-x+rMaJPWets [this message] 2016-11-14 12:23 ` tomas.hlavacek at nic.cz [not found] ` <1479126185.15557.5-TAvD023jEQEN+BqQ9rBEUg@public.gmane.org> 2016-11-14 13:10 ` Andrew Lunn 2016-11-14 13:10 ` Andrew Lunn 2016-11-14 14:51 ` tomas.hlavacek 2016-11-14 14:59 ` tomas.hlavacek 2016-11-14 14:59 ` tomas.hlavacek at nic.cz 2016-11-14 20:16 ` Uwe Kleine-König 2016-11-14 20:16 ` Uwe Kleine-König [not found] ` <20161114201640.rr32iyjf5a53v33t-jgopVnDzZD+b0XQX99//ntPVjbGH4+40kFgPdswSElo@public.gmane.org> 2016-11-14 20:28 ` Andrew Lunn 2016-11-14 20:28 ` Andrew Lunn [not found] ` <20161114202832.GG24546-g2DYL2Zd6BY@public.gmane.org> 2016-11-19 20:09 ` tomas.hlavacek-x+rMaJPWets 2016-11-19 20:09 ` tomas.hlavacek at nic.cz [not found] ` <1479586147.10840.0-TAvD023jEQEN+BqQ9rBEUg@public.gmane.org> 2016-11-20 20:30 ` Uwe Kleine-König 2016-11-20 20:30 ` Uwe Kleine-König 2016-11-22 21:59 ` tomas.hlavacek 2016-11-22 21:59 ` tomas.hlavacek at nic.cz 2016-11-23 0:09 ` [RFC PATCH] ARM: dts: Add " Tomas Hlavacek 2016-11-23 0:09 ` Tomas Hlavacek 2016-11-23 0:09 ` Tomas Hlavacek 2016-11-23 0:35 ` Andrew Lunn 2016-11-23 0:35 ` Andrew Lunn 2016-11-24 8:37 ` Uwe Kleine-König 2016-11-24 8:37 ` Uwe Kleine-König 2016-11-24 15:07 ` Andrew Lunn 2016-11-24 15:07 ` Andrew Lunn 2016-11-25 12:49 ` Tomas Hlavacek 2016-11-25 12:49 ` Tomas Hlavacek 2016-11-25 12:49 ` Tomas Hlavacek 2016-11-25 14:34 ` Uwe Kleine-König 2016-12-10 8:16 ` Pavel Machek 2016-12-10 8:16 ` Pavel Machek 2016-12-10 8:16 ` Pavel Machek 2016-11-23 8:19 ` Uwe Kleine-König 2016-11-23 8:19 ` Uwe Kleine-König 2016-11-23 8:19 ` Uwe Kleine-König [not found] ` <1479851991.26813.2-TAvD023jEQEN+BqQ9rBEUg@public.gmane.org> 2016-11-23 0:27 ` [PATCH RFC] ARM: dts: add " tomas.hlavacek-x+rMaJPWets 2016-11-23 0:27 ` tomas.hlavacek at nic.cz [not found] ` <1479860851.10840.11-TAvD023jEQEN+BqQ9rBEUg@public.gmane.org> 2016-11-23 1:39 ` Andrew Lunn 2016-11-23 1:39 ` Andrew Lunn 2016-11-23 14:59 ` Andrew Lunn 2016-11-23 14:59 ` Andrew Lunn [not found] ` <20161123145916.GL14947-g2DYL2Zd6BY@public.gmane.org> 2016-11-23 18:36 ` Uwe Kleine-König 2016-11-23 18:36 ` Uwe Kleine-König 2016-11-23 22:45 ` tomas.hlavacek 2016-11-23 22:45 ` tomas.hlavacek at nic.cz
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=1479126185.15557.5@smtp.gmail.com \ --to=tomas.hlavacek-x+rmajpwets@public.gmane.org \ --cc=andrew-g2DYL2Zd6BY@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org \ --cc=jason-NLaQJdtUoK4Be96aLqz0jA@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \ --cc=martin.strbacka-x+rMaJPWets@public.gmane.org \ --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \ --cc=sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \ --cc=uwe-rXY34ruvC2xidJT2blvkqNi2O/JbrIOy@public.gmane.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: linkBe 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.