[source] ar71xx: add support for RB750r2

LEDE Commits lede-commits at lists.infradead.org
Wed Feb 15 02:29:11 PST 2017


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/b2044a7f60e789edbe8d4e0f3fd74ef6aaa6be40

commit b2044a7f60e789edbe8d4e0f3fd74ef6aaa6be40
Author: Thibaut VARENE <hacks at slashdirt.org>
AuthorDate: Thu Feb 9 23:07:23 2017 +0100

    ar71xx: add support for RB750r2
    
    This patch adds support for the MikroTik RouterBOARD hEX lite
    https://routerboard.com/RB750r2
    
    Specifications:
    - SoC: Qualcomm QCA9531 (850MHz)
    - RAM: 64MB
    - Storage: 16MB NOR SPI flash
    - Ethernet: 5x100M (1 PoE in)
    
    This ethernet router is based on the same platform as the hEX PoE lite (it
    shares the same board identifier), but has no USB and no PoE out.
    
    Signed-off-by: Thibaut VARENE <hacks at slashdirt.org>
---
 target/linux/ar71xx/base-files/etc/board.d/01_leds        |  1 +
 target/linux/ar71xx/base-files/etc/board.d/02_network     |  1 +
 target/linux/ar71xx/base-files/etc/diag.sh                |  1 +
 target/linux/ar71xx/base-files/lib/ar71xx.sh              |  3 +++
 target/linux/ar71xx/base-files/lib/upgrade/platform.sh    |  3 +++
 target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt |  1 +
 target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c    | 13 +++++++++----
 7 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds
index c2129ea..af02877 100755
--- a/target/linux/ar71xx/base-files/etc/board.d/01_leds
+++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds
@@ -222,6 +222,7 @@ rb-750)
 	ucidef_set_led_switch "port4" "port4" "rb750:green:port4" "switch0" "0x04"
 	ucidef_set_led_switch "port5" "port5" "rb750:green:port5" "switch0" "0x02"
 	;;
+rb-750-r2|\
 rb-750up-r2)
 	ucidef_set_led_timer "user" "USER" "rb:green:user" "1000" "1000"
 	ucidef_set_led_netdev "port1" "port1" "rb:green:port1" "eth0"
diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network
index 4f7ddac..621a010 100755
--- a/target/linux/ar71xx/base-files/etc/board.d/02_network
+++ b/target/linux/ar71xx/base-files/etc/board.d/02_network
@@ -136,6 +136,7 @@ ar71xx_setup_interfaces()
 	om2p-hsv4|\
 	pb42|\
 	pb44|\
+	rb-750-r2|\
 	rb-750up-r2|\
 	rb-951ui-2hnd|\
 	rb-951ui-2nd|\
diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh
index 3a75e10..ae6c693 100644
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -293,6 +293,7 @@ get_status_led() {
 	rb-750)
 		status_led="rb750:green:act"
 		;;
+	rb-750-r2|\
 	rb-750up-r2|\
 	rb-911g-2hpnd|\
 	rb-911g-5hpacd|\
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
index f4e5441..fc3a5dd 100755
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
@@ -838,6 +838,9 @@ ar71xx_board_detect() {
 	*"RouterBOARD 750GL")
 		name="rb-750gl"
 		;;
+	*"RouterBOARD 750 r2")
+		name="rb-750-r2"
+		;;
 	*"RouterBOARD 750UP r2")
 		name="rb-750up-r2"
 		;;
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index 1105254..fa83db2 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -343,6 +343,7 @@ platform_check_image() {
 	ls-sr71|\
 	pb42|\
 	pb44|\
+	rb-750-r2|\
 	rb-750up-r2|\
 	rb-941-2nd|\
 	rb-951ui-2nd|\
@@ -618,6 +619,7 @@ platform_pre_upgrade() {
 	local board=$(ar71xx_board_name)
 
 	case "$board" in
+	rb-750-r2|\
 	rb-750up-r2|\
 	rb-941-2nd|\
 	rb-951ui-2nd|\
@@ -657,6 +659,7 @@ platform_do_upgrade() {
 	local board=$(ar71xx_board_name)
 
 	case "$board" in
+	rb-750-r2|\
 	rb-750up-r2|\
 	rb-941-2nd|\
 	rb-951ui-2nd|\
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
index 3f43471..bc06481 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
+++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
@@ -930,6 +930,7 @@ config ATH79_MACH_RBSPI
 	  MikroTik RouterBOARD hAP lite
 	  MikroTik RouterBOARD hAP
 	  MikroTik RouterBOARD hEX PoE lite
+	  MikroTik RouterBOARD hEX lite
 
 config ATH79_MACH_RBSXTLITE
 	bool "MikroTik RouterBOARD SXT Lite"
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c
index 81659ef..c0b2719 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-rbspi.c
@@ -5,6 +5,7 @@
  *  - MikroTik RouterBOARD 941L-2nD
  *  - MikroTik RouterBOARD 951Ui-2nD
  *  - MikroTik RouterBOARD 750UP r2
+ *  - MikroTik RouterBOARD 750 r2
  *
  *  Copyright (C) 2017 Thibaut VARENE <varenet at parisc-linux.org>
  *
@@ -472,18 +473,22 @@ static void __init rb952_setup(void)
 }
 
 /*
- * Init the hEX PoE lite hardware.
+ * Init the hEX (PoE) lite hardware.
  * The 750UP r2 (hEX PoE lite) is nearly identical to the hAP, only without
- * WLAN.
+ * WLAN. The 750 r2 (hEX lite) is nearly identical to the 750UP r2, only
+ * without USB and POE. It shares the same bootloader board identifier.
  */
 static void __init rb750upr2_setup(void)
 {
-	u32 flags = RBSPI_HAS_WAN4 | RBSPI_HAS_USB |
-			RBSPI_HAS_SSR | RBSPI_HAS_POE;
+	u32 flags = RBSPI_HAS_WAN4 | RBSPI_HAS_SSR;
 
 	if (rbspi_platform_setup())
 		return;
 
+	/* differentiate the hEX lite from the hEX PoE lite */
+	if (strstr(mips_get_machine_name(), "750UP r2"))
+		flags |= RBSPI_HAS_USB | RBSPI_HAS_POE;
+
 	rbspi_952_750r2_setup(flags);
 }
 



More information about the lede-commits mailing list