fw-api: CL 19622099 - update fw common interface files

Change-Id: I08a30bd58cc334d09cf9469c72110cf720e4f802
WMI: allow vdev restart to specify bitmap of vdev IDs
CRs-Fixed: 2262693
This commit is contained in:
spuligil 2022-09-17 06:00:58 -07:00
commit 0baa6ea481
3 changed files with 43 additions and 2 deletions

View file

@ -599,6 +599,7 @@ typedef enum {
WMI_SERVICE_BANG_RADAR_320_SUPPORT = 346, /* Host to send frequency offset for bang radar in extended field for 320M support */
WMI_SERVICE_XGAP_SUPPORT = 347, /* FW support for XGAP */
WMI_SERVICE_OBSS_PER_PACKET_SR_SUPPORT = 348, /* Spatial Reuse support for per PPDU setting */
WMI_SERVICE_MULTIPLE_VDEV_RESTART_BITMAP_SUPPORT = 349, /* Extended Multiple VDEV Restart with Bitmap Support */
WMI_MAX_EXT2_SERVICE

View file

@ -33416,6 +33416,31 @@ typedef struct {
#define WMI_MULTIPLE_VDEV_RESTART_FLAG_GET_PHYMODE(phymode) WMI_GET_BITS(phymode, 0, 6)
#define WMI_MULTIPLE_VDEV_RESTART_FLAG_SET_PHYMODE(phymode, val) WMI_SET_BITS(phymode, 0, 6, val)
/** Indicates that VDEV ID is in bit-map format
* If this flag is set, FW will determine the vdev IDs from the positions
* of the bits that are set, and use these vdev IDs for vdev restart.
*
* This flag should not be set from host unless FW has set the service bit
* WMI_SERVICE_MULTIPLE_VDEV_RESTART_BITMAP_SUPPORT to indicate it supports
* this interpretation of the vdev IDs as a bitmap.
*
* If this flag is set then below is the way it will be parsed
* vdev_ids[0] = 53 (0011 0101) -> indicates vdev 0,2,4,5 is set
* vdev_ids[1] = 53 (0000 0101) -> indicates vdev 32,34 is set
* similar to this the value can be extended in feature for more vdev's
*
* If flag is not se then default parsing will be as below
* vdev_ids[0] = 0
* vdev_ids[1] = 2
* vdev_ids[2] = 4
* .
* .
* vdev_ids[5] = 34
*/
#define WMI_MULTIPLE_VDEV_RESTART_FLAG_BITMAP_SUPPORT(flag) WMI_GET_BITS(flag, 2, 1)
#define WMI_MULTIPLE_VDEV_RESTART_FLAG_SET_BITMAP_SUPPORT(flag,val) WMI_SET_BITS(flag, 2, 1, val)
/* This command is used whenever host wants to restart multiple
* VDEVs using single command and the VDEV that are restarted will
* need to have same properties they had before restart except for the
@ -33446,7 +33471,22 @@ typedef struct {
A_UINT32 puncture_20mhz_bitmap; /* each bit indicates one 20 MHz BW punctured */
/* The TLVs follows this structure:
* A_UINT32 vdev_ids[]; <--- Array of VDEV ids.
* A_UINT32 vdev_ids[]; <--- Array of vdev IDs, or bitmap of vdev IDs
* In flags if WMI_MULTIPLE_VDEV_RESTART_FLAG_BITMAP_SUPPORT is set
* FW will interpret the vdev_ids values as a bitmap, and will use the
* position of all the bits set within the bitmap to determine the
* vdev IDs to use for vdev restart.
* If this flag is set then below is the way it will be parsed
* vdev_ids[0] = 53 (0011 0101) -> indicates vdev 0,2,4,5 is set
* vdev_ids[1] = 53 (0000 0101) -> indicates vdev 32,34 is set
* The array can be extended in feature for more vdevs.
* If this flag is not se then default parsing will be as below
* vdev_ids[0] = 0
* vdev_ids[1] = 2
* vdev_ids[2] = 4
* .
* .
* vdev_ids[5] = 34
* wmi_channel chan; <------ WMI channel
* A_UINT32 phymode_list[]; <-- Array of Phymode list, with
* each phymode value stored in bits 5:0 of the A_UINT32.

View file

@ -37,7 +37,7 @@
#define __WMI_VER_MINOR_ 0
/** WMI revision number has to be incremented when there is a
* change that may or may not break compatibility. */
#define __WMI_REVISION_ 1213
#define __WMI_REVISION_ 1214
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work