X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/a4c9ead4b64bd4de307f375c2ff313a7a07a06e0..3a2bb63f0bb8de2aafb346b53b945c59b3f87a41:/lincan/src/i82527.c diff --git a/lincan/src/i82527.c b/lincan/src/i82527.c index f71a16a..682374a 100644 --- a/lincan/src/i82527.c +++ b/lincan/src/i82527.c @@ -425,6 +425,9 @@ void i82527_irq_write_handler(struct chip_t *chip, struct msgobj_t *obj) if(obj->tx_slot){ /* Do local transmitted message distribution if enabled */ if (processlocal){ + /* fill CAN message timestamp */ + can_filltimestamp(&obj->tx_slot->msg.timestamp); + obj->tx_slot->msg.flags |= MSG_LOCAL; canque_filter_msg2edges(obj->qends, &obj->tx_slot->msg); } @@ -514,6 +517,9 @@ void i82527_irq_read_handler(struct chip_t *chip, struct msgobj_t *obj, int objn } + /* fill CAN message timestamp */ + can_filltimestamp(&obj->rx_msg.timestamp); + canque_filter_msg2edges(obj->qends, &obj->rx_msg); if (msgctl1 & NEWD_SET) @@ -744,3 +750,11 @@ int i82527_register(struct chipspecops_t *chipspecops) chipspecops->irq_handler = i82527_irq_handler; return 0; } + +int i82527_fill_chipspecops(struct chip_t *chip) +{ + chip->chip_type="i82527"; + chip->max_objects=15; + i82527_register(chip->chipspecops); + return 0; +}