Basic enc29j80 init logic exercised
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2650 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
2de02b7889
commit
68bfc8cb46
@ -154,8 +154,6 @@ void up_netinitialize(void)
|
|||||||
|
|
||||||
/* Get the SPI port */
|
/* Get the SPI port */
|
||||||
|
|
||||||
nllvdbg("Initializing SPI port %d\n", ENC28J60_SPI_PORTNO);
|
|
||||||
|
|
||||||
spi = up_spiinitialize(ENC28J60_SPI_PORTNO);
|
spi = up_spiinitialize(ENC28J60_SPI_PORTNO);
|
||||||
if (!spi)
|
if (!spi)
|
||||||
{
|
{
|
||||||
@ -172,13 +170,8 @@ void up_netinitialize(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
nllvdbg("Successfully initialized SPI port %d\n", ENC28J60_SPI_PORTNO);
|
|
||||||
|
|
||||||
/* Bind the SPI port to the ENC28J60 driver */
|
/* Bind the SPI port to the ENC28J60 driver */
|
||||||
|
|
||||||
nllvdbg("Binding SPI port %d to ENC28J60 device %d\n",
|
|
||||||
ENC28J60_SPI_PORTNO, ENC28J60_DEVNO);
|
|
||||||
|
|
||||||
ret = enc_initialize(spi, ENC28J60_DEVNO, ENC28J60_IRQ);
|
ret = enc_initialize(spi, ENC28J60_DEVNO, ENC28J60_IRQ);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
{
|
{
|
||||||
@ -187,7 +180,7 @@ void up_netinitialize(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
nllvdbg("Successfuly bound SPI port %d ENC28J60 device %d\n",
|
nllvdbg("Bound SPI port %d to ENC28J60 device %d\n",
|
||||||
ENC28J60_SPI_PORTNO, ENC28J60_DEVNO);
|
ENC28J60_SPI_PORTNO, ENC28J60_DEVNO);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_NET_ENC28J60 */
|
#endif /* CONFIG_NET_ENC28J60 */
|
||||||
|
@ -42,6 +42,7 @@
|
|||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
#include <nuttx/spi.h>
|
#include <nuttx/spi.h>
|
||||||
|
|
||||||
@ -525,7 +526,7 @@ static inline void spi_drain(FAR struct str71x_spidev_s *priv)
|
|||||||
{
|
{
|
||||||
(void)spi_getreg(priv, STR71X_BSPI_RXR_OFFSET);
|
(void)spi_getreg(priv, STR71X_BSPI_RXR_OFFSET);
|
||||||
}
|
}
|
||||||
while (spi_getreg(priv, STR71X_BSPI_CSR2_OFFSET & STR71X_BSPICSR2_RFNE) != 0);
|
while ((spi_getreg(priv, STR71X_BSPI_CSR2_OFFSET) & STR71X_BSPICSR2_RFNE) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -556,7 +557,7 @@ static void spi_select(FAR struct spi_dev_s *dev, enum spi_dev_e devid, bool sel
|
|||||||
reg16 = spi_getreg(priv, STR71X_GPIO_PD_OFFSET);
|
reg16 = spi_getreg(priv, STR71X_GPIO_PD_OFFSET);
|
||||||
if (selected)
|
if (selected)
|
||||||
{
|
{
|
||||||
/* Enable slave select (low enables) */
|
/* Enable slave select (low enables) */
|
||||||
|
|
||||||
reg16 &= ~priv->csbit;
|
reg16 &= ~priv->csbit;
|
||||||
spi_putreg(priv, STR71X_GPIO_PD_OFFSET, reg16);
|
spi_putreg(priv, STR71X_GPIO_PD_OFFSET, reg16);
|
||||||
@ -565,12 +566,12 @@ static void spi_select(FAR struct spi_dev_s *dev, enum spi_dev_e devid, bool sel
|
|||||||
{
|
{
|
||||||
/* Disable slave select (low enables) */
|
/* Disable slave select (low enables) */
|
||||||
|
|
||||||
reg16 |= priv->csbit;
|
reg16 |= priv->csbit;
|
||||||
spi_putreg(priv, STR71X_GPIO_PD_OFFSET, reg16);
|
spi_putreg(priv, STR71X_GPIO_PD_OFFSET, reg16);
|
||||||
|
|
||||||
/* And drain the FIFOs */
|
/* And drain the FIFOs */
|
||||||
|
|
||||||
spi_drain(priv);
|
spi_drain(priv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user