no-OS
Public Attributes | List of all members
no_os_i3c_bus_desc Struct Reference

Structure holding I3C bus descriptor. More...

#include <no_os_i3c.h>

Collaboration diagram for no_os_i3c_bus_desc:
Collaboration graph
[legend]

Public Attributes

void * mutex
 
uint8_t device_id
 
uint8_t num_devs_unknown
 
uint8_t num_devs
 
unsigned int addrslots [NO_OS_I3C_ADDRSLOTS_SIZE]
 
struct no_os_i3c_daa_lut daa_candidates [NO_OS_I3C_MAX_DEV_NUMBER]
 
struct no_os_i3c_daa_lut daa_unknown [NO_OS_I3C_MAX_DEV_NUMBER]
 
struct no_os_i3c_descdevs [NO_OS_I3C_MAX_DEV_NUMBER]
 
uint8_t irq_events
 
struct no_os_i3c_ccc_info ccc_info
 
bool async_irq
 
const struct no_os_i3c_platform_opsplatform_ops
 
void * extra
 

Detailed Description

Structure holding I3C bus descriptor.

Member Data Documentation

◆ addrslots

unsigned int no_os_i3c_bus_desc::addrslots[NO_OS_I3C_ADDRSLOTS_SIZE]

A bitmap with 2-bits per-slot to encode the address status and ease the DAA (Dynamic Address Assignment) procedure (see enum no_os_i3c_slot_status).

◆ async_irq

bool no_os_i3c_bus_desc::async_irq

Trigger IRQ callback asyncronous (non-blocking)

◆ ccc_info

struct no_os_i3c_ccc_info no_os_i3c_bus_desc::ccc_info

CCC info obtained after an IRQ

◆ daa_candidates

struct no_os_i3c_daa_lut no_os_i3c_bus_desc::daa_candidates[NO_OS_I3C_MAX_DEV_NUMBER]

PID + DA LUT for DAA procedure

◆ daa_unknown

struct no_os_i3c_daa_lut no_os_i3c_bus_desc::daa_unknown[NO_OS_I3C_MAX_DEV_NUMBER]

To store unknown devices assigned during DAA procedure

◆ device_id

uint8_t no_os_i3c_bus_desc::device_id

Device ID

◆ devs

struct no_os_i3c_desc* no_os_i3c_bus_desc::devs[NO_OS_I3C_MAX_DEV_NUMBER]

Devices descriptors

◆ extra

void* no_os_i3c_bus_desc::extra

I3C bus extra parameters

◆ irq_events

uint8_t no_os_i3c_bus_desc::irq_events

IRQ flags

◆ mutex

void* no_os_i3c_bus_desc::mutex

I3C bus mutex(lock)

◆ num_devs

uint8_t no_os_i3c_bus_desc::num_devs

Expected number of devices on bus

◆ num_devs_unknown

uint8_t no_os_i3c_bus_desc::num_devs_unknown

Non-Expected number of devices on bus

◆ platform_ops

const struct no_os_i3c_platform_ops* no_os_i3c_bus_desc::platform_ops

I3C platform specific functions


The documentation for this struct was generated from the following file: