Hi, Just got my my chance to try this router.  It's 2014 now and my
comments are late...  Sorry, but getting this board supported in the
OpenWrt trunk is really good.

For those interested, the original patch can be found at the following URL.

        http://patchwork.openwrt.org/patch/4244/

On 29 October 2013 22:10, Xiaoning Kang <kan...@gmail.com> wrote:
> From: Xiaoning Kang <kan...@gmail.com>
>
> HiWifi HC6361(aka tw150v1) is a router developed by http://www.hiwifi.com,  
> which is basically a WR703N with larger flash and ram.  It also carries a 4G 
> emmc chip. The manufacturer had released a copy of modified openwrt sources 
> at https://code.hiwifi.com/. so I tried to migrate those changes to openwrt 
> trunk.
>
> Most of the changes were imported, with a few exceptions like button 
> handling.  The firmware builds and runs fine on my router.

There is only one reset button on the router and you have added the
support in the mach file.  Did I miss something?

>
> Signed-off-by: Xiaoning Kang <kan...@gmail.com>
> --
>
> diff --git a/target/linux/ar71xx/base-files/etc/diag.sh 
> b/target/linux/ar71xx/base-files/etc/diag.sh
> index 3962aa2..55e9a0b 100755
> --- a/target/linux/ar71xx/base-files/etc/diag.sh
> +++ b/target/linux/ar71xx/base-files/etc/diag.sh
> @@ -149,6 +149,9 @@ get_status_led() {
>         tl-wr2543n)
>                 status_led="tp-link:green:wps"
>                 ;;
> +       tw150v1)
> +               status_led="tw150v1:green:system"
> +               ;;
>         unifi)
>                 status_led="ubnt:green:dome"
>                 ;;
> diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds 
> b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
> index bd1c4b7..ed30755 100755
> --- a/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
> +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/01_leds
> @@ -229,6 +229,11 @@ tl-wr2543n)
>         ucidef_set_led_usbdev "usb" "USB" "tp-link:green:usb" "1-1"
>         ;;
>
> +tw150v1)
> +       ucidef_set_led_default "inet" "INET" "tw150v1:green:internet" "0"
> +       ucidef_set_led_wlan "wlan" "WLAN" "tw150v1:green:wlan-2p4" "wifi0tpt"
> +       ;;
> +

Do not know about wifi0tpt, shouldn't it be wifi0tpt?  There is no
wifi0tpt in the wiki page for ledtrig.

        http://wiki.openwrt.org/doc/uci/system#leds

>  wrt160nl)
>         ucidef_set_led_wlan "wlan" "WLAN" "wrt160nl:blue:wlan" "phy0tpt"
>         ;;
> @@ -272,6 +277,10 @@ wzr-hp-g300nh)
>         ucidef_set_led_netdev "router" "Router" "buffalo:green:router" "eth1"
>         ucidef_set_led_usbdev "usb" "USB" "buffalo:blue:usb" "1-1"
>         ;;
> +tw150v1)
> +        ucidef_set_led_default "inet" "INET" "tw150v1:green:internet" "0"
> +        ucidef_set_led_wlan "wlan" "WLAN" "tw150v1:green:wlan-2p4" "wifi0tpt"
> +        ;;

ditto.

>
>  zcn-1523h-2)
>         ucidef_set_led_netdev "lan1" "lan1" "zcn-1523h:green:lan1" "eth0"
> diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network 
> b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
> index 3d6ab29..03e30c4 100755
> --- a/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
> +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/02_network
> @@ -271,6 +271,7 @@ tl-wdr3500 |\
>  tl-wr741nd |\
>  tl-wr741nd-v4 |\
>  tl-wr841n-v7 |\
> +tw150v1 |\
>  whr-g301n |\
>  whr-hp-g300n |\
>  whr-hp-gn |\
> diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh 
> b/target/linux/ar71xx/base-files/lib/ar71xx.sh
> index 06786e7..b5c50bd 100755
> --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
> +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
> @@ -573,6 +573,9 @@ ar71xx_board_detect() {
>         "8devices Carambola2"*)
>                 name="carambola2"
>                 ;;
> +        *"Hiwifi Wireless HC6361 Board")
> +                name="tw150v1"
> +                ;;

