Utils#

Functions#

void
rsi_uint16_to_2bytes(uint8_t *dBuf, uint16_t val)

Convert uint16 to two byte array.

void
rsi_uint32_to_4bytes(uint8_t *dBuf, uint32_t val)

Convert uint32 to four byte array.

uint16_t
rsi_bytes2R_to_uint16(uint8_t *dBuf)

Convert a 2 byte array to uint16, first byte in array is LSB.

uint32_t
rsi_bytes4R_to_uint32(uint8_t *dBuf)

Convert a 4 byte array to uint32, first byte in array is LSB.

int8_t
rsi_ascii_hex2num(int8_t ascii_hex_in)

ASCII to hex conversion.

int8_t
rsi_char_hex2dec(int8_t *cBuf)

Convert given ASCII hex notation to decimal notation (used for mac address).

uint8_t *
rsi_ascii_dev_address_to_6bytes_rev(uint8_t *hex_addr, int8_t *ascii_mac_address)

Convert notation MAC address to a 6-byte hex address.

int8_t
hex_to_ascii(uint8_t hex_num)

Hex to ascii conversion.

uint8_t *
rsi_6byte_dev_address_to_ascii(uint8_t *ascii_mac_address, uint8_t *hex_addr)

Convert given 6-byte hex address to ASCII Mac address.

uint8_t
lmac_crc8_c(uint8_t crc8_din, uint8_t crc8_state, uint8_t end)

Calculate crc for a given byte and accumulate crc.

uint8_t
multicast_mac_hash(uint8_t *mac)

Calculate 6-bit hash value for given mac address.

uint8_t

Convert the given lower-case character to upper case.

void
string2array(uint8_t *dst, uint8_t *src, uint32_t length)

Convert the given string to destination array.

uint8_t *
rsi_itoa(uint32_t val, uint8_t *str)

Convert integer value into null-terminated string and stores the result in the array given by str parameter.

int32_t
rsi_atoi(const int8_t *str)

Convert string to an integer.

int8_t
asciihex_2_num(int8_t ascii_hex_in)

ASCII to hex conversion.

int8_t
rsi_charhex_2_dec(int8_t *cBuf)

Convert given ASCII hex notation to decimal notation (used for mac address).

void
rsi_ascii_mac_address_to_6bytes(uint8_t *hexAddr, int8_t *asciiMacAddress)

Convert notation MAC address to a 6-byte hex address.

void
rsi_ascii_dot_address_to_4bytes(uint8_t *hexAddr, int8_t *asciiDotAddress)

Convert notation network address to 4-byte hex address.

uint64_t

Convert IP address to reverse Hex format.

uint32_t
rsi_ntohl(uint32_t a)

Converts the unsigned integer from network byte order to host byte order.

void
ROM_WL_rsi_uint16_to_2bytes(global_cb_t *global_cb_p, uint8_t *dBuf, uint16_t val)

Convert uint16 to two byte array.

void
ROM_WL_rsi_uint32_to_4bytes(global_cb_t *global_cb_p, uint8_t *dBuf, uint32_t val)

Convert uint32 to four byte array.

uint16_t
ROM_WL_rsi_bytes2R_to_uint16(global_cb_t *global_cb_p, uint8_t *dBuf)

Convert a 2 byte array to uint16, first byte in array is LSB.

uint32_t
ROM_WL_rsi_bytes4R_to_uint32(global_cb_t *global_cb_p, uint8_t *dBuf)

Convert a 4 byte array to uint32, first byte in array is LSB.

Function Documentation#

rsi_uint16_to_2bytes#

void rsi_uint16_to_2bytes (uint8_t * dBuf, uint16_t val)

Convert uint16 to two byte array.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]dBuf

- Pointer to buffer to put the data in

uint16_t[in]val

- Data to convert

Returns

  • void


rsi_uint32_to_4bytes#

void rsi_uint32_to_4bytes (uint8_t * dBuf, uint32_t val)

Convert uint32 to four byte array.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]dBuf

- Pointer to buffer to put the data in

uint32_t[in]val

