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

WMI: provide prototypes for wmi_mac_addr <--> char array conversion funcs
Provide prototypes for wmi_mac_addr_to_char_array and wmi_char_array_to_mac_addr functions, which implement the WMI_MAC_ADDR_TO_CHAR_ARRAY and WMI_CHAR_ARRAY_TO_MAC_ADDR operations, but as functions rather than macros (to save memory)

Change-Id: Ic3f7618a2fa079ce6fbc0995f0b033a190420521
CRs-Fixed: 2262693
This commit is contained in:
spuligil
2018-08-06 10:13:05 -07:00
parent 9292ea18cd
commit ceb998c231
2 changed files with 12 additions and 2 deletions

View File

@@ -150,7 +150,7 @@ static INLINE void wmi_packed_arr_set_bits(A_UINT32 *arr, A_UINT32 entry_index,
} }
/** 2 word representation of MAC addr */ /** 2 word representation of MAC addr */
typedef struct { typedef struct _wmi_mac_addr {
/** upper 4 bytes of MAC address */ /** upper 4 bytes of MAC address */
A_UINT32 mac_addr31to0; A_UINT32 mac_addr31to0;
/** lower 2 bytes of MAC address */ /** lower 2 bytes of MAC address */
@@ -177,6 +177,16 @@ typedef struct {
(pwmi_mac_addr)->mac_addr47to32 = ((c_macaddr)[4] | ((c_macaddr)[5] << 8));\ (pwmi_mac_addr)->mac_addr47to32 = ((c_macaddr)[4] | ((c_macaddr)[5] << 8));\
} while (0) } while (0)
/*
* The below function declarations are for implementations on some
* platforms of the above macros, but in function form, to save code
* memory by avoiding macro-inlining of a non-trivial amount of code.
* These function versions of the above macros may not be available
* on all host and target platforms.
*/
void wmi_mac_addr_to_char_array(wmi_mac_addr *pwmi_mac_addr, A_UINT8 *c_macaddr);
void wmi_char_array_to_mac_addr(A_UINT8 *c_macaddr, wmi_mac_addr *pwmi_mac_addr);
/* /*
* wmi command groups. * wmi command groups.
*/ */

View File

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