.. | .. |
---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | # |
---|
2 | 3 | # Controller Area Network (CAN) network layer core configuration |
---|
3 | 4 | # |
---|
.. | .. |
---|
5 | 6 | menuconfig CAN |
---|
6 | 7 | depends on NET |
---|
7 | 8 | tristate "CAN bus subsystem support" |
---|
8 | | - ---help--- |
---|
| 9 | + help |
---|
9 | 10 | Controller Area Network (CAN) is a slow (up to 1Mbit/s) serial |
---|
10 | | - communications protocol which was developed by Bosch in |
---|
11 | | - 1991, mainly for automotive, but now widely used in marine |
---|
12 | | - (NMEA2000), industrial, and medical applications. |
---|
13 | | - More information on the CAN network protocol family PF_CAN |
---|
14 | | - is contained in <Documentation/networking/can.rst>. |
---|
| 11 | + communications protocol. Development of the CAN bus started in |
---|
| 12 | + 1983 at Robert Bosch GmbH, and the protocol was officially |
---|
| 13 | + released in 1986. The CAN bus was originally mainly for automotive, |
---|
| 14 | + but is now widely used in marine (NMEA2000), industrial, and medical |
---|
| 15 | + applications. More information on the CAN network protocol family |
---|
| 16 | + PF_CAN is contained in <Documentation/networking/can.rst>. |
---|
15 | 17 | |
---|
16 | 18 | If you want CAN support you should say Y here and also to the |
---|
17 | 19 | specific driver for your controller(s) below. |
---|
.. | .. |
---|
21 | 23 | config CAN_RAW |
---|
22 | 24 | tristate "Raw CAN Protocol (raw access with CAN-ID filtering)" |
---|
23 | 25 | default y |
---|
24 | | - ---help--- |
---|
| 26 | + help |
---|
25 | 27 | The raw CAN protocol option offers access to the CAN bus via |
---|
26 | 28 | the BSD socket API. You probably want to use the raw socket in |
---|
27 | 29 | most cases where no higher level protocol is being used. The raw |
---|
.. | .. |
---|
31 | 33 | config CAN_BCM |
---|
32 | 34 | tristate "Broadcast Manager CAN Protocol (with content filtering)" |
---|
33 | 35 | default y |
---|
34 | | - ---help--- |
---|
| 36 | + help |
---|
35 | 37 | The Broadcast Manager offers content filtering, timeout monitoring, |
---|
36 | 38 | sending of RTR frames, and cyclic CAN messages without permanent user |
---|
37 | 39 | interaction. The BCM can be 'programmed' via the BSD socket API and |
---|
.. | .. |
---|
43 | 45 | config CAN_GW |
---|
44 | 46 | tristate "CAN Gateway/Router (with netlink configuration)" |
---|
45 | 47 | default y |
---|
46 | | - ---help--- |
---|
| 48 | + help |
---|
47 | 49 | The CAN Gateway/Router is used to route (and modify) CAN frames. |
---|
48 | 50 | It is based on the PF_CAN core infrastructure for msg filtering and |
---|
49 | 51 | msg sending and can optionally modify routed CAN frames on the fly. |
---|
.. | .. |
---|
51 | 53 | They can be modified with AND/OR/XOR/SET operations as configured |
---|
52 | 54 | by the netlink configuration interface known e.g. from iptables. |
---|
53 | 55 | |
---|
| 56 | +source "net/can/j1939/Kconfig" |
---|
| 57 | + |
---|
| 58 | +config CAN_ISOTP |
---|
| 59 | + tristate "ISO 15765-2:2016 CAN transport protocol" |
---|
| 60 | + help |
---|
| 61 | + CAN Transport Protocols offer support for segmented Point-to-Point |
---|
| 62 | + communication between CAN nodes via two defined CAN Identifiers. |
---|
| 63 | + As CAN frames can only transport a small amount of data bytes |
---|
| 64 | + (max. 8 bytes for 'classic' CAN and max. 64 bytes for CAN FD) this |
---|
| 65 | + segmentation is needed to transport longer Protocol Data Units (PDU) |
---|
| 66 | + as needed e.g. for vehicle diagnosis (UDS, ISO 14229) or IP-over-CAN |
---|
| 67 | + traffic. |
---|
| 68 | + This protocol driver implements data transfers according to |
---|
| 69 | + ISO 15765-2:2016 for 'classic' CAN and CAN FD frame types. |
---|
| 70 | + If you want to perform automotive vehicle diagnostic services (UDS), |
---|
| 71 | + say 'y'. |
---|
| 72 | + |
---|
54 | 73 | source "drivers/net/can/Kconfig" |
---|
55 | 74 | |
---|
56 | 75 | endif |
---|