Microchip® Advanced Software Framework

mac_start.c File Reference

This file implements the MLME-START.request (MAC layer management entity) entry points.

Copyright (c) 2013-2018 Microchip Technology Inc. and its subsidiaries.

#include <compiler.h>
#include <string.h>
#include <stdint.h>
#include <stdbool.h>
#include "return_val.h"
#include "pal.h"
#include "bmm.h"
#include "qmm.h"
#include "tal.h"
#include "ieee_const.h"
#include "mac_msg_const.h"
#include "mac_api.h"
#include "mac_msg_types.h"
#include "mac_data_structures.h"
#include "stack_config.h"
#include "mac_internal.h"
#include "mac.h"
#include "mac_config.h"
#include "mac_build_config.h"

Functions

static bool check_start_parameter (mlme_start_req_t *msg)
 
static void gen_mlme_start_conf (buffer_t *start_buf_ptr, uint8_t start_req_status)
 
void mac_coord_realignment_command_tx_success (uint8_t tx_status, buffer_t *buf_ptr)
 Continues handling of MLME_START.request (Coordinator realignment) command. More...
 
void mlme_start_request (uint8_t *m)
 The MLME-START.request primitive makes a request for the device to start using a new superframe configuration. More...
 

Variables

static mlme_start_req_t msr_params
 

static void gen_mlme_start_conf ( buffer_t *  start_buf_ptr,
uint8_t  start_req_status 
)
static
void mac_coord_realignment_command_tx_success ( uint8_t  tx_status,
buffer_t *  buf_ptr 
)

Continues handling of MLME_START.request (Coordinator realignment) command.

This function is called once the coordinator realignment command is sent out to continue the handling of the MLME_START.request command.

Parameters
tx_statusStatus of the coordinator realignment command transmission
buf_ptrBuffer for start confirmation

References Assert, mlme_start_req_tag::BeaconOrder, mlme_start_req_tag::ChannelPage, gen_mlme_start_conf(), mlme_start_req_tag::LogicalChannel, MAC_INVALID_PARAMETER, mac_sleep_trans(), MAC_SUCCESS, macBattLifeExt, macBeaconOrder, macPANId, macSuperframeOrder, NON_BEACON_NWK, mlme_start_req_tag::PANId, phyCurrentChannel, phyCurrentPage, set_tal_pib_internal(), mlme_start_req_tag::SuperframeOrder, and tal_pib.

Referenced by mac_process_tal_tx_status().

mlme_start_req_t msr_params
static