qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Hans de Goede <hdegoede@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: Hans de Goede <hdegoede@redhat.com>, qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH 09/13] usb-ehci: Remove dead nakcnt code
Date: Fri,  2 Mar 2012 19:32:30 +0100	[thread overview]
Message-ID: <1330713154-3229-10-git-send-email-hdegoede@redhat.com> (raw)
In-Reply-To: <1330713154-3229-1-git-send-email-hdegoede@redhat.com>

This patch removes 2 bits of dead nakcnt code:

1) usb_ehci_execute calls ehci_qh_do_overlay which does:
nakcnt = reload;
and then has a block of code which is conditional on:
if (reload && !nakcnt) {
which ofcourse is never true now as nakcnt == reload.

2) ehci_state_fetchqh does:
nakcnt = reload;
but before nakcnt is ever used ehci_state_fetchqh is always followed
by a ehci_qh_do_overlay call which also does:
nakcnt = reload;
So doing this from ehci_state_fetchqh is redundant.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 hw/usb-ehci.c |   20 --------------------
 1 files changed, 0 insertions(+), 20 deletions(-)

diff --git a/hw/usb-ehci.c b/hw/usb-ehci.c
index 2685adc..07bcd1f 100644
--- a/hw/usb-ehci.c
+++ b/hw/usb-ehci.c
@@ -1615,7 +1615,6 @@ static EHCIQueue *ehci_state_fetchqh(EHCIState *ehci, int async)
 {
     uint32_t entry;
     EHCIQueue *q;
-    int reload;
 
     entry = ehci_get_fetch_addr(ehci, async);
     q = ehci_find_queue_by_qh(ehci, entry, async);
@@ -1673,11 +1672,6 @@ static EHCIQueue *ehci_state_fetchqh(EHCIState *ehci, int async)
     }
 #endif
 
-    reload = get_field(q->qh.epchar, QH_EPCHAR_RL);
-    if (reload) {
-        set_field(&q->qh.altnext_qtd, reload, QH_ALTNEXT_NAKCNT);
-    }
-
     if (q->qh.token & QTD_TOKEN_HALT) {
         ehci_set_state(ehci, async, EST_HORIZONTALQH);
 
@@ -1837,25 +1831,11 @@ static void ehci_flush_qh(EHCIQueue *q)
 static int ehci_state_execute(EHCIQueue *q, int async)
 {
     int again = 0;
-    int reload, nakcnt;
-    int smask;
 
     if (ehci_qh_do_overlay(q) != 0) {
         return -1;
     }
 
-    smask = get_field(q->qh.epcap, QH_EPCAP_SMASK);
-
-    if (!smask) {
-        reload = get_field(q->qh.epchar, QH_EPCHAR_RL);
-        nakcnt = get_field(q->qh.altnext_qtd, QH_ALTNEXT_NAKCNT);
-        if (reload && !nakcnt) {
-            ehci_set_state(q->ehci, async, EST_HORIZONTALQH);
-            again = 1;
-            goto out;
-        }
-    }
-
     // TODO verify enough time remains in the uframe as in 4.4.1.1
     // TODO write back ptr to async list when done or out of time
     // TODO Windows does not seem to ever set the MULT field
-- 
1.7.7.6

  parent reply	other threads:[~2012-03-02 19:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-02 18:32 [Qemu-devel] [PATCH 0/13] usb patches Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 01/13] usb-redir: Set ep type and interface Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 02/13] usb-ehci: Never follow table entries with the T-bit set Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 03/13] usb-ehci: split our qh queue into async and periodic queues Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 04/13] usb-ehci: always call ehci_queues_rip_unused for period queues Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 05/13] usb-ehci: Drop cached qhs when the doorbell gets rung Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 06/13] usb-ehci: Rip the queues when the async or period schedule is halted Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 07/13] usb-ehci: Any packet completion except for NAK should set the interrupt Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 08/13] usb-ehci: Fix cerr tracking Hans de Goede
2012-03-02 18:32 ` Hans de Goede [this message]
2012-03-02 18:32 ` [Qemu-devel] [PATCH 10/13] usb-ehci: Fix and simplify nakcnt handling Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 11/13] usb-ehci: Cleanup itd error handling Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 12/13] usb: return BABBLE rather then NAK when we receive too much data Hans de Goede
2012-03-02 18:32 ` [Qemu-devel] [PATCH 13/13] usb: add USB_RET_IOERROR Hans de Goede
  -- strict thread matches above, loose matches on Subject: below --
2012-03-02 20:27 [Qemu-devel] usb patches [v2] Hans de Goede
2012-03-02 20:27 ` [Qemu-devel] [PATCH 09/13] usb-ehci: Remove dead nakcnt code Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1330713154-3229-10-git-send-email-hdegoede@redhat.com \
    --to=hdegoede@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).