Message ID | 3020121.uscLunan1g@tool |
---|---|
State | Changes Requested |
Delegated to: | John Crispin |
Headers | show |
Series | [OpenWrt-Devel] Add support for Inventel DV4210 | expand |
On 22/09/2019 22:05, Daniel Gonzalez Cabanelas wrote: > Add support for the Inventel DV4210 router. > > This is an Inventel Livebox 1 board. The patch supports the board with a CFE bootloader, and > a RAM mod (64 MB, tested). The board originally comes with 8 MB flash. Under this conditions > this old BCM6348 based board still runs quite fine with current snapshots. > Hi, thanks for the patch, the subject line needs to start with "brcm63xx:" John > Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com> > --- > .../brcm63xx/base-files/etc/board.d/01_leds | 1 + > .../base-files/etc/board.d/02_network | 2 +- > target/linux/brcm63xx/base-files/etc/diag.sh | 1 + > .../linux/brcm63xx/base-files/lib/brcm63xx.sh | 3 + > target/linux/brcm63xx/dts/dv4210.dts | 102 ++++++++++++++++++ > target/linux/brcm63xx/image/bcm63xx.mk | 13 +++ > .../patches-4.14/599-board_DV4210.patch | 50 +++++++++ > 7 files changed, 171 insertions(+), 1 deletion(-) > create mode 100644 target/linux/brcm63xx/dts/dv4210.dts > create mode 100644 target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > > diff --git a/target/linux/brcm63xx/base-files/etc/board.d/01_leds b/target/linux/brcm63xx/base-files/etc/board.d/01_leds > index d25d37e847..00109ba112 100755 > --- a/target/linux/brcm63xx/base-files/etc/board.d/01_leds > +++ b/target/linux/brcm63xx/base-files/etc/board.d/01_leds > @@ -69,6 +69,7 @@ homehub2a) > ucidef_set_led_usbdev "usb1" "USB1" "HOMEHUB2A:blue:phone" "1-1" > ucidef_set_led_usbdev "usb2" "USB2" "HOMEHUB2A:green:phone" "2-1" > ;; > +dv4210|\ > livebox1) > ucidef_set_led_netdev "lan" "LAN" "Livebox1:red:traffic" "eth0" > ucidef_set_led_netdev "wan" "WAN" "Livebox1:red:adsl" "eth1" > diff --git a/target/linux/brcm63xx/base-files/etc/board.d/02_network b/target/linux/brcm63xx/base-files/etc/board.d/02_network > index a2ca5a37b3..0e384f82f6 100755 > --- a/target/linux/brcm63xx/base-files/etc/board.d/02_network > +++ b/target/linux/brcm63xx/base-files/etc/board.d/02_network > @@ -145,8 +145,8 @@ bcm963268bu_p300) > ucidef_add_switch "switch0" \ > "0:lan" "3:lan" "4:lan" "5:lan" "6:lan" "7:lan" "8t@eth0" > ;; > - > cpva502p |\ > +dv4210 |\ > livebox1) > ucidef_set_interfaces_lan_wan "eth0" "eth1" > ;; > diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh > index 34464ec44a..c673a75e40 100644 > --- a/target/linux/brcm63xx/base-files/etc/diag.sh > +++ b/target/linux/brcm63xx/base-files/etc/diag.sh > @@ -114,6 +114,7 @@ set_state() { > hg655b) > status_led="HW65x:green:power" > ;; > + dv4210|\ > livebox1) > status_led="Livebox1:red:adsl-fail-power" > ;; > diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > index 1676ae0abb..9c0c33cc31 100755 > --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > @@ -177,6 +177,9 @@ brcm63xx_dt_detect() { > "Inteno VG50") > board_name="vg50" > ;; > + "Inventel DV4210") > + board_name="dv4210" > + ;; > "Inventel Livebox 1") > board_name="livebox1" > ;; > diff --git a/target/linux/brcm63xx/dts/dv4210.dts b/target/linux/brcm63xx/dts/dv4210.dts > new file mode 100644 > index 0000000000..02975fe3b6 > --- /dev/null > +++ b/target/linux/brcm63xx/dts/dv4210.dts > @@ -0,0 +1,102 @@ > +/dts-v1/; > + > +#include "bcm6348.dtsi" > + > +#include <dt-bindings/input/input.h> > + > +/ { > + model = "Inventel DV4210"; > + compatible = "inventel,dv4210", "brcm,bcm6348"; > + > + chosen { > + bootargs = "rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200"; > + stdout-path = "serial0:115200n8"; > + }; > + > + keys { > + compatible = "gpio-keys-polled"; > + #address-cells = <1>; > + #size-cells = <0>; > + poll-interval = <20>; > + > + button1 { > + label = "1"; > + gpios = <&pinctrl 36 1>; > + linux,code = <KEY_RESTART>; > + debounce-interval = <60>; > + }; > + > + button2 { > + label = "2"; > + gpios = <&pinctrl 7 1>; > + linux,code = <BTN_2>; > + debounce-interval = <60>; > + }; > + }; > + > + leds { > + compatible = "gpio-leds"; > + > + red_adsl_fail { > + label = "Livebox1:red:adsl-fail-power"; > + gpios = <&pinctrl 0 0>; > + default-state = "on"; > + }; > + > + red_adsl { > + label = "Livebox1:red:adsl"; > + gpios = <&pinctrl 1 0>; > + }; > + > + red_traffic { > + label = "Livebox1:red:traffic"; > + gpios = <&pinctrl 2 0>; > + }; > + > + red_phone { > + label = "Livebox1:red:phone"; > + gpios = <&pinctrl 3 0>; > + }; > + > + red_wifi { > + label = "Livebox1:red:wifi"; > + gpios = <&pinctrl 4 0>; > + }; > + }; > +}; > + > +&pflash { > + reg = <0x1f400000 0x800000>; > + status = "ok"; > + > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + cfe@0 { > + reg = <0x000000 0x010000>; > + label = "cfe"; > + }; > + > + linux@10000 { > + reg = <0x010000 0x7e0000>; > + label = "linux"; > + compatible = "brcm,bcm963xx-imagetag"; > + }; > + > + nvram@7f0000 { > + reg = <0x7f0000 0x010000>; > + label = "nvram"; > + }; > + }; > +}; > + > +&pinctrl { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; > +}; > + > +&uart0 { > + status = "ok"; > +}; > diff --git a/target/linux/brcm63xx/image/bcm63xx.mk b/target/linux/brcm63xx/image/bcm63xx.mk > index 212960e972..690ffb49fa 100644 > --- a/target/linux/brcm63xx/image/bcm63xx.mk > +++ b/target/linux/brcm63xx/image/bcm63xx.mk > @@ -769,6 +769,19 @@ define Device/livebox > endef > TARGET_DEVICES += livebox > > +define Device/DV4210 > + $(Device/bcm63xx) > + DEVICE_TITLE := Inventel DV4210 > + DEVICE_DESCRIPTION = Build firmware images for the Inventel DV4210. Board with CFE bootloader and >32MB RAM > + DEVICE_DTS := dv4210 > + CFE_BOARD_ID := DV4210 > + CFE_CHIP_ID := 6348 > + DEVICE_PACKAGES := \ > + $(B43_PACKAGES) $(USB1_PACKAGES) > + DEFAULT := y > +endef > +TARGET_DEVICES += DV4210 > + > ### Netgear ### > define Device/CVG834G > $(Device/bcm33xx) > diff --git a/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > new file mode 100644 > index 0000000000..618a214d63 > --- /dev/null > +++ b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > @@ -0,0 +1,50 @@ > +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c > ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c > +@@ -1058,6 +1058,31 @@ > + }, > + }; > + > ++static struct board_info __initdata board_DV4210 = { > ++ .name = "DV4210", > ++ .expected_cpu_id = 0x6348, > ++ > ++ .has_enet0 = 1, > ++ .has_enet1 = 1, > ++ .has_pci = 1, > ++ > ++ .enet0 = { > ++ .has_phy = 1, > ++ .use_internal_phy = 1, > ++ }, > ++ > ++ .enet1 = { > ++ .has_phy = 1, > ++ .phy_id = 31, > ++ }, > ++ > ++ .ephy_reset_gpio = 6, > ++ .ephy_reset_gpio_flags = GPIO_ACTIVE_LOW, > ++ > ++ .has_ohci0 = 1, > ++ .has_pccard = 0, > ++}; > ++ > + static struct board_info __initdata board_96348A_122 = { > + .name = "96348A-122", > + .expected_cpu_id = 0x6348, > +@@ -2746,6 +2771,7 @@ > + &board_FAST2404, > + &board_FAST2604, > + &board_DV201AMR, > ++ &board_DV4210, > + &board_96348gw_a, > + &board_rta1025w_16, > + &board_96348_D4PW, > +@@ -2859,6 +2885,7 @@ > + { .compatible = "d-link,dsl-2640b-b", .data = &board_96348_D4PW, }, > + { .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, }, > + { .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, }, > ++ { .compatible = "inventel,dv4210", .data = &board_DV4210, }, > + { .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, }, > + { .compatible = "netgear,dg834g-v4", .data = &board_96348W3, }, > + { .compatible = "sagem,f@st2404", .data = &board_FAST2404, }, >
Sorry, I forgot to add the the target. I'll send again the patch Thanks very much. El dom., 27 oct. 2019 a las 14:05, John Crispin (<john@phrozen.org>) escribió: > On 22/09/2019 22:05, Daniel Gonzalez Cabanelas wrote: > > Add support for the Inventel DV4210 router. > > > > This is an Inventel Livebox 1 board. The patch supports the board with a > CFE bootloader, and > > a RAM mod (64 MB, tested). The board originally comes with 8 MB flash. > Under this conditions > > this old BCM6348 based board still runs quite fine with current > snapshots. > > > > Hi, > thanks for the patch, the subject line needs to start with "brcm63xx:" > John > > > Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com> > > --- > > .../brcm63xx/base-files/etc/board.d/01_leds | 1 + > > .../base-files/etc/board.d/02_network | 2 +- > > target/linux/brcm63xx/base-files/etc/diag.sh | 1 + > > .../linux/brcm63xx/base-files/lib/brcm63xx.sh | 3 + > > target/linux/brcm63xx/dts/dv4210.dts | 102 ++++++++++++++++++ > > target/linux/brcm63xx/image/bcm63xx.mk | 13 +++ > > .../patches-4.14/599-board_DV4210.patch | 50 +++++++++ > > 7 files changed, 171 insertions(+), 1 deletion(-) > > create mode 100644 target/linux/brcm63xx/dts/dv4210.dts > > create mode 100644 > target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > > > > diff --git a/target/linux/brcm63xx/base-files/etc/board.d/01_leds > b/target/linux/brcm63xx/base-files/etc/board.d/01_leds > > index d25d37e847..00109ba112 100755 > > --- a/target/linux/brcm63xx/base-files/etc/board.d/01_leds > > +++ b/target/linux/brcm63xx/base-files/etc/board.d/01_leds > > @@ -69,6 +69,7 @@ homehub2a) > > ucidef_set_led_usbdev "usb1" "USB1" "HOMEHUB2A:blue:phone" "1-1" > > ucidef_set_led_usbdev "usb2" "USB2" "HOMEHUB2A:green:phone" "2-1" > > ;; > > +dv4210|\ > > livebox1) > > ucidef_set_led_netdev "lan" "LAN" "Livebox1:red:traffic" "eth0" > > ucidef_set_led_netdev "wan" "WAN" "Livebox1:red:adsl" "eth1" > > diff --git a/target/linux/brcm63xx/base-files/etc/board.d/02_network > b/target/linux/brcm63xx/base-files/etc/board.d/02_network > > index a2ca5a37b3..0e384f82f6 100755 > > --- a/target/linux/brcm63xx/base-files/etc/board.d/02_network > > +++ b/target/linux/brcm63xx/base-files/etc/board.d/02_network > > @@ -145,8 +145,8 @@ bcm963268bu_p300) > > ucidef_add_switch "switch0" \ > > "0:lan" "3:lan" "4:lan" "5:lan" "6:lan" "7:lan" "8t@eth0" > > ;; > > - > > cpva502p |\ > > +dv4210 |\ > > livebox1) > > ucidef_set_interfaces_lan_wan "eth0" "eth1" > > ;; > > diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh > b/target/linux/brcm63xx/base-files/etc/diag.sh > > index 34464ec44a..c673a75e40 100644 > > --- a/target/linux/brcm63xx/base-files/etc/diag.sh > > +++ b/target/linux/brcm63xx/base-files/etc/diag.sh > > @@ -114,6 +114,7 @@ set_state() { > > hg655b) > > status_led="HW65x:green:power" > > ;; > > + dv4210|\ > > livebox1) > > status_led="Livebox1:red:adsl-fail-power" > > ;; > > diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > > index 1676ae0abb..9c0c33cc31 100755 > > --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > > +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh > > @@ -177,6 +177,9 @@ brcm63xx_dt_detect() { > > "Inteno VG50") > > board_name="vg50" > > ;; > > + "Inventel DV4210") > > + board_name="dv4210" > > + ;; > > "Inventel Livebox 1") > > board_name="livebox1" > > ;; > > diff --git a/target/linux/brcm63xx/dts/dv4210.dts > b/target/linux/brcm63xx/dts/dv4210.dts > > new file mode 100644 > > index 0000000000..02975fe3b6 > > --- /dev/null > > +++ b/target/linux/brcm63xx/dts/dv4210.dts > > @@ -0,0 +1,102 @@ > > +/dts-v1/; > > + > > +#include "bcm6348.dtsi" > > + > > +#include <dt-bindings/input/input.h> > > + > > +/ { > > + model = "Inventel DV4210"; > > + compatible = "inventel,dv4210", "brcm,bcm6348"; > > + > > + chosen { > > + bootargs = "rootfstype=squashfs,jffs2 noinitrd > console=ttyS0,115200"; > > + stdout-path = "serial0:115200n8"; > > + }; > > + > > + keys { > > + compatible = "gpio-keys-polled"; > > + #address-cells = <1>; > > + #size-cells = <0>; > > + poll-interval = <20>; > > + > > + button1 { > > + label = "1"; > > + gpios = <&pinctrl 36 1>; > > + linux,code = <KEY_RESTART>; > > + debounce-interval = <60>; > > + }; > > + > > + button2 { > > + label = "2"; > > + gpios = <&pinctrl 7 1>; > > + linux,code = <BTN_2>; > > + debounce-interval = <60>; > > + }; > > + }; > > + > > + leds { > > + compatible = "gpio-leds"; > > + > > + red_adsl_fail { > > + label = "Livebox1:red:adsl-fail-power"; > > + gpios = <&pinctrl 0 0>; > > + default-state = "on"; > > + }; > > + > > + red_adsl { > > + label = "Livebox1:red:adsl"; > > + gpios = <&pinctrl 1 0>; > > + }; > > + > > + red_traffic { > > + label = "Livebox1:red:traffic"; > > + gpios = <&pinctrl 2 0>; > > + }; > > + > > + red_phone { > > + label = "Livebox1:red:phone"; > > + gpios = <&pinctrl 3 0>; > > + }; > > + > > + red_wifi { > > + label = "Livebox1:red:wifi"; > > + gpios = <&pinctrl 4 0>; > > + }; > > + }; > > +}; > > + > > +&pflash { > > + reg = <0x1f400000 0x800000>; > > + status = "ok"; > > + > > + partitions { > > + compatible = "fixed-partitions"; > > + #address-cells = <1>; > > + #size-cells = <1>; > > + > > + cfe@0 { > > + reg = <0x000000 0x010000>; > > + label = "cfe"; > > + }; > > + > > + linux@10000 { > > + reg = <0x010000 0x7e0000>; > > + label = "linux"; > > + compatible = "brcm,bcm963xx-imagetag"; > > + }; > > + > > + nvram@7f0000 { > > + reg = <0x7f0000 0x010000>; > > + label = "nvram"; > > + }; > > + }; > > +}; > > + > > +&pinctrl { > > + pinctrl-names = "default"; > > + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; > > +}; > > + > > +&uart0 { > > + status = "ok"; > > +}; > > diff --git a/target/linux/brcm63xx/image/bcm63xx.mk > b/target/linux/brcm63xx/image/bcm63xx.mk > > index 212960e972..690ffb49fa 100644 > > --- a/target/linux/brcm63xx/image/bcm63xx.mk > > +++ b/target/linux/brcm63xx/image/bcm63xx.mk > > @@ -769,6 +769,19 @@ define Device/livebox > > endef > > TARGET_DEVICES += livebox > > > > +define Device/DV4210 > > + $(Device/bcm63xx) > > + DEVICE_TITLE := Inventel DV4210 > > + DEVICE_DESCRIPTION = Build firmware images for the Inventel DV4210. > Board with CFE bootloader and >32MB RAM > > + DEVICE_DTS := dv4210 > > + CFE_BOARD_ID := DV4210 > > + CFE_CHIP_ID := 6348 > > + DEVICE_PACKAGES := \ > > + $(B43_PACKAGES) $(USB1_PACKAGES) > > + DEFAULT := y > > +endef > > +TARGET_DEVICES += DV4210 > > + > > ### Netgear ### > > define Device/CVG834G > > $(Device/bcm33xx) > > diff --git a/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > > new file mode 100644 > > index 0000000000..618a214d63 > > --- /dev/null > > +++ b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch > > @@ -0,0 +1,50 @@ > > +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c > > ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c > > +@@ -1058,6 +1058,31 @@ > > + }, > > + }; > > + > > ++static struct board_info __initdata board_DV4210 = { > > ++ .name = "DV4210", > > ++ .expected_cpu_id = 0x6348, > > ++ > > ++ .has_enet0 = 1, > > ++ .has_enet1 = 1, > > ++ .has_pci = 1, > > ++ > > ++ .enet0 = { > > ++ .has_phy = 1, > > ++ .use_internal_phy = 1, > > ++ }, > > ++ > > ++ .enet1 = { > > ++ .has_phy = 1, > > ++ .phy_id = 31, > > ++ }, > > ++ > > ++ .ephy_reset_gpio = 6, > > ++ .ephy_reset_gpio_flags = GPIO_ACTIVE_LOW, > > ++ > > ++ .has_ohci0 = 1, > > ++ .has_pccard = 0, > > ++}; > > ++ > > + static struct board_info __initdata board_96348A_122 = { > > + .name = "96348A-122", > > + .expected_cpu_id = 0x6348, > > +@@ -2746,6 +2771,7 @@ > > + &board_FAST2404, > > + &board_FAST2604, > > + &board_DV201AMR, > > ++ &board_DV4210, > > + &board_96348gw_a, > > + &board_rta1025w_16, > > + &board_96348_D4PW, > > +@@ -2859,6 +2885,7 @@ > > + { .compatible = "d-link,dsl-2640b-b", .data = &board_96348_D4PW, }, > > + { .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, }, > > + { .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, }, > > ++ { .compatible = "inventel,dv4210", .data = &board_DV4210, }, > > + { .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, }, > > + { .compatible = "netgear,dg834g-v4", .data = &board_96348W3, }, > > + { .compatible = "sagem,f@st2404", .data = &board_FAST2404, }, > > > >
diff --git a/target/linux/brcm63xx/base-files/etc/board.d/01_leds b/target/linux/brcm63xx/base-files/etc/board.d/01_leds index d25d37e847..00109ba112 100755 --- a/target/linux/brcm63xx/base-files/etc/board.d/01_leds +++ b/target/linux/brcm63xx/base-files/etc/board.d/01_leds @@ -69,6 +69,7 @@ homehub2a) ucidef_set_led_usbdev "usb1" "USB1" "HOMEHUB2A:blue:phone" "1-1" ucidef_set_led_usbdev "usb2" "USB2" "HOMEHUB2A:green:phone" "2-1" ;; +dv4210|\ livebox1) ucidef_set_led_netdev "lan" "LAN" "Livebox1:red:traffic" "eth0" ucidef_set_led_netdev "wan" "WAN" "Livebox1:red:adsl" "eth1" diff --git a/target/linux/brcm63xx/base-files/etc/board.d/02_network b/target/linux/brcm63xx/base-files/etc/board.d/02_network index a2ca5a37b3..0e384f82f6 100755 --- a/target/linux/brcm63xx/base-files/etc/board.d/02_network +++ b/target/linux/brcm63xx/base-files/etc/board.d/02_network @@ -145,8 +145,8 @@ bcm963268bu_p300) ucidef_add_switch "switch0" \ "0:lan" "3:lan" "4:lan" "5:lan" "6:lan" "7:lan" "8t@eth0" ;; - cpva502p |\ +dv4210 |\ livebox1) ucidef_set_interfaces_lan_wan "eth0" "eth1" ;; diff --git a/target/linux/brcm63xx/base-files/etc/diag.sh b/target/linux/brcm63xx/base-files/etc/diag.sh index 34464ec44a..c673a75e40 100644 --- a/target/linux/brcm63xx/base-files/etc/diag.sh +++ b/target/linux/brcm63xx/base-files/etc/diag.sh @@ -114,6 +114,7 @@ set_state() { hg655b) status_led="HW65x:green:power" ;; + dv4210|\ livebox1) status_led="Livebox1:red:adsl-fail-power" ;; diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh index 1676ae0abb..9c0c33cc31 100755 --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh @@ -177,6 +177,9 @@ brcm63xx_dt_detect() { "Inteno VG50") board_name="vg50" ;; + "Inventel DV4210") + board_name="dv4210" + ;; "Inventel Livebox 1") board_name="livebox1" ;; diff --git a/target/linux/brcm63xx/dts/dv4210.dts b/target/linux/brcm63xx/dts/dv4210.dts new file mode 100644 index 0000000000..02975fe3b6 --- /dev/null +++ b/target/linux/brcm63xx/dts/dv4210.dts @@ -0,0 +1,102 @@ +/dts-v1/; + +#include "bcm6348.dtsi" + +#include <dt-bindings/input/input.h> + +/ { + model = "Inventel DV4210"; + compatible = "inventel,dv4210", "brcm,bcm6348"; + + chosen { + bootargs = "rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200"; + stdout-path = "serial0:115200n8"; + }; + + keys { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + + button1 { + label = "1"; + gpios = <&pinctrl 36 1>; + linux,code = <KEY_RESTART>; + debounce-interval = <60>; + }; + + button2 { + label = "2"; + gpios = <&pinctrl 7 1>; + linux,code = <BTN_2>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + + red_adsl_fail { + label = "Livebox1:red:adsl-fail-power"; + gpios = <&pinctrl 0 0>; + default-state = "on"; + }; + + red_adsl { + label = "Livebox1:red:adsl"; + gpios = <&pinctrl 1 0>; + }; + + red_traffic { + label = "Livebox1:red:traffic"; + gpios = <&pinctrl 2 0>; + }; + + red_phone { + label = "Livebox1:red:phone"; + gpios = <&pinctrl 3 0>; + }; + + red_wifi { + label = "Livebox1:red:wifi"; + gpios = <&pinctrl 4 0>; + }; + }; +}; + +&pflash { + reg = <0x1f400000 0x800000>; + status = "ok"; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + cfe@0 { + reg = <0x000000 0x010000>; + label = "cfe"; + }; + + linux@10000 { + reg = <0x010000 0x7e0000>; + label = "linux"; + compatible = "brcm,bcm963xx-imagetag"; + }; + + nvram@7f0000 { + reg = <0x7f0000 0x010000>; + label = "nvram"; + }; + }; +}; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; + +&uart0 { + status = "ok"; +}; diff --git a/target/linux/brcm63xx/image/bcm63xx.mk b/target/linux/brcm63xx/image/bcm63xx.mk index 212960e972..690ffb49fa 100644 --- a/target/linux/brcm63xx/image/bcm63xx.mk +++ b/target/linux/brcm63xx/image/bcm63xx.mk @@ -769,6 +769,19 @@ define Device/livebox endef TARGET_DEVICES += livebox +define Device/DV4210 + $(Device/bcm63xx) + DEVICE_TITLE := Inventel DV4210 + DEVICE_DESCRIPTION = Build firmware images for the Inventel DV4210. Board with CFE bootloader and >32MB RAM + DEVICE_DTS := dv4210 + CFE_BOARD_ID := DV4210 + CFE_CHIP_ID := 6348 + DEVICE_PACKAGES := \ + $(B43_PACKAGES) $(USB1_PACKAGES) + DEFAULT := y +endef +TARGET_DEVICES += DV4210 + ### Netgear ### define Device/CVG834G $(Device/bcm33xx) diff --git a/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch new file mode 100644 index 0000000000..618a214d63 --- /dev/null +++ b/target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch @@ -0,0 +1,50 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -1058,6 +1058,31 @@ + }, + }; + ++static struct board_info __initdata board_DV4210 = { ++ .name = "DV4210", ++ .expected_cpu_id = 0x6348, ++ ++ .has_enet0 = 1, ++ .has_enet1 = 1, ++ .has_pci = 1, ++ ++ .enet0 = { ++ .has_phy = 1, ++ .use_internal_phy = 1, ++ }, ++ ++ .enet1 = { ++ .has_phy = 1, ++ .phy_id = 31, ++ }, ++ ++ .ephy_reset_gpio = 6, ++ .ephy_reset_gpio_flags = GPIO_ACTIVE_LOW, ++ ++ .has_ohci0 = 1, ++ .has_pccard = 0, ++}; ++ + static struct board_info __initdata board_96348A_122 = { + .name = "96348A-122", + .expected_cpu_id = 0x6348, +@@ -2746,6 +2771,7 @@ + &board_FAST2404, + &board_FAST2604, + &board_DV201AMR, ++ &board_DV4210, + &board_96348gw_a, + &board_rta1025w_16, + &board_96348_D4PW, +@@ -2859,6 +2885,7 @@ + { .compatible = "d-link,dsl-2640b-b", .data = &board_96348_D4PW, }, + { .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, }, + { .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, }, ++ { .compatible = "inventel,dv4210", .data = &board_DV4210, }, + { .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, }, + { .compatible = "netgear,dg834g-v4", .data = &board_96348W3, }, + { .compatible = "sagem,f@st2404", .data = &board_FAST2404, },
Add support for the Inventel DV4210 router. This is an Inventel Livebox 1 board. The patch supports the board with a CFE bootloader, and a RAM mod (64 MB, tested). The board originally comes with 8 MB flash. Under this conditions this old BCM6348 based board still runs quite fine with current snapshots. Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com> --- .../brcm63xx/base-files/etc/board.d/01_leds | 1 + .../base-files/etc/board.d/02_network | 2 +- target/linux/brcm63xx/base-files/etc/diag.sh | 1 + .../linux/brcm63xx/base-files/lib/brcm63xx.sh | 3 + target/linux/brcm63xx/dts/dv4210.dts | 102 ++++++++++++++++++ target/linux/brcm63xx/image/bcm63xx.mk | 13 +++ .../patches-4.14/599-board_DV4210.patch | 50 +++++++++ 7 files changed, 171 insertions(+), 1 deletion(-) create mode 100644 target/linux/brcm63xx/dts/dv4210.dts create mode 100644 target/linux/brcm63xx/patches-4.14/599-board_DV4210.patch