Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • contrib/arch/uspace/srv/devmap/devmap.adl

    rafe34be r07fdf203  
    1 interface devmap_driver {
     1interface device_mapper_driver {
    22                /* Establish connection (iface is DEVMAP_DRIVER) */
    33                ipcarg_t ipc_m_connect_me_to(in ipcarg_t iface);
    44               
    55                /* Register as a new driver */
    6                 ipcarg_t driver_register(in_copy string name);
     6                ipcarg_t driver_register(void);
    77               
    88                /* Unregister all devices and the driver itself */
     
    1010               
    1111                /* Register new device and return handle */
    12                 ipcarg_t device_register(in_copy string name, out ipcarg_t handle);
     12                ipcarg_t device_register(out ipcarg_t handle);
    1313               
    1414                /* Unregister device */
     
    1616               
    1717                /* Resolve device name to handle */
    18                 ipcarg_t device_get_handle(in ipcarg_t flags, in_copy string name);
     18                ipcarg_t device_get_handle(in ipcarg_t flags);
    1919               
    2020                /* Get device name for a given handle */
    2121                ipcarg_t device_get_name(in ipcarg_t handle);
    2222               
     23                /* Transfer driver or device name */
     24                ipcarg_t ipc_m_data_write(in ipcarg_t src_addr, in ipcarg_t src_size, out ipcarg_t dst_addr, out ipcarg_t dst_size);
     25               
    2326                /* Close connection */
    2427                ipcarg_t ipc_m_phone_hungup(void);
    2528        protocol:
    26                 [devmap_driver.bp]
     29                [device_mapper_driver.bp]
    2730};
    2831
    29 interface devmap_client {
     32interface device_mapper_client {
    3033                /* Establish connection (iface is DEVMAP_CLIENT) or forward to device (iface is DEVMAP_CONNECT_TO_DEVICE) */
    3134                ipcarg_t ipc_m_connect_me_to(in ipcarg_t iface, in ipcarg_t handle);
    3235               
    3336                /* Resolve device name to handle */
    34                 ipcarg_t device_get_handle(in ipcarg_t flags, in_copy string name);
     37                ipcarg_t device_get_handle(in ipcarg_t flags);
    3538               
    3639                /* Get device name for a given handle */
     
    4750               
    4851                /* Get an array of (device_name, handle) pairs */
    49                 ipcarg_t device_get_devices(out_copy stream data);
     52                ipcarg_t device_get_devices(void)
     53               
     54                /* Transfer device name from client */
     55                ipcarg_t ipc_m_data_write(in ipcarg_t src_addr, in ipcarg_t src_size, out ipcarg_t dst_addr, out ipcarg_t dst_size);
     56               
     57                /* Transfer (device_name, handle) pairs to client */
     58                ipcarg_t ipc_m_data_read(in ipcarg_t src_addr, in ipcarg_t src_size, out ipcarg_t dst_addr, out ipcarg_t dst_size);
    5059               
    5160                /* Close connection */
    5261                ipcarg_t ipc_m_phone_hungup(void);
    5362        protocol:
    54                 [devmap_client.bp]
     63                [device_mapper_client.bp]
    5564       
    5665};
     
    5867frame devmap {
    5968        provides:
    60                 devmap_driver devmap_driver;
    61                 devmap_client devmap_client;
     69                device_mapper_driver dm_driver;
     70                device_mapper_client dm_client;
    6271        requires:
    63                 [/uspace/lib/libc/requires]
    64                 ns ns;
    65                 rd rd;
    66                 console console;
    67         initialization:
    68                 !ns.ipc_m_connect_to_me /* devmap */
     72                [/lib/libc/iface.requires]
    6973        protocol:
    70                 [/uspace/lib/libc/protocol]
     74                [devmap.bp]
    7175};
Note: See TracChangeset for help on using the changeset viewer.