Changeset e85920d in mainline for uspace/srv/devman/devman.h
- Timestamp:
- 2010-02-18T15:23:15Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 0c3666d
- Parents:
- 08d9c4e6
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/devman/devman.h
r08d9c4e6 re85920d 40 40 #include <adt/list.h> 41 41 #include <ipc/ipc.h> 42 #include <fibril_synch.h> 42 43 43 44 #include "util.h" … … 74 75 } match_id_list_t; 75 76 77 typedef enum { 78 /** driver has not been started */ 79 DRIVER_NOT_STARTED = 0, 80 /** driver has been started, but has not registered as running and ready to receive requests */ 81 DRIVER_STARTING, 82 /** driver is running and prepared to serve incomming requests */ 83 DRIVER_RUNNING 84 } driver_state_t; 85 76 86 /** Representation of device driver. 77 87 */ … … 79 89 /** Pointers to previous and next drivers in a linked list */ 80 90 link_t drivers; 81 /** Specifies whether the driver has been started .*/82 bool running;91 /** Specifies whether the driver has been started and wheter is running and prepared to receive requests.*/ 92 int state; 83 93 /** Phone asociated with this driver */ 84 94 ipcarg_t phone; … … 91 101 /** Pointer to the linked list of devices controlled by this driver */ 92 102 link_t devices; 103 /** Fibril mutex for this driver - driver state, list of devices, phone.*/ 104 fibril_mutex_t driver_mutex; 93 105 } driver_t; 106 107 /** The list of drivers. */ 108 typedef struct driver_list { 109 /** List of drivers */ 110 link_t drivers; 111 /** Fibril mutex for list of drivers. */ 112 fibril_mutex_t drivers_mutex; 113 } driver_list_t; 94 114 95 115 /** Representation of a node in the device tree.*/ … … 101 121 /** List of child device nodes. */ 102 122 link_t children; 123 /** Fibril mutex for the list of child device nodes of this node. */ 124 fibril_mutex_t children_mutex; 103 125 /** List of device ids for device-to-driver matching.*/ 104 126 match_id_list_t match_ids;
Note:
See TracChangeset
for help on using the changeset viewer.