Revision 4efe4ef3 hw/usb/hcd-uhci.c

b/hw/usb/hcd-uhci.c
81 81
    TD_RESULT_STOP_FRAME = 10,
82 82
    TD_RESULT_COMPLETE,
83 83
    TD_RESULT_NEXT_QH,
84
    TD_RESULT_ASYNC,
84
    TD_RESULT_ASYNC_START,
85
    TD_RESULT_ASYNC_CONT,
85 86
};
86 87

  
87 88
typedef struct UHCIState UHCIState;
......
812 813
        async->queue->valid = 32;
813 814

  
814 815
        if (!async->done)
815
            return TD_RESULT_NEXT_QH;
816
            return TD_RESULT_ASYNC_CONT;
816 817

  
817 818
        uhci_async_unlink(async);
818 819
        goto done;
......
860 861
 
861 862
    if (len == USB_RET_ASYNC) {
862 863
        uhci_async_link(async);
863
        return TD_RESULT_ASYNC;
864
        return TD_RESULT_ASYNC_START;
864 865
    }
865 866

  
866 867
    async->packet.result = len;
......
966 967
        }
967 968
        trace_usb_uhci_td_queue(plink & ~0xf, ptd.ctrl, ptd.token);
968 969
        ret = uhci_handle_td(s, plink, &ptd, &int_mask);
969
        assert(ret == TD_RESULT_ASYNC);
970
        assert(ret == TD_RESULT_ASYNC_START);
970 971
        assert(int_mask == 0);
971 972
        plink = ptd.link;
972 973
    }
......
1058 1059
            goto out;
1059 1060

  
1060 1061
        case TD_RESULT_NEXT_QH:
1062
        case TD_RESULT_ASYNC_CONT:
1061 1063
            trace_usb_uhci_td_nextqh(curr_qh & ~0xf, link & ~0xf);
1062 1064
            link = curr_qh ? qh.link : td.link;
1063 1065
            continue;
1064 1066

  
1065
        case TD_RESULT_ASYNC:
1067
        case TD_RESULT_ASYNC_START:
1066 1068
            trace_usb_uhci_td_async(curr_qh & ~0xf, link & ~0xf);
1067 1069
            if (is_valid(td.link)) {
1068 1070
                uhci_fill_queue(s, &td);

Also available in: Unified diff