modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h
asxeem/openaliro
Module

cherry_ccc.h

CCC/Aliro-session interface (seam the adapter drives).

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h11 documented symbols

Overview

CCC/Aliro-session interface (seam the adapter drives).

depends on cherry.h cherry_common.h cherry_session.h  ·  used by aliro_ranging.c aliro_uwb_adapter.c aliro_uwb_internal.h aliro_uwb_session.c aliro_uwb_adapter.h aliro_uwb_session.h cherry_ccc_shim.c

API

Cstruct cherry_ccc_capabilities

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:26

Device CCC/Aliro capability set advertised to the peer.

Cstruct cherry_ccc_session_event_session_status

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:84

Payload of a SESSION_STATUS event, giving the new session state and the reason for the change.

Cstruct cherry_ccc_session_event_error

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:92

Payload of a SESSION_ERROR event, giving the error status that triggered it.

Cstruct cherry_ccc_event

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:110

CCC notification delivered to the adapter.

Cstruct cherry_ccc_aliro_session_config

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:159

Negotiated Aliro ranging params (filled in-place across M1-M4).

Fstatic inline void *cherry_ccc_session_get_user_data(struct cherry_ccc_session *session)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:192

Fetch the CCC session's user_data via its base session.

session
CCC session to query.
returns
The user_data pointer associated with the session's base.

Fstatic inline void cherry_ccc_session_destroy(struct cherry_ccc_session *session)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:208

Destroy a CCC session, delegating to the base session.

session
CCC session to destroy.

Fstatic inline enum cherry_err cherry_ccc_session_start(struct cherry_ccc_session *session)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:219

Start a CCC session, delegating to the base session.

session
CCC session to start.
returns
Error code from cherry_session_start.

Fstatic inline enum cherry_err cherry_ccc_session_stop(struct cherry_ccc_session *session)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:230

Stop a CCC session, delegating to the base session.

session
CCC session to stop.
returns
Error code from cherry_session_stop.

Fstatic inline enum cherry_err cherry_ccc_session_set_antennas(struct cherry_ccc_session *session, uint8_t tx_antenna_set, uint8_t rx_antenna_set)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:243

Select round-1 antennas for a CCC session, delegating to the base session.

session
CCC session to configure.
tx_antenna_set
Antenna set to use for transmission.
rx_antenna_set
Antenna set to use for reception.
returns
Error code from cherry_session_set_antennas.

Fcherry_ccc_session_set_diagnostics

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:276

Opaque CCC session being configured, defined by the shim.

##define CHERRY_CCC_HOP_MODE_KEY_SIZE 4

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:18

Length in bytes of the hopping-sequence key carried in M4.

Cenum cherry_ccc_event_type

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:57

CCC session event kinds.

Cenum cherry_ccc_session_state

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:66

Lifecycle state of a CCC session.

Cenum cherry_ccc_state_change_reason

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:74

Why a session changed state.

Ctypedef void (*cherry_ccc_cb_t)(struct cherry_ccc_event *event, void *user_data)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:144

CCC notification callback type.

Cenum cherry_ccc_hopping_mode

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:147

Selected hopping mode.

Fstruct cherry_ccc_session * cherry_ccc_session_create_aliro_responder(struct cherry *ctx, cherry_ccc_cb_t callback, void *user_data, struct cherry_ccc_aliro_session_config *config)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:177

Create an Aliro responder session bound to config (NULL on error).

Fstruct cherry_session * cherry_ccc_session_to_base(struct cherry_ccc_session *session)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:185

Return the base session for a CCC session (the base is the first member).

Fvoid cherry_ccc_event_free(struct cherry_ccc_event *event)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:201

Release a CCC event and any heap payload it owns. @param event Event to free.

Fenum cherry_err cherry_ccc_session_set_ursk(struct cherry_ccc_session *session, const uint8_t *ursk)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:252

Provide the 32-byte URSK (host-provided STS root key).

Fenum cherry_err cherry_ccc_session_set_protocol_version(struct cherry_ccc_session *session, uint16_t selected_protocol_version)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:256

Record the selected BLE/UWB protocol version.

Fenum cherry_err cherry_ccc_session_set_round2_antennas(struct cherry_ccc_session *session, uint8_t tx_antenna_set, uint8_t rx_antenna_set)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:260

Select antennas for the Aliro second ranging round.

Fenum cherry_err cherry_ccc_session_set_sts_index(struct cherry_ccc_session *session, uint32_t sts_index)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:265

Set the starting STS index (resume path).

Fenum cherry_err cherry_ccc_session_set_initiation_time(struct cherry_ccc_session *session, uint64_t initiation_time_us)

modules/woz_uwb/src/aliro/include/cherry/cherry_ccc.h:269

Set the ranging initiation time on the UWBS time base (resume path).