Changeset c05642d in mainline for uspace/lib/drv/include/ddf/driver.h


Ignore:
Timestamp:
2011-09-07T00:03:26Z (13 years ago)
Author:
Petr Koupy <petr.koupy@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
5081276
Parents:
bb74dabe (diff), 038b289 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/include/ddf/driver.h

    rbb74dabe rc05642d  
    8181         */
    8282        devman_handle_t handle;
     83        /** Reference count */
     84        atomic_t refcnt;
    8385       
    8486        /**
     
    104106        /** Function indentifier (asigned by device manager) */
    105107        devman_handle_t handle;
     108        /** Reference count */
     109        atomic_t refcnt;
    106110       
    107111        /** Device which this function belogs to */
     
    132136typedef struct driver_ops {
    133137        /** Callback method for passing a new device to the device driver */
    134         int (*add_device)(ddf_dev_t *dev);
    135         /* TODO: add other generic driver operations */
     138        int (*add_device)(ddf_dev_t *);
     139        /** Ask driver to remove a device */
     140        int (*dev_remove)(ddf_dev_t *);
     141        /** Inform driver a device disappeared */
     142        int (*dev_gone)(ddf_dev_t *);
     143        /** Ask driver to online a specific function */
     144        int (*fun_online)(ddf_fun_t *);
     145        /** Ask driver to offline a specific function */
     146        int (*fun_offline)(ddf_fun_t *);
    136147} driver_ops_t;
    137148
     
    146157extern int ddf_driver_main(driver_t *);
    147158
     159extern void *ddf_dev_data_alloc(ddf_dev_t *, size_t);
    148160extern ddf_fun_t *ddf_fun_create(ddf_dev_t *, fun_type_t, const char *);
    149161extern void ddf_fun_destroy(ddf_fun_t *);
     162extern void *ddf_fun_data_alloc(ddf_fun_t *, size_t);
    150163extern int ddf_fun_bind(ddf_fun_t *);
    151164extern int ddf_fun_unbind(ddf_fun_t *);
     165extern int ddf_fun_online(ddf_fun_t *);
     166extern int ddf_fun_offline(ddf_fun_t *);
    152167extern int ddf_fun_add_match_id(ddf_fun_t *, const char *, int);
    153168
Note: See TracChangeset for help on using the changeset viewer.