I saw in the homepage that the formal brand name for this router is
"HiWiFi", so you may want to use it here.

>         esac
>
>         case "$machine" in
> diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh 
> b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
> index 28e4a91..5122c64 100755
> --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
> +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
> @@ -106,6 +106,13 @@ platform_check_image() {
>                 }
>                 return 0
>                 ;;
> +       tw150v1)
> +               [ "$magic_long" != "68737173" -a "$magic_long" != "2705" ] && 
> {
> +                       echo "Invalid image type."
> +                       return 1
> +               }
> +               return 0
> +               ;;

$magic_long will never equal to "2705" as it is always of length 8
bytes.  Do you actually mean $magic and "2705"?

>         ap81 | \
>         ap83 | \
>         ap132 | \
> @@ -324,6 +331,9 @@ platform_do_upgrade() {
>         om2p-lc)
>                 platform_do_upgrade_openmesh "$ARGV"
>                 ;;
> +        tw150v1)
> +                platform_do_upgrade_twarxx "$ARGV"
> +                ;;

Looks like definition of platform_do_upgrade_twarxx() is missing from
this patch.

>         *)
>                 default_do_upgrade "$ARGV"
>                 ;;
> diff --git a/target/linux/ar71xx/config-3.10 b/target/linux/ar71xx/config-3.10
> index f88d008..ee41ffd 100644
> --- a/target/linux/ar71xx/config-3.10
> +++ b/target/linux/ar71xx/config-3.10
> @@ -84,6 +84,7 @@ CONFIG_ATH79_MACH_TL_WR741ND_V4=y
>  CONFIG_ATH79_MACH_TL_WR841N_V1=y
>  CONFIG_ATH79_MACH_TL_WR841N_V8=y
>  CONFIG_ATH79_MACH_TL_WR941ND=y
> +CONFIG_ATH79_MACH_TW150V1=y
>  CONFIG_ATH79_MACH_UBNT=y
>  CONFIG_ATH79_MACH_UBNT_XM=y
>  CONFIG_ATH79_MACH_WHR_HP_G300N=y
> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tw150v1.c 
> b/target/linux/ar71xx/files/arch/mips/ath79/mach-tw150v1.c
> new file mode 100644
> index 0000000..738d890
> --- /dev/null
> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tw150v1.c
> @@ -0,0 +1,194 @@
> +/*
> + *  Hiwifi Wireless AR9331 Dreamboard (HORNET SoC) support

HiWiFi is better.

> + *
> + *  Copyright (C) 2012-2013 eric

Email address of the contact?

> + *
> + *  This program is free software; you can redistribute it and/or modify it
> + *  under the terms of the GNU General Public License version 2 as published
> + *  by the Free Software Foundation.
> + */
> +
> +#include <linux/gpio.h>
> +#include <linux/proc_fs.h>
> +
> +#include <asm/mach-ath79/ath79.h>
> +#include <asm/mach-ath79/ar71xx_regs.h>
> +
> +#include "common.h"
> +#include "dev-eth.h"
> +#include "dev-gpio-buttons.h"
> +#include "dev-leds-gpio.h"
> +#include "dev-m25p80.h"
> +#include "dev-usb.h"
> +#include "dev-wmac.h"
> +#include "machtypes.h"
> +
> +
> +#define TW150V1_GPIO_LED_WLAN_2P4      0       /* 2.4G wlan led */
> +#define TW150V1_GPIO_LED_USBFLAG       6       /* usb flag */

This is defined but never used.

> +#define        TW150V1_GPIO_LED_SYSTEM         1       /* system led */

Should be a space between "#define" and "TW150V1...", instead of tab.

> +#define TW150V1_GPIO_LED_INTERNET      27      /* internet led */
> +
> +#define TW150V1_GPIO_USBPOWER          20      /* usb power control */
> +#define        TW150V1_GPIO_BTN_RST            11      /* reset and wps 
> button */

There is no WPS button and USB port present on this router, right?

