Morse Micro IoT SDK  2.6.4-esp32

Detailed Description

Data Structures

struct  mmwlan_version
 Structure for retrieving version information from the mmwlan subsystem. More...
 
struct  mmwlan_bcf_metadata
 Board configuration file (BCF) metadata. More...
 
struct  mmwlan_scan_config
 Scan configuration data structure. More...
 
struct  mmwlan_twt_config_args
 Structure for storing Target Wake Time (TWT) configuration arguments. More...
 
struct  mmwlan_boot_args
 Arguments data structure for mmwlan_boot(). More...
 
struct  mmwlan_scan_result
 Result of the scan request. More...
 
struct  mmwlan_sta_args
 Arguments data structure for mmwlan_sta_enable(). More...
 
struct  mmwlan_scan_args
 Structure to hold scan arguments. More...
 
struct  mmwlan_scan_req
 Structure to hold arguments specific to a given instance of a scan. More...
 

Macros

#define MMWLAN_MORSELIB_VERSION_MAXLEN   (32)
 Maximum length of the Morselib version string. More...
 
#define MMWLAN_FW_VERSION_MAXLEN   (32)
 Maximum length of the firmware version string. More...
 
#define MMWLAN_BCF_BOARD_DESC_MAXLEN   (31)
 Maximum length of a BCF board description string (excluding null terminator). More...
 
#define MMWLAN_BCF_BUILD_VERSION_MAXLEN   (31)
 Maximum length of a BCF build version string (excluding null terminator). More...
 
#define MMWLAN_MINIMUM_FRAGMENT_THRESHOLD   (256)
 Minimum value of fragmentation threshold that can be set with mmwlan_set_fragment_threshold(). More...
 
#define MMWLAN_SCAN_CONFIG_INIT   { MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS }
 Initializer for mmwlan_scan_config. More...
 
#define MMWLAN_TWT_CONFIG_ARGS_INIT
 Initializer for mmwlan_twt_config_args. More...
 
#define MMWLAN_BOOT_ARGS_INIT   { 0 }
 Initializer for mmwlan_boot_args. More...
 
#define MMWLAN_STA_ARGS_INIT
 Initializer for mmwlan_sta_args. More...
 
#define MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS   (105)
 Default value for mmwlan_scan_args.dwell_time_ms. More...
 
#define MMWLAN_SCAN_MIN_DWELL_TIME_MS   (15)
 Minimum value for mmwlan_scan_args.dwell_time_ms. More...
 
#define MMWLAN_SCAN_ARGS_INIT   { MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS, NULL, 0, { 0 }, 0 }
 Initializer for mmwlan_scan_args. More...
 
#define MMWLAN_SCAN_REQ_INIT   { NULL, NULL, NULL, MMWLAN_SCAN_ARGS_INIT }
 Initializer for mmwlan_scan_req. More...
 

Typedefs

typedef void(* mmwlan_scan_rx_cb_t) (const struct mmwlan_scan_result *result, void *arg)
 mmwlan scan rx callback function prototype. More...
 
typedef void(* mmwlan_sta_status_cb_t) (enum mmwlan_sta_state sta_state)
 STA status callback function prototype. More...
 
typedef void(* mmwlan_scan_complete_cb_t) (enum mmwlan_scan_state scan_state, void *arg)
 mmwlan scan complete callback function prototype. More...
 

Enumerations

enum  mmwlan_sta_state { MMWLAN_STA_DISABLED , MMWLAN_STA_CONNECTING , MMWLAN_STA_CONNECTED }
 Enumeration of states in STA mode. More...
 
enum  mmwlan_station_type { MMWLAN_STA_TYPE_SENSOR = 0x01 , MMWLAN_STA_TYPE_NON_SENSOR = 0x02 }
 Enumeration of S1G non-AP STA types. More...
 
enum  mmwlan_scan_state { MMWLAN_SCAN_SUCCESSFUL , MMWLAN_SCAN_TERMINATED , MMWLAN_SCAN_RUNNING }
 Enumeration of states in Scan mode. More...
 

