Zpal-misc#

Defines a platform abstraction layer for the Z-Wave miscellaneous functions, not covered by other modules.

Modules#

zpal_product_id_t

Enumerations#

enum
ZPAL_CHIP_SE_UNKNOWN
ZPAL_CHIP_SE_MID
ZPAL_CHIP_SE_HIGH
}

Defines for identifying the secure element type supported by the chip.

Typedefs#

typedef uint16_t

Manufacturer's reset information.

typedef uint16_t

Manufacturer ID used by zpal_reboot_with_info.

Functions#

void
zpal_reboot_with_info(const zpal_soft_reset_mfid_t manufacturer_id, const zpal_soft_reset_info_t reset_info)

Perform a system reboot and provide information about the context.

void

Prepare for shutdown handler.

void

Shutdown handler.

size_t

Get serial number length.

void
zpal_get_serial_number(uint8_t *serial_number)

Get serial number.

bool

Check if in ISR context.

uint8_t

Get chip type.

uint8_t

Get chip revision.

uint32_t

Get application version.

uint8_t

Get major part of application version.

uint8_t

Get minor part of application version.

uint8_t

Get patch part of application version.

void
zpal_get_product_id(zpal_product_id_t *product_id)

Get product id.

void

Initialize debug output.

void
zpal_debug_output(const uint8_t *data, uint32_t length)

Output debug logs.

void

Disable interrupts.

Get secure element type supported in the chip.

void
zpal_psa_set_location_persistent_key(const void *attributes)

Set vendor specific location for storing keys persistently in wrapped or plain form based on the secure element type supported by the chip.

void
zpal_psa_set_location_volatile_key(const void *attributes)

Set vendor specific location for storing keys in volatile memory, in wrapped or plain form based on the secure element type supported by the chip.

void
zpal_printf(char *format,...)

Follows the same behavior as printf, allows vendors to use different backends for printing (UART, SWO, RTT, etc.)

Enumeration Documentation#

zpal_chip_se_type_t#

zpal_chip_se_type_t

Defines for identifying the secure element type supported by the chip.

Enumerator
ZPAL_CHIP_SE_UNKNOWN
ZPAL_CHIP_SE_MID
ZPAL_CHIP_SE_HIGH

Definition at line 49 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

Typedef Documentation#

zpal_soft_reset_info_t#

typedef uint16_t zpal_soft_reset_info_t

Manufacturer's reset information.


Definition at line 58 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_soft_reset_mfid_t#

typedef uint16_t zpal_soft_reset_mfid_t

Manufacturer ID used by zpal_reboot_with_info.


Definition at line 64 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

Variable Documentation#

ZPAL_RESET_REQUESTED_BY_SAPI#

const zpal_soft_reset_info_t ZPAL_RESET_REQUESTED_BY_SAPI

Definition at line 66 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

ZPAL_RESET_UNHANDLED_RADIO_EVENT#

const zpal_soft_reset_info_t ZPAL_RESET_UNHANDLED_RADIO_EVENT

Definition at line 67 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

ZPAL_RESET_RADIO_ASSERT#

const zpal_soft_reset_info_t ZPAL_RESET_RADIO_ASSERT

Definition at line 68 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

ZPAL_RESET_ASSERT_PTR#

const zpal_soft_reset_info_t ZPAL_RESET_ASSERT_PTR

Definition at line 69 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

ZPAL_RESET_EVENT_FLUSH_MEMORY#

const zpal_soft_reset_info_t ZPAL_RESET_EVENT_FLUSH_MEMORY

Definition at line 70 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

ZPAL_RESET_INFO_DEFAULT#

const zpal_soft_reset_info_t ZPAL_RESET_INFO_DEFAULT

Definition at line 71 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

Function Documentation#

zpal_reboot_with_info#

void zpal_reboot_with_info (const zpal_soft_reset_mfid_t manufacturer_id, const zpal_soft_reset_info_t reset_info)

Perform a system reboot and provide information about the context.

Parameters
[in]manufacturer_id

manufacturer ID identifier.

[in]reset_info

the information to pass to boot.


Definition at line 79 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_initiate_shutdown_handler#

