7#ifndef ZEPHYR_INCLUDE_DRIVERS_CAN_TRANSCEIVER_H_
8#define ZEPHYR_INCLUDE_DRIVERS_CAN_TRANSCEIVER_H_
36typedef int (*can_transceiver_enable_t)(
const struct device *dev,
can_mode_t mode);
42typedef int (*can_transceiver_disable_t)(
const struct device *dev);
44__subsystem
struct can_transceiver_driver_api {
45 can_transceiver_enable_t enable;
46 can_transceiver_disable_t disable;
68 const struct can_transceiver_driver_api *api =
69 (
const struct can_transceiver_driver_api *)dev->
api;
71 return api->enable(dev, mode);
90 const struct can_transceiver_driver_api *api =
91 (
const struct can_transceiver_driver_api *)dev->
api;
93 return api->disable(dev);
Controller Area Network (CAN) driver API.
uint32_t can_mode_t
Provides a type to hold CAN controller configuration flags.
Definition: can.h:125
static int can_transceiver_enable(const struct device *dev, can_mode_t mode)
Enable CAN transceiver.
Definition: transceiver.h:66
static int can_transceiver_disable(const struct device *dev)
Disable CAN transceiver.
Definition: transceiver.h:88
Runtime device structure (in ROM) per driver instance.
Definition: device.h:399
const void * api
Address of the API structure exposed by the device instance.
Definition: device.h:405