[OpenWrt-Devel] [PATCH v2] brcm63xx: Add NuCom R5010UNv2 support

Jonas Gorski jogo at openwrt.org
Tue Dec 1 06:01:47 EST 2015


Hi,

On Tue, Dec 1, 2015 at 11:40 AM, dani <dgcbueu at gmail.com> wrote:
> This patch adds support for the NuCom R5010UNv2.
>
> It's a BCM6328 based board. It has an onboard BCM43217 wifi chip. For this
> wifi chip looks like the brcmsmac driver isn't still supported, b43 drivers are used
> for the profile of the router.
>
> It's worth mentioning this board was affected by a bug solved with
> https://dev.openwrt.org/changeset/46707
>
> Tested-by: Angel Fontan <angel.fontan at gmail.com>
> Signed-off-by: Daniel Gonzalez <dgcbueu at gmail.com>
> ---
> change in v2:
> usb led trigger was wrong
> added 8 MB padding to the image generator because its CFE has double image protection
> added colors naming to the leds in dts file to meet the same layout of other boards
> ---
> diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh
> index 7826fad..c0fb31e 100644
> --- a/target/linux/brcm63xx/base-files/etc/diag.sh
> +++ b/target/linux/brcm63xx/base-files/etc/diag.sh
> @@ -102,6 +102,9 @@ set_state() {
>         p870hw-51a_v2)
>                 status_led="P870HW-51a:green:power"
>                 ;;
> +       r5010un_v2)
> +               status_led="96328ang:green:power"
> +               ;;
>         rta770bw)
>                 status_led="RTA770BW:green:diag"
>                 ;;
> diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds b/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds
> index bdb3dad..34d5c51 100644
> --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds
> +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds
> @@ -46,6 +46,9 @@ homehub2a)
>         ucidef_set_led_usbdev "usb1" "USB1" "HOMEHUB2A:blue:phone" "1-1"
>         ucidef_set_led_usbdev "usb2" "USB2" "HOMEHUB2A:green:phone" "2-1"
>         ;;
> +r5010un_v2)
> +       ucidef_set_led_usbdev "usb" "USB" "96328ang:green:usb" "1-1"
> +       ;;
>  esac
>
>  ucidef_commit_leds
> diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
> index 129514b..70f18cb 100644
> --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
> +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
> @@ -94,6 +94,7 @@ fast2504n |\
>  fast2704v2 |\
>  hg655b |\
>  p870hw-51a_v2 |\
> +r5010un_v2 |\
>  vr-3025un |\
>  vr-3025u |\
>  vr-3026e)
> diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
> index f307a4c..bc9ae21 100644
> --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
> +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
> @@ -23,6 +23,7 @@ case "$(brcm63xx_board_name)" in
>         dsl-274xb-f |\
>         magic |\
>         p870hw-51a_v2 |\
> +       r5010un_v2 |\
>         rta770bw |\
>         rta770w |\
>         spw303v |\
> diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
> index 1a97c86..7dc57fd 100755
> --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
> +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
> @@ -180,6 +180,9 @@ brcm63xx_dt_detect() {
>         "Netgear DGND3700v1/DGND3800B")
>                 board_name="dgnd3700v1_dgnd3800b"
>                 ;;
> +       "NuCom R5010UN v2")
> +               board_name="r5010un_v2"
> +               ;;
>         "Pirelli A226G")
>                 board_name="a226g"
>                 ;;
> diff --git a/target/linux/brcm63xx/dts/r5010unv2.dts b/target/linux/brcm63xx/dts/r5010unv2.dts
> new file mode 100644
> index 0000000..8c83483
> --- /dev/null
> +++ b/target/linux/brcm63xx/dts/r5010unv2.dts
> @@ -0,0 +1,64 @@
> +/dts-v1/;
> +
> +#include "bcm6328.dtsi"
> +
> +#include <dt-bindings/input/input.h>
> +
> +/ {
> +       model = "NuCom R5010UN v2";
> +       compatible = "nucom,r5010unv2", "brcm,bcm6328";
> +
> +       gpio-keys-polled {
> +               compatible = "gpio-keys-polled";
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +               poll-interval = <20>;
> +               debounce-interval = <60>;
> +
> +               reset {
> +                       label = "reset";
> +                       gpios = <&gpio0 23 1>;
> +                       linux,code = <KEY_RESTART>;
> +               };
> +               wps {
> +                       label = "wps";
> +                       gpios = <&gpio0 24 1>;
> +                       linux,code = <KEY_WPS_BUTTON>;
> +               };
> +       };
> +
> +       gpio-leds {
> +               compatible = "gpio-leds";
> +
> +               inet_green {
> +                       label = "96328ang:green:inet";

Please use the device name, not the boardid.

> +                       gpios = <&gpio0 1 1>;
> +               };
> +               inet_fail_red {
> +                       label = "96328ang:red:inet-fail";
> +                       gpios = <&gpio0 2 1>;
> +               };
> +               dsl_red {
> +                       label = "96328ang:green:dsl";
> +                       gpios = <&gpio0 3 1>;
> +               };
> +               power_green {
> +                       label = "96328ang:green:power";
> +                       gpios = <&gpio0 4 1>;
> +                       default-state = "on";
> +               };
> +               power_fail_red {
> +                       label = "96328ang:red:power-fail";
> +                       gpios = <&gpio0 5 1>;
> +               };
> +               wps_green {
> +                       label = "96328ang:green:wps";
> +                       gpios = <&gpio0 10 1>;
> +               };
> +               usb_green {
> +                       label = "96328ang:green:usb";
> +                       gpios = <&gpio0 11 1>;
> +               };
> +       };
> +};
> +


Jonas
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list