blob: aa20b69d2a1ad319b0ccafb2fc4d18289ec014f7 [file] [log] [blame]
Oliver Hartkoppccb29632007-11-16 15:56:08 -08001menu "CAN Device Drivers"
Oliver Hartkoppccb29632007-11-16 15:56:08 -08002
3config CAN_VCAN
4 tristate "Virtual Local CAN Interface (vcan)"
Oliver Hartkoppccb29632007-11-16 15:56:08 -08005 ---help---
6 Similar to the network loopback devices, vcan offers a
7 virtual local CAN interface.
8
9 This driver can also be built as a module. If so, the module
10 will be called vcan.
11
Oliver Hartkoppa1044e32010-12-02 10:57:59 +000012config CAN_SLCAN
13 tristate "Serial / USB serial CAN Adaptors (slcan)"
Linus Torvalds21eaab62013-02-21 13:41:04 -080014 depends on TTY
Oliver Hartkoppa1044e32010-12-02 10:57:59 +000015 ---help---
16 CAN driver for several 'low cost' CAN interfaces that are attached
17 via serial lines or via USB-to-serial adapters using the LAWICEL
18 ASCII protocol. The driver implements the tty linediscipline N_SLCAN.
19
20 As only the sending and receiving of CAN frames is implemented, this
21 driver should work with the (serial/USB) CAN hardware from:
Oliver Hartkoppc128df72011-01-30 01:09:37 -080022 www.canusb.com / www.can232.com / www.mictronics.de / www.canhack.de
Oliver Hartkoppa1044e32010-12-02 10:57:59 +000023
24 Userspace tools to attach the SLCAN line discipline (slcan_attach,
25 slcand) can be found in the can-utils at the SocketCAN SVN, see
26 http://developer.berlios.de/projects/socketcan for details.
27
28 The slcan driver supports up to 10 CAN netdevices by default which
29 can be changed by the 'maxdev=xx' module option. This driver can
30 also be built as a module. If so, the module will be called slcan.
31
Wolfgang Grandegger39549ee2009-05-15 23:39:29 +000032config CAN_DEV
33 tristate "Platform CAN drivers with Netlink support"
Marc Kleine-Buddea30d5152011-06-26 21:39:51 +000034 default y
Wolfgang Grandegger39549ee2009-05-15 23:39:29 +000035 ---help---
36 Enables the common framework for platform CAN drivers with Netlink
37 support. This is the standard library for CAN drivers.
38 If unsure, say Y.
39
Marc Kleine-Budde6586c5d2012-07-20 21:04:13 +020040if CAN_DEV
41
Wolfgang Grandegger39549ee2009-05-15 23:39:29 +000042config CAN_CALC_BITTIMING
43 bool "CAN bit-timing calculation"
Marc Kleine-Buddea30d5152011-06-26 21:39:51 +000044 default y
Wolfgang Grandegger39549ee2009-05-15 23:39:29 +000045 ---help---
46 If enabled, CAN bit-timing parameters will be calculated for the
47 bit-rate specified via Netlink argument "bitrate" when the device
48 get started. This works fine for the most common CAN controllers
49 with standard bit-rates but may fail for exotic bit-rates or CAN
50 source clock frequencies. Disabling saves some space, but then the
51 bit-timing parameters must be specified directly using the Netlink
52 arguments "tq", "prop_seg", "phase_seg1", "phase_seg2" and "sjw".
53 If unsure, say Y.
54
Fabio Baltieri996a9532012-12-18 18:50:55 +010055config CAN_LEDS
56 bool "Enable LED triggers for Netlink based drivers"
57 depends on LEDS_CLASS
58 select LEDS_TRIGGERS
59 ---help---
60 This option adds two LED triggers for packet receive and transmit
61 events on each supported CAN device.
62
63 Say Y here if you are working on a system with led-class supported
64 LEDs and you want to use them as canbus activity indicators.
65
Marc Kleine-Budde68f40152009-09-22 14:46:57 -070066config CAN_AT91
67 tristate "Atmel AT91 onchip CAN controller"
Chen Gang9dc8be22014-10-02 22:01:42 +080068 depends on (ARCH_AT91 || COMPILE_TEST) && HAS_IOMEM
Marc Kleine-Budde68f40152009-09-22 14:46:57 -070069 ---help---
Uwe Kleine-Königb9e379b2011-04-26 15:05:59 +020070 This is a driver for the SoC CAN controller in Atmel's AT91SAM9263
71 and AT91SAM9X5 processors.
Marc Kleine-Budde68f40152009-09-22 14:46:57 -070072
Barry Songbbb84612009-12-10 23:46:28 +000073config CAN_BFIN
Marc Kleine-Budde6586c5d2012-07-20 21:04:13 +020074 depends on BF534 || BF536 || BF537 || BF538 || BF539 || BF54x
Barry Songbbb84612009-12-10 23:46:28 +000075 tristate "Analog Devices Blackfin on-chip CAN"
76 ---help---
77 Driver for the Analog Devices Blackfin on-chip CAN controllers
78
79 To compile this driver as a module, choose M here: the
80 module will be called bfin_can.
81
Marc Kleine-Budde26821162016-02-16 09:34:38 +010082config CAN_FLEXCAN
83 tristate "Support for Freescale FLEXCAN based chips"
84 depends on ARM || PPC
85 ---help---
86 Say Y here if you want to support for Freescale FlexCAN.
87
88config CAN_GRCAN
89 tristate "Aeroflex Gaisler GRCAN and GRHCAN CAN devices"
90 depends on OF && HAS_DMA
91 ---help---
92 Say Y here if you want to use Aeroflex Gaisler GRCAN or GRHCAN.
93 Note that the driver supports little endian, even though little
94 endian syntheses of the cores would need some modifications on
95 the hardware level to work.
96
Ira W. Snyder631eb222010-03-29 09:58:51 -070097config CAN_JANZ_ICAN3
98 tristate "Janz VMOD-ICAN3 Intelligent CAN controller"
Marc Kleine-Budde6586c5d2012-07-20 21:04:13 +020099 depends on MFD_JANZ_CMODIO
Ira W. Snyder631eb222010-03-29 09:58:51 -0700100 ---help---
101 Driver for Janz VMOD-ICAN3 Intelligent CAN controller module, which
102 connects to a MODULbus carrier board.
103
104 This driver can also be built as a module. If so, the module will be
105 called janz-ican3.ko.
106
Gerhard Bertelsmann0738eff2015-09-16 13:21:22 +0200107config CAN_SUN4I
108 tristate "Allwinner A10 CAN controller"
109 depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
110 ---help---
111 Say Y here if you want to use CAN controller found on Allwinner
112 A10/A20 SoCs.
113
114 To compile this driver as a module, choose M here: the module will
115 be called sun4i_can.
116
Marc Kleine-Budde26821162016-02-16 09:34:38 +0100117config CAN_TI_HECC
118 depends on ARM
119 tristate "TI High End CAN Controller"
120 ---help---
121 Driver for TI HECC (High End CAN Controller) module found on many
122 TI devices. The device specifications are available from www.ti.com
123
Kedareswara rao Appanab1201e442014-05-21 12:30:59 +0530124config CAN_XILINXCAN
125 tristate "Xilinx CAN"
Michal Simek963a8222015-03-09 15:03:32 +0100126 depends on ARCH_ZYNQ || ARM64 || MICROBLAZE || COMPILE_TEST
Kedareswara rao Appanab1201e442014-05-21 12:30:59 +0530127 depends on COMMON_CLK && HAS_IOMEM
128 ---help---
129 Xilinx CAN driver. This driver supports both soft AXI CAN IP and
130 Zynq CANPS IP.
131
Marc Kleine-Budde26821162016-02-16 09:34:38 +0100132config PCH_CAN
133 tristate "Intel EG20T PCH CAN controller"
134 depends on PCI && (X86_32 || COMPILE_TEST)
135 ---help---
136 This driver is for PCH CAN of Topcliff (Intel EG20T PCH) which
137 is an IOH for x86 embedded processor (Intel Atom E6xx series).
138 This driver can access CAN bus.
Oliver Hartkoppb93cf3f2009-11-12 01:35:01 +0000139
Bhupesh Sharma881ff672011-02-13 22:51:44 -0800140source "drivers/net/can/c_can/Kconfig"
Wolfgang Grandegger2a367c32011-11-30 23:41:18 +0000141source "drivers/net/can/cc770/Kconfig"
Marek Vasut0c4d9c92016-01-20 15:33:39 +0100142source "drivers/net/can/ifi_canfd/Kconfig"
Marek Vasut83407c72016-01-11 19:47:59 +0100143source "drivers/net/can/m_can/Kconfig"
144source "drivers/net/can/mscan/Kconfig"
Stephane Grosjean8ac83212017-01-19 16:31:07 +0100145source "drivers/net/can/peak_canfd/Kconfig"
Ramesh Shanmugasundaramdd3bd232016-06-17 09:20:55 +0100146source "drivers/net/can/rcar/Kconfig"
Marek Vasut83407c72016-01-11 19:47:59 +0100147source "drivers/net/can/sja1000/Kconfig"
Kurt Van Dijck03fd3cf2011-01-11 04:32:31 +0000148source "drivers/net/can/softing/Kconfig"
Marek Vasut83407c72016-01-11 19:47:59 +0100149source "drivers/net/can/spi/Kconfig"
150source "drivers/net/can/usb/Kconfig"
Kurt Van Dijck03fd3cf2011-01-11 04:32:31 +0000151
Marc Kleine-Budde6586c5d2012-07-20 21:04:13 +0200152endif
153
Oliver Hartkoppccb29632007-11-16 15:56:08 -0800154config CAN_DEBUG_DEVICES
155 bool "CAN devices debugging messages"
Oliver Hartkoppccb29632007-11-16 15:56:08 -0800156 ---help---
157 Say Y here if you want the CAN device drivers to produce a bunch of
158 debug messages to the system log. Select this if you are having
159 a problem with CAN support and want to see more of what is going
160 on.
161
162endmenu