diff --git a/reactos/drivers/usb/nt4compat/usbdriver/ehci.c b/reactos/drivers/usb/nt4compat/usbdriver/ehci.c index 86daf2ac601..b1ca1502426 100644 --- a/reactos/drivers/usb/nt4compat/usbdriver/ehci.c +++ b/reactos/drivers/usb/nt4compat/usbdriver/ehci.c @@ -630,7 +630,7 @@ ehci_process_pending_endp(PEHCI_DEV ehci) if (can_submit == STATUS_NO_MORE_ENTRIES) { //no enough bandwidth or tds - InsertHeadList(&pendp->urb_list, (PLIST_ENTRY) purb); + InsertHeadList(&pendp->urb_list, &purb->urb_link); InsertTailList(&temp_list, pthis); } else @@ -788,7 +788,7 @@ ehci_submit_urb(PEHCI_DEV ehci, PUSB_DEV pdev, PUSB_ENDPOINT pendp, PURB purb) } pending_endp->pendp = purb->pendp; - InsertTailList(&ehci->pending_endp_list, (PLIST_ENTRY) pending_endp); + InsertTailList(&ehci->pending_endp_list, &pending_endp->endp_link); unlock_dev(pdev, TRUE); unlock_pending_endp_list(&ehci->pending_endp_list_lock); @@ -1198,7 +1198,7 @@ ehci_dpc_callback(PKDPC dpc, PVOID context, PVOID sysarg1, PVOID sysarg2) purb->flags &= ~URB_FLAG_STATE_MASK; purb->flags |= URB_FLAG_STATE_PENDING; - InsertHeadList(&pendp->urb_list, (PLIST_ENTRY) purb); + InsertHeadList(&pendp->urb_list, &purb->urb_link); } pending_endp = alloc_pending_endp(&ehci->pending_endp_pool, 1); @@ -1382,7 +1382,7 @@ ehci_insert_urb_schedule(PEHCI_DEV ehci, PURB purb) purb->flags &= ~URB_FLAG_STATE_MASK; purb->flags |= URB_FLAG_STATE_IN_PROCESS | URB_FLAG_IN_SCHEDULE; - InsertTailList(&ehci->urb_list, (PLIST_ENTRY) purb); + InsertTailList(&ehci->urb_list, &purb->urb_link); return TRUE; } diff --git a/reactos/drivers/usb/nt4compat/usbdriver/etd.c b/reactos/drivers/usb/nt4compat/usbdriver/etd.c index 222ca248210..e3a4d32089f 100644 --- a/reactos/drivers/usb/nt4compat/usbdriver/etd.c +++ b/reactos/drivers/usb/nt4compat/usbdriver/etd.c @@ -451,7 +451,7 @@ elem_pool_free_elem(PEHCI_ELEM_LINKS elem_link) lh = elem_link->list_link->get_list_head(elem_link->list_link); if (lh == NULL) return; - InsertHeadList(lh, (PLIST_ENTRY) elem_link); + InsertHeadList(lh, &elem_link->elem_link); ref = elem_link->list_link->release_ref(elem_link->list_link); pool->free_count++; if (ref == 0) diff --git a/reactos/drivers/usb/nt4compat/usbdriver/hub.c b/reactos/drivers/usb/nt4compat/usbdriver/hub.c index c18ddb511a1..161eb820304 100644 --- a/reactos/drivers/usb/nt4compat/usbdriver/hub.c +++ b/reactos/drivers/usb/nt4compat/usbdriver/hub.c @@ -122,7 +122,7 @@ free_event(PUSB_EVENT_POOL pool, PUSB_EVENT pevent) } RtlZeroMemory(pevent, sizeof(USB_EVENT)); - InsertTailList(&pool->free_que, (PLIST_ENTRY) pevent); + InsertTailList(&pool->free_que, &pevent->event_link); pool->free_count++; usb_dbg_print(DBGLVL_MAXIMUM + 1, ("free_event(): alloced=0x%x, addr=0x%x\n", MAX_EVENTS - pool->free_count, pevent)); @@ -204,7 +204,7 @@ free_timer_svc(PTIMER_SVC_POOL pool, PTIMER_SVC ptimer) return FALSE; RtlZeroMemory(ptimer, sizeof(TIMER_SVC)); - InsertTailList(&pool->free_que, (PLIST_ENTRY) & ptimer->timer_svc_link); + InsertTailList(&pool->free_que, &ptimer->timer_svc_link); pool->free_count++; return TRUE; diff --git a/reactos/drivers/usb/nt4compat/usbdriver/ohci.c b/reactos/drivers/usb/nt4compat/usbdriver/ohci.c index b097766ac3f..6a6497eca2d 100644 --- a/reactos/drivers/usb/nt4compat/usbdriver/ohci.c +++ b/reactos/drivers/usb/nt4compat/usbdriver/ohci.c @@ -927,7 +927,7 @@ ohci_process_pending_endp(POHCI_DEV ehci) if (can_submit == STATUS_NO_MORE_ENTRIES) { //no enough bandwidth or tds - InsertHeadList(&pendp->urb_list, (PLIST_ENTRY) purb); + InsertHeadList(&pendp->urb_list, &purb->urb_link); InsertTailList(&temp_list, pthis); } else @@ -1332,7 +1332,7 @@ ohci_submit_urb(POHCI_DEV ehci, PUSB_DEV pdev, PUSB_ENDPOINT pendp, PURB purb) } pending_endp->pendp = purb->pendp; - InsertTailList(&ehci->pending_endp_list, (PLIST_ENTRY) pending_endp); + InsertTailList(&ehci->pending_endp_list, &pending_endp->endp_link); unlock_dev(pdev, TRUE); unlock_pending_endp_list(&ehci->pending_endp_list_lock); diff --git a/reactos/drivers/usb/nt4compat/usbdriver/uhci.c b/reactos/drivers/usb/nt4compat/usbdriver/uhci.c index e7dc9b6676b..61b8eeba189 100644 --- a/reactos/drivers/usb/nt4compat/usbdriver/uhci.c +++ b/reactos/drivers/usb/nt4compat/usbdriver/uhci.c @@ -180,7 +180,7 @@ free_pending_endp(PUHCI_PENDING_ENDP_POOL pool, PUHCI_PENDING_ENDP pending_endp) } RtlZeroMemory(pending_endp, sizeof(UHCI_PENDING_ENDP)); - InsertTailList(&pool->free_que, (PLIST_ENTRY) & pending_endp->endp_link); + InsertTailList(&pool->free_que, &pending_endp->endp_link); pool->free_count++; return TRUE; @@ -1273,7 +1273,7 @@ uhci_process_pending_endp(PUHCI_DEV uhci) if (can_submit == STATUS_NO_MORE_ENTRIES) { //no enough bandwidth or tds - InsertHeadList(&pendp->urb_list, (PLIST_ENTRY) purb); + InsertHeadList(&pendp->urb_list, &purb->urb_link); InsertTailList(&temp_list, pthis); } else @@ -1313,7 +1313,7 @@ uhci_process_pending_endp(PUHCI_DEV uhci) RemoveEntryList(&abort_list); InsertTailList(pthis, cancel_list); - pwork_item = (PWORK_QUEUE_ITEM) & cancel_list[1]; + pwork_item = (PWORK_QUEUE_ITEM) (cancel_list + 1); // we do not need to worry the uhci_cancel_pending_endp_urb running when the // driver is unloading since it will prevent the dev_mgr to quit till all the @@ -1426,7 +1426,7 @@ uhci_submit_urb(PUHCI_DEV uhci, PUSB_DEV pdev, PUSB_ENDPOINT pendp, PURB purb) } pending_endp->pendp = purb->pendp; - InsertTailList(&uhci->pending_endp_list, (PLIST_ENTRY) pending_endp); + InsertTailList(&uhci->pending_endp_list, &pending_endp->endp_link ); unlock_dev(pdev, TRUE); unlock_pending_endp_list(&uhci->pending_endp_list_lock); @@ -1742,7 +1742,7 @@ uhci_dpc_callback(PKDPC dpc, PVOID context, PVOID sysarg1, PVOID sysarg2) purb->flags &= ~URB_FLAG_STATE_MASK; purb->flags |= URB_FLAG_STATE_PENDING; - InsertHeadList(&pendp->urb_list, (PLIST_ENTRY) purb); + InsertHeadList(&pendp->urb_list, &purb->urb_link); } pending_endp = alloc_pending_endp(&uhci->pending_endp_pool, 1); @@ -2722,7 +2722,7 @@ uhci_insert_urb_schedule(PUHCI_DEV uhci, PURB urb) if (pthis == NULL) return FALSE; - InsertTailList(&uhci->urb_list, (PLIST_ENTRY) urb); + InsertTailList(&uhci->urb_list, &urb->urb_link); urb->flags &= ~URB_FLAG_STATE_MASK; urb->flags |= URB_FLAG_STATE_IN_PROCESS | URB_FLAG_IN_SCHEDULE;