Browse Source

qcacmn: Convert wireless modes to host internal values

Convert the wireless_modes HALPHY capability from FW defined REGDMN_MODE
values to host internal WMI_HOST_REGDMN_MODE values. This will help make
host code independent of target specific definitions.

Change-Id: I6d325f76959b35a3f854ade680f4d058c9d4bfcb
CRs-Fixed: 1061096
Pratik Gandhi 8 years ago
parent
commit
74ff2e52d8
1 changed files with 69 additions and 0 deletions
  1. 69 0
      wmi_unified_param.h

+ 69 - 0
wmi_unified_param.h

@@ -315,6 +315,75 @@ typedef struct {
 	uint32_t reg_info_2;
 } wmi_host_channel;
 
+/**
+ * enum WMI_HOST_REGDMN_MODE:
+ * @WMI_HOST_REGDMN_MODE_11A: 11a channels
+ * @WMI_HOST_REGDMN_MODE_TURBO: 11a turbo-only channels
+ * @WMI_HOST_REGDMN_MODE_11B: 11b channels
+ * @WMI_HOST_REGDMN_MODE_PUREG: 11g channels (OFDM only)
+ * @WMI_HOST_REGDMN_MODE_11G: historical
+ * @WMI_HOST_REGDMN_MODE_108G: 11g+Turbo channels
+ * @WMI_HOST_REGDMN_MODE_108A: 11a+Turbo channels
+ * @WMI_HOST_REGDMN_MODE_XR: XR channels
+ * @WMI_HOST_REGDMN_MODE_11A_HALF_RATE: 11a half rate channels
+ * @WMI_HOST_REGDMN_MODE_11A_QUARTER_RATE: 11a quarter rate channels
+ * @WMI_HOST_REGDMN_MODE_11NG_HT20: 11ng HT20 channels
+ * @WMI_HOST_REGDMN_MODE_11NA_HT20: 11na HT20 channels
+ * @WMI_HOST_REGDMN_MODE_11NG_HT40PLUS: 11ng HT40+ channels
+ * @WMI_HOST_REGDMN_MODE_11NG_HT40MINUS: 11ng HT40- channels
+ * @WMI_HOST_REGDMN_MODE_11NA_HT40PLUS: 11na HT40+ channels
+ * @WMI_HOST_REGDMN_MODE_11NA_HT40MINUS: 11na HT40- channels
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT20: 5GHz, VHT20
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT40PLUS: 5GHz, VHT40+ channels
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT40MINUS: 5GHz, VHT40- channels
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT80: 5GHz, VHT80 channels
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT160: 5GHz, VHT160 channels
+ * @WMI_HOST_REGDMN_MODE_11AC_VHT80_80: 5GHz, VHT80+80 channels
+ * @WMI_HOST_REGDMN_MODE_11AXG_HE20: 11ax 2.4GHz, HE20 channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE20: 11ax 5GHz, HE20 channels
+ * @WMI_HOST_REGDMN_MODE_11AXG_HE40PLUS: 11ax 2.4GHz, HE40+ channels
+ * @WMI_HOST_REGDMN_MODE_11AXG_HE40MINUS: 11ax 2.4GHz, HE40- channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE40PLUS: 11ax 5GHz, HE40+ channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE40MINUS: 11ax 5GHz, HE40- channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE80: 11ax 5GHz, HE80 channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE160: 11ax 5GHz, HE160 channels
+ * @WMI_HOST_REGDMN_MODE_11AXA_HE80_80: 11ax 5GHz, HE80+80 channels
+ */
+typedef enum {
+	WMI_HOST_REGDMN_MODE_11A = 0x00000001,
+	WMI_HOST_REGDMN_MODE_TURBO = 0x00000002,
+	WMI_HOST_REGDMN_MODE_11B = 0x00000004,
+	WMI_HOST_REGDMN_MODE_PUREG = 0x00000008,
+	WMI_HOST_REGDMN_MODE_11G = 0x00000008,
+	WMI_HOST_REGDMN_MODE_108G = 0x00000020,
+	WMI_HOST_REGDMN_MODE_108A = 0x00000040,
+	WMI_HOST_REGDMN_MODE_XR = 0x00000100,
+	WMI_HOST_REGDMN_MODE_11A_HALF_RATE = 0x00000200,
+	WMI_HOST_REGDMN_MODE_11A_QUARTER_RATE = 0x00000400,
+	WMI_HOST_REGDMN_MODE_11NG_HT20 = 0x00000800,
+	WMI_HOST_REGDMN_MODE_11NA_HT20 = 0x00001000,
+	WMI_HOST_REGDMN_MODE_11NG_HT40PLUS = 0x00002000,
+	WMI_HOST_REGDMN_MODE_11NG_HT40MINUS = 0x00004000,
+	WMI_HOST_REGDMN_MODE_11NA_HT40PLUS = 0x00008000,
+	WMI_HOST_REGDMN_MODE_11NA_HT40MINUS = 0x00010000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT20 = 0x00020000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT40PLUS = 0x00040000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT40MINUS = 0x00080000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT80 = 0x00100000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT160 = 0x00200000,
+	WMI_HOST_REGDMN_MODE_11AC_VHT80_80 = 0x00400000,
+	WMI_HOST_REGDMN_MODE_11AXG_HE20 = 0x00800000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE20 = 0x01000000,
+	WMI_HOST_REGDMN_MODE_11AXG_HE40PLUS = 0x02000000,
+	WMI_HOST_REGDMN_MODE_11AXG_HE40MINUS = 0x04000000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE40PLUS = 0x08000000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE40MINUS = 0x10000000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE80 = 0x20000000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE160 = 0x40000000,
+	WMI_HOST_REGDMN_MODE_11AXA_HE80_80 = 0x80000000,
+	WMI_HOST_REGDMN_MODE_ALL = 0xffffffff
+} WMI_HOST_REGDMN_MODE;
+
 /**
  * enum wmi_dwelltime_adaptive_mode: dwelltime_mode
  * @WMI_DWELL_MODE_DEFAULT: Use firmware default mode