> +
> +#define TW150V1_GPIO_LED_LAN1  13
> +#define TW150V1_GPIO_LED_LAN2  14
> +#define TW150V1_GPIO_LED_LAN3  15
> +#define TW150V1_GPIO_LED_LAN4  16
> +#define TW150V1_GPIO_LED_WAN   17

Defined but never used.

> +
> +#define TW150V1_KEYS_POLL_INTERVAL     20      /* msecs */
> +#define TW150V1_KEYS_DEBOUNCE_INTERVAL (3 * TW150V1_KEYS_POLL_INTERVAL)
> +
> +extern void ar933x_eth_leds_on(void);
> +extern void ar933x_eth_leds_off(void);

ditto.

> +
> +static struct gpio_led tw150v1_leds_gpio[] __initdata = {
> +       {
> +               .name           = "tw150v1:green:wlan-2p4",
> +               .gpio           = TW150V1_GPIO_LED_WLAN_2P4,
> +               .active_low     = 1,
> +       }, {
> +               .name           = "tw150v1:green:system",
> +               .gpio           = TW150V1_GPIO_LED_SYSTEM,
> +               .active_low     = 1,
> +       }, {
> +               .name           = "tw150v1:green:internet",
> +               .gpio           = TW150V1_GPIO_LED_INTERNET,
> +               .active_low     = 1,
> +       }
> +};
> +
> +static struct gpio_keys_button tw150v1_gpio_keys[] __initdata = {
> +       {
> +               .desc           = "reset",
> +               .type           = EV_KEY,
> +               .code           = KEY_RESTART,
> +               .debounce_interval = TW150V1_KEYS_DEBOUNCE_INTERVAL,
> +               .gpio           = TW150V1_GPIO_BTN_RST,
> +               .active_low     = 1,
> +       }
> +};
> +
> +void __init ath79_set_usb_power_gpio(unsigned int gpio, unsigned long flags,
> +                                    const char *label)
> +{
> +       int err;
> +
> +       err = gpio_request_one(gpio, flags, label);
> +       if (err) {
> +               pr_err("ath79: can't setup GPIO%u (%s), err=%d\n",
> +                       gpio, label, err);
> +               return;
> +       }
> +
> +       err = gpio_export(gpio, false);
> +       if (err) {
> +               pr_err("ath79: can't export GPIO%u (%s), err=%d\n",
> +                       gpio, label, err);
> +       }
> +
> +       return;
> +}
> +
> +static inline void *memmem(const void *s1, const void *s2, size_t len1, 
> size_t len2)
> +{
> +        char *bf = (char *)s1, *pt = (char *)s2;
> +        size_t i, j;
> +
> +        if (len2 > len1)
> +                return NULL;
> +
> +        for (i = 0; i <= (len1 - len2); ++i) {
> +                for (j = 0; j < len2; ++j)
> +                        if (pt[j] != bf[i + j]) break;
> +                if (j == len2) return (bf + i);
> +        }
> +        return NULL;
> +}

You want strnstr()?

        http://lxr.free-electrons.com/source/lib/string.c#L721

