Преглед изворни кода

packages: nvram: add set_bcm43602_variables quirk for ASUS RT-AC3200

Broadcom BCM43602 needs certain NVRAM variables to be set to function. Add
a quirk for it and add ASUS RT-AC3200 which has got Broadcom BCM43602 to
the quirk. Thanks to Tom Brautaset for finding the needed variables.

Signed-off-by: Chester A. Unal <[email protected]>
Chester A. Unal пре 3 месеци
родитељ
комит
cd2ad6c464
2 измењених фајлова са 34 додато и 1 уклоњено
  1. 1 1
      package/utils/nvram/Makefile
  2. 33 0
      package/utils/nvram/files/nvram-bcm53xx.init

+ 1 - 1
package/utils/nvram/Makefile

@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=nvram
-PKG_RELEASE:=13
+PKG_RELEASE:=14
 
 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
 

+ 33 - 0
package/utils/nvram/files/nvram-bcm53xx.init

@@ -39,11 +39,44 @@ set_wireless_led_behaviour() {
 	esac
 }
 
+set_bcm43602_variables() {
+	# set variables needed for Broadcom BCM43602
+
+	case $(board_name) in
+		asus,rt-ac3200)
+			COMMIT=1
+
+			# radio 0 (5 GHz)
+			nvram set devpath0=pcie/1/3
+			nvram set 0:devpath0=sb/1/
+			nvram set 0:devid=0x43bc
+			nvram set 0:sromrev=11
+			nvram set 0:boardflags=0x30040000
+
+			# radio 1 (2.4 GHz)
+			nvram set devpath1=pcie/1/4
+			nvram set 1:devpath1=sb/1/
+			nvram set 1:devid=0x43bb
+			nvram set 1:boardrev=0x1421
+			nvram set 1:sromrev=11
+			nvram set 1:boardflags=0x20001000
+
+			# radio 2 (5 GHz)
+			nvram set devpath2=pcie/2/1
+			nvram set 2:devpath2=sb/1/
+			nvram set 2:devid=0x43bc
+			nvram set 2:sromrev=11
+			nvram set 2:boardflags=0x30040000
+			;;
+	esac
+}
+
 boot() {
 	. /lib/functions.sh
 
 	clear_partialboots
 	set_wireless_led_behaviour
+	set_bcm43602_variables
 
 	[ "$COMMIT" = "1" ] && nvram commit
 }