Loading...
Searching...
No Matches
dll.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 OTA keys S.A.
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include "can/common.h"
24#include "can/pkt.h"
25#include "can/device.h"
26#include "thread.h"
27
33int can_dll_init(void);
34
46
60
73
86
98
99#ifdef __cplusplus
100}
101#endif
102
CAN memory allocation module.
int can_dll_dispatch_tx_conf(can_pkt_t *pkt)
Dispatch a tx confirmation.
int can_dll_dispatch_bus_off(kernel_pid_t pid)
Dispatch RX error from a device.
int can_dll_dispatch_tx_error(can_pkt_t *pkt)
Dispatch a tx error.
int can_dll_dispatch_rx_frame(can_frame_t *frame, kernel_pid_t pid)
Dispatch a received frame.
int can_dll_register_candev(candev_dev_t *candev)
Register a CAN device into the DLL.
int can_dll_init(void)
Initialize the CAN DLL.
int16_t kernel_pid_t
Unique process identifier.
Definition sched.h:134
struct can_frame can_frame_t
CAN frame.
Definition can.h:175
A CAN packet.
Definition pkt.h:37
Structure to hold driver state.
Definition candev.h:73
Definitions of high-level CAN interface.
Definitions of CAN device interface.
struct candev_dev candev_dev_t
candev descriptor to pass to the device thread