- Data to convert

Returns

  • void


rsi_bytes2R_to_uint16#

uint16_t rsi_bytes2R_to_uint16 (uint8_t * dBuf)

Convert a 2 byte array to uint16, first byte in array is LSB.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]dBuf

- Pointer to a buffer to get the data from

Returns

  • Converted 16 bit data


rsi_bytes4R_to_uint32#

uint32_t rsi_bytes4R_to_uint32 (uint8_t * dBuf)

Convert a 4 byte array to uint32, first byte in array is LSB.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]dBuf

- Pointer to a buffer to get the data from

Returns

  • Converted 32 bit data


rsi_ascii_hex2num#

int8_t rsi_ascii_hex2num (int8_t ascii_hex_in)

ASCII to hex conversion.

Parameters
TypeDirectionArgument NameDescription
int8_t[in]ascii_hex_in

- ASCII hex input

Returns

  • hex number


rsi_char_hex2dec#

int8 rsi_char_hex2dec (int8_t * cBuf)

Convert given ASCII hex notation to decimal notation (used for mac address).

Parameters
TypeDirectionArgument NameDescription
int8_t *[in]cBuf

- ASCII hex notation string

Returns

  • Integer Value


rsi_ascii_dev_address_to_6bytes_rev#

uint8_t * rsi_ascii_dev_address_to_6bytes_rev (uint8_t * hex_addr, int8_t * ascii_mac_address)

Convert notation MAC address to a 6-byte hex address.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]hex_addr

- Source address to convert, must be a null terminated string.

int8_t *[out]ascii_mac_address

- Converted hex address is returned here.

Returns

  • Hex address


hex_to_ascii#

int8_t hex_to_ascii (uint8_t hex_num)

Hex to ascii conversion.

Parameters
TypeDirectionArgument NameDescription
uint8_t[in]hex_num

- hex number

Returns

  • Ascii value for given hex value


rsi_6byte_dev_address_to_ascii#

int8_t * rsi_6byte_dev_address_to_ascii (uint8_t * ascii_mac_address, uint8_t * hex_addr)

Convert given 6-byte hex address to ASCII Mac address.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]ascii_mac_address

- Hex address input.

uint8_t *[out]hex_addr

- Converted ASCII mac address is returned here.

Returns

  • Converted ASCII mac address


lmac_crc8_c#

uint8_t lmac_crc8_c (uint8_t crc8_din, uint8_t crc8_state, uint8_t end)

Calculate crc for a given byte and accumulate crc.

Parameters
TypeDirectionArgument NameDescription
uint8_t[in]crc8_din

- crc byte input

uint8_t[in]crc8_state

- accumulated crc

uint8_t[in]end

- last byte crc

Returns

  • crc value


multicast_mac_hash#

uint8_t multicast_mac_hash (uint8_t * mac)

Calculate 6-bit hash value for given mac address.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]mac

- pointer to mac address

Returns

  • 6-bit Hash value


convert_lower_case_to_upper_case#

uint8_t convert_lower_case_to_upper_case (uint8_t lwrcase)

Convert the given lower-case character to upper case.

Parameters
TypeDirectionArgument NameDescription
uint8_t[in]lwrcase

- Lower case character to convert

Returns

  • Converted Upper case character


string2array#

void string2array (uint8_t * dst, uint8_t * src, uint32_t length)

Convert the given string to destination array.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]dst

- Pointer to destination array

uint8_t *[in]src

- Pointer to source string

uint32_t[in]length

- Length of the string

Returns

  • void


rsi_itoa#

uint8_t * rsi_itoa (uint32_t val, uint8_t * str)

Convert integer value into null-terminated string and stores the result in the array given by str parameter.

Parameters
TypeDirectionArgument NameDescription
uint32_t[in]val

- Value to be converted to a string

uint8_t *[in]str

- Array in memory where to store the resulting null-terminated string

Returns

  • String


rsi_atoi#

int32_t rsi_atoi (const int8_t * str)

Convert string to an integer.

Parameters
TypeDirectionArgument NameDescription
const int8_t *[in]str

