]> rtime.felk.cvut.cz Git - lincan.git/blobdiff - lincan/include/main.h
LinCAN driver structured comments updated.
[lincan.git] / lincan / include / main.h
index b4a0b32a7eb29cf395e357d822fc1f9bb17a17fe..2fa81ced2d4dc640e6e9eaa363ad73dfc111fd5a 100644 (file)
@@ -53,6 +53,8 @@ struct canhardware_t {
  * @chip: array of pointers to the chip structures
  * @hwspecops: pointer to board specific operations
  * @hosthardware_p: pointer to the root hardware structure
  * @chip: array of pointers to the chip structures
  * @hwspecops: pointer to board specific operations
  * @hosthardware_p: pointer to the root hardware structure
+ * @sysdevptr: union reserved for pointer to bus specific
+ *     device structure (case @pcidev is used for PCI devices)
  *
  * The structure represent configuration and state of associated board.
  * The driver infrastructure prepares this structure and calls
  *
  * The structure represent configuration and state of associated board.
  * The driver infrastructure prepares this structure and calls
@@ -129,6 +131,15 @@ struct candevice_t {
  * @chipspecops: pointer to the set of chip specific object filled by init_chip_data() function
  * @hostdevice: pointer to chip hosting board
  * @max_objects: maximal number of communication objects connected to this chip
  * @chipspecops: pointer to the set of chip specific object filled by init_chip_data() function
  * @hostdevice: pointer to chip hosting board
  * @max_objects: maximal number of communication objects connected to this chip
+ * @chip_lock: reserved for synchronization of the chip supporting routines
+ *     (not used in the current driver version)
+ * @worker_thread: chip worker thread ID (RT-Linux specific field)
+ * @pend_flags: holds information about pending interrupt and tx_wake() operations
+ *     (RT-Linux specific field). Masks values:
+ *     %MSGOBJ_TX_REQUEST .. some of the message objects requires tx_wake() call, 
+ *     %MSGOBJ_IRQ_REQUEST .. chip interrupt processing required
+ *     %MSGOBJ_WORKER_WAKE .. marks, that worker thread should be waked
+ *             for some of above reasons
  *
  * The fields @write_register and @read_register are copied from
  * corresponding fields from @hwspecops structure
  *
  * The fields @write_register and @read_register are copied from
  * corresponding fields from @hwspecops structure
@@ -190,6 +201,10 @@ struct chip_t {
  * @obj_used: counter of users (associated file structures for Linux
  *     userspace clients) of this object
  * @obj_users: list of user structures of type &canuser_t.
  * @obj_used: counter of users (associated file structures for Linux
  *     userspace clients) of this object
  * @obj_users: list of user structures of type &canuser_t.
+ * @obj_flags: message object specific flags. Masks values:
+ *     %MSGOBJ_TX_REQUEST .. the message object requests TX activation
+ *     %MSGOBJ_TX_LOCK .. some IRQ routine or callback on some CPU 
+ *             is running inside TX activation processing code
  */
 struct msgobj_t {
        unsigned long obj_base_addr;
  */
 struct msgobj_t {
        unsigned long obj_base_addr;