2 # Copyright (C) 2013 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
10 define KernelPackage/can
12 TITLE:=CAN bus support
16 CONFIG_CAN_CALC_BITTIMING=y \
19 CONFIG_CAN_TI_HECC=n \
20 CONFIG_CAN_MCP251X=n \
22 CONFIG_CAN_JANZ_ICAN3=n \
27 CONFIG_CAN_SJA1000=n \
28 CONFIG_CAN_SOFTING=n \
29 CONFIG_NET_EMATCH_CANID=n \
30 CONFIG_CAN_DEBUG_DEVICES=n
31 FILES:=$(LINUX_DIR)/drivers/net/can/dev/can-dev.ko \
32 $(LINUX_DIR)/net/can/can.ko
33 AUTOLOAD:=$(call AutoProbe,can can-dev)
36 define KernelPackage/can/description
37 Kernel module for CAN bus support.
40 $(eval $(call KernelPackage,can))
45 DEPENDS+=kmod-can $(1)
49 define KernelPackage/can-bcm
50 TITLE:=Broadcast Manager CAN Protcol
51 KCONFIG:=CONFIG_CAN_BCM
52 FILES:=$(LINUX_DIR)/net/can/can-bcm.ko
53 AUTOLOAD:=$(call AutoProbe,can-bcm)
54 $(call AddDepends/can)
57 define KernelPackage/can-bcm/description
58 The Broadcast Manager offers content filtering, timeout monitoring,
59 sending of RTR frames, and cyclic CAN messages without permanent user
63 $(eval $(call KernelPackage,can-bcm))
66 define KernelPackage/can-c-can
67 TITLE:=BOSCH C_CAN/D_CAN drivers
68 KCONFIG:=CONFIG_CAN_C_CAN
69 FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can.ko
70 AUTOLOAD:=$(call AutoProbe,c_can)
71 $(call AddDepends/can)
74 define KernelPackage/can-c-can/description
75 This driver adds generic support for the C_CAN/D_CAN chips.
78 $(eval $(call KernelPackage,can-c-can))
81 define KernelPackage/can-c-can-pci
82 TITLE:=PCI Bus based BOSCH C_CAN/D_CAN driver
83 KCONFIG:=CONFIG_CAN_C_CAN_PCI
84 DEPENDS:=kmod-can-c-can @PCI_SUPPORT
85 FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_pci.ko
86 AUTOLOAD:=$(call AutoProbe,c_can_pci)
87 $(call AddDepends/can)
90 define KernelPackage/can-c-can-pci/description
91 This driver adds support for the C_CAN/D_CAN chips connected
95 $(eval $(call KernelPackage,can-c-can-pci))
98 define KernelPackage/can-c-can-platform
99 TITLE:=Platform Bus based BOSCH C_CAN/D_CAN driver
100 KCONFIG:=CONFIG_CAN_C_CAN_PLATFORM
101 DEPENDS:=kmod-can-c-can +kmod-regmap-core
102 FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_platform.ko
103 AUTOLOAD:=$(call AutoProbe,c_can_platform)
104 $(call AddDepends/can)
107 define KernelPackage/can-c-can-platform/description
108 This driver adds support for the C_CAN/D_CAN chips connected
109 to the "platform bus" (Linux abstraction for directly to the
110 processor attached devices) which can be found on various
111 boards from ST Microelectronics (http://www.st.com) like the
112 SPEAr1310 and SPEAr320 evaluation boards & TI (www.ti.com)
113 boards like am335x, dm814x, dm813x and dm811x.
116 $(eval $(call KernelPackage,can-c-can-platform))
119 define KernelPackage/can-flexcan
120 TITLE:=Support for Freescale FLEXCAN based chips
121 KCONFIG:=CONFIG_CAN_FLEXCAN
122 FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
123 AUTOLOAD:=$(call AutoProbe,flexcan)
124 $(call AddDepends/can,@TARGET_imx)
127 define KernelPackage/can-flexcan/description
128 Freescale FLEXCAN CAN bus controller implementation.
131 $(eval $(call KernelPackage,can-flexcan))
134 define KernelPackage/can-gw
135 TITLE:=CAN Gateway/Router
136 KCONFIG:=CONFIG_CAN_GW
137 FILES:=$(LINUX_DIR)/net/can/can-gw.ko
138 AUTOLOAD:=$(call AutoProbe,can-gw)
139 $(call AddDepends/can)
142 define KernelPackage/can-gw/description
143 The CAN Gateway/Router is used to route (and modify) CAN frames.
146 $(eval $(call KernelPackage,can-gw))
149 define KernelPackage/can-mcp251x
150 TITLE:=MCP251x SPI CAN controller
154 FILES:=$(LINUX_DIR)/drivers/net/can/spi/mcp251x.ko
155 AUTOLOAD:=$(call AutoProbe,mcp251x)
156 $(call AddDepends/can)
159 define KernelPackage/can-mcp251x/description
160 Microchip MCP251x SPI CAN controller
163 $(eval $(call KernelPackage,can-mcp251x))
166 define KernelPackage/can-raw
167 TITLE:=Raw CAN Protcol
168 KCONFIG:=CONFIG_CAN_RAW
169 FILES:=$(LINUX_DIR)/net/can/can-raw.ko
170 AUTOLOAD:=$(call AutoProbe,can-raw)
171 $(call AddDepends/can)
174 define KernelPackage/can-raw/description
175 The raw CAN protocol option offers access to the CAN bus via
179 $(eval $(call KernelPackage,can-raw))
182 define KernelPackage/can-slcan
183 TITLE:=Serial / USB serial CAN Adaptors (slcan)
184 KCONFIG:=CONFIG_CAN_SLCAN
185 FILES:=$(LINUX_DIR)/drivers/net/can/slcan.ko
186 AUTOLOAD:=$(call AutoProbe,slcan)
187 $(call AddDepends/can)
190 define KernelPackage/can-slcan/description
191 CAN driver for several 'low cost' CAN interfaces that are attached
192 via serial lines or via USB-to-serial adapters using the LAWICEL
196 $(eval $(call KernelPackage,can-slcan))
199 define KernelPackage/can-usb-8dev
200 TITLE:=8 devices USB2CAN interface
201 KCONFIG:=CONFIG_CAN_8DEV_USB
202 FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko
203 AUTOLOAD:=$(call AutoProbe,usb_8dev)
204 $(call AddDepends/can,+kmod-usb-core)
207 define KernelPackage/can-usb-8dev/description
208 This driver supports the USB2CAN interface
209 from 8 devices (http://www.8devices.com).
212 $(eval $(call KernelPackage,can-usb-8dev))
215 define KernelPackage/can-usb-ems
216 TITLE:=EMS CPC-USB/ARM7 CAN/USB interface
217 KCONFIG:=CONFIG_CAN_EMS_USB
218 FILES:=$(LINUX_DIR)/drivers/net/can/usb/ems_usb.ko
219 AUTOLOAD:=$(call AutoProbe,ems_usb)
220 $(call AddDepends/can,+kmod-usb-core)
223 define KernelPackage/can-usb-ems/description
224 This driver is for the one channel CPC-USB/ARM7 CAN/USB interface
225 from EMS Dr. Thomas Wuensche (http://www.ems-wuensche.de).
228 $(eval $(call KernelPackage,can-usb-ems))
231 define KernelPackage/can-usb-esd
232 TITLE:=ESD USB/2 CAN/USB interface
233 KCONFIG:=CONFIG_CAN_ESD_USB2
234 FILES:=$(LINUX_DIR)/drivers/net/can/usb/esd_usb2.ko
235 AUTOLOAD:=$(call AutoProbe,esd_usb2)
236 $(call AddDepends/can,+kmod-usb-core)
239 define KernelPackage/can-usb-esd/description
240 This driver supports the CAN-USB/2 interface
241 from esd electronic system design gmbh (http://www.esd.eu).
244 $(eval $(call KernelPackage,can-usb-esd))
247 define KernelPackage/can-usb-kvaser
248 TITLE:=Kvaser CAN/USB interface
249 KCONFIG:=CONFIG_CAN_KVASER_USB
251 $(LINUX_DIR)/drivers/net/can/usb/kvaser_usb/kvaser_usb.ko
252 AUTOLOAD:=$(call AutoProbe,kvaser_usb)
253 $(call AddDepends/can,+kmod-usb-core)
256 define KernelPackage/can-usb-kvaser/description
257 This driver adds support for Kvaser CAN/USB devices like Kvaser
261 $(eval $(call KernelPackage,can-usb-kvaser))
264 define KernelPackage/can-usb-peak
265 TITLE:=PEAK PCAN-USB/USB Pro interfaces
266 KCONFIG:=CONFIG_CAN_PEAK_USB
267 FILES:=$(LINUX_DIR)/drivers/net/can/usb/peak_usb/peak_usb.ko
268 AUTOLOAD:=$(call AutoProbe,peak_usb)
269 $(call AddDepends/can,+kmod-usb-core)
272 define KernelPackage/can-usb-peak/description
273 This driver supports the PCAN-USB and PCAN-USB Pro adapters
274 from PEAK-System Technik (http://www.peak-system.com).
277 $(eval $(call KernelPackage,can-usb-peak))
280 define KernelPackage/can-vcan
281 TITLE:=Virtual Local CAN Interface (vcan)
282 KCONFIG:=CONFIG_CAN_VCAN
283 FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko
284 AUTOLOAD:=$(call AutoProbe,vcan)
285 $(call AddDepends/can)
288 define KernelPackage/can-vcan/description
289 Similar to the network loopback devices, vcan offers a
290 virtual local CAN interface.
293 $(eval $(call KernelPackage,can-vcan))
295 define KernelPackage/can-xilinx-can
297 KCONFIG:=CONFIG_CAN_XILINXCAN
298 FILES:=$(LINUX_DIR)/drivers/net/can/xilinx_can.ko
299 AUTOLOAD:=$(call AutoProbe,xilinx_can)
300 $(call AddDepends/can,@TARGET_zynq)
303 define KernelPackage/can-xilinx-can/description
304 Xilinx CAN driver. This driver supports both
305 soft AXI CAN IP and Zynq CANPS IP.
308 $(eval $(call KernelPackage,can-xilinx-can))