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_NETLINK_H
8 #define _UAPI_CAN_NETLINK_H
9 #include <linux/types.h>
10 struct can_bittiming {
11   __u32 bitrate;
12   __u32 sample_point;
13   __u32 tq;
14   __u32 prop_seg;
15   __u32 phase_seg1;
16   __u32 phase_seg2;
17   __u32 sjw;
18   __u32 brp;
19 };
20 struct can_bittiming_const {
21   char name[16];
22   __u32 tseg1_min;
23   __u32 tseg1_max;
24   __u32 tseg2_min;
25   __u32 tseg2_max;
26   __u32 sjw_max;
27   __u32 brp_min;
28   __u32 brp_max;
29   __u32 brp_inc;
30 };
31 struct can_clock {
32   __u32 freq;
33 };
34 enum can_state {
35   CAN_STATE_ERROR_ACTIVE = 0,
36   CAN_STATE_ERROR_WARNING,
37   CAN_STATE_ERROR_PASSIVE,
38   CAN_STATE_BUS_OFF,
39   CAN_STATE_STOPPED,
40   CAN_STATE_SLEEPING,
41   CAN_STATE_MAX
42 };
43 struct can_berr_counter {
44   __u16 txerr;
45   __u16 rxerr;
46 };
47 struct can_ctrlmode {
48   __u32 mask;
49   __u32 flags;
50 };
51 #define CAN_CTRLMODE_LOOPBACK 0x01
52 #define CAN_CTRLMODE_LISTENONLY 0x02
53 #define CAN_CTRLMODE_3_SAMPLES 0x04
54 #define CAN_CTRLMODE_ONE_SHOT 0x08
55 #define CAN_CTRLMODE_BERR_REPORTING 0x10
56 #define CAN_CTRLMODE_FD 0x20
57 #define CAN_CTRLMODE_PRESUME_ACK 0x40
58 #define CAN_CTRLMODE_FD_NON_ISO 0x80
59 #define CAN_CTRLMODE_CC_LEN8_DLC 0x100
60 #define CAN_CTRLMODE_TDC_AUTO 0x200
61 #define CAN_CTRLMODE_TDC_MANUAL 0x400
62 struct can_device_stats {
63   __u32 bus_error;
64   __u32 error_warning;
65   __u32 error_passive;
66   __u32 bus_off;
67   __u32 arbitration_lost;
68   __u32 restarts;
69 };
70 enum {
71   IFLA_CAN_UNSPEC,
72   IFLA_CAN_BITTIMING,
73   IFLA_CAN_BITTIMING_CONST,
74   IFLA_CAN_CLOCK,
75   IFLA_CAN_STATE,
76   IFLA_CAN_CTRLMODE,
77   IFLA_CAN_RESTART_MS,
78   IFLA_CAN_RESTART,
79   IFLA_CAN_BERR_COUNTER,
80   IFLA_CAN_DATA_BITTIMING,
81   IFLA_CAN_DATA_BITTIMING_CONST,
82   IFLA_CAN_TERMINATION,
83   IFLA_CAN_TERMINATION_CONST,
84   IFLA_CAN_BITRATE_CONST,
85   IFLA_CAN_DATA_BITRATE_CONST,
86   IFLA_CAN_BITRATE_MAX,
87   IFLA_CAN_TDC,
88   IFLA_CAN_CTRLMODE_EXT,
89   __IFLA_CAN_MAX,
90   IFLA_CAN_MAX = __IFLA_CAN_MAX - 1
91 };
92 enum {
93   IFLA_CAN_TDC_UNSPEC,
94   IFLA_CAN_TDC_TDCV_MIN,
95   IFLA_CAN_TDC_TDCV_MAX,
96   IFLA_CAN_TDC_TDCO_MIN,
97   IFLA_CAN_TDC_TDCO_MAX,
98   IFLA_CAN_TDC_TDCF_MIN,
99   IFLA_CAN_TDC_TDCF_MAX,
100   IFLA_CAN_TDC_TDCV,
101   IFLA_CAN_TDC_TDCO,
102   IFLA_CAN_TDC_TDCF,
103   __IFLA_CAN_TDC,
104   IFLA_CAN_TDC_MAX = __IFLA_CAN_TDC - 1
105 };
106 enum {
107   IFLA_CAN_CTRLMODE_UNSPEC,
108   IFLA_CAN_CTRLMODE_SUPPORTED,
109   __IFLA_CAN_CTRLMODE,
110   IFLA_CAN_CTRLMODE_MAX = __IFLA_CAN_CTRLMODE - 1
111 };
112 #define CAN_TERMINATION_DISABLED 0
113 #endif
114