> +
> +static u8 __init *get_mac_from_bdinfo(u8 *mac, void *bdinfo, size_t info_sz)
> +{
> +        const char mac_key[] = "fac_mac = ";
> +        size_t mac_key_len = strlen(mac_key);
> +        void *mac_sp = NULL;

"char *" is probably a better type for mac_sp.

> +        unsigned int mac_ints[6];
> +        int i;
> +
> +        if (!(mac_sp = memmem(bdinfo, mac_key, info_sz, mac_key_len))) {
> +                printk(KERN_ERR "%s: Cannot find MAC address prefix string 
> '%s'.\n",
> +                                __FUNCTION__, mac_key);
> +                return NULL;
> +        }
> +        mac_sp += mac_key_len;
> +
> +        if (sscanf(mac_sp, "%2x:%2x:%2x:%2x:%2x:%2x", &mac_ints[0],
> +                &mac_ints[1], &mac_ints[2], &mac_ints[3], &mac_ints[4],
> +                &mac_ints[5]) != 6) {
> +                printk(KERN_ERR "%s: Cannot get correct MAC address.\n", 
> __FUNCTION__);
> +                return NULL;
> +        }
> +
> +        for (i = 0; i < 6; i++)
> +                mac[i] = (u8)mac_ints[i];
> +
> +        return mac;
> +}
> +
> +static void __init tw150v1_setup(void)
> +{
> +       u8 mac[6];
> +
> +       u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
> +
> +       u8 no_cal_pattern[12];
> +       u8 cal_test_data[12];
> +
> +       ath79_setup_ar933x_phy4_switch(false, false);
> +
> +       ath79_gpio_function_enable(
> +                                       AR933X_GPIO_FUNC_ETH_SWITCH_LED0_EN |
> +                                   AR933X_GPIO_FUNC_ETH_SWITCH_LED1_EN |
> +                                   AR933X_GPIO_FUNC_ETH_SWITCH_LED2_EN |
> +                                   AR933X_GPIO_FUNC_ETH_SWITCH_LED3_EN |
> +                                   AR933X_GPIO_FUNC_ETH_SWITCH_LED4_EN);
> +

I can only see 3 LEDs present on the front panel of the router and
none of them is relevant to switch ports.

> +       ath79_register_m25p80(NULL);
> +
> +       /* check board radio is calibrated or not */
> +       memset(no_cal_pattern, 0xff, sizeof(no_cal_pattern));
> +
> +       memcpy(cal_test_data, ee, 4);
> +       memcpy(cal_test_data + 4, ee + 0x140, 4);
> +       memcpy(cal_test_data + 8, ee + 0x1e0, 4);
> +
> +       if (0 == memcmp(no_cal_pattern, cal_test_data, sizeof(cal_test_data)))
> +       {
> +               printk(KERN_WARNING "TW150-v1: MISS RADIO CAL DATA!\n");
> +       }
> +
> +       ath79_register_leds_gpio(-1, ARRAY_SIZE(tw150v1_leds_gpio),
> +                                tw150v1_leds_gpio);
> +       ath79_register_gpio_keys_polled(-1, TW150V1_KEYS_POLL_INTERVAL,
> +                                       ARRAY_SIZE(tw150v1_gpio_keys),
> +                                       tw150v1_gpio_keys);
> +
> +       ath79_set_usb_power_gpio(TW150V1_GPIO_USBPOWER, GPIOF_OUT_INIT_HIGH,
> +                               "USB power");
> +       ath79_register_usb();
> +
> +        get_mac_from_bdinfo(mac, (void *)KSEG1ADDR(0x1f010000), 0x200);
> +
> +       ath79_init_mac(ath79_eth0_data.mac_addr, mac, 1);
> +       ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0);       /* eth0(GE1) 
> and wifi0 use same mac_addr */

This line is too long with the comment, so letting it on its own line
above ath79_register_wmac() will be better.

> +
> +       ath79_register_mdio(0, 0x0);
> +
> +       ath79_register_eth(1);
> +       ath79_register_eth(0);
> +
> +       ath79_register_wmac(ee, mac);
> +}
> +
> +MIPS_MACHINE(ATH79_MACH_TW150V1, "HC6361", "Hiwifi Wireless HC6361 Board", 
> tw150v1_setup);

You may want to unify the naming, TW150-v1, HiWiFi-HC6361, or just HC6361.

> diff --git a/target/linux/ar71xx/generic/profiles/twr.mk 
> b/target/linux/ar71xx/generic/profiles/twr.mk
> new file mode 100644
> index 0000000..6ccb36e
> --- /dev/null
> +++ b/target/linux/ar71xx/generic/profiles/twr.mk
> @@ -0,0 +1,21 @@
> +#
> +# Copyright (C) 2012-2013 Hiwifi Wireless

I am not sure, but copyright notice may need to be updated.

> +#
> +# This is free software, licensed under the GNU General Public License v2.
> +# See /LICENSE for more information.
> +#
> +
> +define Profile/TW150V1
> +       NAME:=Hiwifi Wireless TW150V1 Board (AR9331)

HiWiFi

