From 7f47029021c4287e2b821242d8395a9c179b79d0 Mon Sep 17 00:00:00 2001
From: patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>
Date: Sun, 16 May 2010 00:48:37 +0000
Subject: [PATCH] Fix SSI mode setting logic

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2678 42af7a65-404d-4744-a932-0658087f49c3
---
 arch/arm/src/lm3s/lm3s_ssi.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/src/lm3s/lm3s_ssi.c b/arch/arm/src/lm3s/lm3s_ssi.c
index 18418b886e..ac39244512 100755
--- a/arch/arm/src/lm3s/lm3s_ssi.c
+++ b/arch/arm/src/lm3s/lm3s_ssi.c
@@ -1223,10 +1223,10 @@ static void ssi_setmodeinternal(struct lm3s_ssidev_s *priv, enum spi_mode_e mode
           return;
         }
 
-      /* Then set the selected mode */
+      /* Then set the selected mode: Freescale SPI format, mode0-3 */
 
       regval  = ssi_getreg(priv, LM3S_SSI_CR0_OFFSET);
-      regval &= ~SSI_CR0_FRF_MASK;
+      regval &= ~(SSI_CR0_FRF_MASK|SSI_CR0_SPH|SSI_CR0_SPO);
       regval |= modebits;
       ssi_putreg(priv, LM3S_SSI_CR0_OFFSET, regval);
       ssivdbg("CR0: %08x\n", regval);
-- 
GitLab