[openwrt_lib] Fix for enabling DFS channels

Cherry picked changes from git_master

Bug: 165804953
Test: Verified changes locally
Exempt-From-Owner-Approval: Cherry picked from master
Merged-In: Idea2b2b4e95957e2f40ae763af1577601b4246f1
Change-Id: I195bf051ec3d41413a1f4ccd55b84edea99c1a17
diff --git a/acts/framework/acts/controllers/openwrt_lib/wireless_settings_applier.py b/acts/framework/acts/controllers/openwrt_lib/wireless_settings_applier.py
index cfb94d1..5edec84 100644
--- a/acts/framework/acts/controllers/openwrt_lib/wireless_settings_applier.py
+++ b/acts/framework/acts/controllers/openwrt_lib/wireless_settings_applier.py
@@ -46,6 +46,11 @@
     # set channels for 2G and 5G bands
     self.ssh.run("uci set wireless.radio1.channel='%s'" % self.channel_2g)
     self.ssh.run("uci set wireless.radio0.channel='%s'" % self.channel_5g)
+    if self.channel_5g == 165:
+      self.ssh.run("uci set wireless.radio0.htmode='VHT20'")
+    elif self.channel_5g == 132:
+      self.ssh.run("iw reg set ZA")
+      self.ssh.run("uci set wireless.radio0.htmode='VHT40'")
 
     # disable default OpenWrt SSID
     self.ssh.run("uci set wireless.default_radio1.disabled='%s'" %
@@ -118,6 +123,8 @@
     self.ssh.run("wifi down")
     self.ssh.run("rm -f /etc/config/wireless")
     self.ssh.run("wifi config")
+    if self.channel_5g == 132:
+      self.ssh.run("iw reg set US")
     self.ssh.run("cp %s.tmp %s" % (LEASE_FILE, LEASE_FILE))
     self.ssh.run(DNSMASQ_RESTART)
     time.sleep(9)