X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/d659fb1c5ce646e10820cfd349d8a4220d1ee67d..a4c9ead4b64bd4de307f375c2ff313a7a07a06e0:/lincan/include/main.h diff --git a/lincan/include/main.h b/lincan/include/main.h index 506e262..4ef2b3e 100644 --- a/lincan/include/main.h +++ b/lincan/include/main.h @@ -4,14 +4,13 @@ * Rewritten for new CAN queues by Pavel Pisa - OCERA team member * email:pisa@cmp.felk.cvut.cz * This software is released under the GPL-License. - * Version lincan-0.2 9 Jul 2003 + * Version lincan-0.3 17 Jun 2004 */ #include "./can.h" #include "./constants.h" #include "./can_sysdep.h" #include "./can_queue.h" -#include "lincan_config.h" #ifdef CAN_DEBUG #define DEBUGMSG(fmt,args...) can_printk(KERN_ERR "can.o (debug): " fmt,\ @@ -159,7 +158,7 @@ struct chip_t { long clock; /* Chip clock in Hz */ long baudrate; - void (*write_register)(unsigned char data,unsigned long address); + void (*write_register)(unsigned data,unsigned long address); unsigned (*read_register)(unsigned long address); void *chip_data; @@ -210,6 +209,8 @@ struct chip_t { * %MSGOBJ_TX_REQUEST .. the message object requests TX activation * %MSGOBJ_TX_LOCK .. some IRQ routine or callback on some CPU * is running inside TX activation processing code + * @rx_preconfig_id: place to store RX message identifier for some chip types + * that reuse same object for TX */ struct msgobj_t { unsigned long obj_base_addr; @@ -228,6 +229,8 @@ struct msgobj_t { struct canmsg_t rx_msg; struct chip_t *hostchip; + + unsigned long rx_preconfig_id; atomic_t obj_used; struct list_head obj_users; @@ -294,7 +297,7 @@ struct hwspecops_t { int (*init_chip_data)(struct candevice_t *candev, int chipnr); int (*init_obj_data)(struct chip_t *chip, int objnr); int (*program_irq)(struct candevice_t *candev); - void (*write_register)(unsigned char data,unsigned long address); + void (*write_register)(unsigned data,unsigned long address); unsigned (*read_register)(unsigned long address); };