dll.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016 OTA keys S.A.
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser General
5  * Public License v2.1. See the file LICENSE in the top level directory for more
6  * details.
7  */
8 
9 #pragma once
10 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 #include "can/common.h"
27 #include "can/pkt.h"
28 #include "can/device.h"
29 #include "thread.h"
30 
36 int can_dll_init(void);
37 
49 
63 
76 
89 
101 
102 #ifdef __cplusplus
103 }
104 #endif
105 
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:138
Controller Area Network frame.
Definition: can.h:100
A CAN packet.
Definition: pkt.h:40
candev descriptor to pass to the device thread
Definition: device.h:71
Structure to hold driver state.
Definition: candev.h:76
Definitions of high-level CAN interface.
Definitions of CAN device interface.