summaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/lm3s/lm3s_ssi.c
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2009-05-24 20:40:11 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2009-05-24 20:40:11 +0000
commit27ba39c2e6bc41ff30705525a98444dfbe5da1cd (patch)
tree690e9c2d705fa5fe195757591b2bbb400c1df08c /nuttx/arch/arm/src/lm3s/lm3s_ssi.c
parent9b2ed5ff44f02983b6ed3ca810ab6a951b838b17 (diff)
downloadpx4-nuttx-27ba39c2e6bc41ff30705525a98444dfbe5da1cd.tar.gz
px4-nuttx-27ba39c2e6bc41ff30705525a98444dfbe5da1cd.tar.bz2
px4-nuttx-27ba39c2e6bc41ff30705525a98444dfbe5da1cd.zip
Debug microSD CS
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1824 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/arch/arm/src/lm3s/lm3s_ssi.c')
-rwxr-xr-xnuttx/arch/arm/src/lm3s/lm3s_ssi.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/nuttx/arch/arm/src/lm3s/lm3s_ssi.c b/nuttx/arch/arm/src/lm3s/lm3s_ssi.c
index 7c91a0709..4b9386c8a 100755
--- a/nuttx/arch/arm/src/lm3s/lm3s_ssi.c
+++ b/nuttx/arch/arm/src/lm3s/lm3s_ssi.c
@@ -64,7 +64,7 @@
* CONFIG_DEBUG_VERBOSE too)
*/
-#undef SSI_DEBUG /* Define to enable debug */
+#undef SSI_DEBUG /* Define to enable debug */
#ifdef SSI_DEBUG
# define ssidbg lldbg
@@ -426,12 +426,14 @@ static void ssi_semtake(sem_t *sem)
static void ssi_txnull(struct lm32_ssidev_s *priv)
{
+ ssivdbg("TX: ones\n");
ssi_putreg(priv, LM3S_SSI_DR_OFFSET, 0xffff);
}
static void ssi_txuint16(struct lm32_ssidev_s *priv)
{
uint16 *ptr = (uint16*)priv->txbuffer;
+ ssivdbg("TX: %p->%04x\n", ptr, *ptr);
ssi_putreg(priv, LM3S_SSI_DR_OFFSET, (uint32)(*ptr++));
priv->txbuffer = (void*)ptr;
}
@@ -439,6 +441,7 @@ static void ssi_txuint16(struct lm32_ssidev_s *priv)
static void ssi_txubyte(struct lm32_ssidev_s *priv)
{
ubyte *ptr = (ubyte*)priv->txbuffer;
+ ssivdbg("TX: %p->%02x\n", ptr, *ptr);
ssi_putreg(priv, LM3S_SSI_DR_OFFSET, (uint32)(*ptr++));
priv->txbuffer = (void*)ptr;
}
@@ -462,21 +465,28 @@ static void ssi_txubyte(struct lm32_ssidev_s *priv)
static void ssi_rxnull(struct lm32_ssidev_s *priv)
{
+#if defined(SSI_DEBUG) && defined(CONFIG_DEBUG_VERBOSE)
+ uint32 regval = ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
+ ssivdbg("RX: discard %04x\n", regval);
+#else
(void)ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
+#endif
}
static void ssi_rxuint16(struct lm32_ssidev_s *priv)
{
uint16 *ptr = (uint16*)priv->rxbuffer;
- *ptr++ = (uint16)ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
- priv->rxbuffer = (void*)ptr;
+ *ptr = (uint16)ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
+ ssivdbg("RX: %p<-%04x\n", ptr, *ptr);
+ priv->rxbuffer = (void*)(++ptr);
}
static void ssi_rxubyte(struct lm32_ssidev_s *priv)
{
ubyte *ptr = (ubyte*)priv->rxbuffer;
- *ptr++ = (ubyte)ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
- priv->rxbuffer = (void*)ptr;
+ *ptr = (ubyte)ssi_getreg(priv, LM3S_SSI_DR_OFFSET);
+ ssivdbg("RX: %p<-%02x\n", ptr, *ptr);
+ priv->rxbuffer = (void*)(++ptr);
}
/****************************************************************************