X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/3a2bb63f0bb8de2aafb346b53b945c59b3f87a41..95c031e101c74ae6472a7e538f3128f67a490082:/lincan/src/c_can_irq.c diff --git a/lincan/src/c_can_irq.c b/lincan/src/c_can_irq.c index d114336..eb03ac8 100644 --- a/lincan/src/c_can_irq.c +++ b/lincan/src/c_can_irq.c @@ -23,11 +23,11 @@ union c_can_data // prototypes -inline void c_can_irq_read_handler( struct chip_t *pchip, int idxobj, u32 msgid ); +inline void c_can_irq_read_handler( struct canchip_t *pchip, int idxobj, u32 msgid ); -inline void c_can_irq_write_handler( struct chip_t *pchip, int idxobj); +inline void c_can_irq_write_handler( struct canchip_t *pchip, int idxobj); -void c_can_irq_rtr_handler( struct chip_t *pchip, int idxobj, u32 msgid ); +void c_can_irq_rtr_handler( struct canchip_t *pchip, int idxobj, u32 msgid ); u16 readMaskCM = IFXCM_ARB | IFXCM_CNTRL | IFXCM_CLRINTPND | IFXCM_TRND | IFXCM_DA | IFXCM_DB; @@ -41,7 +41,7 @@ u16 msgLstWriteMaskCM = IFXCM_CNTRL | IFXCM_WRRD; // Send a message from the output fifo ( if any ). // -inline void c_can_irq_write_handler( struct chip_t *pchip, int idxobj) +inline void c_can_irq_write_handler( struct canchip_t *pchip, int idxobj) { int cmd; struct msgobj_t *pmsgobj = pchip->msgobj[idxobj]; @@ -103,7 +103,7 @@ inline void c_can_irq_write_handler( struct chip_t *pchip, int idxobj) // Message received form the line. Write it in the input fifo-> // -inline void c_can_irq_read_handler( struct chip_t *pchip, +inline void c_can_irq_read_handler( struct canchip_t *pchip, int idxobj, u32 msgid ) { int i=0; @@ -184,7 +184,7 @@ inline void c_can_irq_read_handler( struct chip_t *pchip, // while } -void c_can_irq_sync_activities(struct chip_t *chip, struct msgobj_t *obj) +void c_can_irq_sync_activities(struct canchip_t *chip, struct msgobj_t *obj) { while(!can_msgobj_test_and_set_fl(obj,TX_LOCK)) { @@ -214,10 +214,9 @@ void c_can_irq_sync_activities(struct chip_t *chip, struct msgobj_t *obj) // c_can_irq_handler // -can_irqreturn_t c_can_irq_handler(int irq, void *dev_id, struct pt_regs *regs) +int c_can_irq_handler(int irq, struct canchip_t *chip) { struct rtr_id *rtr_search = hardware_p->rtr_queue; - struct chip_t *pchip = (struct chip_t *)dev_id; u16 chip_status; int id0=0, id1=0; u16 errcount = 0; @@ -240,7 +239,7 @@ can_irqreturn_t c_can_irq_handler(int irq, void *dev_id, struct pt_regs *regs) DEBUGMSG( "\n(c%d)IRQ handler: addr=%.8lx spurious interrupt\n", pchip->chip_idx, (long)( pchip->/*v*/chip_base_addr/* + CCSR*/)); - return CAN_IRQ_NONE; + return CANCHIP_IRQ_NONE; } DEBUGMSG( "\n(c%d)IRQ handler: addr=%.8lx irqreg=0x%.4x\n", @@ -476,14 +475,14 @@ can_irqreturn_t c_can_irq_handler(int irq, void *dev_id, struct pt_regs *regs) // Get irq status again irqreg = c_can_read_reg_w( pchip, CCINTR ); } - return CAN_IRQ_HANDLED; + return CANCHIP_IRQ_HANDLED; } /////////////////////////////////////////////////////////////////////////////// // c_can_irq_rtr_handler // -void c_can_irq_rtr_handler( struct chip_t *pchip, int idxobj, u32 msgid ) +void c_can_irq_rtr_handler( struct canchip_t *pchip, int idxobj, u32 msgid ) { short int i=0; struct rtr_id *prtr_search = hardware_p->rtr_queue;