Functions

enum mmwlan_status mmwlan_get_version (struct mmwlan_version *version)
 Retrieve version information from morselib and the connected Morse transceiver. More...
 
enum mmwlan_status mmwlan_get_bcf_metadata (struct mmwlan_bcf_metadata *metadata)
 Read the metadata from the board configuration file (BCF)r. More...
 
enum mmwlan_status mmwlan_override_max_tx_power (uint16_t tx_power_dbm)
 Override the maximum TX power. More...
 
enum mmwlan_status mmwlan_set_rts_threshold (unsigned rts_threshold)
 Set the RTS threshold. More...
 
enum mmwlan_status mmwlan_set_sgi_enabled (bool sgi_enabled)
 Sets whether or not Short Guard Interval (SGI) support is enabled. More...
 
enum mmwlan_status mmwlan_set_subbands_enabled (bool subbands_enabled)
 Sets whether or not sub-band support is enabled for transmit. More...
 
enum mmwlan_status mmwlan_set_power_save_mode (enum mmwlan_ps_mode mode)
 Sets whether or not the 802.11 power save is enabled. More...
 
enum mmwlan_status mmwlan_set_ampdu_enabled (bool ampdu_enabled)
 Sets whether or not Aggregated MAC Protocol Data Unit (A-MPDU) support is enabled. More...
 
enum mmwlan_status mmwlan_set_fragment_threshold (unsigned fragment_threshold)
 Set the Fragmentation threshold. More...
 
enum mmwlan_status mmwlan_set_scan_config (const struct mmwlan_scan_config *config)
 Update the scan configuration with the given settings. More...
 
enum mmwlan_status mmwlan_twt_add_configuration (const struct mmwlan_twt_config_args *twt_config_args)
 Add configurations for Target Wake Time (TWT). More...
 
enum mmwlan_status mmwlan_boot (const struct mmwlan_boot_args *args)
 Boot the Morse Micro transceiver and leave it in an idle state. More...
 
enum mmwlan_status mmwlan_shutdown (void)
 Perform a clean shutdown of the Morse Micro transceiver, including cleanly disconnecting from a connected AP, if necessary. More...
 
enum mmwlan_status mmwlan_sta_enable (const struct mmwlan_sta_args *args, mmwlan_sta_status_cb_t sta_status_cb)
 Enable station mode. More...
 
enum mmwlan_status mmwlan_sta_disable (void)
 Disable station mode. More...
 
enum mmwlan_sta_state mmwlan_get_sta_state (void)
 Gets the current WLAN STA state. More...
 
enum mmwlan_status mmwlan_scan_request (const struct mmwlan_scan_req *scan_req)
 Request a scan. More...
 
enum mmwlan_status mmwlan_scan_abort (void)
 Abort in progress or pending scans. More...
 
enum mmwlan_status mmwlan_get_mac_addr (uint8_t *mac_addr)
 Gets the MAC address of this device. More...
 
uint16_t mmwlan_get_aid (void)
 Gets the station's AID. More...
 
enum mmwlan_status mmwlan_get_bssid (uint8_t *bssid)
 Gets the BSSID of the AP to which the STA is associated. More...
 
int32_t mmwlan_get_rssi (void)
 Gets the RSSI measured from the AP. More...
 

Macro Definition Documentation

◆ MMWLAN_BCF_BOARD_DESC_MAXLEN

#define MMWLAN_BCF_BOARD_DESC_MAXLEN   (31)

Maximum length of a BCF board description string (excluding null terminator).

Definition at line 335 of file mmwlan.h.

◆ MMWLAN_BCF_BUILD_VERSION_MAXLEN

#define MMWLAN_BCF_BUILD_VERSION_MAXLEN   (31)

Maximum length of a BCF build version string (excluding null terminator).

Definition at line 337 of file mmwlan.h.

◆ MMWLAN_BOOT_ARGS_INIT

#define MMWLAN_BOOT_ARGS_INIT   { 0 }

Initializer for mmwlan_boot_args.

See also
mmwlan_boot_args

