Changeset 7fcb74c in mainline for uspace/lib/libc


Ignore:
Timestamp:
2009-06-29T16:02:32Z (16 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f49cf64
Parents:
bfd247f
Message:

add support for creating null devices on demand

Location:
uspace/lib/libc
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libc/generic/devmap.c

    rbfd247f r7fcb74c  
    219219}
    220220
     221int devmap_null_create(void)
     222{
     223        int phone = devmap_get_phone(DEVMAP_CLIENT, IPC_FLAG_BLOCKING);
     224       
     225        if (phone < 0)
     226                return -1;
     227       
     228        ipcarg_t null_id;
     229        int retval = async_req_0_1(phone, DEVMAP_DEVICE_NULL_CREATE, &null_id);
     230        if (retval != EOK)
     231                return -1;
     232       
     233        return (int) null_id;
     234}
     235
     236void devmap_null_destroy(int null_id)
     237{
     238        int phone = devmap_get_phone(DEVMAP_CLIENT, IPC_FLAG_BLOCKING);
     239       
     240        if (phone < 0)
     241                return;
     242       
     243        async_req_1_0(phone, DEVMAP_DEVICE_NULL_DESTROY, (ipcarg_t) null_id);
     244}
     245
    221246ipcarg_t devmap_device_get_count(void)
    222247{
  • uspace/lib/libc/include/devmap.h

    rbfd247f r7fcb74c  
    4848extern int devmap_device_connect(dev_handle_t, unsigned int);
    4949
     50extern int devmap_null_create(void);
     51extern void devmap_null_destroy(int);
     52
    5053extern ipcarg_t devmap_device_get_count(void);
    5154extern ipcarg_t devmap_device_get_devices(ipcarg_t, dev_desc_t *);
  • uspace/lib/libc/include/ipc/devmap.h

    rbfd247f r7fcb74c  
    2929/** @addtogroup devmap
    3030 * @{
    31  */ 
     31 */
    3232
    3333#ifndef DEVMAP_DEVMAP_H_
     
    4949        DEVMAP_DEVICE_GET_NAME,
    5050        DEVMAP_DEVICE_GET_HANDLE,
     51        DEVMAP_DEVICE_NULL_CREATE,
     52        DEVMAP_DEVICE_NULL_DESTROY,
    5153        DEVMAP_DEVICE_GET_COUNT,
    5254        DEVMAP_DEVICE_GET_DEVICES
Note: See TracChangeset for help on using the changeset viewer.