- This is the string representation of an integral number

Returns

  • Converted Integer


asciihex_2_num#

int8_t asciihex_2_num (int8_t ascii_hex_in)

ASCII to hex conversion.

Parameters
TypeDirectionArgument NameDescription
int8_t[in]ascii_hex_in

- ASCII hex input

Returns

  • hex num


rsi_charhex_2_dec#

int8_t rsi_charhex_2_dec (int8_t * cBuf)

Convert given ASCII hex notation to decimal notation (used for mac address).

Parameters
TypeDirectionArgument NameDescription
int8_t *[in]cBuf

- ASCII hex notation string.

Returns

  • value in integer


rsi_ascii_mac_address_to_6bytes#

void rsi_ascii_mac_address_to_6bytes (uint8_t * hexAddr, int8_t * asciiMacAddress)

Convert notation MAC address to a 6-byte hex address.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]hexAddr

- source address to convert, must be a null terminated string.

int8_t *[out]asciiMacAddress

- Converted hex address is returned here.

Returns

  • void


rsi_ascii_dot_address_to_4bytes#

void rsi_ascii_dot_address_to_4bytes (uint8_t * hexAddr, int8_t * asciiDotAddress)

Convert notation network address to 4-byte hex address.

Parameters
TypeDirectionArgument NameDescription
uint8_t *[in]hexAddr

- source address to convert, must be a null terminated string.

int8_t *[out]asciiDotAddress

- Output value is passed back in the 4-byte Hex Address.

Returns

  • void


ip_to_reverse_hex#

uint64_t ip_to_reverse_hex (char * ip)

Convert IP address to reverse Hex format.

Parameters
TypeDirectionArgument NameDescription
char *[in]ip

- IP address to convert.

Returns

  • IP address in reverse Hex format


rsi_ntohl#

uint32_t rsi_ntohl (uint32_t a)

Converts the unsigned integer from network byte order to host byte order.

Parameters
TypeDirectionArgument NameDescription
uint32_t[in]a

- Unsigned integer to convert.

Returns

  • Unsigned integer in host byte order


ROM_WL_rsi_uint16_to_2bytes#

void ROM_WL_rsi_uint16_to_2bytes (global_cb_t * global_cb_p, uint8_t * dBuf, uint16_t val)

Convert uint16 to two byte array.

Parameters
TypeDirectionArgument NameDescription
global_cb_t *[in]global_cb_p

- pointer to the common buffer

uint8_t *[in]dBuf

- pointer to buffer to put the data in

uint16_t[in]val

- data to convert

Returns

  • void


ROM_WL_rsi_uint32_to_4bytes#

void ROM_WL_rsi_uint32_to_4bytes (global_cb_t * global_cb_p, uint8_t * dBuf, uint32_t val)

Convert uint32 to four byte array.

Parameters
TypeDirectionArgument NameDescription
global_cb_t *[in]global_cb_p

- pointer to the common buffer

uint8_t *[in]dBuf

- pointer to the buffer to put the data in

uint32_t[in]val

- data to convert

Returns

  • void


ROM_WL_rsi_bytes2R_to_uint16#

uint16_t ROM_WL_rsi_bytes2R_to_uint16 (global_cb_t * global_cb_p, uint8_t * dBuf)

Convert a 2 byte array to uint16, first byte in array is LSB.

Parameters
TypeDirectionArgument NameDescription
global_cb_t *[in]global_cb_p

- pointer to the common buffer

uint8_t *[in]dBuf

- pointer to a buffer to get the data from

Returns

  • converted data


ROM_WL_rsi_bytes4R_to_uint32#

uint32_t ROM_WL_rsi_bytes4R_to_uint32 (global_cb_t * global_cb_p, uint8_t * dBuf)

Convert a 4 byte array to uint32, first byte in array is LSB.

Parameters
TypeDirectionArgument NameDescription
global_cb_t *[in]global_cb_p

- pointer to the common buffer

uint8_t *[in]dBuf

- pointer to buffer to get the data from

Returns

  • converted data