Definition at line 605 of file mmwlan.h.

◆ MMWLAN_FW_VERSION_MAXLEN

#define MMWLAN_FW_VERSION_MAXLEN   (32)

Maximum length of the firmware version string.

Definition at line 309 of file mmwlan.h.

◆ MMWLAN_MINIMUM_FRAGMENT_THRESHOLD

#define MMWLAN_MINIMUM_FRAGMENT_THRESHOLD   (256)

Minimum value of fragmentation threshold that can be set with mmwlan_set_fragment_threshold().

Definition at line 468 of file mmwlan.h.

◆ MMWLAN_MORSELIB_VERSION_MAXLEN

#define MMWLAN_MORSELIB_VERSION_MAXLEN   (32)

Maximum length of the Morselib version string.

Definition at line 307 of file mmwlan.h.

◆ MMWLAN_SCAN_ARGS_INIT

#define MMWLAN_SCAN_ARGS_INIT   { MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS, NULL, 0, { 0 }, 0 }

Initializer for mmwlan_scan_args.

For example:

#define MMWLAN_SCAN_ARGS_INIT
Initializer for mmwlan_scan_args.
Definition: mmwlan.h:876
Structure to hold scan arguments.
Definition: mmwlan.h:844

Definition at line 876 of file mmwlan.h.

◆ MMWLAN_SCAN_CONFIG_INIT

#define MMWLAN_SCAN_CONFIG_INIT   { MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS }

Initializer for mmwlan_scan_config.

Definition at line 514 of file mmwlan.h.

◆ MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS

#define MMWLAN_SCAN_DEFAULT_DWELL_TIME_MS   (105)

Default value for mmwlan_scan_args.dwell_time_ms.

Note that reducing the dwell time below this value may impact scan reliability.

Definition at line 817 of file mmwlan.h.

◆ MMWLAN_SCAN_MIN_DWELL_TIME_MS

#define MMWLAN_SCAN_MIN_DWELL_TIME_MS   (15)

Minimum value for mmwlan_scan_args.dwell_time_ms.

Definition at line 820 of file mmwlan.h.

◆ MMWLAN_SCAN_REQ_INIT

#define MMWLAN_SCAN_REQ_INIT   { NULL, NULL, NULL, MMWLAN_SCAN_ARGS_INIT }

Initializer for mmwlan_scan_req.

For example:

#define MMWLAN_SCAN_REQ_INIT
Initializer for mmwlan_scan_req.
Definition: mmwlan.h:902
Structure to hold arguments specific to a given instance of a scan.
Definition: mmwlan.h:882

Definition at line 902 of file mmwlan.h.

◆ MMWLAN_STA_ARGS_INIT

#define MMWLAN_STA_ARGS_INIT
Value:
{ { 0 }, 0, { 0 }, MMWLAN_OPEN, { 0 }, 0, MMWLAN_PMF_REQUIRED, -1, MMWLAN_STA_TYPE_NON_SENSOR, \
DEFAULT_BGSCAN_LONG_INTERVAL_S, NULL, NULL }
#define DEFAULT_BGSCAN_THRESHOLD_DBM
Default Background scan signal threshold in dBm.
Definition: mmwlan.h:101
#define DEFAULT_BGSCAN_SHORT_INTERVAL_S
Default Background scan short interval in seconds.
Definition: mmwlan.h:98
@ MMWLAN_PMF_REQUIRED
Protected management frames must be used.
Definition: mmwlan.h:146
@ MMWLAN_OPEN
Open (no security)
Definition: mmwlan.h:126
@ MMWLAN_CAC_DISABLED
CAC disabled.
Definition: mmwlan.h:155

Initializer for mmwlan_sta_args.

See also
mmwlan_sta_args

Definition at line 770 of file mmwlan.h.

◆ MMWLAN_TWT_CONFIG_ARGS_INIT

