vcan_status_dataΒΆ

Here is the definition:

typedef struct
  { vcan_status_tag tag     CDEP_NOALIGN_ATTR;
    vcan_errcodes   errcode CDEP_NOALIGN_ATTR; /* 0 in case of no error */
    union { vcan_initdata      init  CDEP_NOALIGN_ATTR;
                             /* ^^^data for card initialization */
            vcan_resetdata     reset CDEP_NOALIGN_ATTR;
                             /* ^^^data for the resetting of the card  */
            vcan_linkdata      link  CDEP_NOALIGN_ATTR;
                             /* ^^^data for LINK/UNLINK command */
            vcan_object        obj   CDEP_NOALIGN_ATTR;
                             /* ^^^data for periodic transfer setting */
            vcan_signal_object s_obj;
                             /* ^^^data of a signal-object, deprecated */
            vcan_object_mode   mode  CDEP_NOALIGN_ATTR;
                             /* ^^^data for object-mode setting/getting */
            vcan_16b_dump      b16   CDEP_NOALIGN_ATTR;
                             /* ^^^struct. to dump a data- or ctrl-struct.*/
            vcan_pb_dump       pb    CDEP_NOALIGN_ATTR;
                             /* ^^^struct. to dump parts of the pbuffer */
          } data;
  } vcan_status_data;

This is the driver-call-structure that is used in conjunction with the status driver-function (note that the ioctl command-parameter that starts this function is named VCAN_IOCTL_CAN). This structure contains a tag-field that defines the driver-sub-function that is to be called. It also contains information that varies for each of the driver-sub-functions which is represented in the union named data.

tag

This is the tag-field that specifies the kind of status-operation that is to be performed.

errcode

This field contains the error-code after the operation was performed.

data

This a union that contains data that varies for each operation.

  • init: This is the data for the VCAN_INIT status-operation.

  • reset: This is the data for the VCAN_RESET status-operation.

  • link: This is the data for the VCAN_LINK and the VCAN_UNLINK status-operation.

  • obj: This is the data for the VCAN_START_PER_XFER and the VCAN_STOP_PER_XFER status-operation.

  • s_obj: This is the data for the VCAN_OBJECT_SIGNAL status-operation.

  • mode: This is the data for the VCAN_OBJECT_MODE status-operation.

  • b16: This is the data for the VCAN_READ_OBJ_DATA and the VCAN_READ_OBJ_CTRL status-operation.

  • pb: This is the data for the VCAN_READ_PBUFFER status-operation.