12#ifndef ZEPHYR_INCLUDE_DRIVERS_DALI_H_
13#define ZEPHYR_INCLUDE_DRIVERS_DALI_H_
137static inline int z_impl_dali_set_receive_callback(
const struct device *dev,
141 return DEVICE_API_GET(dali, dev)->set_receive_callback(dev, callback, user_data);
170static inline int z_impl_dali_transmit(
const struct device *dev,
const struct dali_frame *frame,
173 return DEVICE_API_GET(dali, dev)->transmit(dev, frame, callback, user_data);
183#include <zephyr/syscalls/dali.h>
#define DEVICE_API_GET(_class, _dev)
Expands to the pointer of a device's API for a given class.
Definition device.h:1425
int(* dali_api_set_receive_callback_t)(const struct device *dev, dali_receive_callback_t callback, void *user_data)
@def_driverbackendgroup{DALI,dali_interface}
Definition dali.h:87
dali_event_type
DALI frame types.
Definition dali.h:40
int dali_set_receive_callback(const struct device *dev, dali_receive_callback_t callback, void *user_data)
Set a callback function that receives frames from the DALI bus.
void(* dali_transmit_callback_t)(const struct device *dev, int error, void *user_data)
Defines the application callback handler function signature for transmitting a DALI frame.
Definition dali.h:75
void(* dali_receive_callback_t)(const struct device *dev, struct dali_frame frame, void *user_data)
Defines the application callback handler function signature for receiving a DALI frame.
Definition dali.h:65
int dali_transmit(const struct device *dev, const struct dali_frame *frame, dali_transmit_callback_t callback, void *user_data)
Transmit a frame on the DALI bus.
int(* dali_api_transmit_t)(const struct device *dev, const struct dali_frame *frame, dali_transmit_callback_t callback, void *user_data)
API for transmitting DALI frames.
Definition dali.h:95
@ DALI_EVENT_BUS_FAILURE
detected a bus failure (receive only)
Definition dali.h:46
@ DALI_FRAME_DEVICE
forward 24bit device frame (transmit/receive)
Definition dali.h:44
@ DALI_FRAME_BACKWARD
backward 8bit frame (transmit/receive)
Definition dali.h:42
@ DALI_FRAME_CORRUPT
corrupt frame (transmit/receive)
Definition dali.h:41
@ DALI_FRAME_FIRMWARE
forward 32bit firmware frame (transmit/receive)
Definition dali.h:45
@ DALI_EVENT_BUS_IDLE
detected that bus is idle again after failure (receive only)
Definition dali.h:47
@ DALI_FRAME_GEAR
forward 16bit gear frame (transmit/receive)
Definition dali.h:43
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
@driver_ops{DALI}
Definition dali.h:101
dali_api_set_receive_callback_t set_receive_callback
@driver_ops_mandatory Set a callback function that receives frames from the DALI bus.
Definition dali.h:105
dali_api_transmit_t transmit
@driver_ops_mandatory Transmit a frame on the DALI bus.
Definition dali.h:109
DALI frame structure.
Definition dali.h:53
uint32_t data
LSB aligned payload.
Definition dali.h:54
enum dali_event_type event_type
event type of frame
Definition dali.h:55
Runtime device structure (in ROM) per driver instance.
Definition device.h:513