#define MMWLAN_TWT_CONFIG_ARGS_INIT
Value:
DEFAULT_TWT_MIN_WAKE_DURATION_US, MMWLAN_TWT_SETUP_REQUEST }
#define DEFAULT_TWT_WAKE_INTERVAL_US
Default Target Wake Time (TWT) interval in micro seconds.
Definition: mmwlan.h:108
@ MMWLAN_TWT_SETUP_REQUEST
TWT setup request command.
Definition: mmwlan.h:179
@ MMWLAN_TWT_DISABLED
TWT disabled.
Definition: mmwlan.h:168

Initializer for mmwlan_twt_config_args.

For example:

#define MMWLAN_TWT_CONFIG_ARGS_INIT
Initializer for mmwlan_twt_config_args.
Definition: mmwlan.h:561
Structure for storing Target Wake Time (TWT) configuration arguments.
Definition: mmwlan.h:527

Definition at line 561 of file mmwlan.h.

Typedef Documentation

◆ mmwlan_scan_complete_cb_t

typedef void(* mmwlan_scan_complete_cb_t) (enum mmwlan_scan_state scan_state, void *arg)

mmwlan scan complete callback function prototype.

Definition at line 837 of file mmwlan.h.

◆ mmwlan_scan_rx_cb_t

typedef void(* mmwlan_scan_rx_cb_t) (const struct mmwlan_scan_result *result, void *arg)

mmwlan scan rx callback function prototype.

Definition at line 681 of file mmwlan.h.

◆ mmwlan_sta_status_cb_t

typedef void(* mmwlan_sta_status_cb_t) (enum mmwlan_sta_state sta_state)

STA status callback function prototype.

Definition at line 684 of file mmwlan.h.

Enumeration Type Documentation

◆ mmwlan_scan_state

Enumeration of states in Scan mode.

Enumerator
MMWLAN_SCAN_SUCCESSFUL 

Scan was successful and all channels were scanned.

MMWLAN_SCAN_TERMINATED 

Scan was incomplete.

One or more channels may have been scanned and therefore an incomplete set of scan results may still have been received.

MMWLAN_SCAN_RUNNING 

Scanning in progress.

Definition at line 825 of file mmwlan.h.

◆ mmwlan_sta_state

Enumeration of states in STA mode.

Definition at line 635 of file mmwlan.h.

◆ mmwlan_station_type

Enumeration of S1G non-AP STA types.

Definition at line 645 of file mmwlan.h.

Function Documentation

◆ mmwlan_boot()

enum mmwlan_status mmwlan_boot ( const struct mmwlan_boot_args args)

Boot the Morse Micro transceiver and leave it in an idle state.

Note
In general, it is not necessary to use this function as mmwlan_sta_enable() will automatically boot the chip if required. It may be used, for example, to power on the chip for production test, etc.
Warning
Channel list must be set before booting the transceiver. mmwlan_set_channel_list().
Parameters
argsBoot arguments. May be NULL, in which case default values will be used.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_get_aid()

uint16_t mmwlan_get_aid ( void  )

Gets the station's AID.

Returns
AID of station, or 0 if not associated

◆ mmwlan_get_bcf_metadata()

enum mmwlan_status mmwlan_get_bcf_metadata ( struct mmwlan_bcf_metadata metadata)

Read the metadata from the board configuration file (BCF)r.

Parameters
metadataPointer to a metadata data structure to be filled out on success.
Returns
MMWLAN_SUCCESS on success else an error code.

◆ mmwlan_get_bssid()

enum mmwlan_status mmwlan_get_bssid ( uint8_t *  bssid)

Gets the BSSID of the AP to which the STA is associated.

Parameters
bssidBuffer to receive the BSSID. Length must be MMWLAN_MAC_ADDR_LEN. Will be set to 00:00:00:00:00:00 if the station is not currently associated.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_get_mac_addr()

enum mmwlan_status mmwlan_get_mac_addr ( uint8_t *  mac_addr)

Gets the MAC address of this device.

The MAC address address comes from one of the following sources, in descending priority order:

  1. mmhal_read_mac_addr()
  2. Morse Micro transceiver
  3. Randomly generated in the form 02:01:XX:XX:XX:XX
Note
If a MAC address override is not provided (via mmhal_read_mac_addr()) then the transceiver must have been booted at least once before this function is invoked.
Parameters
mac_addrBuffer to receive the MAC address. Length must be MMWLAN_MAC_ADDR_LEN.
Returns
MMWLAN_SUCCESS on success, MMWLAN_UNAVAILABLE if the MAC address was not able to be read from the transceiver because it was not booted, else an appropriate error code.

◆ mmwlan_get_rssi()

int32_t mmwlan_get_rssi ( void  )

Gets the RSSI measured from the AP.

When power save is enabled, this will only be updated when traffic is received from the AP.

Returns
last known RSSI of the AP or INT32_MIN on error.

◆ mmwlan_get_sta_state()

enum mmwlan_sta_state mmwlan_get_sta_state ( void  )

Gets the current WLAN STA state.

Returns
the current WLAN STA state.

◆ mmwlan_get_version()

enum mmwlan_status mmwlan_get_version ( struct mmwlan_version version)

Retrieve version information from morselib and the connected Morse transceiver.

Parameters
versionThe data structure to fill out with version information.
Note
If the Morse transceiver has not previously been powered on then the fw_version field of version will be set to a zero length string.
Returns
MMWLAN_SUCCESS on success else an error code.

◆ mmwlan_override_max_tx_power()

enum mmwlan_status mmwlan_override_max_tx_power ( uint16_t  tx_power_dbm)

Override the maximum TX power.

If no override is specified then the maximum TX power used will be the maximum TX power allowed for the channel in the current regulatory domain.

Note
Must be invoked after WLAN initialization (see mmwlan_init()). Only takes effect when switching channel (e.g., during scan or AP connection procedure).
This will not increase the TX power over the maximum allowed for the current channel in the configured regulatory domain. Therefore, this override in effect will only reduce the maximum TX power and cannot increase it.
Parameters
tx_power_dbmThe maximum TX power override to set (in dBm). Set to zero to disable the override.
Returns
MMWLAN_SUCCESS if the country code was valid and updated successfully, MMWLAN_UNAVAILABLE if the WLAN subsystem was currently active.

◆ mmwlan_scan_abort()

enum mmwlan_status mmwlan_scan_abort ( void  )

Abort in progress or pending scans.

The scan callback will be called back with result code MMWLAN_SCAN_TERMINATED for all aborted scans.

Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_scan_request()

enum mmwlan_status mmwlan_scan_request ( const struct mmwlan_scan_req scan_req)

Request a scan.

If the transceiver is not already powered on, it will be powered on before the scan is initiated. The power on procedure will block this function. The transceiver will remain powered on after scan completion and must be shutdown by invoking mmwlan_shutdown().

Note
Just because a scan is requested does not mean it will happen immediately. It may take some time for the request to be serviced.
The scan request may be rejected, in which case the complete callback will be invoked immediately with an error status.
Parameters
scan_reqScan request instance. See mmwlan_scan_req.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_ampdu_enabled()

enum mmwlan_status mmwlan_set_ampdu_enabled ( bool  ampdu_enabled)

Sets whether or not Aggregated MAC Protocol Data Unit (A-MPDU) support is enabled.

This defaults to enabled, if not set otherwise.

Note
This must only be invoked when MMWLAN is inactive (i.e., STA mode not enabled).
Parameters
ampdu_enabledBoolean value indicating whether AMPDU support should be enabled.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_fragment_threshold()

enum mmwlan_status mmwlan_set_fragment_threshold ( unsigned  fragment_threshold)

Set the Fragmentation threshold.

Maximum length of the frame, beyond which packets must be fragmented into two or more frames.

Note
Even if the fragmentation threshold is set to 0 (disabled), fragmentation may still occur if a given packet is too large to be transmitted at the selected rate.
Warning
Setting a fragmentation threshold may have unintended side effects due to restrictions at lower bandwidths and MCS rates. In normal operation the fragmentation threshold should be disabled, in which case packets will be fragmented automatically as necessary based on the selected rate.
Parameters
fragment_thresholdThe fragmentation threshold (in octets) to set, or zero to disable the fragmentation threshold. Minimum value (if not zero) is given by MMWLAN_MINIMUM_FRAGMENT_THRESHOLD.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_power_save_mode()

