1ccb29637SOliver Hartkoppmenu "CAN Device Drivers" 2ccb29637SOliver Hartkopp 3ccb29637SOliver Hartkoppconfig CAN_VCAN 4ccb29637SOliver Hartkopp tristate "Virtual Local CAN Interface (vcan)" 5ccb29637SOliver Hartkopp ---help--- 6ccb29637SOliver Hartkopp Similar to the network loopback devices, vcan offers a 7ccb29637SOliver Hartkopp virtual local CAN interface. 8ccb29637SOliver Hartkopp 9ccb29637SOliver Hartkopp This driver can also be built as a module. If so, the module 10ccb29637SOliver Hartkopp will be called vcan. 11ccb29637SOliver Hartkopp 12a8f820a3SOliver Hartkoppconfig CAN_VXCAN 13a8f820a3SOliver Hartkopp tristate "Virtual CAN Tunnel (vxcan)" 14a8f820a3SOliver Hartkopp ---help--- 15a8f820a3SOliver Hartkopp Similar to the virtual ethernet driver veth, vxcan implements a 16a8f820a3SOliver Hartkopp local CAN traffic tunnel between two virtual CAN network devices. 17a8f820a3SOliver Hartkopp When creating a vxcan, two vxcan devices are created as pair. 18a8f820a3SOliver Hartkopp When one end receives the packet it appears on its pair and vice 19a8f820a3SOliver Hartkopp versa. The vxcan can be used for cross namespace communication. 20a8f820a3SOliver Hartkopp 21a8f820a3SOliver Hartkopp In opposite to vcan loopback devices the vxcan only forwards CAN 22a8f820a3SOliver Hartkopp frames to its pair and does *not* provide a local echo of sent 23a8f820a3SOliver Hartkopp CAN frames. To disable a potential echo in af_can.c the vxcan driver 24a8f820a3SOliver Hartkopp announces IFF_ECHO in the interface flags. To have a clean start 25a8f820a3SOliver Hartkopp in each namespace the CAN GW hop counter is set to zero. 26a8f820a3SOliver Hartkopp 27a8f820a3SOliver Hartkopp This driver can also be built as a module. If so, the module 28a8f820a3SOliver Hartkopp will be called vxcan. 29a8f820a3SOliver Hartkopp 30a1044e36SOliver Hartkoppconfig CAN_SLCAN 31a1044e36SOliver Hartkopp tristate "Serial / USB serial CAN Adaptors (slcan)" 3221eaab6dSLinus Torvalds depends on TTY 33a1044e36SOliver Hartkopp ---help--- 34a1044e36SOliver Hartkopp CAN driver for several 'low cost' CAN interfaces that are attached 35a1044e36SOliver Hartkopp via serial lines or via USB-to-serial adapters using the LAWICEL 36a1044e36SOliver Hartkopp ASCII protocol. The driver implements the tty linediscipline N_SLCAN. 37a1044e36SOliver Hartkopp 38a1044e36SOliver Hartkopp As only the sending and receiving of CAN frames is implemented, this 39a1044e36SOliver Hartkopp driver should work with the (serial/USB) CAN hardware from: 40c128df73SOliver Hartkopp www.canusb.com / www.can232.com / www.mictronics.de / www.canhack.de 41a1044e36SOliver Hartkopp 42a1044e36SOliver Hartkopp Userspace tools to attach the SLCAN line discipline (slcan_attach, 43a1044e36SOliver Hartkopp slcand) can be found in the can-utils at the SocketCAN SVN, see 44a1044e36SOliver Hartkopp http://developer.berlios.de/projects/socketcan for details. 45a1044e36SOliver Hartkopp 46a1044e36SOliver Hartkopp The slcan driver supports up to 10 CAN netdevices by default which 47a1044e36SOliver Hartkopp can be changed by the 'maxdev=xx' module option. This driver can 48a1044e36SOliver Hartkopp also be built as a module. If so, the module will be called slcan. 49a1044e36SOliver Hartkopp 5039549eefSWolfgang Grandeggerconfig CAN_DEV 5139549eefSWolfgang Grandegger tristate "Platform CAN drivers with Netlink support" 52a30d5155SMarc Kleine-Budde default y 5339549eefSWolfgang Grandegger ---help--- 5439549eefSWolfgang Grandegger Enables the common framework for platform CAN drivers with Netlink 5539549eefSWolfgang Grandegger support. This is the standard library for CAN drivers. 5639549eefSWolfgang Grandegger If unsure, say Y. 5739549eefSWolfgang Grandegger 586586c5d7SMarc Kleine-Buddeif CAN_DEV 596586c5d7SMarc Kleine-Budde 6039549eefSWolfgang Grandeggerconfig CAN_CALC_BITTIMING 6139549eefSWolfgang Grandegger bool "CAN bit-timing calculation" 62a30d5155SMarc Kleine-Budde default y 6339549eefSWolfgang Grandegger ---help--- 6439549eefSWolfgang Grandegger If enabled, CAN bit-timing parameters will be calculated for the 6539549eefSWolfgang Grandegger bit-rate specified via Netlink argument "bitrate" when the device 6639549eefSWolfgang Grandegger get started. This works fine for the most common CAN controllers 6739549eefSWolfgang Grandegger with standard bit-rates but may fail for exotic bit-rates or CAN 6839549eefSWolfgang Grandegger source clock frequencies. Disabling saves some space, but then the 6939549eefSWolfgang Grandegger bit-timing parameters must be specified directly using the Netlink 7039549eefSWolfgang Grandegger arguments "tq", "prop_seg", "phase_seg1", "phase_seg2" and "sjw". 7139549eefSWolfgang Grandegger If unsure, say Y. 7239549eefSWolfgang Grandegger 73996a953dSFabio Baltiericonfig CAN_LEDS 74996a953dSFabio Baltieri bool "Enable LED triggers for Netlink based drivers" 75996a953dSFabio Baltieri depends on LEDS_CLASS 7630f3b421SUwe Kleine-König # The netdev trigger (LEDS_TRIGGER_NETDEV) should be able to do 7730f3b421SUwe Kleine-König # everything that this driver is doing. This is marked as broken 7830f3b421SUwe Kleine-König # because it uses stuff that is intended to be changed or removed. 7930f3b421SUwe Kleine-König # Please consider switching to the netdev trigger and confirm it 8030f3b421SUwe Kleine-König # fulfills your needs instead of fixing this driver. 8130f3b421SUwe Kleine-König depends on BROKEN 82996a953dSFabio Baltieri select LEDS_TRIGGERS 83996a953dSFabio Baltieri ---help--- 84996a953dSFabio Baltieri This option adds two LED triggers for packet receive and transmit 85996a953dSFabio Baltieri events on each supported CAN device. 86996a953dSFabio Baltieri 87996a953dSFabio Baltieri Say Y here if you are working on a system with led-class supported 88996a953dSFabio Baltieri LEDs and you want to use them as canbus activity indicators. 89996a953dSFabio Baltieri 9068f40152SMarc Kleine-Buddeconfig CAN_AT91 9168f40152SMarc Kleine-Budde tristate "Atmel AT91 onchip CAN controller" 929dc8be28SChen Gang depends on (ARCH_AT91 || COMPILE_TEST) && HAS_IOMEM 9368f40152SMarc Kleine-Budde ---help--- 94b9e379bcSUwe Kleine-König This is a driver for the SoC CAN controller in Atmel's AT91SAM9263 95b9e379bcSUwe Kleine-König and AT91SAM9X5 processors. 9668f40152SMarc Kleine-Budde 9726821162SMarc Kleine-Buddeconfig CAN_FLEXCAN 9826821162SMarc Kleine-Budde tristate "Support for Freescale FLEXCAN based chips" 9926821162SMarc Kleine-Budde depends on ARM || PPC 10026821162SMarc Kleine-Budde ---help--- 10126821162SMarc Kleine-Budde Say Y here if you want to support for Freescale FlexCAN. 10226821162SMarc Kleine-Budde 10326821162SMarc Kleine-Buddeconfig CAN_GRCAN 10426821162SMarc Kleine-Budde tristate "Aeroflex Gaisler GRCAN and GRHCAN CAN devices" 10526821162SMarc Kleine-Budde depends on OF && HAS_DMA 10626821162SMarc Kleine-Budde ---help--- 10726821162SMarc Kleine-Budde Say Y here if you want to use Aeroflex Gaisler GRCAN or GRHCAN. 10826821162SMarc Kleine-Budde Note that the driver supports little endian, even though little 10926821162SMarc Kleine-Budde endian syntheses of the cores would need some modifications on 11026821162SMarc Kleine-Budde the hardware level to work. 11126821162SMarc Kleine-Budde 112631eb227SIra W. Snyderconfig CAN_JANZ_ICAN3 113631eb227SIra W. Snyder tristate "Janz VMOD-ICAN3 Intelligent CAN controller" 1146586c5d7SMarc Kleine-Budde depends on MFD_JANZ_CMODIO 115631eb227SIra W. Snyder ---help--- 116631eb227SIra W. Snyder Driver for Janz VMOD-ICAN3 Intelligent CAN controller module, which 117631eb227SIra W. Snyder connects to a MODULbus carrier board. 118631eb227SIra W. Snyder 119631eb227SIra W. Snyder This driver can also be built as a module. If so, the module will be 120631eb227SIra W. Snyder called janz-ican3.ko. 121631eb227SIra W. Snyder 1220738eff1SGerhard Bertelsmannconfig CAN_SUN4I 1230738eff1SGerhard Bertelsmann tristate "Allwinner A10 CAN controller" 1240738eff1SGerhard Bertelsmann depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST 1250738eff1SGerhard Bertelsmann ---help--- 1260738eff1SGerhard Bertelsmann Say Y here if you want to use CAN controller found on Allwinner 1270738eff1SGerhard Bertelsmann A10/A20 SoCs. 1280738eff1SGerhard Bertelsmann 1290738eff1SGerhard Bertelsmann To compile this driver as a module, choose M here: the module will 1300738eff1SGerhard Bertelsmann be called sun4i_can. 1310738eff1SGerhard Bertelsmann 13226821162SMarc Kleine-Buddeconfig CAN_TI_HECC 13326821162SMarc Kleine-Budde depends on ARM 13426821162SMarc Kleine-Budde tristate "TI High End CAN Controller" 13526821162SMarc Kleine-Budde ---help--- 13626821162SMarc Kleine-Budde Driver for TI HECC (High End CAN Controller) module found on many 13726821162SMarc Kleine-Budde TI devices. The device specifications are available from www.ti.com 13826821162SMarc Kleine-Budde 139b1201e44SKedareswara rao Appanaconfig CAN_XILINXCAN 140b1201e44SKedareswara rao Appana tristate "Xilinx CAN" 141963a822bSMichal Simek depends on ARCH_ZYNQ || ARM64 || MICROBLAZE || COMPILE_TEST 142b1201e44SKedareswara rao Appana depends on COMMON_CLK && HAS_IOMEM 143b1201e44SKedareswara rao Appana ---help--- 144b1201e44SKedareswara rao Appana Xilinx CAN driver. This driver supports both soft AXI CAN IP and 145b1201e44SKedareswara rao Appana Zynq CANPS IP. 146b1201e44SKedareswara rao Appana 14726821162SMarc Kleine-Buddeconfig PCH_CAN 14826821162SMarc Kleine-Budde tristate "Intel EG20T PCH CAN controller" 14926821162SMarc Kleine-Budde depends on PCI && (X86_32 || COMPILE_TEST) 15026821162SMarc Kleine-Budde ---help--- 15126821162SMarc Kleine-Budde This driver is for PCH CAN of Topcliff (Intel EG20T PCH) which 15226821162SMarc Kleine-Budde is an IOH for x86 embedded processor (Intel Atom E6xx series). 15326821162SMarc Kleine-Budde This driver can access CAN bus. 154b93cf3f0SOliver Hartkopp 155881ff67aSBhupesh Sharmasource "drivers/net/can/c_can/Kconfig" 1562a367c3aSWolfgang Grandeggersource "drivers/net/can/cc770/Kconfig" 1570c4d9c94SMarek Vasutsource "drivers/net/can/ifi_canfd/Kconfig" 15883407c7fSMarek Vasutsource "drivers/net/can/m_can/Kconfig" 15983407c7fSMarek Vasutsource "drivers/net/can/mscan/Kconfig" 1608ac8321eSStephane Grosjeansource "drivers/net/can/peak_canfd/Kconfig" 161dd3bd23eSRamesh Shanmugasundaramsource "drivers/net/can/rcar/Kconfig" 16283407c7fSMarek Vasutsource "drivers/net/can/sja1000/Kconfig" 16303fd3cf5SKurt Van Dijcksource "drivers/net/can/softing/Kconfig" 16483407c7fSMarek Vasutsource "drivers/net/can/spi/Kconfig" 16583407c7fSMarek Vasutsource "drivers/net/can/usb/Kconfig" 16603fd3cf5SKurt Van Dijck 1676586c5d7SMarc Kleine-Buddeendif 1686586c5d7SMarc Kleine-Budde 169ccb29637SOliver Hartkoppconfig CAN_DEBUG_DEVICES 170ccb29637SOliver Hartkopp bool "CAN devices debugging messages" 171ccb29637SOliver Hartkopp ---help--- 172ccb29637SOliver Hartkopp Say Y here if you want the CAN device drivers to produce a bunch of 173ccb29637SOliver Hartkopp debug messages to the system log. Select this if you are having 174ccb29637SOliver Hartkopp a problem with CAN support and want to see more of what is going 175ccb29637SOliver Hartkopp on. 176ccb29637SOliver Hartkopp 177ccb29637SOliver Hartkoppendmenu 178