Driver Layer

The driver must contain the following functions:

XXX_InitINITIALIZE CAN CONTROLLER
XXX_OpenLOCK A CAN CONTROLLER DEVICE
XXX_CloseRELEASE A CAN CONTROLLER DEVICE
XXX_IoCtlCONTROL THE CAN CONTROLLER DEVICE
XXX_ReadREAD DATA FROM A CAN CONTROLLER DEVICE
XXX_WriteWRITE 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).