Skip to content

Commit

Permalink
SW MAC timestamp read update
Browse files Browse the repository at this point in the history
Now timestamp is returned by functional.

Change-Id: Ieb10d01847f7a5298943dd53c847f0f6ce262ab9
  • Loading branch information
Juha Heiskanen committed Jun 26, 2019
1 parent eddf91b commit db81d02
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 11 deletions.
5 changes: 2 additions & 3 deletions nanostack/sw_mac.h
Original file line number Diff line number Diff line change
Expand Up @@ -84,10 +84,9 @@ extern int ns_sw_mac_statistics_start(struct mac_api_s *mac_api, struct mac_stat
/**
* @brief Read current timestamp for compared storaged data timestamp.
* @param mac_api MAC instance.
* @param time_stamp_buffer pointer for staorage time stamp
* @return 0 on succeess, < 0 on fail
* @return Current timestamp in us
*/
int ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api, uint32_t *time_stamp_buffer);
uint32_t ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api);

#ifdef __cplusplus
}
Expand Down
4 changes: 2 additions & 2 deletions source/6LoWPAN/ws/ws_bootstrap.c
Original file line number Diff line number Diff line change
Expand Up @@ -1304,6 +1304,7 @@ static void ws_bootstrap_asynch_confirm(struct protocol_interface_info_entry *in
uint32_t ws_time_from_last_unicast_traffic(uint32_t current_time_stamp, ws_neighbor_class_entry_t *ws_neighbor)
{
uint32_t time_from_last_unicast_shedule = current_time_stamp;

//Time from last RX unicast in us
time_from_last_unicast_shedule -= ws_neighbor->fhss_data.uc_timing_info.utt_rx_timestamp;
time_from_last_unicast_shedule /= 1000000; //Convert to seconds
Expand All @@ -1320,8 +1321,7 @@ static void ws_bootstrap_neighbor_table_clean(struct protocol_interface_info_ent
}
memcpy(ll_target, ADDR_LINK_LOCAL_PREFIX, 8);

uint32_t current_time_stamp = 0;
ns_sw_mac_read_current_timestamp(interface->mac_api, &current_time_stamp);
uint32_t current_time_stamp = ns_sw_mac_read_current_timestamp(interface->mac_api);

mac_neighbor_table_entry_t *neighbor_entry_ptr = NULL;
ns_list_foreach_safe(mac_neighbor_table_entry_t, cur, &mac_neighbor_info(interface)->neighbour_list) {
Expand Down
9 changes: 5 additions & 4 deletions source/MAC/IEEE802_15_4/sw_mac.c
Original file line number Diff line number Diff line change
Expand Up @@ -700,17 +700,18 @@ void sw_mac_stats_update(protocol_interface_rf_mac_setup_s *setup, mac_stats_typ
}
}

int ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api, uint32_t *time_stamp_buffer)
uint32_t ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api)
{
if (!mac_api) {
return -1;
return 0;
}

// Get a pointer to MAC setup structure
protocol_interface_rf_mac_setup_s *mac_setup = get_sw_mac_ptr_by_mac_api(mac_api);
if (!mac_setup) {
return -2;
return 0;
}
uint32_t time_stamp_buffer;
mac_setup->dev_driver->phy_driver->extension(PHY_EXTENSION_GET_TIMESTAMP, (uint8_t *)&time_stamp_buffer);
return 0;
return time_stamp_buffer;
}
4 changes: 2 additions & 2 deletions test/nanostack/unittest/stub/sw_mac_stub.c
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ void sw_mac_stats_update(protocol_interface_rf_mac_setup_s *setup, mac_stats_typ

}

int ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api, uint32_t *time_stamp_buffer)
uint32_t ns_sw_mac_read_current_timestamp(struct mac_api_s *mac_api)
{
return -1;
return 0;
}

0 comments on commit db81d02

Please sign in to comment.