> +       PACKAGES:= kmod-usb-core kmod-usb2 kmod-usb-storage 
> kmod-usb-storage-extras \
> +                               ppp-mod-pppol2tp ppp-mod-pptp \
> +                               kmod-crypto-deflate kmod-fs-ext4 
> kmod-fs-msdos kmod-fs-ntfs kmod-fs-vfat \
> +                               kmod-ledtrig-gpio kmod-ledtrig-usbdev \
> +                               kmod-nls-cp437 kmod-nls-iso8859-1 
> kmod-nls-utf8 \
> +                               e2fsprogs

Because there is no USB port present on the box, are USB related
packages really needed?

> +endef
> +
> +define Profile/TW150V1/description
> +       Package set optimized for the Hiwifi Wireless AR9331 New Board.

I prefer "... for HiWiFi Wireless HC6361" because HC6361 is the name
used on the label at the bottom of the box.

> +endef
> +$(eval $(call Profile,TW150V1))
> diff --git a/target/linux/ar71xx/image/Makefile 
> b/target/linux/ar71xx/image/Makefile
> index a1b53bc..f12c059 100644
> --- a/target/linux/ar71xx/image/Makefile
> +++ b/target/linux/ar71xx/image/Makefile
> @@ -201,6 +201,7 @@ 
> wndr3700v2_mtdlayout=mtdparts=spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,15872k(fi
>  
> wndr4300_mtdlayout=mtdparts=ar934x-nfc:256k(u-boot)ro,256k(u-boot-env)ro,256k(caldata),512k(pot),2048k(language),512k(config),3072k(traffic_meter),1152k(kernel),24448k(rootfs),25600k@0x6c0000(firmware),256k(caldata_backup),-(reserved)
>  
> zcn1523h_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,6208k(rootfs),1472k(kernel),64k(configure)ro,64k(mfg)ro,64k(art)ro,7680k@0x50000(firmware)
>  
> mynet_n600_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
> +tw150v1_mtdlayout=mtdparts=spi0.0:64k(u-boot)ro,64k(bdinfo)ro,1280k(kernel),14848k(rootfs),64k(backup)ro,64k(art)ro,16128k@0x20000(firmware)
>
>  define Image/BuildKernel
>         cp $(KDIR)/vmlinux.elf $(VMLINUX).elf
> @@ -758,6 +759,21 @@ define Image/Build/Zcomax
>         fi
>  endef
>
> +define Image/Build/twseriesMkImage
> +       @echo "twseriesMkImage: 
> d1-$(1),d2-$(2),d3-$(3),d4-$(4),d5-$(5),d6-$(6),d7-$(7),d8-$(8)"
> +       $(call Sysupgrade/$(7),$(1),$(2),$(5),$(6))
> +       if [ -e "$(call sysupname,$(1),$(2))" ]; then \
> +               dd if=$(KDIR_TMP)/vmlinux-$(2).uImage \
> +                       of=$(call imgname,kernel,$(2)).bin bs=64k conv=sync; \
> +               dd if=$(KDIR)/root.$(1) \
> +                       of=$(call imgname,$(1),$(2)-rootfs).bin bs=128k 
> conv=sync; \
> +       fi
> +endef
> +
> +define Image/Build/twseriesLZMA
> +       $(call MkuImageLzma,$(2),$(3) $(4))
> +       $(call Image/Build/twseriesMkImage,$(1),$(2),$(3),$(4),$(5),$(6),$(7))
> +endef
>
>  define Jffs2Template
>    define Image/Build/Template/$(1)/jffs2-$(2)
> @@ -797,6 +813,8 @@ $(eval $(call 
> SingleProfile,AthGzip,64k,AP81,ap81,AP81,ttyS0,115200,,1310720,661
>  $(eval $(call 
> SingleProfile,AthGzip,64k,AP83,ap83,AP83,ttyS0,115200,,1310720,6619136,KRuImage))
>  $(eval $(call 
> SingleProfile,AthGzip,64k,AP96,ap96,AP96,ttyS0,115200,$$(ap96_mtdlayout),1769472,6291456,RKuImage))
>
> +$(eval $(call 
> SingleProfile,twseriesLZMA,64k,TW150V1,tw150v1,HC6361,ttyATH0,115200,$$(tw150v1_mtdlayout),1310720,15204352,KRuImage))
> +
>  $(eval $(call 
> SingleProfile,AthLzma,64k,ALFAAP96,alfa-ap96,ALFA-AP96,ttyS0,115200,$$(alfa_ap96_mtdlayout),2097152,13631488,RKuImage))
>  $(eval $(call 
> SingleProfile,AthLzma,64k,ALL0258N,all0258n,ALL0258N,ttyS0,115200,$$(all0258n_mtdlayout),65536,5373952,KRuImage))
>  $(eval $(call 
> SingleProfile,AthLzma,256k,ALL0315N,all0315n,ALL0315N,ttyS0,115200,$$(all0315n_mtdlayout),262144,12845056,KRuImage))
> diff --git 
> a/target/linux/ar71xx/patches-3.10/981-MIPS-ath79-turbowireless-machine.patch 
> b/target/linux/ar71xx/patches-3.10/981-MIPS-ath79-turbowireless-machine.patch
> new file mode 100644
> index 0000000..91114f9
> --- /dev/null
> +++ 
> b/target/linux/ar71xx/patches-3.10/981-MIPS-ath79-turbowireless-machine.patch
> @@ -0,0 +1,52 @@
> +--- a/arch/mips/ath79/Makefile
> ++++ b/arch/mips/ath79/Makefile
> +@@ -104,4 +106,5 @@
> + obj-$(CONFIG_ATH79_MACH_WZR_HP_AG300H)        += mach-wzr-hp-ag300h.o
> + obj-$(CONFIG_ATH79_MACH_WZR_HP_G450H) += mach-wzr-hp-g450h.o
> + obj-$(CONFIG_ATH79_MACH_ZCN_1523H)    += mach-zcn-1523h.o
> + obj-$(CONFIG_ATH79_MACH_CARAMBOLA2)   += mach-carambola2.o
> ++obj-$(CONFIG_ATH79_MACH_TW150V1)        += mach-tw150v1.o
> +
> +
> +--- a/arch/mips/ath79/machtypes.h
> ++++ b/arch/mips/ath79/machtypes.h
> +@@ -115,6 +115,7 @@
> +       ATH79_MACH_WZR_HP_G300NH,       /* Buffalo WZR-HP-G300NH */
> +       ATH79_MACH_WZR_HP_G300NH2,      /* Buffalo WZR-HP-G300NH2 */
> +       ATH79_MACH_WZR_HP_G450H,        /* Buffalo WZR-HP-G450H */
> ++      ATH79_MACH_TW150V1,         /* Hiwifi Wireless AR9331 New Board */

Use tab character instead of blank spaces.

> +       ATH79_MACH_ZCN_1523H_2,         /* Zcomax ZCN-1523H-2-xx */
> +       ATH79_MACH_ZCN_1523H_5,         /* Zcomax ZCN-1523H-5-xx */
> + };
> +
> + #endif /* _ATH79_MACHTYPE_H */
> +--- a/arch/mips/ath79/Kconfig
> ++++ b/arch/mips/ath79/Kconfig
> +@@ -219,6 +219,16 @@
> +       select ATH79_DEV_LEDS_GPIO
> +       select ATH79_DEV_M25P80
> +       select ATH79_DEV_USB
> ++
> ++config ATH79_MACH_TW150V1
> ++      bool "Hiwifi Wireless TW150V1 Board (AR9331) support"
> ++      select SOC_AR933X
> ++      select ATH79_DEV_ETH
> ++      select ATH79_DEV_GPIO_BUTTONS
> ++      select ATH79_DEV_LEDS_GPIO
> ++      select ATH79_DEV_M25P80
> ++      select ATH79_DEV_USB
> ++      select ATH79_DEV_WMAC
> +
> + config ATH79_MACH_WP543
> +       bool "Compex WP543/WPJ543 board support"
> +--- a/drivers/usb/host/Kconfig
> ++++ b/drivers/usb/host/Kconfig
> +@@ -219,7 +219,7 @@
> +
> + config USB_EHCI_ATH79
> +       bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)"
> +-      depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X)
> ++      depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X || 
> SOC_AR934X)

This hunk should be for a separate patch.


Regards.

                yousong


> +       select USB_EHCI_ROOT_HUB_TT
> +       select USB_EHCI_HCD_PLATFORM
> +       default y
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to