Changeset 3b5d1535 in mainline for uspace/drv/vhc/hcd.c


Ignore:
Timestamp:
2011-02-23T10:28:21Z (14 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
eb48f61
Parents:
e936e8e (diff), eb1a2f4 (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/drv/vhc/hcd.c

    re936e8e r3b5d1535  
    4242#include <errno.h>
    4343#include <str_error.h>
    44 #include <driver.h>
     44#include <ddf/driver.h>
    4545
    4646#include <usb/usb.h>
     
    5353#include "conn.h"
    5454
    55 static device_ops_t vhc_ops = {
     55static ddf_dev_ops_t vhc_ops = {
    5656        .interfaces[USBHC_DEV_IFACE] = &vhc_iface,
    5757        .interfaces[USB_DEV_IFACE] = &vhc_usb_iface,
     
    6060};
    6161
    62 static int vhc_count = 0;
    63 static int vhc_add_device(device_t *dev)
     62static int vhc_add_device(ddf_dev_t *dev)
    6463{
     64        static int vhc_count = 0;
     65        int rc;
     66
    6567        /*
    6668         * Currently, we know how to simulate only single HC.
     
    7072        }
    7173
    72         vhc_count++;
     74        /*
     75         * Create exposed function representing the host controller
     76         * itself.
     77         */
     78        ddf_fun_t *hc = ddf_fun_create(dev, fun_exposed, "hc");
     79        if (hc == NULL) {
     80                usb_log_fatal("Failed to create device function.\n");
     81                return ENOMEM;
     82        }
    7383
    74         dev->ops = &vhc_ops;
     84        hc->ops = &vhc_ops;
    7585
    76         devman_add_device_to_class(dev->handle, "usbhc");
     86        rc = ddf_fun_bind(hc);
     87        if (rc != EOK) {
     88                usb_log_fatal("Failed to bind HC function: %s.\n",
     89                    str_error(rc));
     90                return rc;
     91        }
     92
     93        ddf_fun_add_to_class(hc, "usbhc");
    7794
    7895        /*
    7996         * Initialize our hub and announce its presence.
    8097         */
    81         virtual_hub_device_init(dev);
     98        virtual_hub_device_init(hc);
    8299
    83         usb_log_info("Virtual USB host controller ready (id = %zu).\n",
    84             (size_t) dev->handle);
     100        usb_log_info("Virtual USB host controller ready (dev %zu, hc %zu).\n",
     101            (size_t) dev->handle, (size_t) hc->handle);
    85102
    86103        return EOK;
     
    103120         * in devman output.
    104121         */
    105         sleep(5);
     122        //sleep(5);
    106123
    107         usb_log_enable(USB_LOG_LEVEL_INFO, NAME);
     124        usb_log_enable(USB_LOG_LEVEL_DEBUG, NAME);
    108125
    109126        printf(NAME ": virtual USB host controller driver.\n");
     
    122139         * We are also a driver within devman framework.
    123140         */
    124         return driver_main(&vhc_driver);
     141        return ddf_driver_main(&vhc_driver);
    125142}
    126143
Note: See TracChangeset for help on using the changeset viewer.