Added support for HCAN2 controllers integrated in SH7760.
authortermitt <termitt>
Tue, 20 Nov 2007 21:24:49 +0000 (21:24 +0000)
committertermitt <termitt>
Tue, 20 Nov 2007 21:24:49 +0000 (21:24 +0000)
The code has been developed during diploma thesis work at the Department of Process Controll, FEL, CTU and has been tested on EMX32 SH7760 based board produced by MSC.

lincan/src/Makefile.omk
lincan/src/boardlist.c

index e888c16..b424979 100644 (file)
@@ -2,7 +2,7 @@ lincan_cards_NAMES = pip pccan smartcan nsi cc_can104 ems_cpcpci \
                pc_i03 pcm3680 aim104 m437 pcccan ssv bfadcan gensja1000io pikronisa eb8245 \
                kv_pcican msmcan oscar adlink7841 pcan_pci esdpci200 unican virtual template
 
-lincan_morecards_NAMES = hms30c7202_can ns_dev_can ipci165 pimx1 tscan1 nsi_canpci
+lincan_morecards_NAMES = hms30c7202_can ns_dev_can ipci165 pimx1 tscan1 nsi_canpci sh7760
 
 default_CONFIG = CONFIG_OC_LINCAN=y CONFIG_OC_LINCANRTL=n CONFIG_OC_LINCANVME=n
 default_CONFIG += CONFIG_OC_LINCAN_PORTIO_ONLY=n CONFIG_OC_LINCAN_MEMIO_ONLY=n
@@ -33,6 +33,10 @@ ifeq ($(CONFIG_OC_LINCAN_CARD_ipci165),y)
 lincan_cards_SOURCES += ipci165_fw.c kthread.c
 endif
 
+ifeq ($(CONFIG_OC_LINCAN_CARD_sh7760),y)
+lincan_cards_SOURCES += sh7760.c
+endif
+
 ifneq ($(filter hms30c7202_can ns_dev_can,$(lincan_cards_SELECTED)),)
 $(warning Not finished C_CAN support requested)
 lincan_cards_SOURCES += c_can.c c_can_irq.c 
@@ -53,7 +57,7 @@ endif #CONFIG_OC_LINCANRTL
 
 lincan_SOURCES = can_queue.c can_quekern.c main.c modparms.c \
                devcommon.c setup.c finish.c irq.c sysdep_lnx.c boardlist.c \
-               sja1000p.c sja1000.c i82527.c  \
+               sja1000p.c sja1000.c i82527.c hcan2.c \
                open.c close.c read.c write.c ioctl.c select.c fasync.c \
                proc.c ioctl_query.c ioctl_remote.c \
                $(lincan_cards_SOURCES) $(lincan_rtl_SOURCES)
index 53a6e9a..c913a5d 100644 (file)
@@ -47,6 +47,7 @@ extern int hms30c7202_register(struct hwspecops_t *hwspecops);
 extern int nsi_canpci_register(struct hwspecops_t *hwspecops);
 extern int pcan_pci_register(struct hwspecops_t *hwspecops);
 extern int esdpci200_register(struct hwspecops_t *hwspecops);
+extern int sh7760_register(struct hwspecops_t *hwspecops);
 
 const struct boardtype_t can_boardtypes[]={
     #ifdef CONFIG_OC_LINCAN_CARD_template