Changes in contrib/arch/uspace/srv/devmap/devmap.adl [afe34be:07fdf203] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
contrib/arch/uspace/srv/devmap/devmap.adl
rafe34be r07fdf203 1 interface dev map_driver {1 interface device_mapper_driver { 2 2 /* Establish connection (iface is DEVMAP_DRIVER) */ 3 3 ipcarg_t ipc_m_connect_me_to(in ipcarg_t iface); 4 4 5 5 /* Register as a new driver */ 6 ipcarg_t driver_register( in_copy string name);6 ipcarg_t driver_register(void); 7 7 8 8 /* Unregister all devices and the driver itself */ … … 10 10 11 11 /* 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); 13 13 14 14 /* Unregister device */ … … 16 16 17 17 /* 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); 19 19 20 20 /* Get device name for a given handle */ 21 21 ipcarg_t device_get_name(in ipcarg_t handle); 22 22 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 23 26 /* Close connection */ 24 27 ipcarg_t ipc_m_phone_hungup(void); 25 28 protocol: 26 [dev map_driver.bp]29 [device_mapper_driver.bp] 27 30 }; 28 31 29 interface dev map_client {32 interface device_mapper_client { 30 33 /* Establish connection (iface is DEVMAP_CLIENT) or forward to device (iface is DEVMAP_CONNECT_TO_DEVICE) */ 31 34 ipcarg_t ipc_m_connect_me_to(in ipcarg_t iface, in ipcarg_t handle); 32 35 33 36 /* 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); 35 38 36 39 /* Get device name for a given handle */ … … 47 50 48 51 /* 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); 50 59 51 60 /* Close connection */ 52 61 ipcarg_t ipc_m_phone_hungup(void); 53 62 protocol: 54 [dev map_client.bp]63 [device_mapper_client.bp] 55 64 56 65 }; … … 58 67 frame devmap { 59 68 provides: 60 dev map_driver devmap_driver;61 dev map_client devmap_client;69 device_mapper_driver dm_driver; 70 device_mapper_client dm_client; 62 71 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] 69 73 protocol: 70 [ /uspace/lib/libc/protocol]74 [devmap.bp] 71 75 };
Note:
See TracChangeset
for help on using the changeset viewer.