1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef _UAPI_CAN_ISOTP_H
8 #define _UAPI_CAN_ISOTP_H
9 #include <linux/types.h>
10 #include <linux/can.h>
11 #define SOL_CAN_ISOTP (SOL_CAN_BASE + CAN_ISOTP)
12 #define CAN_ISOTP_OPTS 1
13 #define CAN_ISOTP_RECV_FC 2
14 #define CAN_ISOTP_TX_STMIN 3
15 #define CAN_ISOTP_RX_STMIN 4
16 #define CAN_ISOTP_LL_OPTS 5
17 struct can_isotp_options {
18   __u32 flags;
19   __u32 frame_txtime;
20   __u8 ext_address;
21   __u8 txpad_content;
22   __u8 rxpad_content;
23   __u8 rx_ext_address;
24 };
25 struct can_isotp_fc_options {
26   __u8 bs;
27   __u8 stmin;
28   __u8 wftmax;
29 };
30 struct can_isotp_ll_options {
31   __u8 mtu;
32   __u8 tx_dl;
33   __u8 tx_flags;
34 };
35 #define CAN_ISOTP_LISTEN_MODE 0x0001
36 #define CAN_ISOTP_EXTEND_ADDR 0x0002
37 #define CAN_ISOTP_TX_PADDING 0x0004
38 #define CAN_ISOTP_RX_PADDING 0x0008
39 #define CAN_ISOTP_CHK_PAD_LEN 0x0010
40 #define CAN_ISOTP_CHK_PAD_DATA 0x0020
41 #define CAN_ISOTP_HALF_DUPLEX 0x0040
42 #define CAN_ISOTP_FORCE_TXSTMIN 0x0080
43 #define CAN_ISOTP_FORCE_RXSTMIN 0x0100
44 #define CAN_ISOTP_RX_EXT_ADDR 0x0200
45 #define CAN_ISOTP_WAIT_TX_DONE 0x0400
46 #define CAN_ISOTP_SF_BROADCAST 0x0800
47 #define CAN_ISOTP_CF_BROADCAST 0x1000
48 #define CAN_ISOTP_DYN_FC_PARMS 0x2000
49 #define CAN_ISOTP_DEFAULT_FLAGS 0
50 #define CAN_ISOTP_DEFAULT_EXT_ADDRESS 0x00
51 #define CAN_ISOTP_DEFAULT_PAD_CONTENT 0xCC
52 #define CAN_ISOTP_DEFAULT_FRAME_TXTIME 50000
53 #define CAN_ISOTP_DEFAULT_RECV_BS 0
54 #define CAN_ISOTP_DEFAULT_RECV_STMIN 0x00
55 #define CAN_ISOTP_DEFAULT_RECV_WFTMAX 0
56 #define CAN_ISOTP_DEFAULT_LL_MTU CAN_MTU
57 #define CAN_ISOTP_DEFAULT_LL_TX_DL CAN_MAX_DLEN
58 #define CAN_ISOTP_DEFAULT_LL_TX_FLAGS 0
59 #define CAN_ISOTP_FRAME_TXTIME_ZERO 0xFFFFFFFF
60 #endif
61