kernel: add CAN modules
[openwrt.git] / package / kernel / linux / modules / can.mk
1 #
2 # Copyright (C) 2013 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 CAN_MENU:=CAN Support
9
10 define KernelPackage/can
11   SUBMENU:=$(CAN_MENU)
12   TITLE:=CAN bus support
13   KCONFIG:=\
14         CONFIG_CAN=y \
15         CONFIG_CAN_DEV \
16         CONFIG_CAN_CALC_BITTIMING=y \
17         CONFIG_CAN_LEDS=y \
18         CONFIG_CAN_AT91=n \
19         CONFIG_CAN_TI_HECC=n \
20         CONFIG_CAN_MCP251X=n \
21         CONFIG_CAN_BFIN=n \
22         CONFIG_CAN_JANZ_ICAN3=n \
23         CONFIG_PCH_CAN=n \
24         CONFIG_CAN_GRCAN=n \
25         CONFIG_CAN_CC770=n \
26         CONFIG_CAN_C_CAN=n \
27         CONFIG_CAN_MSCAN=n \
28         CONFIG_CAN_SJA1000=n \
29         CONFIG_CAN_SOFTING=n \
30         CONFIG_NET_EMATCH_CANID=n \
31         CONFIG_CAN_DEBUG_DEVICES=n
32   FILES:=$(LINUX_DIR)/drivers/net/can/can-dev.ko
33   AUTOLOAD:=$(call AutoProbe,can-dev)
34 endef
35
36 define KernelPackage/can/description
37  Kernel module for CAN bus support.
38 endef
39
40 $(eval $(call KernelPackage,can))
41
42
43 define AddDepends/can
44   SUBMENU:=$(CAN_MENU)
45   DEPENDS+=kmod-can $(1)
46 endef
47
48
49 define KernelPackage/can-raw
50   TITLE:=Raw CAN Protcol
51   KCONFIG:=CONFIG_CAN_RAW
52   FILES:=$(LINUX_DIR)/net/can/can-raw.ko
53   AUTOLOAD:=$(call AutoProbe,can-raw)
54   $(call AddDepends/can)
55 endef
56
57 define KernelPackage/can-raw/description
58  The raw CAN protocol option offers access to the CAN bus via
59  the BSD  socket API.
60 endef
61
62 $(eval $(call KernelPackage,can-raw))
63
64
65 define KernelPackage/can-bcm
66   TITLE:=Broadcast Manager CAN Protcol
67   KCONFIG:=CONFIG_CAN_BCM
68   FILES:=$(LINUX_DIR)/net/can/can-bcm.ko
69   AUTOLOAD:=$(call AutoProbe,can-bcm)
70   $(call AddDepends/can)
71 endef
72
73 define KernelPackage/can-bcm/description
74  The Broadcast Manager offers content filtering, timeout monitoring,
75  sending of RTR frames, and cyclic CAN messages without permanent user
76  interaction.
77 endef
78
79 $(eval $(call KernelPackage,can-bcm))
80
81
82 define KernelPackage/can-gw
83   TITLE:=CAN Gateway/Router
84   KCONFIG:=CONFIG_CAN_GW
85   FILES:=$(LINUX_DIR)/net/can/can-gw.ko
86   AUTOLOAD:=$(call AutoProbe,can-gw)
87   $(call AddDepends/can)
88 endef
89
90 define KernelPackage/can-gw/description
91  The CAN Gateway/Router is used to route (and modify) CAN frames.
92 endef
93
94 $(eval $(call KernelPackage,can-gw))
95
96
97 define KernelPackage/can-vcan
98   TITLE:=Virtual Local CAN Interface (vcan)
99   KCONFIG:=CONFIG_CAN_VCAN
100   FILES:=$(LINUX_DIR)/drivers/net/can/vcan.ko
101   AUTOLOAD:=$(call AutoProbe,vcan)
102   $(call AddDepends/can)
103 endef
104
105 define KernelPackage/can-vcan/description
106  Similar to the network loopback devices, vcan offers a
107  virtual local CAN interface.
108 endef
109
110 $(eval $(call KernelPackage,can-vcan))
111
112
113 define KernelPackage/can-slcan
114   TITLE:=Serial / USB serial CAN Adaptors (slcan)
115   KCONFIG:=CONFIG_CAN_SLCAN
116   FILES:=$(LINUX_DIR)/drivers/net/can/slcan.ko
117   AUTOLOAD:=$(call AutoProbe,slcan)
118   $(call AddDepends/can)
119 endef
120
121 define KernelPackage/can-slcan/description
122  CAN driver for several 'low cost' CAN interfaces that are attached
123  via serial lines or via USB-to-serial adapters using the LAWICEL
124  ASCII protocol.
125 endef
126
127 $(eval $(call KernelPackage,can-slcan))
128
129
130 define KernelPackage/can-flexcan
131   TITLE:=Support for Freescale FLEXCAN based chips
132   KCONFIG:=CONFIG_CAN_FLEXCAN
133   FILES:=$(LINUX_DIR)/drivers/net/can/flexcan.ko
134   AUTOLOAD:=$(call AutoProbe,flexcan)
135   $(call AddDepends/can,@TARGET_imx6)
136 endef
137
138 define KernelPackage/can-flexcan/description
139  Freescale FLEXCAN CAN bus controller implementation.
140 endef
141
142 $(eval $(call KernelPackage,can-flexcan))
143
144
145 define KernelPackage/can-usb-ems
146   TITLE:=EMS CPC-USB/ARM7 CAN/USB interface
147   KCONFIG:=CONFIG_CAN_EMS_USB
148   FILES:=$(LINUX_DIR)/drivers/net/can/usb/ems_usb.ko
149   AUTOLOAD:=$(call AutoProbe,ems_usb)
150   $(call AddDepends/can,+kmod-usb-core)
151 endef
152
153 define KernelPackage/can-usb-ems/description
154  This driver is for the one channel CPC-USB/ARM7 CAN/USB interface
155  from EMS Dr. Thomas Wuensche (http://www.ems-wuensche.de).
156 endef
157
158 $(eval $(call KernelPackage,can-usb-ems))
159
160
161 define KernelPackage/can-usb-esd
162   TITLE:=ESD USB/2 CAN/USB interface
163   KCONFIG:=CONFIG_CAN_ESD_USB2
164   FILES:=$(LINUX_DIR)/drivers/net/can/usb/esd_usb2.ko
165   AUTOLOAD:=$(call AutoProbe,esd_usb2)
166   $(call AddDepends/can,+kmod-usb-core)
167 endef
168
169 define KernelPackage/can-usb-esd/description
170  This driver supports the CAN-USB/2 interface
171  from esd electronic system design gmbh (http://www.esd.eu).
172 endef
173
174 $(eval $(call KernelPackage,can-usb-esd))
175
176
177 define KernelPackage/can-usb-kvaser
178   TITLE:=Kvaser CAN/USB interface
179   KCONFIG:=CONFIG_CAN_KVASER_USB
180   FILES:=$(LINUX_DIR)/drivers/net/can/usb/kvaser_usb.ko
181   AUTOLOAD:=$(call AutoProbe,kvaser_usb)
182   $(call AddDepends/can,+kmod-usb-core)
183 endef
184
185 define KernelPackage/can-usb-kvaser/description
186  This driver adds support for Kvaser CAN/USB devices like Kvaser
187  Leaf Light.
188 endef
189
190 $(eval $(call KernelPackage,can-usb-kvaser))
191
192
193 define KernelPackage/can-usb-peak
194   TITLE:=PEAK PCAN-USB/USB Pro interfaces
195   KCONFIG:=CONFIG_CAN_PEAK_USB
196   FILES:=$(LINUX_DIR)/drivers/net/can/usb/peak_usb/peak_usb.ko
197   AUTOLOAD:=$(call AutoProbe,peak_usb)
198   $(call AddDepends/can,+kmod-usb-core)
199 endef
200
201 define KernelPackage/can-usb-peak/description
202  This driver supports the PCAN-USB and PCAN-USB Pro adapters
203  from PEAK-System Technik (http://www.peak-system.com).
204 endef
205
206 $(eval $(call KernelPackage,can-usb-peak))
207
208
209 define KernelPackage/can-usb-8dev
210   TITLE:=8 devices USB2CAN interface
211   KCONFIG:=CONFIG_CAN_8DEV_USB
212   FILES:=$(LINUX_DIR)/drivers/net/can/usb/usb_8dev.ko
213   AUTOLOAD:=$(call AutoProbe,usb_8dev)
214   $(call AddDepends/can,+kmod-usb-core)
215 endef
216
217 define KernelPackage/can-usb-8dev/description
218  This driver supports the USB2CAN interface
219  from 8 devices (http://www.8devices.com).
220 endef
221
222 $(eval $(call KernelPackage,can-usb-8dev))