From: Gabor Juhos Date: Thu, 1 Dec 2011 22:49:02 +0000 (+0000) Subject: ar71xx: add support for Ubiquiti AirRouter X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=f188f1bad53adc92a116227be05f9bc119f6d86e;p=openwrt%2Fstaging%2Faparcar.git ar71xx: add support for Ubiquiti AirRouter Signed-off-by: Gergely Barta SVN-Revision: 29395 --- diff --git a/target/linux/ar71xx/base-files/etc/uci-defaults/network b/target/linux/ar71xx/base-files/etc/uci-defaults/network index 8cec0b13d2..f9419b9866 100755 --- a/target/linux/ar71xx/base-files/etc/uci-defaults/network +++ b/target/linux/ar71xx/base-files/etc/uci-defaults/network @@ -118,6 +118,7 @@ routerstation) ap121 |\ ap121-mini |\ ap96 |\ +airrouter |\ dir-600-a1 |\ dir-615-c1 |\ ja76pf |\ diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index 513f0d2f75..314b44e472 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -10,6 +10,9 @@ ar71xx_board_name() { machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo) case "$machine" in + *"AirRouter") + name="airrouter" + ;; *ALL0258N) name="all0258n" ;; diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c index 06ce2126ee..ab399f6f17 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ubnt.c @@ -283,6 +283,37 @@ static void __init ubnt_nano_m_setup(void) MIPS_MACHINE(AR71XX_MACH_UBNT_NANO_M, "UBNT-NM", "Ubiquiti Nanostation M", ubnt_nano_m_setup); +static struct gpio_led ubnt_airrouter_leds_gpio[] __initdata = { + { + .name = "ubnt:green:globe", + .gpio = 0, + .active_low = 1, + } +}; + +static void __init ubnt_airrouter_setup(void) +{ + u8 *mac1 = (u8 *) KSEG1ADDR(0x1fff0000); + u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000); + + ar71xx_add_device_m25p80(NULL); + ar71xx_add_device_mdio(0, ~UBNT_M_WAN_PHYMASK); + + ar71xx_init_mac(ar71xx_eth0_data.mac_addr, mac1, 0); + ubnt_init_secondary_mac(mac1); + + ar71xx_add_device_eth(1); + ar71xx_add_device_eth(0); + ar71xx_add_device_usb(); + + ap91_pci_init(ee, NULL); + ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(ubnt_airrouter_leds_gpio), + ubnt_airrouter_leds_gpio); +} + +MIPS_MACHINE(AR71XX_MACH_UBNT_AIRROUTER, "UBNT-AR", "Ubiquiti AirRouter", + ubnt_airrouter_setup); + static struct gpio_led ubnt_unifi_leds_gpio[] __initdata = { { .name = "ubnt:orange:dome", diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h b/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h index be7df85d4a..6b2c160c96 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/machtype.h @@ -57,6 +57,7 @@ enum ar71xx_mach_type { AR71XX_MACH_TL_WR741ND_V4, /* TP-LINK TL-WR741ND v4*/ AR71XX_MACH_TL_WR841N_V1, /* TP-LINK TL-WR841N v1 */ AR71XX_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */ + AR71XX_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */ AR71XX_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */ AR71XX_MACH_UBNT_LSSR71, /* Ubiquiti LS-SR71 */ AR71XX_MACH_UBNT_LSX, /* Ubiquiti LSX */ diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index 790dfda0e1..bda650ebfa 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -536,6 +536,11 @@ define Image/Build/Profile/A02RBW300N $(call Image/Build/Template/$(fs_squash)/$(1),Cameo913x,a02-rb-w300n,$(a05rbw300n_cmdline),"AP81-AR9130-RT-070614-03") endef +ubntairrouter_cmdline=board=UBNT-AR console=ttyS0,115200 +define Image/Build/Profile/UBNTAIRROUTER + $(call Image/Build/Template/$(fs_64k)/$(1),UBNTXM,ubnt-airrouter,$(ubntairrouter_cmdline),XM,UBNTXM,ar7240) +endef + ubntrs_cmdline=board=UBNT-RS console=ttyS0,115200 define Image/Build/Profile/UBNTRS $(call Image/Build/Template/$(fs_64k)/$(1),UBNT,ubnt-rs,$(ubntrs_cmdline),RS,RSx,ar7100) @@ -572,6 +577,7 @@ define Image/Build/Profile/UBNTUNIFI endef define Image/Build/Profile/UBNT + $(call Image/Build/Profile/UBNTAIRROUTER,$(1)) $(call Image/Build/Profile/UBNTRS,$(1)) $(call Image/Build/Profile/UBNTRSPRO,$(1)) $(call Image/Build/Profile/UBNTLSSR71,$(1))