Staging: cpc-usb: convert comment style in cpc.h
authorFelipe Balbi <me@felipebalbi.com>
Tue, 21 Jul 2009 14:35:50 +0000 (17:35 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 15 Sep 2009 19:02:05 +0000 (12:02 -0700)
Signed-off-by: Felipe Balbi <me@felipebalbi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/cpc-usb/cpc.h

index ed8cb34d4763fed17e78e86edca29beca63a6acd..b2fda5d14c1d878301ac711381b09d2da058b840 100644 (file)
 #ifndef CPC_HEADER
 #define CPC_HEADER
 
-// the maximum length of the union members within a CPC_MSG
-// this value can be defined by the customer, but has to be
-// >= 64 bytes
-// however, if not defined before, we set a length of 64 byte
+/*
+ * the maximum length of the union members within a CPC_MSG
+ * this value can be defined by the customer, but has to be
+ * >= 64 bytes
+ * however, if not defined before, we set a length of 64 byte
+ */
 #if !defined(CPC_MSG_LEN) || (CPC_MSG_LEN < 64)
 #undef CPC_MSG_LEN
 #define CPC_MSG_LEN 64
 #endif
 
-// check the operating system used
-#ifdef _WIN32 // running a Windows OS
-
-// define basic types on Windows platforms
-#ifdef _MSC_VER // Visual Studio
-       typedef unsigned __int8 u8;
-       typedef unsigned __int16 u16;
-       typedef unsigned __int32 u32;
-#else // Borland Compiler
-       typedef unsigned char u8;
-       typedef unsigned short u16;
-       typedef unsigned int u32;
-#endif
-       // on Windows OS we use a byte alignment of 1
-       #pragma pack(push, 1)
-
-       // set the calling conventions for the library function calls
-       #define CALL_CONV __stdcall
-#else
-       // Kernel headers already define this types
-       #ifndef __KERNEL__
-               // define basic types
-               typedef unsigned char u8;
-               typedef unsigned short u16;
-               typedef unsigned int u32;
-       #endif
-
-       // Linux does not use this calling convention
-       #define CALL_CONV
-#endif
-
-// Transmission of events from CPC interfaces to PC can be individually
-// controlled per event type. Default state is: don't transmit
-// Control values are constructed by bit-or of Subject and Action
-// and passed to CPC_Control()
+/*
+ * Transmission of events from CPC interfaces to PC can be individually
+ * controlled per event type. Default state is: don't transmit
+ * Control values are constructed by bit-or of Subject and Action
+ * and passed to CPC_Control()
+ */
 
-// Control-Values for CPC_Control() Command Subject Selection
+/* Control-Values for CPC_Control() Command Subject Selection */
 #define CONTR_CAN_Message 0x04
 #define CONTR_Busload    0x08
 #define        CONTR_CAN_State   0x0C
 #define        CONTR_SendAck     0x10
 #define        CONTR_Filter      0x14
-#define CONTR_CmdQueue    0x18 // reserved, do not use
+#define CONTR_CmdQueue    0x18 /* reserved, do not use */
 #define CONTR_BusError    0x1C
 
-// Control Command Actions
+/* Control Command Actions */
 #define CONTR_CONT_OFF    0
 #define CONTR_CONT_ON     1
 #define CONTR_SING_ON     2
-// CONTR_SING_ON doesn't change CONTR_CONT_ON state, so it should be
-// read as: transmit at least once
+/*
+ * CONTR_SING_ON doesn't change CONTR_CONT_ON state, so it should be
+ * read as: transmit at least once
+ */
 
-// defines for confirmed request
+/* defines for confirmed request */
 #define DO_NOT_CONFIRM 0
 #define DO_CONFIRM     1
 
-// event flags
+/* event flags */
 #define EVENT_READ 0x01
 #define EVENT_WRITE 0x02
 
-// Messages from CPC to PC contain a message object type field.
-// The following message types are sent by CPC and can be used in
-// handlers, others should be ignored.
-#define CPC_MSG_T_RESYNC        0 // Normally to be ignored
-#define CPC_MSG_T_CAN           1 // CAN data frame
-#define CPC_MSG_T_BUSLOAD       2 // Busload message
-#define CPC_MSG_T_STRING        3 // Normally to be ignored
-#define CPC_MSG_T_CONTI         4 // Normally to be ignored
-#define CPC_MSG_T_MEM           7 // Normally not to be handled
-#define        CPC_MSG_T_RTR           8 // CAN remote frame
-#define CPC_MSG_T_TXACK                9 // Send acknowledge
-#define CPC_MSG_T_POWERUP      10 // Power-up message
-#define        CPC_MSG_T_CMD_NO       11 // Normally to be ignored
-#define        CPC_MSG_T_CAN_PRMS     12 // Actual CAN parameters
-#define        CPC_MSG_T_ABORTED      13 // Command aborted message
-#define        CPC_MSG_T_CANSTATE     14 // CAN state message
-#define CPC_MSG_T_RESET        15 // used to reset CAN-Controller
-#define        CPC_MSG_T_XCAN         16 // XCAN data frame
-#define CPC_MSG_T_XRTR         17 // XCAN remote frame
-#define CPC_MSG_T_INFO         18 // information strings
-#define CPC_MSG_T_CONTROL      19 // used for control of interface/driver behaviour
-#define CPC_MSG_T_CONFIRM      20 // response type for confirmed requests
-#define CPC_MSG_T_OVERRUN      21 // response type for overrun conditions
-#define CPC_MSG_T_KEEPALIVE    22 // response type for keep alive conditions
-#define CPC_MSG_T_CANERROR     23 // response type for bus error conditions
-#define CPC_MSG_T_DISCONNECTED 24 // response type for a disconnected interface
-#define CPC_MSG_T_ERR_COUNTER  25 // RX/TX error counter of CAN controller
-
-#define CPC_MSG_T_FIRMWARE    100 // response type for USB firmware download
-
-// Messages from the PC to the CPC interface contain a command field
-// Most of the command types are wrapped by the library functions and have therefore
-// normally not to be used.
-// However, programmers who wish to circumvent the library and talk directly
-// to the drivers (mainly Linux programmers) can use the following
-// command types:
-
-#define CPC_CMD_T_CAN                 1        // CAN data frame
-#define CPC_CMD_T_CONTROL             3        // used for control of interface/driver behaviour
-#define        CPC_CMD_T_CAN_PRMS            6 // set CAN parameters
-#define        CPC_CMD_T_CLEARBUF            8 // clears input queue; this is depricated, use CPC_CMD_T_CLEAR_MSG_QUEUE instead
-#define        CPC_CMD_T_INQ_CAN_PARMS      11 // inquire actual CAN parameters
-#define        CPC_CMD_T_FILTER_PRMS        12 // set filter parameter
-#define        CPC_CMD_T_RTR                13 // CAN remote frame
-#define        CPC_CMD_T_CANSTATE           14 // CAN state message
-#define        CPC_CMD_T_XCAN               15 // XCAN data frame
-#define CPC_CMD_T_XRTR               16        // XCAN remote frame
-#define CPC_CMD_T_RESET              17        // used to reset CAN-Controller
-#define CPC_CMD_T_INQ_INFO           18        // miscellanous information strings
-#define CPC_CMD_T_OPEN_CHAN          19        // open a channel
-#define CPC_CMD_T_CLOSE_CHAN         20        // close a channel
-#define CPC_CMD_T_CNTBUF             21        // this is depricated, use CPC_CMD_T_INQ_MSG_QUEUE_CNT instead
-#define CPC_CMD_T_CAN_EXIT          200 // exit the CAN (disable interrupts; reset bootrate; reset output_cntr; mode = 1)
-
-#define CPC_CMD_T_INQ_MSG_QUEUE_CNT  CPC_CMD_T_CNTBUF   // inquires the count of elements in the message queue
-#define CPC_CMD_T_INQ_ERR_COUNTER    25                        // request the CAN controllers error counter
-#define        CPC_CMD_T_CLEAR_MSG_QUEUE    CPC_CMD_T_CLEARBUF // clear CPC_MSG queue
-#define        CPC_CMD_T_CLEAR_CMD_QUEUE    28                 // clear CPC_CMD queue
-#define CPC_CMD_T_FIRMWARE          100                 // reserved, must not be used
-#define CPC_CMD_T_USB_RESET         101                 // reserved, must not be used
-#define CPC_CMD_T_WAIT_NOTIFY       102                 // reserved, must not be used
-#define CPC_CMD_T_WAIT_SETUP        103                 // reserved, must not be used
-#define        CPC_CMD_T_ABORT             255                 // Normally not to be used
-
-// definitions for CPC_MSG_T_INFO
-// information sources
+/*
+ * Messages from CPC to PC contain a message object type field.
+ * The following message types are sent by CPC and can be used in
+ * handlers, others should be ignored.
+ */
+#define CPC_MSG_T_RESYNC        0 /* Normally to be ignored */
+#define CPC_MSG_T_CAN           1 /* CAN data frame */
+#define CPC_MSG_T_BUSLOAD       2 /* Busload message */
+#define CPC_MSG_T_STRING        3 /* Normally to be ignored */
+#define CPC_MSG_T_CONTI         4 /* Normally to be ignored */
+#define CPC_MSG_T_MEM           7 /* Normally not to be handled */
+#define        CPC_MSG_T_RTR           8 /* CAN remote frame */
+#define CPC_MSG_T_TXACK                9 /* Send acknowledge */
+#define CPC_MSG_T_POWERUP      10 /* Power-up message */
+#define        CPC_MSG_T_CMD_NO       11 /* Normally to be ignored */
+#define        CPC_MSG_T_CAN_PRMS     12 /* Actual CAN parameters */
+#define        CPC_MSG_T_ABORTED      13 /* Command aborted message */
+#define        CPC_MSG_T_CANSTATE     14 /* CAN state message */
+#define CPC_MSG_T_RESET        15 /* used to reset CAN-Controller */
+#define        CPC_MSG_T_XCAN         16 /* XCAN data frame */
+#define CPC_MSG_T_XRTR         17 /* XCAN remote frame */
+#define CPC_MSG_T_INFO         18 /* information strings */
+#define CPC_MSG_T_CONTROL      19 /* used for control of interface/driver behaviour */
+#define CPC_MSG_T_CONFIRM      20 /* response type for confirmed requests */
+#define CPC_MSG_T_OVERRUN      21 /* response type for overrun conditions */
+#define CPC_MSG_T_KEEPALIVE    22 /* response type for keep alive conditions */
+#define CPC_MSG_T_CANERROR     23 /* response type for bus error conditions */
+#define CPC_MSG_T_DISCONNECTED 24 /* response type for a disconnected interface */
+#define CPC_MSG_T_ERR_COUNTER  25 /* RX/TX error counter of CAN controller */
+
+#define CPC_MSG_T_FIRMWARE    100 /* response type for USB firmware download */
+
+/*
+ * Messages from the PC to the CPC interface contain a command field
+ * Most of the command types are wrapped by the library functions and have therefore
+ * normally not to be used.
+ * However, programmers who wish to circumvent the library and talk directly
+ * to the drivers (mainly Linux programmers) can use the following
+ * command types:
+ */
+#define CPC_CMD_T_CAN                 1        /* CAN data frame */
+#define CPC_CMD_T_CONTROL             3        /* used for control of interface/driver behaviour */
+#define        CPC_CMD_T_CAN_PRMS            6 /* set CAN parameters */
+#define        CPC_CMD_T_CLEARBUF            8 /* clears input queue; this is depricated, use CPC_CMD_T_CLEAR_MSG_QUEUE instead */
+#define        CPC_CMD_T_INQ_CAN_PARMS      11 /* inquire actual CAN parameters */
+#define        CPC_CMD_T_FILTER_PRMS        12 /* set filter parameter */
+#define        CPC_CMD_T_RTR                13 /* CAN remote frame */
+#define        CPC_CMD_T_CANSTATE           14 /* CAN state message */
+#define        CPC_CMD_T_XCAN               15 /* XCAN data frame */
+#define CPC_CMD_T_XRTR               16        /* XCAN remote frame */
+#define CPC_CMD_T_RESET              17        /* used to reset CAN-Controller */
+#define CPC_CMD_T_INQ_INFO           18        /* miscellanous information strings */
+#define CPC_CMD_T_OPEN_CHAN          19        /* open a channel */
+#define CPC_CMD_T_CLOSE_CHAN         20        /* close a channel */
+#define CPC_CMD_T_CNTBUF             21        /* this is depricated, use CPC_CMD_T_INQ_MSG_QUEUE_CNT instead */
+#define CPC_CMD_T_CAN_EXIT          200 /* exit the CAN (disable interrupts; reset bootrate; reset output_cntr; mode = 1) */
+
+#define CPC_CMD_T_INQ_MSG_QUEUE_CNT  CPC_CMD_T_CNTBUF   /* inquires the count of elements in the message queue */
+#define CPC_CMD_T_INQ_ERR_COUNTER    25                        /* request the CAN controllers error counter */
+#define        CPC_CMD_T_CLEAR_MSG_QUEUE    CPC_CMD_T_CLEARBUF /* clear CPC_MSG queue */
+#define        CPC_CMD_T_CLEAR_CMD_QUEUE    28                 /* clear CPC_CMD queue */
+#define CPC_CMD_T_FIRMWARE          100                 /* reserved, must not be used */
+#define CPC_CMD_T_USB_RESET         101                 /* reserved, must not be used */
+#define CPC_CMD_T_WAIT_NOTIFY       102                 /* reserved, must not be used */
+#define CPC_CMD_T_WAIT_SETUP        103                 /* reserved, must not be used */
+#define        CPC_CMD_T_ABORT             255                 /* Normally not to be used */
+
+/* definitions for CPC_MSG_T_INFO information sources */
 #define CPC_INFOMSG_T_UNKNOWN_SOURCE 0
 #define CPC_INFOMSG_T_INTERFACE      1
 #define CPC_INFOMSG_T_DRIVER         2
 #define CPC_INFOMSG_T_LIBRARY        3
 
-// information types
+/* information types */
 #define CPC_INFOMSG_T_UNKNOWN_TYPE   0
 #define CPC_INFOMSG_T_VERSION        1
 #define CPC_INFOMSG_T_SERIAL         2
 
-// definitions for controller types
-#define PCA82C200   1 // Philips basic CAN controller, replaced by SJA1000
-#define SJA1000     2 // Philips basic CAN controller
-#define AN82527     3 // Intel full CAN controller
-#define M16C_BASIC  4 // M16C controller running in basic CAN (not full CAN) mode
-
-// channel open error codes
-#define CPC_ERR_NO_FREE_CHANNEL            -1  // no more free space within the channel array
-#define CPC_ERR_CHANNEL_ALREADY_OPEN       -2  // the channel is already open
-#define CPC_ERR_CHANNEL_NOT_ACTIVE         -3  // access to a channel not active failed
-#define CPC_ERR_NO_DRIVER_PRESENT          -4  // no driver at the location searched by the library
-#define CPC_ERR_NO_INIFILE_PRESENT         -5  // the library could not find the inifile
-#define CPC_ERR_WRONG_PARAMETERS           -6  // wrong parameters in the inifile
-#define CPC_ERR_NO_INTERFACE_PRESENT       -7  // 1. The specified interface is not connected
-                                               // 2. The interface (mostly CPC-USB) was disconnected upon operation
-#define CPC_ERR_NO_MATCHING_CHANNEL        -8  // the driver couldn't find a matching channel
-#define CPC_ERR_NO_BUFFER_AVAILABLE        -9  // the driver couldn't allocate buffer for messages
-#define CPC_ERR_NO_INTERRUPT               -10 // the requested interrupt couldn't be claimed
-#define CPC_ERR_NO_MATCHING_INTERFACE      -11 // no interface type related to this channel was found
-#define CPC_ERR_NO_RESOURCES               -12 // the requested resources could not be claimed
-#define CPC_ERR_SOCKET                     -13 // error concerning TCP sockets
-
-// init error codes
-#define CPC_ERR_WRONG_CONTROLLER_TYPE      -14 // wrong CAN controller type within initialization
-#define CPC_ERR_NO_RESET_MODE              -15 // the controller could not be set into reset mode
-#define CPC_ERR_NO_CAN_ACCESS              -16 // the CAN controller could not be accessed
-
-// transmit error codes
-#define CPC_ERR_CAN_WRONG_ID               -20 // the provided CAN id is too big
-#define CPC_ERR_CAN_WRONG_LENGTH           -21 // the provided CAN length is too long
-#define CPC_ERR_CAN_NO_TRANSMIT_BUF        -22 // the transmit buffer was occupied
-#define CPC_ERR_CAN_TRANSMIT_TIMEOUT       -23 // The message could not be sent within a
-                                               // specified time
-
-// other error codes
-#define CPC_ERR_SERVICE_NOT_SUPPORTED      -30 // the requested service is not supported by the interface
-#define CPC_ERR_IO_TRANSFER                -31 // a transmission error down to the driver occurred
-#define CPC_ERR_TRANSMISSION_FAILED        -32 // a transmission error down to the interface occurred
-#define CPC_ERR_TRANSMISSION_TIMEOUT       -33 // a timeout occurred within transmission to the interface
-#define CPC_ERR_OP_SYS_NOT_SUPPORTED       -35 // the operating system is not supported
-#define CPC_ERR_UNKNOWN                    -40 // an unknown error ocurred (mostly IOCTL errors)
-
-#define CPC_ERR_LOADING_DLL                -50 // the library 'cpcwin.dll' could not be loaded
-#define CPC_ERR_ASSIGNING_FUNCTION         -51 // the specified function could not be assigned
-#define CPC_ERR_DLL_INITIALIZATION         -52 // the DLL was not initialized correctly
-#define CPC_ERR_MISSING_LICFILE            -55 // the file containing the licenses does not exist
-#define CPC_ERR_MISSING_LICENSE            -56 // a required license was not found
-
-// CAN state bit values. Ignore any bits not listed
+/* definitions for controller types */
+#define PCA82C200   1 /* Philips basic CAN controller, replaced by SJA1000 */
+#define SJA1000     2 /* Philips basic CAN controller */
+#define AN82527     3 /* Intel full CAN controller */
+#define M16C_BASIC  4 /* M16C controller running in basic CAN (not full CAN) mode */
+
+/* channel open error codes */
+#define CPC_ERR_NO_FREE_CHANNEL            -1  /* no more free space within the channel array */
+#define CPC_ERR_CHANNEL_ALREADY_OPEN       -2  /* the channel is already open */
+#define CPC_ERR_CHANNEL_NOT_ACTIVE         -3  /* access to a channel not active failed */
+#define CPC_ERR_NO_DRIVER_PRESENT          -4  /* no driver at the location searched by the library */
+#define CPC_ERR_NO_INIFILE_PRESENT         -5  /* the library could not find the inifile */
+#define CPC_ERR_WRONG_PARAMETERS           -6  /* wrong parameters in the inifile */
+#define CPC_ERR_NO_INTERFACE_PRESENT       -7  /* 1. The specified interface is not connected */
+                                               /* 2. The interface (mostly CPC-USB) was disconnected upon operation */
+#define CPC_ERR_NO_MATCHING_CHANNEL        -8  /* the driver couldn't find a matching channel */
+#define CPC_ERR_NO_BUFFER_AVAILABLE        -9  /* the driver couldn't allocate buffer for messages */
+#define CPC_ERR_NO_INTERRUPT               -10 /* the requested interrupt couldn't be claimed */
+#define CPC_ERR_NO_MATCHING_INTERFACE      -11 /* no interface type related to this channel was found */
+#define CPC_ERR_NO_RESOURCES               -12 /* the requested resources could not be claimed */
+#define CPC_ERR_SOCKET                     -13 /* error concerning TCP sockets */
+
+/* init error codes */
+#define CPC_ERR_WRONG_CONTROLLER_TYPE      -14 /* wrong CAN controller type within initialization */
+#define CPC_ERR_NO_RESET_MODE              -15 /* the controller could not be set into reset mode */
+#define CPC_ERR_NO_CAN_ACCESS              -16 /* the CAN controller could not be accessed */
+
+/* transmit error codes */
+#define CPC_ERR_CAN_WRONG_ID               -20 /* the provided CAN id is too big */
+#define CPC_ERR_CAN_WRONG_LENGTH           -21 /* the provided CAN length is too long */
+#define CPC_ERR_CAN_NO_TRANSMIT_BUF        -22 /* the transmit buffer was occupied */
+#define CPC_ERR_CAN_TRANSMIT_TIMEOUT       -23 /* The message could not be sent within a */
+                                               /* specified time */
+
+/* other error codes */
+#define CPC_ERR_SERVICE_NOT_SUPPORTED      -30 /* the requested service is not supported by the interface */
+#define CPC_ERR_IO_TRANSFER                -31 /* a transmission error down to the driver occurred */
+#define CPC_ERR_TRANSMISSION_FAILED        -32 /* a transmission error down to the interface occurred */
+#define CPC_ERR_TRANSMISSION_TIMEOUT       -33 /* a timeout occurred within transmission to the interface */
+#define CPC_ERR_OP_SYS_NOT_SUPPORTED       -35 /* the operating system is not supported */
+#define CPC_ERR_UNKNOWN                    -40 /* an unknown error ocurred (mostly IOCTL errors) */
+
+#define CPC_ERR_LOADING_DLL                -50 /* the library 'cpcwin.dll' could not be loaded */
+#define CPC_ERR_ASSIGNING_FUNCTION         -51 /* the specified function could not be assigned */
+#define CPC_ERR_DLL_INITIALIZATION         -52 /* the DLL was not initialized correctly */
+#define CPC_ERR_MISSING_LICFILE            -55 /* the file containing the licenses does not exist */
+#define CPC_ERR_MISSING_LICENSE            -56 /* a required license was not found */
+
+/* CAN state bit values. Ignore any bits not listed */
 #define CPC_CAN_STATE_BUSOFF     0x80
 #define CPC_CAN_STATE_ERROR      0x40
 
-// Mask to help ignore undefined bits
+/* Mask to help ignore undefined bits */
 #define CPC_CAN_STATE_MASK       0xc0
 
-// CAN-Message representation in a CPC_MSG
-// Message object type is CPC_MSG_T_CAN or CPC_MSG_T_RTR
-// or CPC_MSG_T_XCAN or CPC_MSG_T_XRTR
+/*
+ * CAN-Message representation in a CPC_MS
+ * Message object type is CPC_MSG_T_CAN or CPC_MSG_T_RTR
+ * or CPC_MSG_T_XCAN or CPC_MSG_T_XRTR
+ */
 typedef struct CPC_CAN_MSG {
        u32 id;
        u8 length;
        u8 msg[8];
 } CPC_CAN_MSG_T;
 
-
-// representation of the CAN parameters for the PCA82C200 controller
+/* representation of the CAN parameters for the PCA82C200 controller */
 typedef struct CPC_PCA82C200_PARAMS {
-       u8 acc_code;    // Acceptance-code for receive, Standard: 0
-       u8 acc_mask;    // Acceptance-mask for receive, Standard: 0xff (everything)
-       u8 btr0;        // Bus-timing register 0
-       u8 btr1;        // Bus-timing register 1
-       u8 outp_contr;  // Output-control register
+       u8 acc_code;    /* Acceptance-code for receive, Standard: 0 */
+       u8 acc_mask;    /* Acceptance-mask for receive, Standard: 0xff (everything) */
+       u8 btr0;        /* Bus-timing register 0 */
+       u8 btr1;        /* Bus-timing register 1 */
+       u8 outp_contr;  /* Output-control register */
 } CPC_PCA82C200_PARAMS_T;
 
-// representation of the CAN parameters for the SJA1000 controller
+/* representation of the CAN parameters for the SJA1000 controller */
 typedef struct CPC_SJA1000_PARAMS {
-       u8 mode;        // enables single or dual acceptance filtering
-       u8 acc_code0;   // Acceptance-code for receive, Standard: 0
+       u8 mode;        /* enables single or dual acceptance filtering */
+       u8 acc_code0;   /* Acceptance-code for receive, Standard: 0 */
        u8 acc_code1;
        u8 acc_code2;
        u8 acc_code3;
-       u8 acc_mask0;   // Acceptance-mask for receive, Standard: 0xff (everything)
+       u8 acc_mask0;   /* Acceptance-mask for receive, Standard: 0xff (everything) */
        u8 acc_mask1;
        u8 acc_mask2;
        u8 acc_mask3;
-       u8 btr0;        // Bus-timing register 0
-       u8 btr1;        // Bus-timing register 1
-       u8 outp_contr;  // Output-control register
+       u8 btr0;        /* Bus-timing register 0 */
+       u8 btr1;        /* Bus-timing register 1 */
+       u8 outp_contr;  /* Output-control register */
 } CPC_SJA1000_PARAMS_T;
 
-// representation of the CAN parameters for the M16C controller
-// in basic CAN mode (means no full CAN)
+/*
+ * representation of the CAN parameters for the M16C controller
+ * in basic CAN mode (means no full CAN)
+ */
 typedef struct CPC_M16C_BASIC_PARAMS {
        u8 con0;
        u8 con1;
@@ -267,9 +247,9 @@ typedef struct CPC_M16C_BASIC_PARAMS {
        u8 acc_ext_mask3;
 } CPC_M16C_BASIC_PARAMS_T;
 
-// CAN params message representation
+/* CAN params message representation */
 typedef struct CPC_CAN_PARAMS {
-       u8 cc_type;     // represents the controller type
+       u8 cc_type;     /* represents the controller type */
        union {
                CPC_M16C_BASIC_PARAMS_T m16c_basic;
                CPC_SJA1000_PARAMS_T sja1000;
@@ -277,111 +257,108 @@ typedef struct CPC_CAN_PARAMS {
        } cc_params;
 } CPC_CAN_PARAMS_T;
 
-// the following structures are slightly different for Windows and Linux
-// To be able to use the 'Select' mechanism with Linux the application
-// needs to know the devices file desciptor.
-// This mechanism is not implemented within Windows and the file descriptor
-// is therefore not needed
-#ifdef _WIN32
-
-// CAN init params message representation
-typedef struct CPC_INIT_PARAMS {
-       CPC_CAN_PARAMS_T canparams;
-} CPC_INIT_PARAMS_T;
-
-#else// Linux
-
-// CHAN init params representation
+/* CHAN init params representation */
 typedef struct CPC_CHAN_PARAMS {
        int fd;
 } CPC_CHAN_PARAMS_T;
 
-// CAN init params message representation
+/* CAN init params message representation */
 typedef struct CPC_INIT_PARAMS {
        CPC_CHAN_PARAMS_T chanparams;
        CPC_CAN_PARAMS_T canparams;
 } CPC_INIT_PARAMS_T;
 
-#endif
-
-// structure for confirmed message handling
+/* structure for confirmed message handling */
 typedef struct CPC_CONFIRM {
-       u8 result; // error code
+       u8 result; /* error code */
 } CPC_CONFIRM_T;
 
-// structure for information requests
+/* structure for information requests */
 typedef struct CPC_INFO {
-       u8 source;                 // interface, driver or library
-       u8 type;                   // version or serial number
-       char msg[CPC_MSG_LEN - 2]; // string holding the requested information
+       u8 source;                 /* interface, driver or library */
+       u8 type;                   /* version or serial number */
+       char msg[CPC_MSG_LEN - 2]; /* string holding the requested information */
 } CPC_INFO_T;
 
-// OVERRUN ///////////////////////////////////////
-// In general two types of overrun may occur.
-// A hardware overrun, where the CAN controller
-// lost a message, because the interrupt was
-// not handled before the next messgae comes in.
-// Or a software overrun, where i.e. a received
-// message could not be stored in the CPC_MSG
-// buffer.
-
-// After a software overrun has occurred
-// we wait until we have CPC_OVR_GAP slots
-// free in the CPC_MSG buffer.
+/*
+ * OVERRUN
+ * In general two types of overrun may occur.
+ * A hardware overrun, where the CAN controller
+ * lost a message, because the interrupt was
+ * not handled before the next messgae comes in.
+ * Or a software overrun, where i.e. a received
+ * message could not be stored in the CPC_MSG
+ * buffer.
+ */
+
+/* After a software overrun has occurred
+ * we wait until we have CPC_OVR_GAP slots
+ * free in the CPC_MSG buffer.
+ */
 #define CPC_OVR_GAP               10
 
-// Two types of software overrun may occur.
-// A received CAN message or a CAN state event
-// can cause an overrun.
-// Note: A CPC_CMD which would normally store
-// its result immediately in the CPC_MSG
-// queue may fail, because the message queue is full.
-// This will not generate an overrun message, but
-// will halt command execution, until this command
-// is able to store its message in the message queue.
+/*
+ * Two types of software overrun may occur.
+ * A received CAN message or a CAN state event
+ * can cause an overrun.
+ * Note: A CPC_CMD which would normally store
+ * its result immediately in the CPC_MSG
+ * queue may fail, because the message queue is full.
+ * This will not generate an overrun message, but
+ * will halt command execution, until this command
+ * is able to store its message in the message queue.
+ */
 #define CPC_OVR_EVENT_CAN       0x01
 #define CPC_OVR_EVENT_CANSTATE  0x02
 #define CPC_OVR_EVENT_BUSERROR  0x04
 
-// If the CAN controller lost a message
-// we indicate it with the highest bit
-// set in the count field.
+/*
+ * If the CAN controller lost a message
+ * we indicate it with the highest bit
+ * set in the count field.
+ */
 #define CPC_OVR_HW              0x80
 
-// structure for overrun conditions
+/* structure for overrun conditions */
 typedef struct {
        u8 event;
        u8 count;
 } CPC_OVERRUN_T;
 
-// CAN errors ////////////////////////////////////
-// Each CAN controller type has different
-// registers to record errors.
-// Therefor a structure containing the specific
-// errors is set up for each controller here
+/*
+ * CAN errors
+ * Each CAN controller type has different
+ * registers to record errors.
+ * Therefor a structure containing the specific
+ * errors is set up for each controller here
+ */
 
-// SJA1000 error structure
-// see the SJA1000 datasheet for detailed
-// explanation of the registers
+/*
+ * SJA1000 error structure
+ * see the SJA1000 datasheet for detailed
+ * explanation of the registers
+ */
 typedef struct CPC_SJA1000_CAN_ERROR {
-       u8 ecc;   // error capture code register
-       u8 rxerr; // RX error counter register
-       u8 txerr; // TX error counter register
+       u8 ecc;   /* error capture code register */
+       u8 rxerr; /* RX error counter register */
+       u8 txerr; /* TX error counter register */
 } CPC_SJA1000_CAN_ERROR_T;
 
-// M16C error structure
-// see the M16C datasheet for detailed
-// explanation of the registers
+/*
+ * M16C error structure
+ * see the M16C datasheet for detailed
+ * explanation of the registers
+ */
 typedef struct CPC_M16C_CAN_ERROR {
-       u8 tbd; // to be defined
+       u8 tbd; /* to be defined */
 } CPC_M16C_CAN_ERROR_T;
 
-// structure for CAN error conditions
+/* structure for CAN error conditions */
 #define  CPC_CAN_ECODE_ERRFRAME   0x01
 typedef struct CPC_CAN_ERROR {
        u8 ecode;
        struct {
-               u8 cc_type; // CAN controller type
+               u8 cc_type; /* CAN controller type */
                union {
                        CPC_SJA1000_CAN_ERROR_T sja1000;
                        CPC_M16C_CAN_ERROR_T m16c;
@@ -389,36 +366,40 @@ typedef struct CPC_CAN_ERROR {
        } cc;
 } CPC_CAN_ERROR_T;
 
-// Structure containing RX/TX error counter.
-// This structure is used to request the
-// values of the CAN controllers TX and RX
-// error counter.
+/*
+ * Structure containing RX/TX error counter.
+ * This structure is used to request the
+ * values of the CAN controllers TX and RX
+ * error counter.
+ */
 typedef struct CPC_CAN_ERR_COUNTER {
        u8 rx;
        u8 tx;
 } CPC_CAN_ERR_COUNTER_T;
 
-// If this flag is set, transmissions from PC to CPC are protected against loss
+/* If this flag is set, transmissions from PC to CPC are protected against loss */
 #define CPC_SECURE_TO_CPC      0x01
 
-// If this flag is set, transmissions from CPC to PC are protected against loss
+/* If this flag is set, transmissions from CPC to PC are protected against loss */
 #define CPC_SECURE_TO_PC       0x02
 
-// If this flag is set, the CAN-transmit buffer is checked to be free before sending a message
+/* If this flag is set, the CAN-transmit buffer is checked to be free before sending a message */
 #define CPC_SECURE_SEND                0x04
 
-// If this flag is set, the transmission complete flag is checked
-// after sending a message
-// THIS IS CURRENTLY ONLY IMPLEMENTED IN THE PASSIVE INTERFACE DRIVERS
+/*
+ * If this flag is set, the transmission complete flag is checked
+ * after sending a message
+ * THIS IS CURRENTLY ONLY IMPLEMENTED IN THE PASSIVE INTERFACE DRIVERS
+ */
 #define CPC_SECURE_TRANSMIT    0x08
 
-// main message type used between library and application
+/* main message type used between library and application */
 typedef struct CPC_MSG {
-       u8 type;        // type of message
-       u8 length;      // length of data within union 'msg'
-       u8 msgid;       // confirmation handle
-       u32 ts_sec;     // timestamp in seconds
-       u32 ts_nsec;    // timestamp in nano seconds
+       u8 type;        /* type of message */
+       u8 length;      /* length of data within union 'msg' */
+       u8 msgid;       /* confirmation handle */
+       u32 ts_sec;     /* timestamp in seconds */
+       u32 ts_nsec;    /* timestamp in nano seconds */
        union {
                u8 generic[CPC_MSG_LEN];
                CPC_CAN_MSG_T canmsg;
@@ -433,8 +414,4 @@ typedef struct CPC_MSG {
        } msg;
 } CPC_MSG_T;
 
-#ifdef _WIN32
-#pragma pack(pop)              // reset the byte alignment
-#endif
-
-#endif                         // CPC_HEADER
+#endif /* CPC_HEADER */