Hi, Please Cc me for brcm63xx patches, this makes it easier for me to apply them (especially if they get mangled by patchwork).
On 12 February 2017 at 14:48, Anthony Sepa via Lede-dev <lede-dev@lists.infradead.org> wrote: > The sender domain has a DMARC Reject/Quarantine policy which disallows > sending mailing list messages using the original "From" header. > > To mitigate this problem, the original message has been wrapped > automatically by the mailing list software. > > ---------- Forwarded message ---------- > From: Anthony Sepa <anthonys...@yahoo.ca> > To: lede-dev@lists.infradead.org > Cc: Anthony Sepa <anthonys...@yahoo.ca> > Date: Sun, 12 Feb 2017 09:45:06 -0400 > Subject: [PATCH] This patch adds support for the Actiontec R1000H gateway to > the brcm63xx targets. Please use "[PATCH] brcm63xx: <foo>" as the subject. > SOC: Broadcom BCM6368 (2 * Broadcom BMIPS4350 V3.1 / 400 MHz) > Flash size: 32MB (split 16/16 dual boot) You usually can use all 32MB and force it to not dual boot by giving it large enough images (>= 16MB). > RAM size: 64MB > Wireless: BCM432x 802.11a/b/g/n(pci) > Ethernet: Broadcom BCM53115 > USB: 1 x USB 2.0 > > Known issues: > - Unable to detect 53115 switch. This appear to be a problem with > probing for the PHY using MDIO and results in error 5. Doesn't seem to > be a problem with the configuration, and could use someone with > experience to have a look at it. Currently MDIO connected switches/devices aren't supported yet. > - Uses the b43 driver as using the OpenWRT/LEDE broadcom-wl driver > fails to load the firmware for the 4322, so 802.11n is not supported. You probably just need to supply an sprom, see how other boards use .use_fallback_sprom = 1 etc. > The factory build uses a newer broadcom-wl driver. > - No support for the cable port > > More info on the device and the research can be found at: > http://www.actiontec.com/212.html > > Same FCC ID as: > https://wikidevi.com/wiki/Actiontec_V1000H_(Telus) > > Signed-off-by: Anthony Sepa <anthonys...@yahoo.ca> > --- > target/linux/brcm63xx/dts/r1000h.dts | 89 > ++++++++++++++++++++++ > target/linux/brcm63xx/image/bcm63xx.mk | 16 ++++ > .../brcm63xx/patches-4.4/578-board_R1000H.patch | 63 +++++++++++++++ > 3 files changed, 168 insertions(+) > create mode 100644 target/linux/brcm63xx/dts/r1000h.dts > create mode 100644 target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch > > diff --git a/target/linux/brcm63xx/dts/r1000h.dts > b/target/linux/brcm63xx/dts/r1000h.dts > new file mode 100644 > index 0000000..a3a8073 > --- /dev/null > +++ b/target/linux/brcm63xx/dts/r1000h.dts > @@ -0,0 +1,89 @@ > +/dts-v1/; > + > +#include "bcm6368.dtsi" > + > +#include <dt-bindings/input/input.h> > + > +/ { > + model = "Actiontec R1000H"; > + compatible = "actiontec,r1000h", "brcm,bcm6368"; > + > + chosen { > + bootargs = "root=/dev/mtdblock2 rootfstype=squashfs > ubi.mtd=ubi_dev noinitrd console=ttyS0,115200"; What's up with the ubi partiton? Where does this come from? > + }; > + > + gpio-keys-polled { > + compatible = "gpio-keys-polled"; > + #address-cells = <1>; > + #size-cells = <0>; > + poll-interval = <20>; > + debounce-interval = <60>; > + > + reset { > + label = "reset"; > + gpios = <&gpio1 2 1>; > + linux,code = <KEY_RESTART>; > + }; Please add an empty line between nodes (I know that many boards don't, I plan to fix it eventually). > + wps { > + label = "wps"; > + gpios = <&gpio1 3 1>; > + linux,code = <KEY_WPS_BUTTON>; > + }; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + inet_green { > + label = "R1000H:green:inet"; > + gpios = <&gpio0 5 0>; > + }; Same here etc. > + usb_green { > + label = "R1000H:green:usb"; > + gpios = <&gpio0 21 1>; > + }; > + power_green { > + label = "R1000H:green:power"; > + gpios = <&gpio0 22 0>; > + default-state = "on"; > + }; > + wps_green { > + label = "R1000H:green:wps"; > + gpios = <&gpio0 23 1>; > + }; > + power_red { > + label = "R1000H:red:power"; > + gpios = <&gpio0 24 0>; > + }; > + wps_red { > + label = "R1000H:red:wps"; > + gpios = <&gpio0 30 1>; > + }; > + inet_red { > + label = "R1000H:red:inet"; > + gpios = <&gpio0 31 0>; > + }; > + }; > +}; > + > +&pflash { > + status = "ok"; > + > + linux,part-probe = "bcm63xxpart"; > + > + CFE@0 { > + reg = <0x000000 0x020000>; Please make this partition read-only. > + }; > + linux@20000 { > + reg = <0x020000 0x07e0000>; > + }; > + ubi_dev@800000 { > + reg = <0x0800000 0x0800000>; > + }; Same again, what's up with the ubi? > + factory@1000000 { > + reg = <0x1000000 0x0fe0000>; > + }; So this is the second image? As mentioned above, you should be able to use the full flash, unless actiontec did something strange. > + nvram@1fe0000 { > + reg = <0x1fe0000 0x20000>; > + }; > +}; > diff --git a/target/linux/brcm63xx/image/bcm63xx.mk > b/target/linux/brcm63xx/image/bcm63xx.mk > index 0749c29..947259b 100644 > --- a/target/linux/brcm63xx/image/bcm63xx.mk > +++ b/target/linux/brcm63xx/image/bcm63xx.mk > @@ -1,3 +1,4 @@ > + > # > # BCM33XX/BCM63XX Profiles > # > @@ -174,6 +175,21 @@ define Device/96368MVWG-generic > endef > TARGET_DEVICES += 96368MVWG-generic > > +### Actiontec ### > +define Device/R1000H > + $(Device/bcm63xx) > + FILESYSTEMS := squashfs > + DEVICE_TITLE := Actiontec R1000H > + DEVICE_DTS := r1000h > + CFE_BOARD_ID := 96368MVWG > + CFE_CHIP_ID := 6368 > + FLASH_MB := 8 In your patch notes you say, 32, here you say 8. So how much is it? > + IMAGE_OFFSET := 0x20000 > + DEVICE_PACKAGES := \ > + $(USB2_PACKAGES) > +endef > +TARGET_DEVICES += R1000H > + > ### ADB ### > define Device/A4001N > $(Device/bcm63xx) > diff --git a/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch > b/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch > new file mode 100644 > index 0000000..c9c919a > --- /dev/null > +++ b/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch > @@ -0,0 +1,63 @@ > +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c > ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c > +@@ -2200,6 +2200,44 @@ > + .type = SPROM_BCM4318, > + .pci_bus = 0, > + .pci_dev = 1, > ++ }, > ++}; > ++ > ++static struct board_info __initdata board_R1000H = { > ++ .name = "R1000H", > ++ .expected_cpu_id = 0x6368, > ++ > ++ .has_uart0 = 1, > ++ .has_uart1 = 1, > ++ .has_pci = 1, > ++ .has_ohci0 = 1, > ++ .has_ehci0 = 1, > ++ .has_usbd = 1, > ++ .usbd = { > ++ .use_fullspeed = 0, > ++ .port_no = 0, > ++ }, I don't see any usb device port. Did I miss it? If not, please drop the .has_usbd etc. > ++ > ++ .has_enetsw = 1, > ++ .enetsw = { > ++ .used_ports = { > ++ [4] = { > ++ .used = 1, > ++ .phy_id = 0xff, > ++ .bypass_link = 1, > ++ .force_speed = 1000, > ++ .force_duplex_full = 1, > ++ .name = "RGMII", > ++ }, > ++ [5] = { > ++ .used = 1, > ++ .phy_id = 0xff, > ++ .bypass_link = 1, > ++ .force_speed = 1000, > ++ .force_duplex_full = 1, > ++ .name = "RGMII", > ++ }, Does it really use both ports. Is one the wan port? is it the cable port? Anyways, you should give them unique names. > ++ }, > + }, > + }; > + > +@@ -2701,6 +2739,7 @@ > + &board_HG622, > + &board_HG655b, > + &board_P870HW51A_V2, > ++ &board_R1000H, > + &board_VH4032N, > + &board_VR3025u, > + &board_VR3025un, > +@@ -2802,6 +2841,7 @@ > + { .compatible = "sfr,nb6-ser-r0", .data = &board_nb6, }, > + #endif > + #ifdef CONFIG_BCM63XX_CPU_6368 > ++ { .compatible = "actiontec,r1000h", .data = &board_R1000H, }, > + { .compatible = "adb,av4202n", .data = &board_AV4202N, }, > + { .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, }, > + { .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, }, I don't see you modifying target/linux/brcm63xx/base-files/etc/board.d/02_network, please add it at the appropriate place. You also might want to add it to 01_leds for its usb-led. Regards Jonas _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev