Message ID | 1441738822-30870-1-git-send-email-drasko.draskovic@gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Hi all, any news on this? Who is in charge of integrating these patches and should a particular maintainer be contacted? BR, Drasko On Tue, Sep 8, 2015 at 9:00 PM, Drasko DRASKOVIC <drasko.draskovic@gmail.com> wrote: > Add support for WeIO board (http://we-io.net), which is based on > Carambola2 board from 8Devices. > > Signed-off-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com> > --- > target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 + > .../ar71xx/base-files/lib/upgrade/platform.sh | 3 +- > target/linux/ar71xx/config-4.1 | 1 + > .../linux/ar71xx/files/arch/mips/ath79/mach-weio.c | 145 +++++++++++++++++++++ > target/linux/ar71xx/generic/profiles/weio.mk | 17 +++ > target/linux/ar71xx/image/Makefile | 8 ++ > .../700-MIPS-ath79-openwrt-machines.patch | 21 ++- > 7 files changed, 192 insertions(+), 6 deletions(-) > create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > create mode 100644 target/linux/ar71xx/generic/profiles/weio.mk > > diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh > index e1f345e..e30cac2 100755 > --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh > +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh > @@ -832,6 +832,9 @@ ar71xx_board_detect() { > *"UniFi AP Pro") > name="uap-pro" > ;; > + *"WeIO") > + name="weio" > + ;; > *WHR-G301N) > name="whr-g301n" > ;; > diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > index c1962e4..b681fb8 100755 > --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > @@ -250,7 +250,8 @@ platform_check_image() { > nbg460n_550n_550nh | \ > unifi | \ > unifi-outdoor | \ > - carambola2 ) > + carambola2 | \ > + weio ) > [ "$magic" != "2705" ] && { > echo "Invalid image type." > return 1 > diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 > index 21c4601..7d836d9 100644 > --- a/target/linux/ar71xx/config-4.1 > +++ b/target/linux/ar71xx/config-4.1 > @@ -139,6 +139,7 @@ CONFIG_ATH79_MACH_TL_WR941ND=y > CONFIG_ATH79_MACH_TUBE2H=y > CONFIG_ATH79_MACH_UBNT=y > CONFIG_ATH79_MACH_UBNT_XM=y > +CONFIG_ATH79_MACH_WEIO=y > CONFIG_ATH79_MACH_WHR_HP_G300N=y > CONFIG_ATH79_MACH_WLAE_AG300N=y > CONFIG_ATH79_MACH_WLR8100=y > diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > new file mode 100644 > index 0000000..791991c > --- /dev/null > +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > @@ -0,0 +1,145 @@ > +/** > + * WEIO Web Of Things Platform > + * > + * Copyright (C) 2013 Drasko DRASKOVIC and Uros PETREVSKI > + * > + * ## ## ######## #### ####### > + * ## ## ## ## ## ## ## > + * ## ## ## ## ## ## ## > + * ## ## ## ###### ## ## ## > + * ## ## ## ## ## ## ## > + * ## ## ## ## ## ## ## > + * ### ### ######## #### ####### > + * > + * Web Of Things Platform > + * > + * This program is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * as published by the Free Software Foundation; either version 2 > + * of the License, or (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. > + * > + * Authors : > + * Drasko DRASKOVIC <drasko.draskovic@gmail.com> > + * Uros PETREVSKI <uros@nodesign.net> > + */ > + > +#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-spi.h" > +#include "dev-usb.h" > +#include "dev-wmac.h" > +#include "machtypes.h" > +#include "linux/i2c-gpio.h" > +#include "linux/platform_device.h" > + > +#define WEIO_GPIO_LED_STA 1 > +#define WEIO_GPIO_LED_AP 16 > + > +#define WEIO_GPIO_BTN_AP 20 > +#define WEIO_GPIO_BTN_RESET 23 > + > +#define WEIO_KEYS_POLL_INTERVAL 20 /* msecs */ > +#define WEIO_KEYS_DEBOUNCE_INTERVAL (3 * WEIO_KEYS_POLL_INTERVAL) > + > +#define WEIO_MAC0_OFFSET 0x0000 > +#define WEIO_MAC1_OFFSET 0x0006 > +#define WEIO_CALDATA_OFFSET 0x1000 > +#define WEIO_WMAC_MAC_OFFSET 0x1002 > + > +static struct gpio_led weio_leds_gpio[] __initdata = { > + { > + .name = "weio:green:sta", > + .gpio = WEIO_GPIO_LED_STA, > + .active_low = 1, > + .default_state = LEDS_GPIO_DEFSTATE_ON, > + }, { > + .name = "weio:green:ap", > + .gpio = WEIO_GPIO_LED_AP, > + .active_low = 1, > + .default_state = LEDS_GPIO_DEFSTATE_ON, > + } > +}; > + > +static struct gpio_keys_button weio_gpio_keys[] __initdata = { > + { > + .desc = "ap button", > + .type = EV_KEY, > + .code = BTN_0, > + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > + .gpio = WEIO_GPIO_BTN_AP, > + .active_low = 1, > + }, > + { > + .desc = "soft-reset button", > + .type = EV_KEY, > + .code = BTN_1, > + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > + .gpio = WEIO_GPIO_BTN_RESET, > + .active_low = 1, > + } > +}; > + > +static struct i2c_gpio_platform_data weio_i2c_gpio_data = { > + .sda_pin = 18, > + .scl_pin = 19, > +}; > + > +static struct platform_device weio_i2c_gpio = { > + .name = "i2c-gpio", > + .id = 0, > + .dev = { > + .platform_data = &weio_i2c_gpio_data, > + }, > +}; > + > +static struct platform_device *weio_devices[] __initdata = { > + &weio_i2c_gpio > +}; > + > +static void __init weio_common_setup(void) > +{ > + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); > + > + ath79_register_m25p80(NULL); > + ath79_register_wmac(art + WEIO_CALDATA_OFFSET, > + art + WEIO_WMAC_MAC_OFFSET); > +} > + > +static void __init weio_setup(void) > +{ > + weio_common_setup(); > + > + > + ath79_gpio_function_disable(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); > + > + platform_add_devices(weio_devices, ARRAY_SIZE(weio_devices)); > + > + ath79_register_leds_gpio(-1, ARRAY_SIZE(weio_leds_gpio), > + weio_leds_gpio); > + > + ath79_register_gpio_keys_polled(-1, WEIO_KEYS_POLL_INTERVAL, > + ARRAY_SIZE(weio_gpio_keys), > + weio_gpio_keys); > + ath79_register_usb(); > +} > + > +MIPS_MACHINE(ATH79_MACH_WEIO, "WEIO", "WeIO board from Drasko DRASKOVIC and Uros PETREVSKI", > + weio_setup); > diff --git a/target/linux/ar71xx/generic/profiles/weio.mk b/target/linux/ar71xx/generic/profiles/weio.mk > new file mode 100644 > index 0000000..227cec9 > --- /dev/null > +++ b/target/linux/ar71xx/generic/profiles/weio.mk > @@ -0,0 +1,17 @@ > +# > +# Copyright (C) 2013 OpenWrt.org > +# > +# This is free software, licensed under the GNU General Public License v2. > +# See /LICENSE for more information. > +# > + > +define Profile/WEIO > + NAME:=WeIO > + PACKAGES:=kmod-usb-core kmod-usb2 > +endef > + > +define Profile/WEIO/Description > + Package set optimized for the WeIO board. > +endef > + > +$(eval $(call Profile,WEIO)) > diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile > index e6fe36a..0a37fd1 100644 > --- a/target/linux/ar71xx/image/Makefile > +++ b/target/linux/ar71xx/image/Makefile > @@ -179,6 +179,14 @@ define Device/carambola2 > endef > TARGET_DEVICES += carambola2 > > +define Device/weio > + BOARDNAME = WEIO > + IMAGE_SIZE = 16000k > + CONSOLE = ttyATH0,115200 > + MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro > +endef > +TARGET_DEVICES += weio > + > define Device/wndr3700 > BOARDNAME = WNDR3700 > NETGEAR_KERNEL_MAGIC = 0x33373030 > diff --git a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > index 02ebd1b..fa9fd0ad 100644 > --- a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > +++ b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > @@ -1,6 +1,6 @@ > --- a/arch/mips/ath79/machtypes.h > +++ b/arch/mips/ath79/machtypes.h > -@@ -16,24 +16,207 @@ > +@@ -16,24 +16,208 @@ > > enum ath79_mach_type { > ATH79_MACH_GENERIC = 0, > @@ -176,6 +176,7 @@ > ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ > + ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP Outdoor+ */ > ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */ > ++ ATH79_MACH_WEIO, /* WeIO board */ > + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */ > + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */ > + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */ > @@ -1437,7 +1438,7 @@ > > config ATH79_MACH_UBNT_XM > bool "Ubiquiti Networks XM/UniFi boards" > -@@ -83,6 +1212,97 @@ config ATH79_MACH_UBNT_XM > +@@ -83,6 +1212,106 @@ config ATH79_MACH_UBNT_XM > Say 'Y' here if you want your kernel to support the > Ubiquiti Networks XM (rev 1.0) board. > > @@ -1511,6 +1512,15 @@ > + select ATH79_DEV_USB > + select ATH79_DEV_WMAC > + > ++config ATH79_MACH_WEIO > ++ bool "WeIO board" > ++ select SOC_AR933X > ++ 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_BHU_BXU2000N2_A > + bool "BHU BXU2000n-2 rev. A support" > + select SOC_AR934X > @@ -1535,7 +1545,7 @@ > endmenu > > config SOC_AR71XX > -@@ -134,7 +1354,10 @@ config ATH79_DEV_DSA > +@@ -134,7 +1363,10 @@ config ATH79_DEV_DSA > config ATH79_DEV_ETH > def_bool n > > @@ -1547,7 +1557,7 @@ > def_bool n > > config ATH79_DEV_GPIO_BUTTONS > -@@ -164,6 +1387,11 @@ config ATH79_PCI_ATH9K_FIXUP > +@@ -164,6 +1396,11 @@ config ATH79_PCI_ATH9K_FIXUP > def_bool n > > config ATH79_ROUTERBOOT > @@ -1561,7 +1571,7 @@ > endif > --- a/arch/mips/ath79/Makefile > +++ b/arch/mips/ath79/Makefile > -@@ -38,9 +38,133 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > +@@ -38,9 +38,134 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > # > # Machines > # > @@ -1670,6 +1680,7 @@ > +obj-$(CONFIG_ATH79_MACH_TUBE2H) += mach-tube2h.o > +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o > obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o > ++obj-$(CONFIG_ATH79_MACH_WEIO) += mach-weio.o > +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o > +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o > +obj-$(CONFIG_ATH79_MACH_WLR8100) += mach-wlr8100.o > -- > 2.1.4 >
They will eventually do it, I suppose they where mainly focused on the release until now =)
Hi, On Tue, Sep 8, 2015 at 9:00 PM, Drasko DRASKOVIC <drasko.draskovic@gmail.com> wrote: > Subject: [PATCH] [SIGNED-OFF] Add initial support for WeIO board Please version your patches if you change them ([PATCH V2] etc) > Add support for WeIO board (http://we-io.net), which is based on > Carambola2 board from 8Devices. > > Signed-off-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com> > --- Please keep a changelog here about the changes between submitssions > target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 + > .../ar71xx/base-files/lib/upgrade/platform.sh | 3 +- > target/linux/ar71xx/config-4.1 | 1 + > .../linux/ar71xx/files/arch/mips/ath79/mach-weio.c | 145 +++++++++++++++++++++ > target/linux/ar71xx/generic/profiles/weio.mk | 17 +++ > target/linux/ar71xx/image/Makefile | 8 ++ > .../700-MIPS-ath79-openwrt-machines.patch | 21 ++- I don't see you updating etc/uci-defaults/02_network or any of the uci-defaults files, so this won't have any proper config. > 7 files changed, 192 insertions(+), 6 deletions(-) > create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > create mode 100644 target/linux/ar71xx/generic/profiles/weio.mk > > diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh > index e1f345e..e30cac2 100755 > --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh > +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh > @@ -832,6 +832,9 @@ ar71xx_board_detect() { > *"UniFi AP Pro") > name="uap-pro" > ;; > + *"WeIO") > + name="weio" > + ;; > *WHR-G301N) > name="whr-g301n" > ;; > diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > index c1962e4..b681fb8 100755 > --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > @@ -250,7 +250,8 @@ platform_check_image() { > nbg460n_550n_550nh | \ > unifi | \ > unifi-outdoor | \ > - carambola2 ) > + carambola2 | \ > + weio ) > [ "$magic" != "2705" ] && { > echo "Invalid image type." > return 1 > diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 > index 21c4601..7d836d9 100644 > --- a/target/linux/ar71xx/config-4.1 > +++ b/target/linux/ar71xx/config-4.1 > @@ -139,6 +139,7 @@ CONFIG_ATH79_MACH_TL_WR941ND=y > CONFIG_ATH79_MACH_TUBE2H=y > CONFIG_ATH79_MACH_UBNT=y > CONFIG_ATH79_MACH_UBNT_XM=y > +CONFIG_ATH79_MACH_WEIO=y > CONFIG_ATH79_MACH_WHR_HP_G300N=y > CONFIG_ATH79_MACH_WLAE_AG300N=y > CONFIG_ATH79_MACH_WLR8100=y > diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > new file mode 100644 > index 0000000..791991c > --- /dev/null > +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > @@ -0,0 +1,145 @@ > +/** > + * WEIO Web Of Things Platform > + * > + * Copyright (C) 2013 Drasko DRASKOVIC and Uros PETREVSKI > + * > + * ## ## ######## #### ####### > + * ## ## ## ## ## ## ## > + * ## ## ## ## ## ## ## > + * ## ## ## ###### ## ## ## > + * ## ## ## ## ## ## ## > + * ## ## ## ## ## ## ## > + * ### ### ######## #### ####### > + * > + * Web Of Things Platform > + * > + * This program is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * as published by the Free Software Foundation; either version 2 > + * of the License, or (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program; if not, write to the Free Software > + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. > + * > + * Authors : > + * Drasko DRASKOVIC <drasko.draskovic@gmail.com> > + * Uros PETREVSKI <uros@nodesign.net> > + */ > + > +#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-spi.h" > +#include "dev-usb.h" > +#include "dev-wmac.h" > +#include "machtypes.h" > +#include "linux/i2c-gpio.h" > +#include "linux/platform_device.h" > + > +#define WEIO_GPIO_LED_STA 1 > +#define WEIO_GPIO_LED_AP 16 > + > +#define WEIO_GPIO_BTN_AP 20 > +#define WEIO_GPIO_BTN_RESET 23 > + > +#define WEIO_KEYS_POLL_INTERVAL 20 /* msecs */ > +#define WEIO_KEYS_DEBOUNCE_INTERVAL (3 * WEIO_KEYS_POLL_INTERVAL) > + > +#define WEIO_MAC0_OFFSET 0x0000 > +#define WEIO_MAC1_OFFSET 0x0006 > +#define WEIO_CALDATA_OFFSET 0x1000 > +#define WEIO_WMAC_MAC_OFFSET 0x1002 Please use tabs for indentation and align the values. > + > +static struct gpio_led weio_leds_gpio[] __initdata = { > + { > + .name = "weio:green:sta", > + .gpio = WEIO_GPIO_LED_STA, > + .active_low = 1, > + .default_state = LEDS_GPIO_DEFSTATE_ON, > + }, { > + .name = "weio:green:ap", > + .gpio = WEIO_GPIO_LED_AP, > + .active_low = 1, > + .default_state = LEDS_GPIO_DEFSTATE_ON, > + } > +}; Please use tabs for indentation. The correct braces placement is { }, { } > + > +static struct gpio_keys_button weio_gpio_keys[] __initdata = { > + { > + .desc = "ap button", > + .type = EV_KEY, > + .code = BTN_0, > + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > + .gpio = WEIO_GPIO_BTN_AP, > + .active_low = 1, > + }, > + { > + .desc = "soft-reset button", > + .type = EV_KEY, > + .code = BTN_1, > + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > + .gpio = WEIO_GPIO_BTN_RESET, > + .active_low = 1, > + } > +}; Please use tabs for indentation. > + > +static struct i2c_gpio_platform_data weio_i2c_gpio_data = { > + .sda_pin = 18, > + .scl_pin = 19, > +}; Please use tabs for indentation. > + > +static struct platform_device weio_i2c_gpio = { > + .name = "i2c-gpio", > + .id = 0, > + .dev = { > + .platform_data = &weio_i2c_gpio_data, > + }, > +}; Please use tabs for indentation. > + > +static struct platform_device *weio_devices[] __initdata = { > + &weio_i2c_gpio > +}; Please use tabs for indentation. > + > +static void __init weio_common_setup(void) > +{ > + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); > + > + ath79_register_m25p80(NULL); > + ath79_register_wmac(art + WEIO_CALDATA_OFFSET, > + art + WEIO_WMAC_MAC_OFFSET); Plase align the arguments with the opening ( (use spaces for the last < 8 steps) > +} Please use tabs for indentation. > + > +static void __init weio_setup(void) > +{ > + weio_common_setup(); > + > + Only one empty line please. > + ath79_gpio_function_disable(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); Plase align the arguments with the opening ( > + > + platform_add_devices(weio_devices, ARRAY_SIZE(weio_devices)); > + > + ath79_register_leds_gpio(-1, ARRAY_SIZE(weio_leds_gpio), > + weio_leds_gpio); Plase align the arguments with the opening ( > + > + ath79_register_gpio_keys_polled(-1, WEIO_KEYS_POLL_INTERVAL, > + ARRAY_SIZE(weio_gpio_keys), > + weio_gpio_keys); Plase align the arguments with the opening ( > + ath79_register_usb(); Please use tabs for indentation. > +} > + > +MIPS_MACHINE(ATH79_MACH_WEIO, "WEIO", "WeIO board from Drasko DRASKOVIC and Uros PETREVSKI", > + weio_setup); > diff --git a/target/linux/ar71xx/generic/profiles/weio.mk b/target/linux/ar71xx/generic/profiles/weio.mk > new file mode 100644 > index 0000000..227cec9 > --- /dev/null > +++ b/target/linux/ar71xx/generic/profiles/weio.mk > @@ -0,0 +1,17 @@ > +# > +# Copyright (C) 2013 OpenWrt.org > +# > +# This is free software, licensed under the GNU General Public License v2. > +# See /LICENSE for more information. > +# > + > +define Profile/WEIO > + NAME:=WeIO > + PACKAGES:=kmod-usb-core kmod-usb2 No wifi drivers? > +endef > + > +define Profile/WEIO/Description > + Package set optimized for the WeIO board. > +endef > + > +$(eval $(call Profile,WEIO)) > diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile > index e6fe36a..0a37fd1 100644 > --- a/target/linux/ar71xx/image/Makefile > +++ b/target/linux/ar71xx/image/Makefile > @@ -179,6 +179,14 @@ define Device/carambola2 > endef > TARGET_DEVICES += carambola2 > > +define Device/weio > + BOARDNAME = WEIO > + IMAGE_SIZE = 16000k > + CONSOLE = ttyATH0,115200 > + MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro > +endef > +TARGET_DEVICES += weio > + > define Device/wndr3700 > BOARDNAME = WNDR3700 > NETGEAR_KERNEL_MAGIC = 0x33373030 > diff --git a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > index 02ebd1b..fa9fd0ad 100644 > --- a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > +++ b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > @@ -1,6 +1,6 @@ > --- a/arch/mips/ath79/machtypes.h > +++ b/arch/mips/ath79/machtypes.h > -@@ -16,24 +16,207 @@ > +@@ -16,24 +16,208 @@ > > enum ath79_mach_type { > ATH79_MACH_GENERIC = 0, > @@ -176,6 +176,7 @@ > ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ > + ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP Outdoor+ */ > ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */ > ++ ATH79_MACH_WEIO, /* WeIO board */ > + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */ > + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */ > + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */ > @@ -1437,7 +1438,7 @@ > > config ATH79_MACH_UBNT_XM > bool "Ubiquiti Networks XM/UniFi boards" > -@@ -83,6 +1212,97 @@ config ATH79_MACH_UBNT_XM > +@@ -83,6 +1212,106 @@ config ATH79_MACH_UBNT_XM > Say 'Y' here if you want your kernel to support the > Ubiquiti Networks XM (rev 1.0) board. > > @@ -1511,6 +1512,15 @@ > + select ATH79_DEV_USB > + select ATH79_DEV_WMAC > + > ++config ATH79_MACH_WEIO > ++ bool "WeIO board" > ++ select SOC_AR933X > ++ 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_BHU_BXU2000N2_A > + bool "BHU BXU2000n-2 rev. A support" > + select SOC_AR934X > @@ -1535,7 +1545,7 @@ > endmenu > > config SOC_AR71XX > -@@ -134,7 +1354,10 @@ config ATH79_DEV_DSA > +@@ -134,7 +1363,10 @@ config ATH79_DEV_DSA > config ATH79_DEV_ETH > def_bool n > > @@ -1547,7 +1557,7 @@ > def_bool n > > config ATH79_DEV_GPIO_BUTTONS > -@@ -164,6 +1387,11 @@ config ATH79_PCI_ATH9K_FIXUP > +@@ -164,6 +1396,11 @@ config ATH79_PCI_ATH9K_FIXUP > def_bool n > > config ATH79_ROUTERBOOT > @@ -1561,7 +1571,7 @@ > endif > --- a/arch/mips/ath79/Makefile > +++ b/arch/mips/ath79/Makefile > -@@ -38,9 +38,133 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > +@@ -38,9 +38,134 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > # > # Machines > # > @@ -1670,6 +1680,7 @@ > +obj-$(CONFIG_ATH79_MACH_TUBE2H) += mach-tube2h.o > +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o > obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o > ++obj-$(CONFIG_ATH79_MACH_WEIO) += mach-weio.o > +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o > +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o > +obj-$(CONFIG_ATH79_MACH_WLR8100) += mach-wlr8100.o Jonas
Hi Jonas, I have re-sent (in a spearate e-mail) patch with corrections based on your comments. Best reagrds, Drasko On Fri, Sep 11, 2015 at 2:51 PM, Jonas Gorski <jogo@openwrt.org> wrote: > Hi, > > On Tue, Sep 8, 2015 at 9:00 PM, Drasko DRASKOVIC > <drasko.draskovic@gmail.com> wrote: >> Subject: [PATCH] [SIGNED-OFF] Add initial support for WeIO board > > Please version your patches if you change them ([PATCH V2] etc) >> Add support for WeIO board (http://we-io.net), which is based on >> Carambola2 board from 8Devices. >> >> Signed-off-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com> >> --- > > Please keep a changelog here about the changes between submitssions >> target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 + >> .../ar71xx/base-files/lib/upgrade/platform.sh | 3 +- >> target/linux/ar71xx/config-4.1 | 1 + >> .../linux/ar71xx/files/arch/mips/ath79/mach-weio.c | 145 +++++++++++++++++++++ >> target/linux/ar71xx/generic/profiles/weio.mk | 17 +++ >> target/linux/ar71xx/image/Makefile | 8 ++ >> .../700-MIPS-ath79-openwrt-machines.patch | 21 ++- > > I don't see you updating etc/uci-defaults/02_network or any of the > uci-defaults files, so this won't have any proper config. > > >> 7 files changed, 192 insertions(+), 6 deletions(-) >> create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c >> create mode 100644 target/linux/ar71xx/generic/profiles/weio.mk >> >> diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh >> index e1f345e..e30cac2 100755 >> --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh >> +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh >> @@ -832,6 +832,9 @@ ar71xx_board_detect() { >> *"UniFi AP Pro") >> name="uap-pro" >> ;; >> + *"WeIO") >> + name="weio" >> + ;; >> *WHR-G301N) >> name="whr-g301n" >> ;; >> diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> index c1962e4..b681fb8 100755 >> --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh >> @@ -250,7 +250,8 @@ platform_check_image() { >> nbg460n_550n_550nh | \ >> unifi | \ >> unifi-outdoor | \ >> - carambola2 ) >> + carambola2 | \ >> + weio ) >> [ "$magic" != "2705" ] && { >> echo "Invalid image type." >> return 1 >> diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 >> index 21c4601..7d836d9 100644 >> --- a/target/linux/ar71xx/config-4.1 >> +++ b/target/linux/ar71xx/config-4.1 >> @@ -139,6 +139,7 @@ CONFIG_ATH79_MACH_TL_WR941ND=y >> CONFIG_ATH79_MACH_TUBE2H=y >> CONFIG_ATH79_MACH_UBNT=y >> CONFIG_ATH79_MACH_UBNT_XM=y >> +CONFIG_ATH79_MACH_WEIO=y >> CONFIG_ATH79_MACH_WHR_HP_G300N=y >> CONFIG_ATH79_MACH_WLAE_AG300N=y >> CONFIG_ATH79_MACH_WLR8100=y >> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c >> new file mode 100644 >> index 0000000..791991c >> --- /dev/null >> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c >> @@ -0,0 +1,145 @@ >> +/** >> + * WEIO Web Of Things Platform >> + * >> + * Copyright (C) 2013 Drasko DRASKOVIC and Uros PETREVSKI >> + * >> + * ## ## ######## #### ####### >> + * ## ## ## ## ## ## ## >> + * ## ## ## ## ## ## ## >> + * ## ## ## ###### ## ## ## >> + * ## ## ## ## ## ## ## >> + * ## ## ## ## ## ## ## >> + * ### ### ######## #### ####### >> + * >> + * Web Of Things Platform >> + * >> + * This program is free software; you can redistribute it and/or >> + * modify it under the terms of the GNU General Public License >> + * as published by the Free Software Foundation; either version 2 >> + * of the License, or (at your option) any later version. >> + * >> + * This program is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> + * GNU General Public License for more details. >> + * >> + * You should have received a copy of the GNU General Public License >> + * along with this program; if not, write to the Free Software >> + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. >> + * >> + * Authors : >> + * Drasko DRASKOVIC <drasko.draskovic@gmail.com> >> + * Uros PETREVSKI <uros@nodesign.net> >> + */ >> + >> +#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-spi.h" >> +#include "dev-usb.h" >> +#include "dev-wmac.h" >> +#include "machtypes.h" >> +#include "linux/i2c-gpio.h" >> +#include "linux/platform_device.h" >> + >> +#define WEIO_GPIO_LED_STA 1 >> +#define WEIO_GPIO_LED_AP 16 >> + >> +#define WEIO_GPIO_BTN_AP 20 >> +#define WEIO_GPIO_BTN_RESET 23 >> + >> +#define WEIO_KEYS_POLL_INTERVAL 20 /* msecs */ >> +#define WEIO_KEYS_DEBOUNCE_INTERVAL (3 * WEIO_KEYS_POLL_INTERVAL) >> + >> +#define WEIO_MAC0_OFFSET 0x0000 >> +#define WEIO_MAC1_OFFSET 0x0006 >> +#define WEIO_CALDATA_OFFSET 0x1000 >> +#define WEIO_WMAC_MAC_OFFSET 0x1002 > > Please use tabs for indentation and align the values. > >> + >> +static struct gpio_led weio_leds_gpio[] __initdata = { >> + { >> + .name = "weio:green:sta", >> + .gpio = WEIO_GPIO_LED_STA, >> + .active_low = 1, >> + .default_state = LEDS_GPIO_DEFSTATE_ON, >> + }, { >> + .name = "weio:green:ap", >> + .gpio = WEIO_GPIO_LED_AP, >> + .active_low = 1, >> + .default_state = LEDS_GPIO_DEFSTATE_ON, >> + } >> +}; > > Please use tabs for indentation. The correct braces placement is > { > }, > { > } > >> + >> +static struct gpio_keys_button weio_gpio_keys[] __initdata = { >> + { >> + .desc = "ap button", >> + .type = EV_KEY, >> + .code = BTN_0, >> + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, >> + .gpio = WEIO_GPIO_BTN_AP, >> + .active_low = 1, >> + }, >> + { >> + .desc = "soft-reset button", >> + .type = EV_KEY, >> + .code = BTN_1, >> + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, >> + .gpio = WEIO_GPIO_BTN_RESET, >> + .active_low = 1, >> + } >> +}; > > Please use tabs for indentation. > >> + >> +static struct i2c_gpio_platform_data weio_i2c_gpio_data = { >> + .sda_pin = 18, >> + .scl_pin = 19, >> +}; > > Please use tabs for indentation. > >> + >> +static struct platform_device weio_i2c_gpio = { >> + .name = "i2c-gpio", >> + .id = 0, >> + .dev = { >> + .platform_data = &weio_i2c_gpio_data, >> + }, >> +}; > > Please use tabs for indentation. > >> + >> +static struct platform_device *weio_devices[] __initdata = { >> + &weio_i2c_gpio >> +}; > > Please use tabs for indentation. > >> + >> +static void __init weio_common_setup(void) >> +{ >> + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); >> + >> + ath79_register_m25p80(NULL); >> + ath79_register_wmac(art + WEIO_CALDATA_OFFSET, >> + art + WEIO_WMAC_MAC_OFFSET); > > Plase align the arguments with the opening ( (use spaces for the last < 8 steps) > >> +} > > Please use tabs for indentation. > >> + >> +static void __init weio_setup(void) >> +{ >> + weio_common_setup(); >> + >> + > > Only one empty line please. > >> + ath79_gpio_function_disable(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); > > Plase align the arguments with the opening ( > >> + >> + platform_add_devices(weio_devices, ARRAY_SIZE(weio_devices)); >> + >> + ath79_register_leds_gpio(-1, ARRAY_SIZE(weio_leds_gpio), >> + weio_leds_gpio); > > Plase align the arguments with the opening ( > >> + >> + ath79_register_gpio_keys_polled(-1, WEIO_KEYS_POLL_INTERVAL, >> + ARRAY_SIZE(weio_gpio_keys), >> + weio_gpio_keys); > > Plase align the arguments with the opening ( > >> + ath79_register_usb(); > > Please use tabs for indentation. >> +} >> + >> +MIPS_MACHINE(ATH79_MACH_WEIO, "WEIO", "WeIO board from Drasko DRASKOVIC and Uros PETREVSKI", >> + weio_setup); >> diff --git a/target/linux/ar71xx/generic/profiles/weio.mk b/target/linux/ar71xx/generic/profiles/weio.mk >> new file mode 100644 >> index 0000000..227cec9 >> --- /dev/null >> +++ b/target/linux/ar71xx/generic/profiles/weio.mk >> @@ -0,0 +1,17 @@ >> +# >> +# Copyright (C) 2013 OpenWrt.org >> +# >> +# This is free software, licensed under the GNU General Public License v2. >> +# See /LICENSE for more information. >> +# >> + >> +define Profile/WEIO >> + NAME:=WeIO >> + PACKAGES:=kmod-usb-core kmod-usb2 > > No wifi drivers? > >> +endef >> + >> +define Profile/WEIO/Description >> + Package set optimized for the WeIO board. >> +endef >> + >> +$(eval $(call Profile,WEIO)) >> diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile >> index e6fe36a..0a37fd1 100644 >> --- a/target/linux/ar71xx/image/Makefile >> +++ b/target/linux/ar71xx/image/Makefile >> @@ -179,6 +179,14 @@ define Device/carambola2 >> endef >> TARGET_DEVICES += carambola2 >> >> +define Device/weio >> + BOARDNAME = WEIO >> + IMAGE_SIZE = 16000k >> + CONSOLE = ttyATH0,115200 >> + MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro >> +endef >> +TARGET_DEVICES += weio >> + >> define Device/wndr3700 >> BOARDNAME = WNDR3700 >> NETGEAR_KERNEL_MAGIC = 0x33373030 >> diff --git a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch >> index 02ebd1b..fa9fd0ad 100644 >> --- a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch >> +++ b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch >> @@ -1,6 +1,6 @@ >> --- a/arch/mips/ath79/machtypes.h >> +++ b/arch/mips/ath79/machtypes.h >> -@@ -16,24 +16,207 @@ >> +@@ -16,24 +16,208 @@ >> >> enum ath79_mach_type { >> ATH79_MACH_GENERIC = 0, >> @@ -176,6 +176,7 @@ >> ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ >> + ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP Outdoor+ */ >> ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */ >> ++ ATH79_MACH_WEIO, /* WeIO board */ >> + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */ >> + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */ >> + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */ >> @@ -1437,7 +1438,7 @@ >> >> config ATH79_MACH_UBNT_XM >> bool "Ubiquiti Networks XM/UniFi boards" >> -@@ -83,6 +1212,97 @@ config ATH79_MACH_UBNT_XM >> +@@ -83,6 +1212,106 @@ config ATH79_MACH_UBNT_XM >> Say 'Y' here if you want your kernel to support the >> Ubiquiti Networks XM (rev 1.0) board. >> >> @@ -1511,6 +1512,15 @@ >> + select ATH79_DEV_USB >> + select ATH79_DEV_WMAC >> + >> ++config ATH79_MACH_WEIO >> ++ bool "WeIO board" >> ++ select SOC_AR933X >> ++ 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_BHU_BXU2000N2_A >> + bool "BHU BXU2000n-2 rev. A support" >> + select SOC_AR934X >> @@ -1535,7 +1545,7 @@ >> endmenu >> >> config SOC_AR71XX >> -@@ -134,7 +1354,10 @@ config ATH79_DEV_DSA >> +@@ -134,7 +1363,10 @@ config ATH79_DEV_DSA >> config ATH79_DEV_ETH >> def_bool n >> >> @@ -1547,7 +1557,7 @@ >> def_bool n >> >> config ATH79_DEV_GPIO_BUTTONS >> -@@ -164,6 +1387,11 @@ config ATH79_PCI_ATH9K_FIXUP >> +@@ -164,6 +1396,11 @@ config ATH79_PCI_ATH9K_FIXUP >> def_bool n >> >> config ATH79_ROUTERBOOT >> @@ -1561,7 +1571,7 @@ >> endif >> --- a/arch/mips/ath79/Makefile >> +++ b/arch/mips/ath79/Makefile >> -@@ -38,9 +38,133 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route >> +@@ -38,9 +38,134 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route >> # >> # Machines >> # >> @@ -1670,6 +1680,7 @@ >> +obj-$(CONFIG_ATH79_MACH_TUBE2H) += mach-tube2h.o >> +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o >> obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o >> ++obj-$(CONFIG_ATH79_MACH_WEIO) += mach-weio.o >> +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o >> +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o >> +obj-$(CONFIG_ATH79_MACH_WLR8100) += mach-wlr8100.o > > > Jonas
A kind reminder for a patch. BR, Drasko On Sun, Sep 20, 2015 at 7:30 PM, Drasko DRASKOVIC < drasko.draskovic@gmail.com> wrote: > Hi Jonas, > I have re-sent (in a spearate e-mail) patch with corrections based on > your comments. > > Best reagrds, > Drasko > > On Fri, Sep 11, 2015 at 2:51 PM, Jonas Gorski <jogo@openwrt.org> wrote: > > Hi, > > > > On Tue, Sep 8, 2015 at 9:00 PM, Drasko DRASKOVIC > > <drasko.draskovic@gmail.com> wrote: > >> Subject: [PATCH] [SIGNED-OFF] Add initial support for WeIO board > > > > Please version your patches if you change them ([PATCH V2] etc) > >> Add support for WeIO board (http://we-io.net), which is based on > >> Carambola2 board from 8Devices. > >> > >> Signed-off-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com> > >> --- > > > > Please keep a changelog here about the changes between submitssions > >> target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 + > >> .../ar71xx/base-files/lib/upgrade/platform.sh | 3 +- > >> target/linux/ar71xx/config-4.1 | 1 + > >> .../linux/ar71xx/files/arch/mips/ath79/mach-weio.c | 145 > +++++++++++++++++++++ > >> target/linux/ar71xx/generic/profiles/weio.mk | 17 +++ > >> target/linux/ar71xx/image/Makefile | 8 ++ > >> .../700-MIPS-ath79-openwrt-machines.patch | 21 ++- > > > > I don't see you updating etc/uci-defaults/02_network or any of the > > uci-defaults files, so this won't have any proper config. > > > > > >> 7 files changed, 192 insertions(+), 6 deletions(-) > >> create mode 100644 > target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > >> create mode 100644 target/linux/ar71xx/generic/profiles/weio.mk > >> > >> diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh > b/target/linux/ar71xx/base-files/lib/ar71xx.sh > >> index e1f345e..e30cac2 100755 > >> --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh > >> +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh > >> @@ -832,6 +832,9 @@ ar71xx_board_detect() { > >> *"UniFi AP Pro") > >> name="uap-pro" > >> ;; > >> + *"WeIO") > >> + name="weio" > >> + ;; > >> *WHR-G301N) > >> name="whr-g301n" > >> ;; > >> diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > >> index c1962e4..b681fb8 100755 > >> --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > >> +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh > >> @@ -250,7 +250,8 @@ platform_check_image() { > >> nbg460n_550n_550nh | \ > >> unifi | \ > >> unifi-outdoor | \ > >> - carambola2 ) > >> + carambola2 | \ > >> + weio ) > >> [ "$magic" != "2705" ] && { > >> echo "Invalid image type." > >> return 1 > >> diff --git a/target/linux/ar71xx/config-4.1 > b/target/linux/ar71xx/config-4.1 > >> index 21c4601..7d836d9 100644 > >> --- a/target/linux/ar71xx/config-4.1 > >> +++ b/target/linux/ar71xx/config-4.1 > >> @@ -139,6 +139,7 @@ CONFIG_ATH79_MACH_TL_WR941ND=y > >> CONFIG_ATH79_MACH_TUBE2H=y > >> CONFIG_ATH79_MACH_UBNT=y > >> CONFIG_ATH79_MACH_UBNT_XM=y > >> +CONFIG_ATH79_MACH_WEIO=y > >> CONFIG_ATH79_MACH_WHR_HP_G300N=y > >> CONFIG_ATH79_MACH_WLAE_AG300N=y > >> CONFIG_ATH79_MACH_WLR8100=y > >> diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > >> new file mode 100644 > >> index 0000000..791991c > >> --- /dev/null > >> +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c > >> @@ -0,0 +1,145 @@ > >> +/** > >> + * WEIO Web Of Things Platform > >> + * > >> + * Copyright (C) 2013 Drasko DRASKOVIC and Uros PETREVSKI > >> + * > >> + * ## ## ######## #### ####### > >> + * ## ## ## ## ## ## ## > >> + * ## ## ## ## ## ## ## > >> + * ## ## ## ###### ## ## ## > >> + * ## ## ## ## ## ## ## > >> + * ## ## ## ## ## ## ## > >> + * ### ### ######## #### ####### > >> + * > >> + * Web Of Things Platform > >> + * > >> + * This program is free software; you can redistribute it and/or > >> + * modify it under the terms of the GNU General Public License > >> + * as published by the Free Software Foundation; either version 2 > >> + * of the License, or (at your option) any later version. > >> + * > >> + * This program is distributed in the hope that it will be useful, > >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of > >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > >> + * GNU General Public License for more details. > >> + * > >> + * You should have received a copy of the GNU General Public License > >> + * along with this program; if not, write to the Free Software > >> + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA > 02111-1307, USA. > >> + * > >> + * Authors : > >> + * Drasko DRASKOVIC <drasko.draskovic@gmail.com> > >> + * Uros PETREVSKI <uros@nodesign.net> > >> + */ > >> + > >> +#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-spi.h" > >> +#include "dev-usb.h" > >> +#include "dev-wmac.h" > >> +#include "machtypes.h" > >> +#include "linux/i2c-gpio.h" > >> +#include "linux/platform_device.h" > >> + > >> +#define WEIO_GPIO_LED_STA 1 > >> +#define WEIO_GPIO_LED_AP 16 > >> + > >> +#define WEIO_GPIO_BTN_AP 20 > >> +#define WEIO_GPIO_BTN_RESET 23 > >> + > >> +#define WEIO_KEYS_POLL_INTERVAL 20 /* msecs */ > >> +#define WEIO_KEYS_DEBOUNCE_INTERVAL (3 * WEIO_KEYS_POLL_INTERVAL) > >> + > >> +#define WEIO_MAC0_OFFSET 0x0000 > >> +#define WEIO_MAC1_OFFSET 0x0006 > >> +#define WEIO_CALDATA_OFFSET 0x1000 > >> +#define WEIO_WMAC_MAC_OFFSET 0x1002 > > > > Please use tabs for indentation and align the values. > > > >> + > >> +static struct gpio_led weio_leds_gpio[] __initdata = { > >> + { > >> + .name = "weio:green:sta", > >> + .gpio = WEIO_GPIO_LED_STA, > >> + .active_low = 1, > >> + .default_state = LEDS_GPIO_DEFSTATE_ON, > >> + }, { > >> + .name = "weio:green:ap", > >> + .gpio = WEIO_GPIO_LED_AP, > >> + .active_low = 1, > >> + .default_state = LEDS_GPIO_DEFSTATE_ON, > >> + } > >> +}; > > > > Please use tabs for indentation. The correct braces placement is > > { > > }, > > { > > } > > > >> + > >> +static struct gpio_keys_button weio_gpio_keys[] __initdata = { > >> + { > >> + .desc = "ap button", > >> + .type = EV_KEY, > >> + .code = BTN_0, > >> + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > >> + .gpio = WEIO_GPIO_BTN_AP, > >> + .active_low = 1, > >> + }, > >> + { > >> + .desc = "soft-reset button", > >> + .type = EV_KEY, > >> + .code = BTN_1, > >> + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, > >> + .gpio = WEIO_GPIO_BTN_RESET, > >> + .active_low = 1, > >> + } > >> +}; > > > > Please use tabs for indentation. > > > >> + > >> +static struct i2c_gpio_platform_data weio_i2c_gpio_data = { > >> + .sda_pin = 18, > >> + .scl_pin = 19, > >> +}; > > > > Please use tabs for indentation. > > > >> + > >> +static struct platform_device weio_i2c_gpio = { > >> + .name = "i2c-gpio", > >> + .id = 0, > >> + .dev = { > >> + .platform_data = &weio_i2c_gpio_data, > >> + }, > >> +}; > > > > Please use tabs for indentation. > > > >> + > >> +static struct platform_device *weio_devices[] __initdata = { > >> + &weio_i2c_gpio > >> +}; > > > > Please use tabs for indentation. > > > >> + > >> +static void __init weio_common_setup(void) > >> +{ > >> + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); > >> + > >> + ath79_register_m25p80(NULL); > >> + ath79_register_wmac(art + WEIO_CALDATA_OFFSET, > >> + art + WEIO_WMAC_MAC_OFFSET); > > > > Plase align the arguments with the opening ( (use spaces for the last < > 8 steps) > > > >> +} > > > > Please use tabs for indentation. > > > >> + > >> +static void __init weio_setup(void) > >> +{ > >> + weio_common_setup(); > >> + > >> + > > > > Only one empty line please. > > > >> + ath79_gpio_function_disable(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); > > > > Plase align the arguments with the opening ( > > > >> + > >> + platform_add_devices(weio_devices, ARRAY_SIZE(weio_devices)); > >> + > >> + ath79_register_leds_gpio(-1, ARRAY_SIZE(weio_leds_gpio), > >> + weio_leds_gpio); > > > > Plase align the arguments with the opening ( > > > >> + > >> + ath79_register_gpio_keys_polled(-1, WEIO_KEYS_POLL_INTERVAL, > >> + ARRAY_SIZE(weio_gpio_keys), > >> + weio_gpio_keys); > > > > Plase align the arguments with the opening ( > > > >> + ath79_register_usb(); > > > > Please use tabs for indentation. > >> +} > >> + > >> +MIPS_MACHINE(ATH79_MACH_WEIO, "WEIO", "WeIO board from Drasko > DRASKOVIC and Uros PETREVSKI", > >> + weio_setup); > >> diff --git a/target/linux/ar71xx/generic/profiles/weio.mk > b/target/linux/ar71xx/generic/profiles/weio.mk > >> new file mode 100644 > >> index 0000000..227cec9 > >> --- /dev/null > >> +++ b/target/linux/ar71xx/generic/profiles/weio.mk > >> @@ -0,0 +1,17 @@ > >> +# > >> +# Copyright (C) 2013 OpenWrt.org > >> +# > >> +# This is free software, licensed under the GNU General Public License > v2. > >> +# See /LICENSE for more information. > >> +# > >> + > >> +define Profile/WEIO > >> + NAME:=WeIO > >> + PACKAGES:=kmod-usb-core kmod-usb2 > > > > No wifi drivers? > > > >> +endef > >> + > >> +define Profile/WEIO/Description > >> + Package set optimized for the WeIO board. > >> +endef > >> + > >> +$(eval $(call Profile,WEIO)) > >> diff --git a/target/linux/ar71xx/image/Makefile > b/target/linux/ar71xx/image/Makefile > >> index e6fe36a..0a37fd1 100644 > >> --- a/target/linux/ar71xx/image/Makefile > >> +++ b/target/linux/ar71xx/image/Makefile > >> @@ -179,6 +179,14 @@ define Device/carambola2 > >> endef > >> TARGET_DEVICES += carambola2 > >> > >> +define Device/weio > >> + BOARDNAME = WEIO > >> + IMAGE_SIZE = 16000k > >> + CONSOLE = ttyATH0,115200 > >> + MTDPARTS = > spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro > >> +endef > >> +TARGET_DEVICES += weio > >> + > >> define Device/wndr3700 > >> BOARDNAME = WNDR3700 > >> NETGEAR_KERNEL_MAGIC = 0x33373030 > >> diff --git > a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > >> index 02ebd1b..fa9fd0ad 100644 > >> --- > a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > >> +++ > b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch > >> @@ -1,6 +1,6 @@ > >> --- a/arch/mips/ath79/machtypes.h > >> +++ b/arch/mips/ath79/machtypes.h > >> -@@ -16,24 +16,207 @@ > >> +@@ -16,24 +16,208 @@ > >> > >> enum ath79_mach_type { > >> ATH79_MACH_GENERIC = 0, > >> @@ -176,6 +176,7 @@ > >> ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ > >> + ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP > Outdoor+ */ > >> ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board > rev 1.0 */ > >> ++ ATH79_MACH_WEIO, /* WeIO board */ > >> + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */ > >> + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */ > >> + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */ > >> @@ -1437,7 +1438,7 @@ > >> > >> config ATH79_MACH_UBNT_XM > >> bool "Ubiquiti Networks XM/UniFi boards" > >> -@@ -83,6 +1212,97 @@ config ATH79_MACH_UBNT_XM > >> +@@ -83,6 +1212,106 @@ config ATH79_MACH_UBNT_XM > >> Say 'Y' here if you want your kernel to support the > >> Ubiquiti Networks XM (rev 1.0) board. > >> > >> @@ -1511,6 +1512,15 @@ > >> + select ATH79_DEV_USB > >> + select ATH79_DEV_WMAC > >> + > >> ++config ATH79_MACH_WEIO > >> ++ bool "WeIO board" > >> ++ select SOC_AR933X > >> ++ 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_BHU_BXU2000N2_A > >> + bool "BHU BXU2000n-2 rev. A support" > >> + select SOC_AR934X > >> @@ -1535,7 +1545,7 @@ > >> endmenu > >> > >> config SOC_AR71XX > >> -@@ -134,7 +1354,10 @@ config ATH79_DEV_DSA > >> +@@ -134,7 +1363,10 @@ config ATH79_DEV_DSA > >> config ATH79_DEV_ETH > >> def_bool n > >> > >> @@ -1547,7 +1557,7 @@ > >> def_bool n > >> > >> config ATH79_DEV_GPIO_BUTTONS > >> -@@ -164,6 +1387,11 @@ config ATH79_PCI_ATH9K_FIXUP > >> +@@ -164,6 +1396,11 @@ config ATH79_PCI_ATH9K_FIXUP > >> def_bool n > >> > >> config ATH79_ROUTERBOOT > >> @@ -1561,7 +1571,7 @@ > >> endif > >> --- a/arch/mips/ath79/Makefile > >> +++ b/arch/mips/ath79/Makefile > >> -@@ -38,9 +38,133 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > >> +@@ -38,9 +38,134 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route > >> # > >> # Machines > >> # > >> @@ -1670,6 +1680,7 @@ > >> +obj-$(CONFIG_ATH79_MACH_TUBE2H) += mach-tube2h.o > >> +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o > >> obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o > >> ++obj-$(CONFIG_ATH79_MACH_WEIO) += mach-weio.o > >> +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o > >> +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o > >> +obj-$(CONFIG_ATH79_MACH_WLR8100) += mach-wlr8100.o > > > > > > Jonas >
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index e1f345e..e30cac2 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -832,6 +832,9 @@ ar71xx_board_detect() { *"UniFi AP Pro") name="uap-pro" ;; + *"WeIO") + name="weio" + ;; *WHR-G301N) name="whr-g301n" ;; diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh index c1962e4..b681fb8 100755 --- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh @@ -250,7 +250,8 @@ platform_check_image() { nbg460n_550n_550nh | \ unifi | \ unifi-outdoor | \ - carambola2 ) + carambola2 | \ + weio ) [ "$magic" != "2705" ] && { echo "Invalid image type." return 1 diff --git a/target/linux/ar71xx/config-4.1 b/target/linux/ar71xx/config-4.1 index 21c4601..7d836d9 100644 --- a/target/linux/ar71xx/config-4.1 +++ b/target/linux/ar71xx/config-4.1 @@ -139,6 +139,7 @@ CONFIG_ATH79_MACH_TL_WR941ND=y CONFIG_ATH79_MACH_TUBE2H=y CONFIG_ATH79_MACH_UBNT=y CONFIG_ATH79_MACH_UBNT_XM=y +CONFIG_ATH79_MACH_WEIO=y CONFIG_ATH79_MACH_WHR_HP_G300N=y CONFIG_ATH79_MACH_WLAE_AG300N=y CONFIG_ATH79_MACH_WLR8100=y diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c new file mode 100644 index 0000000..791991c --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c @@ -0,0 +1,145 @@ +/** + * WEIO Web Of Things Platform + * + * Copyright (C) 2013 Drasko DRASKOVIC and Uros PETREVSKI + * + * ## ## ######## #### ####### + * ## ## ## ## ## ## ## + * ## ## ## ## ## ## ## + * ## ## ## ###### ## ## ## + * ## ## ## ## ## ## ## + * ## ## ## ## ## ## ## + * ### ### ######## #### ####### + * + * Web Of Things Platform + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * Authors : + * Drasko DRASKOVIC <drasko.draskovic@gmail.com> + * Uros PETREVSKI <uros@nodesign.net> + */ + +#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-spi.h" +#include "dev-usb.h" +#include "dev-wmac.h" +#include "machtypes.h" +#include "linux/i2c-gpio.h" +#include "linux/platform_device.h" + +#define WEIO_GPIO_LED_STA 1 +#define WEIO_GPIO_LED_AP 16 + +#define WEIO_GPIO_BTN_AP 20 +#define WEIO_GPIO_BTN_RESET 23 + +#define WEIO_KEYS_POLL_INTERVAL 20 /* msecs */ +#define WEIO_KEYS_DEBOUNCE_INTERVAL (3 * WEIO_KEYS_POLL_INTERVAL) + +#define WEIO_MAC0_OFFSET 0x0000 +#define WEIO_MAC1_OFFSET 0x0006 +#define WEIO_CALDATA_OFFSET 0x1000 +#define WEIO_WMAC_MAC_OFFSET 0x1002 + +static struct gpio_led weio_leds_gpio[] __initdata = { + { + .name = "weio:green:sta", + .gpio = WEIO_GPIO_LED_STA, + .active_low = 1, + .default_state = LEDS_GPIO_DEFSTATE_ON, + }, { + .name = "weio:green:ap", + .gpio = WEIO_GPIO_LED_AP, + .active_low = 1, + .default_state = LEDS_GPIO_DEFSTATE_ON, + } +}; + +static struct gpio_keys_button weio_gpio_keys[] __initdata = { + { + .desc = "ap button", + .type = EV_KEY, + .code = BTN_0, + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, + .gpio = WEIO_GPIO_BTN_AP, + .active_low = 1, + }, + { + .desc = "soft-reset button", + .type = EV_KEY, + .code = BTN_1, + .debounce_interval = WEIO_KEYS_DEBOUNCE_INTERVAL, + .gpio = WEIO_GPIO_BTN_RESET, + .active_low = 1, + } +}; + +static struct i2c_gpio_platform_data weio_i2c_gpio_data = { + .sda_pin = 18, + .scl_pin = 19, +}; + +static struct platform_device weio_i2c_gpio = { + .name = "i2c-gpio", + .id = 0, + .dev = { + .platform_data = &weio_i2c_gpio_data, + }, +}; + +static struct platform_device *weio_devices[] __initdata = { + &weio_i2c_gpio +}; + +static void __init weio_common_setup(void) +{ + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); + + ath79_register_m25p80(NULL); + ath79_register_wmac(art + WEIO_CALDATA_OFFSET, + art + WEIO_WMAC_MAC_OFFSET); +} + +static void __init weio_setup(void) +{ + weio_common_setup(); + + + ath79_gpio_function_disable(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); + + platform_add_devices(weio_devices, ARRAY_SIZE(weio_devices)); + + ath79_register_leds_gpio(-1, ARRAY_SIZE(weio_leds_gpio), + weio_leds_gpio); + + ath79_register_gpio_keys_polled(-1, WEIO_KEYS_POLL_INTERVAL, + ARRAY_SIZE(weio_gpio_keys), + weio_gpio_keys); + ath79_register_usb(); +} + +MIPS_MACHINE(ATH79_MACH_WEIO, "WEIO", "WeIO board from Drasko DRASKOVIC and Uros PETREVSKI", + weio_setup); diff --git a/target/linux/ar71xx/generic/profiles/weio.mk b/target/linux/ar71xx/generic/profiles/weio.mk new file mode 100644 index 0000000..227cec9 --- /dev/null +++ b/target/linux/ar71xx/generic/profiles/weio.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/WEIO + NAME:=WeIO + PACKAGES:=kmod-usb-core kmod-usb2 +endef + +define Profile/WEIO/Description + Package set optimized for the WeIO board. +endef + +$(eval $(call Profile,WEIO)) diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index e6fe36a..0a37fd1 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -179,6 +179,14 @@ define Device/carambola2 endef TARGET_DEVICES += carambola2 +define Device/weio + BOARDNAME = WEIO + IMAGE_SIZE = 16000k + CONSOLE = ttyATH0,115200 + MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro +endef +TARGET_DEVICES += weio + define Device/wndr3700 BOARDNAME = WNDR3700 NETGEAR_KERNEL_MAGIC = 0x33373030 diff --git a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch index 02ebd1b..fa9fd0ad 100644 --- a/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch +++ b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/machtypes.h +++ b/arch/mips/ath79/machtypes.h -@@ -16,24 +16,207 @@ +@@ -16,24 +16,208 @@ enum ath79_mach_type { ATH79_MACH_GENERIC = 0, @@ -176,6 +176,7 @@ ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ + ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP Outdoor+ */ ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */ ++ ATH79_MACH_WEIO, /* WeIO board */ + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */ + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */ + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */ @@ -1437,7 +1438,7 @@ config ATH79_MACH_UBNT_XM bool "Ubiquiti Networks XM/UniFi boards" -@@ -83,6 +1212,97 @@ config ATH79_MACH_UBNT_XM +@@ -83,6 +1212,106 @@ config ATH79_MACH_UBNT_XM Say 'Y' here if you want your kernel to support the Ubiquiti Networks XM (rev 1.0) board. @@ -1511,6 +1512,15 @@ + select ATH79_DEV_USB + select ATH79_DEV_WMAC + ++config ATH79_MACH_WEIO ++ bool "WeIO board" ++ select SOC_AR933X ++ 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_BHU_BXU2000N2_A + bool "BHU BXU2000n-2 rev. A support" + select SOC_AR934X @@ -1535,7 +1545,7 @@ endmenu config SOC_AR71XX -@@ -134,7 +1354,10 @@ config ATH79_DEV_DSA +@@ -134,7 +1363,10 @@ config ATH79_DEV_DSA config ATH79_DEV_ETH def_bool n @@ -1547,7 +1557,7 @@ def_bool n config ATH79_DEV_GPIO_BUTTONS -@@ -164,6 +1387,11 @@ config ATH79_PCI_ATH9K_FIXUP +@@ -164,6 +1396,11 @@ config ATH79_PCI_ATH9K_FIXUP def_bool n config ATH79_ROUTERBOOT @@ -1561,7 +1571,7 @@ endif --- a/arch/mips/ath79/Makefile +++ b/arch/mips/ath79/Makefile -@@ -38,9 +38,133 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route +@@ -38,9 +38,134 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route # # Machines # @@ -1670,6 +1680,7 @@ +obj-$(CONFIG_ATH79_MACH_TUBE2H) += mach-tube2h.o +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o ++obj-$(CONFIG_ATH79_MACH_WEIO) += mach-weio.o +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o +obj-$(CONFIG_ATH79_MACH_WLR8100) += mach-wlr8100.o
Add support for WeIO board (http://we-io.net), which is based on Carambola2 board from 8Devices. Signed-off-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com> --- target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 + .../ar71xx/base-files/lib/upgrade/platform.sh | 3 +- target/linux/ar71xx/config-4.1 | 1 + .../linux/ar71xx/files/arch/mips/ath79/mach-weio.c | 145 +++++++++++++++++++++ target/linux/ar71xx/generic/profiles/weio.mk | 17 +++ target/linux/ar71xx/image/Makefile | 8 ++ .../700-MIPS-ath79-openwrt-machines.patch | 21 ++- 7 files changed, 192 insertions(+), 6 deletions(-) create mode 100644 target/linux/ar71xx/files/arch/mips/ath79/mach-weio.c create mode 100644 target/linux/ar71xx/generic/profiles/weio.mk