enum mmwlan_status mmwlan_set_power_save_mode ( enum mmwlan_ps_mode  mode)

Sets whether or not the 802.11 power save is enabled.

Defaults to MMWLAN_PS_ENABLED

Parameters
modeenum indicating which 802.11 power save mode to use.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_rts_threshold()

enum mmwlan_status mmwlan_set_rts_threshold ( unsigned  rts_threshold)

Set the RTS threshold.

When packets larger than the RTS threshold are transmitted they are protected by an RTS/CTS exchange.

Parameters
rts_thresholdThe RTS threshold (in octets) to set, or 0 to disable.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_scan_config()

enum mmwlan_status mmwlan_set_scan_config ( const struct mmwlan_scan_config config)

Update the scan configuration with the given settings.

Parameters
configThe new configuration to set.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_sgi_enabled()

enum mmwlan_status mmwlan_set_sgi_enabled ( bool  sgi_enabled)

Sets whether or not Short Guard Interval (SGI) support is enabled.

Defaults to enabled if not set otherwise.

Note
This will not force use of SGI, only enable support for it. The rate control algorithm will make the decision as to which guard interval to use unless explicitly overridden by mmwlan_ate_override_rate_control().
This must only be invoked when MMWLAN is inactive (i.e., STA mode not enabled).
Parameters
sgi_enabledBoolean value indicating whether SGI support should be enabled.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_set_subbands_enabled()

enum mmwlan_status mmwlan_set_subbands_enabled ( bool  subbands_enabled)

Sets whether or not sub-band support is enabled for transmit.

Defaults to enabled if not set otherwise.

Note
This will not force use of sub-bands, only enable support for it. The rate control algorithm will make the decision as to which bandwidth to use unless explicitly overridden by mmwlan_ate_override_rate_control().
This must only be invoked when MMWLAN is inactive (i.e., STA mode not enabled).
Parameters
subbands_enabledBoolean value indicating whether sub-band support should be enabled.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_shutdown()

enum mmwlan_status mmwlan_shutdown ( void  )

Perform a clean shutdown of the Morse Micro transceiver, including cleanly disconnecting from a connected AP, if necessary.

Has no effect if the transceiver is already shutdown.

Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_sta_disable()

enum mmwlan_status mmwlan_sta_disable ( void  )

Disable station mode.

This will disconnect from the AP. It will also shut down the transceiver if nothing else is holding it open. Note that if the transceiver was booted by mmwlan_boot() then this function will shut down the transceiver.

Returns
MMWLAN_SUCCESS if successful and the transceiver was also shut down, MMWLAN_SHUTDOWN_BLOCKED if successful and the transceiver was not shut down, else an appropriate error code.

◆ mmwlan_sta_enable()

enum mmwlan_status mmwlan_sta_enable ( const struct mmwlan_sta_args args,
mmwlan_sta_status_cb_t  sta_status_cb 
)

Enable station mode.

This will power on the transceiver then initiate connection to the given Access Point. If station mode is already enabled when this function is invoked then it will disconnect from (if already connected) and initiate connection to the given AP.

Note
The STA status callback (sta_status_cb) must not block and MMWLAN API functions may not be invoked from the callback.
Warning
Channel list must be set before enabling station mode. mmwlan_set_channel_list().
Parameters
argsSTA arguments (e.g., SSID, etc.). See mmwlan_sta_args.
sta_status_cbOptional callback to be invoked on STA state changes. May be NULL.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_twt_add_configuration()

enum mmwlan_status mmwlan_twt_add_configuration ( const struct mmwlan_twt_config_args twt_config_args)

Add configurations for Target Wake Time (TWT).

Note
This is used to add TWT configuration for a new TWT agreement. This function should be invoked before mmwlan_sta_enable.
Parameters
twt_config_argsTWT configuration arguments mmwlan_twt_config_args.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.