Hi,
I have HW with Infineon TwinCAN 82C900 - chip in it. Previously I have used Intel 82527 so I'm not entirely new with CAN.
I have ported i82527 driver to work with 82C900. Only thing is that it's not working and that's why I'm asking some help here.
At the moment there are two main problems. I can't get interrupts from chip and I can't send anything from chip(or at least receiver on the bus don't get any messages).
I have configured messages pretty much same than in i82527. Device 0 uses messages 0 - 15 and device 1 uses messages 16 - 31. Device 0 uses node 0 for interrupts and device 1 uses node 1.
I have wrote in to GLOBCTR - register value 0xA004(or 0xA007 makes no difference) to enable /OUT0 as interrupt output. When I try to send message INTCTR - register shows value 0x1 as pending interrupt for node 0, but CPU don't get interrupt from CAN - chip. If I do not write 0xA004 to GLOBCTR - register I get lots of interrupts(like I should since /OUT0 is acting like clock output) so I think CPU end _should_ be configured correctly.
Is there something else I should do to get interrupts from the chip? I've tried to look for every possible interrupt mask etc. but still no interrupts. I tried to look from the net for example how to initialize the chip, but couldn't found any. I'm using multiplexed paraller bus and since I can write value and read same value out I _think_ read/write functions are working ok.
Thanks.
-- Teemu Keskinarkaus @ Plenware Group