Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/devman/devman.h

    r80a96d2 r45059d6b  
    6363typedef struct fun_node fun_node_t;
    6464
    65 typedef struct {
    66         fibril_mutex_t mutex;
    67         struct driver *driver;
    68 } client_t;
    69 
    7065typedef enum {
    7166        /** Driver has not been started. */
     
    118113} driver_list_t;
    119114
    120 /** Device state */
     115/** The state of the device. */
    121116typedef enum {
    122117        DEVICE_NOT_INITIALIZED = 0,
    123118        DEVICE_USABLE,
    124119        DEVICE_NOT_PRESENT,
    125         DEVICE_INVALID,
    126         /** Device node has been removed from the tree */
    127         DEVICE_REMOVED
     120        DEVICE_INVALID
    128121} device_state_t;
    129122
    130123/** Device node in the device tree. */
    131124struct dev_node {
    132         /** Reference count */
    133         atomic_t refcnt;
    134        
    135125        /** The global unique identifier of the device. */
    136126        devman_handle_t handle;
     
    159149};
    160150
    161 /** Function state */
    162 typedef enum {
    163         FUN_INIT = 0,
    164         FUN_OFF_LINE,
    165         FUN_ON_LINE,
    166         /** Function node has been removed from the tree */
    167         FUN_REMOVED
    168 } fun_state_t;
    169 
    170151/** Function node in the device tree. */
    171152struct fun_node {
    172         /** Reference count */
    173         atomic_t refcnt;
    174         /** State */
    175         fun_state_t state;
    176        
    177153        /** The global unique identifier of the function */
    178154        devman_handle_t handle;
     
    258234
    259235extern void add_driver(driver_list_t *, driver_t *);
    260 extern void attach_driver(dev_tree_t *, dev_node_t *, driver_t *);
    261 extern void detach_driver(dev_tree_t *, dev_node_t *);
     236extern void attach_driver(dev_node_t *, driver_t *);
    262237extern void add_device(driver_t *, dev_node_t *, dev_tree_t *);
    263238extern bool start_driver(driver_t *);
    264 extern int driver_dev_remove(dev_tree_t *, dev_node_t *);
    265 extern int driver_dev_gone(dev_tree_t *, dev_node_t *);
    266 extern int driver_fun_online(dev_tree_t *, fun_node_t *);
    267 extern int driver_fun_offline(dev_tree_t *, fun_node_t *);
    268239
    269240extern driver_t *find_driver(driver_list_t *, const char *);
     
    278249extern dev_node_t *create_dev_node(void);
    279250extern void delete_dev_node(dev_node_t *node);
    280 extern void dev_add_ref(dev_node_t *);
    281 extern void dev_del_ref(dev_node_t *);
    282251extern dev_node_t *find_dev_node_no_lock(dev_tree_t *tree,
    283252    devman_handle_t handle);
     
    289258extern fun_node_t *create_fun_node(void);
    290259extern void delete_fun_node(fun_node_t *);
    291 extern void fun_add_ref(fun_node_t *);
    292 extern void fun_del_ref(fun_node_t *);
    293260extern fun_node_t *find_fun_node_no_lock(dev_tree_t *tree,
    294261    devman_handle_t handle);
    295262extern fun_node_t *find_fun_node(dev_tree_t *tree, devman_handle_t handle);
    296263extern fun_node_t *find_fun_node_by_path(dev_tree_t *, char *);
    297 extern fun_node_t *find_fun_node_in_device(dev_tree_t *tree, dev_node_t *,
    298     const char *);
     264extern fun_node_t *find_fun_node_in_device(dev_node_t *, const char *);
    299265
    300266/* Device tree */
     
    303269extern bool create_root_nodes(dev_tree_t *);
    304270extern bool insert_dev_node(dev_tree_t *, dev_node_t *, fun_node_t *);
    305 extern void remove_dev_node(dev_tree_t *, dev_node_t *);
    306271extern bool insert_fun_node(dev_tree_t *, fun_node_t *, char *, dev_node_t *);
    307272extern void remove_fun_node(dev_tree_t *, fun_node_t *);
Note: See TracChangeset for help on using the changeset viewer.