ar71xx: Support for Mikrotik RB2011UiAS

The RB2011UiAS is almost exactly the same as the RB2011UAS, which is
already supported. Hardware-wise, it adds a passive power injector on
Eth10. Software-wise, Routerboot passes a different board name on the
kernel command line. Hence the need for a patch.

Not yet working:

* touchscreen: doesn't work on RB2011UAS either. The touchscreen itself
  seems to be driven by an ADS7843-compatible IC, but figuring out which
  GPIO pins it's connected to is work for the future.
* control of power injector: remains off. Probably also GPIO-controlled.

Signed-off-by: Soren Harward <stharward@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/5841/
[juhosg: rename and refresh the kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 41617
This commit is contained in:
Gabor Juhos 2014-07-13 16:25:58 +00:00
parent f089f0db34
commit 0ffe21c792
4 changed files with 32 additions and 1 deletions

View File

@ -72,6 +72,7 @@ rb-750)
rb-2011l|\
rb-2011uas|\
rb-2011uias|\
rb-2011uas-2hnd)
ucidef_set_led_switch "eth6" "ETH6" "rb:green:eth6" "switch1" "0x20"
ucidef_set_led_switch "eth7" "ETH7" "rb:green:eth7" "switch1" "0x10"

View File

@ -57,6 +57,7 @@ tl-wdr4900-v2)
db120 |\
rb-2011l | \
rb-2011uas |\
rb-2011uias |\
rb-2011uas-2hnd)
ucidef_set_interfaces_lan_wan "eth0.1 eth1" "eth0.2"
ucidef_add_switch "switch0" "1" "1"
@ -66,7 +67,7 @@ rb-2011uas-2hnd)
ucidef_add_switch_vlan "switch1" "1" "0 1 2 3 4 5"
case "$board" in
rb-2011uas*)
rb-2011uas* | rb-2011uias)
ucidef_set_interface_raw "sfp" "eth0.3"
ucidef_add_switch_vlan "switch0" "3" "0t 6"
;;

View File

@ -466,6 +466,9 @@ ar71xx_board_detect() {
*"RouterBOARD 2011UAS")
name="rb-2011uas"
;;
*"RouterBOARD 2011UiAS")
name="rb-2011uias"
;;
*"RouterBOARD 2011UAS-2HnD")
name="rb-2011uas-2hnd"
;;

View File

@ -0,0 +1,26 @@
--- a/arch/mips/ath79/mach-rb2011.c
+++ b/arch/mips/ath79/mach-rb2011.c
@@ -321,6 +321,13 @@ static void __init rb2011us_setup(void)
MIPS_MACHINE_NONAME(ATH79_MACH_RB_2011US, "2011US", rb2011us_setup);
+static void __init rb2011r5_setup(void)
+{
+ rb2011_setup(RB2011_FLAG_SFP | RB2011_FLAG_USB);
+}
+
+MIPS_MACHINE_NONAME(ATH79_MACH_RB_2011R5, "2011r5", rb2011r5_setup);
+
static void __init rb2011g_setup(void)
{
rb2011_setup(RB2011_FLAG_SFP |
--- a/arch/mips/ath79/machtypes.h
+++ b/arch/mips/ath79/machtypes.h
@@ -93,6 +93,7 @@ enum ath79_mach_type {
ATH79_MACH_RB_2011G, /* Mikrotik RouterBOARD 2011UAS-2HnD */
ATH79_MACH_RB_2011L, /* Mikrotik RouterBOARD 2011L */
ATH79_MACH_RB_2011US, /* Mikrotik RouterBOARD 2011UAS */
+ ATH79_MACH_RB_2011R5, /* Mikrotik RouterBOARD 2011UiAS */
ATH79_MACH_RB_SXTLITE2ND, /* Mikrotik RouterBOARD SXT Lite 2nD */
ATH79_MACH_RB_SXTLITE5ND, /* Mikrotik RouterBOARD SXT Lite 5nD */
ATH79_MACH_RW2458N, /* Redwave RW2458N */