diff options
| -rw-r--r-- | target/linux/ar71xx/base-files/etc/defconfig/jwap003/network | 16 | ||||
| -rwxr-xr-x | target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 | ||||
| -rw-r--r-- | target/linux/ar71xx/config-2.6.32 | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/config-2.6.33 | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/config-2.6.34 | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/config-2.6.35 | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig | 8 | ||||
| -rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/Makefile | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/mach-jwap003.c | 81 | ||||
| -rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h | 1 | ||||
| -rw-r--r-- | target/linux/ar71xx/generic/profiles/jjplus.mk | 17 | ||||
| -rw-r--r-- | target/linux/ar71xx/image/Makefile | 5 | 
12 files changed, 136 insertions, 0 deletions
diff --git a/target/linux/ar71xx/base-files/etc/defconfig/jwap003/network b/target/linux/ar71xx/base-files/etc/defconfig/jwap003/network new file mode 100644 index 000000000..3ecec8fdd --- /dev/null +++ b/target/linux/ar71xx/base-files/etc/defconfig/jwap003/network @@ -0,0 +1,16 @@ +config 'interface' 'loopback' +       option 'ifname'   'lo' +       option 'proto'    'static' +       option 'ipaddr'   '127.0.0.1' +       option 'netmask'  '255.0.0.0' + +config 'interface' 'lan' +        option 'ifname'   'eth1' +        option 'type'     'bridge' +        option 'proto'    'static' +        option 'ipaddr'   '192.168.1.1' +        option 'netmask'  '255.255.255.0' + +config 'interface' 'wan' +        option 'ifname' 'eth0' +        option 'proto' 'dhcp' diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index ff2e8bd77..fa00516c2 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -37,6 +37,9 @@ ar71xx_board_name() {  	*"Nanostation M")  		name="nanostation-m"  		;; +	*JWAP003) +		name="jwap003" +		;;  	*LS-SR71)  		name="ls-sr71"  		;; diff --git a/target/linux/ar71xx/config-2.6.32 b/target/linux/ar71xx/config-2.6.32 index 9770719af..0a5410b96 100644 --- a/target/linux/ar71xx/config-2.6.32 +++ b/target/linux/ar71xx/config-2.6.32 @@ -25,6 +25,7 @@ CONFIG_AR71XX_MACH_DIR_600_A1=y  CONFIG_AR71XX_MACH_DIR_615_C1=y  CONFIG_AR71XX_MACH_DIR_825_B1=y  CONFIG_AR71XX_MACH_EAP7660D=y +CONFIG_AR71XX_MACH_JWAP003=y  CONFIG_AR71XX_MACH_MZK_W04NU=y  CONFIG_AR71XX_MACH_MZK_W300NH=y  CONFIG_AR71XX_MACH_NBG460N=y diff --git a/target/linux/ar71xx/config-2.6.33 b/target/linux/ar71xx/config-2.6.33 index 87abc8d24..69ec6679a 100644 --- a/target/linux/ar71xx/config-2.6.33 +++ b/target/linux/ar71xx/config-2.6.33 @@ -25,6 +25,7 @@ CONFIG_AR71XX_MACH_DIR_600_A1=y  CONFIG_AR71XX_MACH_DIR_615_C1=y  CONFIG_AR71XX_MACH_DIR_825_B1=y  CONFIG_AR71XX_MACH_EAP7660D=y +CONFIG_AR71XX_MACH_JWAP003=y  CONFIG_AR71XX_MACH_MZK_W04NU=y  CONFIG_AR71XX_MACH_MZK_W300NH=y  CONFIG_AR71XX_MACH_NBG460N=y diff --git a/target/linux/ar71xx/config-2.6.34 b/target/linux/ar71xx/config-2.6.34 index 30c0aff25..598dd3578 100644 --- a/target/linux/ar71xx/config-2.6.34 +++ b/target/linux/ar71xx/config-2.6.34 @@ -25,6 +25,7 @@ CONFIG_AR71XX_MACH_DIR_600_A1=y  CONFIG_AR71XX_MACH_DIR_615_C1=y  CONFIG_AR71XX_MACH_DIR_825_B1=y  CONFIG_AR71XX_MACH_EAP7660D=y +CONFIG_AR71XX_MACH_JWAP003=y  CONFIG_AR71XX_MACH_MZK_W04NU=y  CONFIG_AR71XX_MACH_MZK_W300NH=y  CONFIG_AR71XX_MACH_NBG460N=y diff --git a/target/linux/ar71xx/config-2.6.35 b/target/linux/ar71xx/config-2.6.35 index 30c0aff25..598dd3578 100644 --- a/target/linux/ar71xx/config-2.6.35 +++ b/target/linux/ar71xx/config-2.6.35 @@ -25,6 +25,7 @@ CONFIG_AR71XX_MACH_DIR_600_A1=y  CONFIG_AR71XX_MACH_DIR_615_C1=y  CONFIG_AR71XX_MACH_DIR_825_B1=y  CONFIG_AR71XX_MACH_EAP7660D=y +CONFIG_AR71XX_MACH_JWAP003=y  CONFIG_AR71XX_MACH_MZK_W04NU=y  CONFIG_AR71XX_MACH_MZK_W300NH=y  CONFIG_AR71XX_MACH_NBG460N=y diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig index f5d83b676..6d52eba86 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig @@ -56,6 +56,14 @@ config AR71XX_MACH_DIR_825_B1  	select AR71XX_DEV_USB  	default n +config AR71XX_MACH_JWAP003 +	bool "jjPlus JWAP003 board support" +	select AR71XX_DEV_M25P80 +	select AR71XX_DEV_GPIO_BUTTONS +	select AR71XX_DEV_PB42_PCI if PCI +	select AR71XX_DEV_USB +	default n +  config AR71XX_MACH_PB42  	bool "Atheros PB42 board support"  	select AR71XX_DEV_M25P80 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile index e1fe959c3..991ae9202 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile @@ -36,6 +36,7 @@ obj-$(CONFIG_AR71XX_MACH_DIR_600_A1)	+= mach-dir-600-a1.o  obj-$(CONFIG_AR71XX_MACH_DIR_615_C1)	+= mach-dir-615-c1.o  obj-$(CONFIG_AR71XX_MACH_DIR_825_B1)	+= mach-dir-825-b1.o  obj-$(CONFIG_AR71XX_MACH_EAP7660D)	+= mach-eap7660d.o +obj-$(CONFIG_AR71XX_MACH_JWAP003)	+= mach-jwap003.o  obj-$(CONFIG_AR71XX_MACH_MZK_W04NU)	+= mach-mzk-w04nu.o  obj-$(CONFIG_AR71XX_MACH_MZK_W300NH)	+= mach-mzk-w300nh.o  obj-$(CONFIG_AR71XX_MACH_NBG460N)	+= mach-nbg460n.o diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-jwap003.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-jwap003.c new file mode 100644 index 000000000..7d64fe96c --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-jwap003.c @@ -0,0 +1,81 @@ +/* + *  jjPlus JWAP003 board support + * + */ + +#include <asm/mach-ar71xx/ar71xx.h> +#include <linux/i2c.h> +#include <linux/i2c-gpio.h> +#include <linux/platform_device.h> + +#include "machtype.h" +#include "devices.h" +#include "dev-m25p80.h" +#include "dev-gpio-buttons.h" +#include "dev-pb42-pci.h" +#include "dev-usb.h" + +#define JWAP003_BUTTONS_POLL_INTERVAL	20 +#define JWAP003_GPIO_WPS	11 +#define JWAP003_GPIO_I2C_SCL	0 +#define JWAP003_GPIO_I2C_SDA	1 + +static struct gpio_button jwap003_gpio_buttons[] __initdata = { +	{ +		.desc		= "wps", +		.type		= EV_KEY, +		.code		= KEY_WPS_BUTTON, +		.threshold	= 3, +		.gpio		= JWAP003_GPIO_WPS, +		.active_low	= 1, +	} +}; + +static struct i2c_gpio_platform_data jwap003_i2c_gpio_data = { +	.sda_pin	= JWAP003_GPIO_I2C_SDA, +	.scl_pin	= JWAP003_GPIO_I2C_SCL, +}; + +static struct platform_device jwap003_i2c_gpio_device = { +	.name		= "i2c-gpio", +	.id		= 0, +	.dev = { +		.platform_data  = &jwap003_i2c_gpio_data, +	} +}; + +#define JWAP003_WAN_PHYMASK	BIT(0) +#define JWAP003_LAN_PHYMASK	BIT(4) + +static void __init jwap003_init(void) +{ +	ar71xx_add_device_m25p80(NULL); + +	ar71xx_add_device_mdio(0x0); + +	ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RMII; +	ar71xx_eth0_data.phy_mask = JWAP003_WAN_PHYMASK; +	ar71xx_eth0_data.speed = SPEED_100; +	ar71xx_eth0_data.duplex = DUPLEX_FULL; +	ar71xx_eth0_data.has_ar8216 = 1; + +	ar71xx_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_RMII; +	ar71xx_eth1_data.phy_mask = JWAP003_LAN_PHYMASK; +	ar71xx_eth1_data.speed = SPEED_100; +	ar71xx_eth1_data.duplex = DUPLEX_FULL; + +	ar71xx_add_device_eth(0); +	ar71xx_add_device_eth(1); + +	platform_device_register(&jwap003_i2c_gpio_device); + +	ar71xx_add_device_usb(); + +	ar71xx_add_device_gpio_buttons(-1, JWAP003_BUTTONS_POLL_INTERVAL, +				       ARRAY_SIZE(jwap003_gpio_buttons), +				       jwap003_gpio_buttons); + +	pb42_pci_init(); +} + +MIPS_MACHINE(AR71XX_MACH_JWAP003, "JWAP003", "jjPlus JWAP003", jwap003_init); diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h b/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h index b0c3c99ae..4e2bc9023 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h @@ -22,6 +22,7 @@ enum ar71xx_mach_type {  	AR71XX_MACH_DIR_600_A1,	/* D-Link DIR-600 rev. A1 */  	AR71XX_MACH_DIR_615_C1,	/* D-Link DIR-615 rev. C1 */  	AR71XX_MACH_DIR_825_B1,	/* D-Link DIR-825 rev. B1 */ +	AR71XX_MACH_JWAP003,	/* jjPlus JWAP003 */  	AR71XX_MACH_RB_411,	/* MikroTik RouterBOARD 411/411A/411AH */  	AR71XX_MACH_RB_411U,	/* MikroTik RouterBOARD 411U */  	AR71XX_MACH_RB_433,	/* MikroTik RouterBOARD 433/433AH */ diff --git a/target/linux/ar71xx/generic/profiles/jjplus.mk b/target/linux/ar71xx/generic/profiles/jjplus.mk new file mode 100644 index 000000000..b74d7a5fb --- /dev/null +++ b/target/linux/ar71xx/generic/profiles/jjplus.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2010 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/JWAP003 +	NAME:=jjPlus JWAP0003 +	PACKAGES:=kmod-usb-core kmod-usb-ohci kmod-usb2 +endef + +define Profile/JWAP003/Description +	Package set optimized for the jjPlus JWAP003 board. +endef + +$(eval $(call Profile,JWAP003)) diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index 42db6e494..cb342a196 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -470,6 +470,10 @@ define Image/Build/Profile/EAP7660D  	$(call Image/Build/Template/$(fs_128k)/$(1),PB4X,eap7660d,board=EAP7660D)  endef +define Image/Build/Profile/JWAP003 +	$(call Image/Build/Template/$(fs_64k)/$(1),PB4X,jwap003,board=JWAP003) +endef +  define Image/Build/Profile/FR54RTR  	$(call Image/Build/Template/$(fs_64k)/$(1),Cameo7240,fr-54rtr,board=DIR-600-A1,"AP91-AR7240-RT-090223-01")  endef @@ -616,6 +620,7 @@ define Image/Build/Profile/Default  	$(call Image/Build/Profile/DIR825B1,$(1))  	$(call Image/Build/Profile/EAP7660D,$(1))  	$(call Image/Build/Profile/FR54RTR,$(1)) +	$(call Image/Build/Profile/JWAP003,$(1))  	$(call Image/Build/Profile/MZKW04NU,$(1))  	$(call Image/Build/Profile/MZKW300NH,$(1))  	$(call Image/Build/Profile/PB42,$(1))  | 
