]> rtime.felk.cvut.cz Git - lincan.git/blob - lincan/include/usbcan.h
Unoptimized usb extension, adds proc and devfs entry removing function, changed proc...
[lincan.git] / lincan / include / usbcan.h
1 /* usbcan.h
2  * Header file for the Linux CAN-bus driver.
3  * Written by Jan Kriz email:johen@post.cz
4  * This software is released under the GPL-License.
5  * Version lincan-0.3  17 Jul 2008
6  */
7
8 #ifndef USBCAN_H
9 #define USBCAN_H
10
11 #include <linux/errno.h>
12 #include <linux/init.h>
13 #include <linux/slab.h>
14 #include <linux/kref.h>
15 #include <asm/uaccess.h>
16 #include <linux/usb.h>
17
18 int usbcan_request_io(struct candevice_t *candev);
19 int usbcan_release_io(struct candevice_t *candev);
20 int usbcan_reset(struct candevice_t *candev);
21 int usbcan_init_hw_data(struct candevice_t *candev);
22 int usbcan_init_chip_data(struct candevice_t *candev, int chipnr);
23 int usbcan_init_obj_data(struct canchip_t *chip, int objnr);
24 void usbcan_write_register(unsigned data, unsigned long address);
25 unsigned usbcan_read_register(unsigned long address);
26 int usbcan_program_irq(struct candevice_t *candev);
27
28 int usbcan_chip_config(struct canchip_t *chip);
29 int usbcan_extended_mask(struct canchip_t *chip, unsigned long code, unsigned long mask);
30 int usbcan_baud_rate(struct canchip_t *chip, int rate, int clock, int sjw,
31                 int sampl_pt, int flags);
32 int usbcan_pre_read_config(struct canchip_t *chip, struct msgobj_t *obj);
33 int usbcan_pre_write_config(struct canchip_t *chip, struct msgobj_t *obj,
34                 struct canmsg_t *msg);
35 int usbcan_send_msg(struct canchip_t *chip, struct msgobj_t *obj,
36                 struct canmsg_t *msg);
37 int usbcan_fill_chipspecops(struct canchip_t *chip);
38 int usbcan_irq_handler(int irq, struct canchip_t *chip);
39
40 int usbcan_init(void);
41 void usbcan_exit(void);
42
43 #endif /*USBCAN_H*/