[LEDE-DEV] [PATCH 3/3] ramips-mt7621: add dts for UBNT-ERX-SFP

Mathias Kresin dev at kresin.me
Fri May 5 05:34:18 PDT 2017


2017-05-04 1:41 GMT+02:00 Sven Roederer <devel-sven at geroedel.de>:
> * use a copy and modify version of the  UBNT-ERX for the UBNT-ERX-SFP
> * define i2c-gpio via DTS (Linux/Documentation/devicetree/bindings/i2c/i2c-gpio.txt)
> * also define PCA9555 for PoE-switching in DTS

Please, make sure to add a proper SoB line as described in "Submitting
patches": [1].

Also, would you please include in your commit message a short
description about the hardware and how to install LEDE on it? Have a
look at the recent ramips board additions for some examples[2].

Please merge all ubnt-erx-sfp related commits into one. They do not
really work on its own and it does not make any sense to split the
changes. Patch 1/3 for example adds the ubnt-erx-sfp image by using
the ubnt-erx dts. It is fixed later with an extra commit which is hard
to review.

I haven't checked how similar the ubnt-erx and ubnt-erx-sfp device
tree source files are. But it might be more elegant to move stuff
which is the same between both boards to a dtsi, include the dtsi for
the ubnt-erx* and add all missing stuff in the ubnt-erx-sfp dts.

Depending on what is really required, there might be the following
commits in the end:

- split ubnt-erx into dtsi
- add ubnt-erx poe passthrough gpios
- add ubnt-erx-stp support

Find more comments inline.

> ---
>  target/linux/ramips/dts/UBNT-ERX-SFP.dts | 121 +++++++++++++++++++++++++++++++
>  target/linux/ramips/image/mt7621.mk      |   2 +-
>  2 files changed, 122 insertions(+), 1 deletion(-)
>  create mode 100644 target/linux/ramips/dts/UBNT-ERX-SFP.dts
>
> diff --git a/target/linux/ramips/dts/UBNT-ERX-SFP.dts b/target/linux/ramips/dts/UBNT-ERX-SFP.dts
> new file mode 100644
> index 0000000..808086a
> --- /dev/null
> +++ b/target/linux/ramips/dts/UBNT-ERX-SFP.dts
> @@ -0,0 +1,121 @@
> +#include <dt-bindings/input/input.h>

Move this line below the include "mt7621.dtsi". Please include
dt-bindings/gpio/gpio.h here as well and keep alphabetical order.

Use the GPIO_ACTIVE_LOW and GPIO_ACTIVE_HIGH macros afterwards in
stead of 1 and 0 in the gpio parameters.

Check the recent ramips board additions for examples.

> +
> +/dts-v1/;
> +
> +#include "mt7621.dtsi"
> +
> +/ {
> +       model = "UBNT-ERX-SFP";
> +
> +       memory at 0 {
> +               device_type = "memory";
> +               reg = <0x0 0x10000000>;
> +       };
> +
> +       chosen {
> +               bootargs = "console=ttyS0,57600";
> +       };
> +
> +       gpio-keys-polled {
> +               compatible = "gpio-keys-polled";
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +               poll-interval = <20>;
> +
> +               reset {
> +                       label = "reset";
> +                       gpios = <&gpio0 12 1>;
> +                       linux,code = <KEY_RESTART>;
> +               };
> +       };
> +
> +       i2c-gpio {
> +               compatible = "i2c-gpio";
> +               gpios = <&gpio0 3 0 /* sda */
> +                        &gpio0 4 0 /* scl */
> +                       >;
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +
> +               pca9555 at 25 {
> +                       compatible = "pca9555";
> +                       reg = <0x25>;
> +               };
> +       };
> +};
> +
> +&ethernet {
> +       mtd-mac-address = <&factory 0x22>;
> +};
> +
> +&nand {
> +       status = "okay";
> +
> +       partition at 0 {
> +               label = "u-boot";
> +               reg = <0x0 0x80000>;
> +               read-only;
> +       };
> +
> +       partition at 80000 {
> +               label = "u-boot-env";
> +               reg = <0x80000 0x60000>;
> +               read-only;
> +       };
> +
> +       factory: partition at e0000 {
> +               label = "factory";
> +               reg = <0xe0000 0x60000>;
> +       };
> +
> +       partition at 140000 {
> +               label = "kernel1";
> +               reg = <0x140000 0x300000>;
> +       };
> +
> +       partition at 440000 {
> +               label = "kernel2";
> +               reg = <0x440000 0x300000>;
> +       };
> +
> +       partition at 740000 {
> +               label = "ubi";
> +               reg = <0x740000 0xf7c0000>;
> +       };
> +};
> +
> +&pinctrl {
> +       state_default: pinctrl0 {
> +               gpio {
> +                       ralink,group = "uart2", "uart3", "i2c", "pcie", "rgmii2", "jtag";
> +                       ralink,function = "gpio";
> +               };
> +       };
> +};
> +
> +&spi0 {
> +       /* This board has 2Mb spi flash soldered in and visible
> +          from manufacturer's firmware.
> +          But this SoC shares spi and nand pins,
> +          and current driver does't handle this sharing well */
> +       status = "disabled";
> +
> +       m25p80 at 0 {
> +               #address-cells = <1>;
> +               #size-cells = <1>;
> +               compatible = "jedec,spi-nor";
> +               reg = <1>;
> +               spi-max-frequency = <10000000>;
> +               m25p,chunked-io = <32>;
> +
> +               partition at 0 {
> +                       label = "spi";
> +                       reg = <0x0 0x200000>;
> +                       read-only;
> +               };
> +       };
> +};
> +
> +&xhci {
> +       status = "disabled";
> +};

Mathias

[1] https://lede-project.org/submitting-patches
[2] https://github.com/lede-project/source/search?&q=ramips+add+support+for&type=Commits



More information about the Lede-dev mailing list