[Qemu-devel] [PATCH 11/15] pxa2xx: fix SSSR TFN logic

2010-09-10 Thread Blue Swirl
Fix SSSR TFN logic: TX FIFO is never filled, so it is always in
underrun condition if SSP is enabled.

This also avoids a gcc warning with -Wtype-limits.

Signed-off-by: Blue Swirl blauwir...@gmail.com
---
 hw/pxa2xx.c |8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c
index faa3d95..88f61c0 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



[Qemu-devel] [PATCH 11/15] pxa2xx: fix SSSR TFN logic

2010-09-05 Thread Blue Swirl
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 blauwir...@gmail.com
---
 hw/pxa2xx.c |8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c
index faa3d95..88f61c0 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