From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=60413 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OrtZR-0001BO-Bg for qemu-devel@nongnu.org; Sat, 04 Sep 2010 10:18:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OrtZQ-000847-IM for qemu-devel@nongnu.org; Sat, 04 Sep 2010 10:18:17 -0400 Received: from mail-qw0-f45.google.com ([209.85.216.45]:37512) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OrtZQ-0007xn-Eu for qemu-devel@nongnu.org; Sat, 04 Sep 2010 10:18:16 -0400 Received: by mail-qw0-f45.google.com with SMTP id 5so2800166qwh.4 for ; Sat, 04 Sep 2010 07:18:16 -0700 (PDT) MIME-Version: 1.0 From: Blue Swirl Date: Sat, 4 Sep 2010 14:17:56 +0000 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: [Qemu-devel] [PATCH 4/5] pxa2xx: fix SSSR TFN logic List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel Fix SSSR TFN logic: TX FIFO is never filled, so it is always in underrun condition if SSP is enabled. This also fixes a gcc warning with -Wtype-limits. Signed-off-by: Blue Swirl --- hw/pxa2xx.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c index 3c06bf9..ec7fd68 100644 --- a/hw/pxa2xx.c +++ b/hw/pxa2xx.c @@ -636,6 +636,7 @@ static void pxa2xx_ssp_fifo_update(PXA2xxSSPState *s) { s->sssr &= ~(0xf << 12); /* Clear RFL */ s->sssr &= ~(0xf << 8); /* Clear TFL */ + s->sssr &= ~SSSR_TFS; s->sssr &= ~SSSR_TNF; if (s->enable) { s->sssr |= ((s->rx_level - 1) & 0xf) << 12; @@ -643,14 +644,13 @@ static void pxa2xx_ssp_fifo_update(PXA2xxSSPState *s) s->sssr |= SSSR_RFS; else s->sssr &= ~SSSR_RFS; - if (0 <= SSCR1_TFT(s->sscr[1])) - s->sssr |= SSSR_TFS; - else - s->sssr &= ~SSSR_TFS; if (s->rx_level) s->sssr |= SSSR_RNE; else s->sssr &= ~SSSR_RNE; + /* TX FIFO is never filled, so it is always in underrun + condition if SSP is enabled */ + s->sssr |= SSSR_TFS; s->sssr |= SSSR_TNF; } -- 1.6.2.4