Changeset 1db5669 in mainline for uspace/lib/c


Ignore:
Timestamp:
2013-09-11T12:35:55Z (12 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
48bd6f4, 4c9b28a
Parents:
cd3b380
Message:

devctl show-drv lists attached devices, add device count to list-drv.

Location:
uspace/lib/c
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/devman.c

    rcd3b380 r1db5669  
    579579}
    580580
     581int devman_dev_get_parent(devman_handle_t devh, devman_handle_t *funh)
     582{
     583        async_exch_t *exch = devman_exchange_begin(DEVMAN_CLIENT);
     584        if (exch == NULL)
     585                return ENOMEM;
     586       
     587        sysarg_t retval = async_req_1_1(exch, DEVMAN_DEV_GET_PARENT,
     588            devh, funh);
     589       
     590        devman_exchange_end(exch);
     591        return (int) retval;
     592}
     593
    581594int devman_fun_sid_to_handle(service_id_t sid, devman_handle_t *handle)
    582595{
     
    596609{
    597610        return devman_get_handles_internal(DEVMAN_GET_DRIVERS, 0, drvs, count);
     611}
     612
     613int devman_driver_get_devices(devman_handle_t drvh, devman_handle_t **devs,
     614    size_t *count)
     615{
     616        return devman_get_handles_internal(DEVMAN_DRIVER_GET_DEVICES,
     617            drvh, devs, count);
    598618}
    599619
  • uspace/lib/c/include/devman.h

    rcd3b380 r1db5669  
    6161    unsigned int);
    6262extern int devman_fun_get_child(devman_handle_t, devman_handle_t *);
     63extern int devman_dev_get_parent(devman_handle_t, devman_handle_t *);
    6364extern int devman_dev_get_functions(devman_handle_t, devman_handle_t **,
    6465    size_t *);
     
    7273extern int devman_fun_sid_to_handle(service_id_t, devman_handle_t *);
    7374extern int devman_get_drivers(devman_handle_t **, size_t *);
     75extern int devman_driver_get_devices(devman_handle_t, devman_handle_t **,
     76    size_t *);
    7477extern int devman_driver_get_handle(const char *, devman_handle_t *);
    7578extern int devman_driver_get_name(devman_handle_t, char *, size_t);
  • uspace/lib/c/include/ipc/devman.h

    rcd3b380 r1db5669  
    169169        DEVMAN_DEVICE_GET_HANDLE = IPC_FIRST_USER_METHOD,
    170170        DEVMAN_DEV_GET_FUNCTIONS,
     171        DEVMAN_DEV_GET_PARENT,
    171172        DEVMAN_FUN_GET_CHILD,
    172173        DEVMAN_FUN_GET_NAME,
     
    177178        DEVMAN_FUN_SID_TO_HANDLE,
    178179        DEVMAN_GET_DRIVERS,
     180        DEVMAN_DRIVER_GET_DEVICES,
    179181        DEVMAN_DRIVER_GET_HANDLE,
    180182        DEVMAN_DRIVER_GET_NAME,
Note: See TracChangeset for help on using the changeset viewer.