1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _UAPI_CAN_ISOTP_H
20 #define _UAPI_CAN_ISOTP_H
21 #include <linux/types.h>
22 #include <linux/can.h>
23 #define SOL_CAN_ISOTP (SOL_CAN_BASE + CAN_ISOTP)
24 #define CAN_ISOTP_OPTS 1
25 #define CAN_ISOTP_RECV_FC 2
26 #define CAN_ISOTP_TX_STMIN 3
27 #define CAN_ISOTP_RX_STMIN 4
28 #define CAN_ISOTP_LL_OPTS 5
29 struct can_isotp_options {
30   __u32 flags;
31   __u32 frame_txtime;
32   __u8 ext_address;
33   __u8 txpad_content;
34   __u8 rxpad_content;
35   __u8 rx_ext_address;
36 };
37 struct can_isotp_fc_options {
38   __u8 bs;
39   __u8 stmin;
40   __u8 wftmax;
41 };
42 struct can_isotp_ll_options {
43   __u8 mtu;
44   __u8 tx_dl;
45   __u8 tx_flags;
46 };
47 #define CAN_ISOTP_LISTEN_MODE 0x001
48 #define CAN_ISOTP_EXTEND_ADDR 0x002
49 #define CAN_ISOTP_TX_PADDING 0x004
50 #define CAN_ISOTP_RX_PADDING 0x008
51 #define CAN_ISOTP_CHK_PAD_LEN 0x010
52 #define CAN_ISOTP_CHK_PAD_DATA 0x020
53 #define CAN_ISOTP_HALF_DUPLEX 0x040
54 #define CAN_ISOTP_FORCE_TXSTMIN 0x080
55 #define CAN_ISOTP_FORCE_RXSTMIN 0x100
56 #define CAN_ISOTP_RX_EXT_ADDR 0x200
57 #define CAN_ISOTP_WAIT_TX_DONE 0x400
58 #define CAN_ISOTP_SF_BROADCAST 0x800
59 #define CAN_ISOTP_DEFAULT_FLAGS 0
60 #define CAN_ISOTP_DEFAULT_EXT_ADDRESS 0x00
61 #define CAN_ISOTP_DEFAULT_PAD_CONTENT 0xCC
62 #define CAN_ISOTP_DEFAULT_FRAME_TXTIME 0
63 #define CAN_ISOTP_DEFAULT_RECV_BS 0
64 #define CAN_ISOTP_DEFAULT_RECV_STMIN 0x00
65 #define CAN_ISOTP_DEFAULT_RECV_WFTMAX 0
66 #define CAN_ISOTP_DEFAULT_LL_MTU CAN_MTU
67 #define CAN_ISOTP_DEFAULT_LL_TX_DL CAN_MAX_DLEN
68 #define CAN_ISOTP_DEFAULT_LL_TX_FLAGS 0
69 #endif
70