Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 682b697 in mainline


Ignore:
Timestamp:
2010-12-12T18:05:19Z (11 years ago)
Author:
Matus Dekanek <smekideki@…>
Branches:
lfn, master
Children:
37f7cfe, ecf52c4b
Parents:
5d4eb2df (diff), 9223dc5c (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 from smekideki

Location:
uspace
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/virtusbkbd/virtusbkbd.c

    r5d4eb2df r682b697  
    223223       
    224224        printf("%s: Simulating keyboard events...\n", NAME);
    225         kb_process_events(&status, keyboard_events, keyboard_events_count,
    226             on_keyboard_change);
     225        while(1){
     226                kb_process_events(&status, keyboard_events, keyboard_events_count,
     227                        on_keyboard_change);
     228        }
    227229       
    228230        printf("%s: Terminating...\n", NAME);
  • uspace/drv/usbhub/main.c

    r5d4eb2df r682b697  
    5050        while(true){
    5151                usb_hub_check_hub_changes();
    52                 async_usleep(10000);
     52                async_usleep(10000000);
    5353        }
    5454        return 0;
  • uspace/drv/usbhub/utils.c

    r5d4eb2df r682b697  
    352352        result->port_count = descriptor->ports_count;
    353353        result->attached_devs = (usb_hub_attached_device_t*)
    354             malloc(result->port_count * sizeof(usb_hub_attached_device_t));
     354            malloc((result->port_count+1) * sizeof(usb_hub_attached_device_t));
    355355        int i;
    356         for(i=0;i<result->port_count;++i){
     356        for(i=0;i<result->port_count+1;++i){
    357357                result->attached_devs[i].devman_handle=0;
    358358                result->attached_devs[i].address=0;
     
    428428
    429429
    430         for (port = 0; port < hub_info->port_count; ++port) {
     430        for (port = 1; port < hub_info->port_count+1; ++port) {
    431431                usb_hub_set_power_port_request(&request, port);
    432432                opResult = usb_drv_sync_control_write(hc, target, &request, NULL, 0);
     433                printf("[usb_hub] powering port %d\n",port);
    433434                if (opResult != EOK) {
    434435                        printf("[usb_hub]something went wrong when setting hub`s %dth port\n", port);
     
    540541                return;
    541542        }
     543        printf("[usb_hub] new device address %d, handle %d\n",
     544            new_device_address, child_handle);
     545        sleep(60);
    542546       
    543547}
     
    638642        usb_port_set_dev_connected(&status, false);
    639643        if (status) {
    640                 printf("[usb_hub]there was some unsupported change on port\n");
     644                printf("[usb_hub]there was some unsupported change on port %d\n",port);
    641645        }
    642646        /// \TODO handle other changes
     
    675679                target.address = hub_info->usb_device->address;
    676680                target.endpoint = 1;/// \TODO get from endpoint descriptor
     681                printf("checking changes for hub at addr %d \n",target.address);
    677682
    678683                size_t port_count = hub_info->port_count;
     
    687692
    688693                // FIXME: count properly
    689                 size_t byte_length = (port_count / 8) + 1;
     694                size_t byte_length = ((port_count+1) / 8) + 1;
    690695
    691696                void *change_bitmap = malloc(byte_length);
     
    707712                }
    708713                unsigned int port;
    709                 for (port = 0; port < port_count; ++port) {
     714                for (port = 1; port < port_count+1; ++port) {
    710715                        bool interrupt = (((uint8_t*) change_bitmap)[port / 8] >> (port % 8)) % 2;
    711716                        if (interrupt) {
  • uspace/drv/vhc/devices.c

    r5d4eb2df r682b697  
    147147        if (virthub_dev.address == transaction->target.address) {
    148148                size_t tmp;
    149                 dprintf(3, "sending `%s' transaction to hub",
     149                dprintf(1, "sending `%s' transaction to hub",
    150150                    usbvirt_str_transaction_type(transaction->type));
    151151                switch (transaction->type) {
  • uspace/drv/vhc/hubops.c

    r5d4eb2df r682b697  
    200200                } \
    201201        } while (false); \
    202         hub_port_t *portvar = &hub_dev.ports[index]
     202        hub_port_t *portvar = &hub_dev.ports[index-1]
    203203
    204204
  • uspace/lib/usb/src/addrkeep.c

    r5d4eb2df r682b697  
    199199                        usb_address_keeping_used_t *last
    200200                            = used_address_get_instance(addresses->used_addresses.next);
    201                         free_address = last->address;
     201                        free_address = last->address + 1;
    202202                }
    203203        }
Note: See TracChangeset for help on using the changeset viewer.