Changeset ad7a6c9 in mainline for uspace/lib/drv/include/dev_iface.h


Ignore:
Timestamp:
2011-03-30T13:10:24Z (15 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
4ae90f9
Parents:
6e50466 (diff), d6b81941 (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/dev_iface.h

    r6e50466 rad7a6c9  
    3636#define LIBDRV_DEV_IFACE_H_
    3737
    38 #include "driver.h"
     38#include <ipc/common.h>
     39#include <ipc/dev_iface.h>
    3940
    40 /* TODO declare device interface structures here */
     41/*
     42 * Device interface
     43 */
     44
     45struct ddf_fun;
     46
     47/*
     48 * First two parameters: device and interface structure registered by the
     49 * devices driver.
     50 */
     51typedef void remote_iface_func_t(struct ddf_fun *, void *, ipc_callid_t,
     52    ipc_call_t *);
     53typedef remote_iface_func_t *remote_iface_func_ptr_t;
     54typedef void remote_handler_t(struct ddf_fun *, ipc_callid_t, ipc_call_t *);
     55
     56typedef struct {
     57        size_t method_count;
     58        remote_iface_func_ptr_t *methods;
     59} remote_iface_t;
     60
     61typedef struct {
     62        remote_iface_t *ifaces[DEV_IFACE_COUNT];
     63} iface_dipatch_table_t;
     64
     65extern remote_iface_t *get_remote_iface(int);
     66extern remote_iface_func_ptr_t get_remote_method(remote_iface_t *, sysarg_t);
     67
     68
     69extern bool is_valid_iface_idx(int);
    4170
    4271#endif
Note: See TracChangeset for help on using the changeset viewer.