void zpal_initiate_shutdown_handler (void )

Prepare for shutdown handler.

Parameters
N/A

Definition at line 85 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_shutdown_handler#

void zpal_shutdown_handler (void )

Shutdown handler.

Parameters
N/A

Definition at line 90 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_serial_number_length#

size_t zpal_get_serial_number_length (void )

Get serial number length.

Parameters
N/A

Returns

  • Serial number length.


Definition at line 97 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_serial_number#

void zpal_get_serial_number (uint8_t * serial_number)

Get serial number.

Parameters
[out]serial_number

Serial number.


Definition at line 104 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_in_isr#

bool zpal_in_isr (void )

Check if in ISR context.

Parameters
N/A

Returns

  • True if the CPU is in handler mode (currently executing an interrupt handler). False if the CPU is in thread mode.


Definition at line 112 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_chip_type#

uint8_t zpal_get_chip_type (void )

Get chip type.

Parameters
N/A

Returns

  • Chip type.


Definition at line 119 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_chip_revision#

uint8_t zpal_get_chip_revision (void )

Get chip revision.

Parameters
N/A

Returns

  • Chip revision.


Definition at line 126 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_app_version#

uint32_t zpal_get_app_version (void )

Get application version.

Parameters
N/A

Returns

  • Application version.

Note

  • This function exists in PAL to allow use app version by external module (e.g. bootloader).


Definition at line 135 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_app_version_major#

uint8_t zpal_get_app_version_major (void )

Get major part of application version.

Parameters
N/A

Returns

  • Major part of application version.

Note

  • This function exists in PAL to allow use app version by external module (e.g. bootloader).


Definition at line 144 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_app_version_minor#

uint8_t zpal_get_app_version_minor (void )

Get minor part of application version.

Parameters
N/A

Returns

  • Minor part of application version.

Note

  • This function exists in PAL to allow use app version by external module (e.g. bootloader).


Definition at line 153 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_app_version_patch#

uint8_t zpal_get_app_version_patch (void )

Get patch part of application version.

Parameters
N/A

Returns

  • Patch part of application version.

Note

  • This function exists in PAL to allow use app version by external module (e.g. bootloader).


Definition at line 162 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_product_id#

void zpal_get_product_id (zpal_product_id_t * product_id)

Get product id.

Parameters
[out]product_id

Product id.

Note

  • This function exists in PAL to allow use product id by external module (e.g. bootloader).


Definition at line 171 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_debug_init#

void zpal_debug_init (void )

Initialize debug output.

Parameters
N/A

Definition at line 176 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_debug_output#

void zpal_debug_output (const uint8_t * data, uint32_t length)

Output debug logs.

Parameters
[out]data

Pointer to debug data.

[in]length

Length of debug data.


Definition at line 184 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_disable_interrupts#

void zpal_disable_interrupts (void )

Disable interrupts.

Parameters
N/A

Definition at line 189 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_get_secure_element_type#

zpal_chip_se_type_t zpal_get_secure_element_type (void )

Get secure element type supported in the chip.

Parameters
N/A

Returns

  • Secure element type supported.


Definition at line 197 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_psa_set_location_persistent_key#

void zpal_psa_set_location_persistent_key (const void * attributes)

Set vendor specific location for storing keys persistently in wrapped or plain form based on the secure element type supported by the chip.

Parameters
[in]attributes

of the key


Definition at line 206 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_psa_set_location_volatile_key#

void zpal_psa_set_location_volatile_key (const void * attributes)

Set vendor specific location for storing keys in volatile memory, in wrapped or plain form based on the secure element type supported by the chip.

Parameters
[in]attributes

of the key


Definition at line 215 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h

zpal_printf#

void zpal_printf (char * format, ... )

Follows the same behavior as printf, allows vendors to use different backends for printing (UART, SWO, RTT, etc.)

Parameters
[in]format

of the string to print, follows the same format as the standard printf

N/A

Definition at line 224 of file /mnt/raid/workspaces/ws.6QOxxjIBR/overlay/gsdk/protocol/z-wave/PAL/inc/zpal_misc.h