Driver Layer
The driver must contain the following functions:
XXX_Init | INITIALIZE CAN CONTROLLER |
XXX_Open | LOCK A CAN CONTROLLER DEVICE |
XXX_Close | RELEASE A CAN CONTROLLER DEVICE |
XXX_IoCtl | CONTROL THE CAN CONTROLLER DEVICE |
XXX_Read | READ DATA FROM A CAN CONTROLLER DEVICE |
XXX_Write | WRITE DATA TO A CAN CONTROLLER DEVICE |
Where XXX is the exact chip identification.
Examples
A device driver for an external SJA1000 chip, the init function is labeled SJA1000_Init
A device driver for the internal CAN controllers #0..#2 of the TriCore 1796, the init function is labeled TC1796_Init.
(Note: the three CAN controllers within the chip are addressed via the device name. Details are described later in this chapter).