mirror of
https://github.com/apache/nuttx.git
synced 2026-05-30 05:16:47 +08:00
bitbang
This commit is contained in:
@@ -86,7 +86,7 @@
|
|||||||
/* SPI methods */
|
/* SPI methods */
|
||||||
|
|
||||||
static int spi_lock(FAR struct spi_dev_s *dev, bool lock);
|
static int spi_lock(FAR struct spi_dev_s *dev, bool lock);
|
||||||
static void spi_select(FAR struct spi_dev_s *dev, enum spi_dev_e devid,
|
static void spi_select(FAR struct spi_dev_s *dev, uint32_t devid,
|
||||||
bool selected);
|
bool selected);
|
||||||
static uint32_t spi_setfrequency(FAR struct spi_dev_s *dev,
|
static uint32_t spi_setfrequency(FAR struct spi_dev_s *dev,
|
||||||
uint32_t frequency);
|
uint32_t frequency);
|
||||||
@@ -103,9 +103,9 @@ static void spi_sndblock(FAR struct spi_dev_s *dev,
|
|||||||
static void spi_recvblock(FAR struct spi_dev_s *dev, FAR void *buffer,
|
static void spi_recvblock(FAR struct spi_dev_s *dev, FAR void *buffer,
|
||||||
size_t nwords);
|
size_t nwords);
|
||||||
#endif
|
#endif
|
||||||
static uint8_t spi_status(FAR struct spi_dev_s *dev, enum spi_dev_e devid);
|
static uint8_t spi_status(FAR struct spi_dev_s *dev, uint32_t devid);
|
||||||
#ifdef CONFIG_SPI_CMDDATA
|
#ifdef CONFIG_SPI_CMDDATA
|
||||||
static int spi_cmddata(FAR struct spi_dev_s *dev, enum spi_dev_e devid,
|
static int spi_cmddata(FAR struct spi_dev_s *dev, uint32_t devid,
|
||||||
bool cmd);
|
bool cmd);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -206,7 +206,7 @@ static int spi_lock(FAR struct spi_dev_s *dev, bool lock)
|
|||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
static void spi_select(FAR struct spi_dev_s *dev, enum spi_dev_e devid,
|
static void spi_select(FAR struct spi_dev_s *dev, uint32_t devid,
|
||||||
bool selected)
|
bool selected)
|
||||||
{
|
{
|
||||||
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
||||||
@@ -481,7 +481,7 @@ static void spi_recvblock(FAR struct spi_dev_s *dev, FAR void *buffer, size_t nw
|
|||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
static uint8_t spi_status(FAR struct spi_dev_s *dev, enum spi_dev_e devid)
|
static uint8_t spi_status(FAR struct spi_dev_s *dev, uint32_t devid)
|
||||||
{
|
{
|
||||||
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
||||||
DEBUGASSERT(priv && priv->low && priv->low->status);
|
DEBUGASSERT(priv && priv->low && priv->low->status);
|
||||||
@@ -506,7 +506,7 @@ static uint8_t spi_status(FAR struct spi_dev_s *dev, enum spi_dev_e devid)
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifdef CONFIG_SPI_CMDDATA
|
#ifdef CONFIG_SPI_CMDDATA
|
||||||
static int spi_cmddata(FAR struct spi_dev_s *dev, enum spi_dev_e devid,
|
static int spi_cmddata(FAR struct spi_dev_s *dev, uint32_t devid,
|
||||||
bool cmd)
|
bool cmd)
|
||||||
{
|
{
|
||||||
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
FAR struct spi_bitbang_s *priv = (FAR struct spi_bitbang_s *)dev;
|
||||||
|
|||||||
@@ -70,7 +70,7 @@
|
|||||||
|
|
||||||
static void spi_delay(uint32_t holdtime);
|
static void spi_delay(uint32_t holdtime);
|
||||||
static void spi_select(FAR struct spi_bitbang_s *priv,
|
static void spi_select(FAR struct spi_bitbang_s *priv,
|
||||||
enum spi_dev_e devid, bool selected);
|
uint32_t devid, bool selected);
|
||||||
static uint32_t spi_setfrequency(FAR struct spi_bitbang_s *priv,
|
static uint32_t spi_setfrequency(FAR struct spi_bitbang_s *priv,
|
||||||
uint32_t frequency);
|
uint32_t frequency);
|
||||||
static void spi_setmode(FAR struct spi_bitbang_s *priv,
|
static void spi_setmode(FAR struct spi_bitbang_s *priv,
|
||||||
@@ -90,10 +90,10 @@ static uint16_t spi_bitexchange3(uint16_t dataout, uint32_t holdtime);
|
|||||||
static uint16_t spi_exchange(FAR struct spi_bitbang_s *priv,
|
static uint16_t spi_exchange(FAR struct spi_bitbang_s *priv,
|
||||||
uint16_t dataout);
|
uint16_t dataout);
|
||||||
static uint8_t spi_status(FAR struct spi_bitbang_s *priv,
|
static uint8_t spi_status(FAR struct spi_bitbang_s *priv,
|
||||||
enum spi_dev_e devid);
|
uint32_t devid);
|
||||||
#ifdef CONFIG_SPI_CMDDATA
|
#ifdef CONFIG_SPI_CMDDATA
|
||||||
static int spi_cmddata(FAR struct spi_bitbang_s *priv,
|
static int spi_cmddata(FAR struct spi_bitbang_s *priv,
|
||||||
enum spi_dev_e devid, bool cmd);
|
uint32_t devid, bool cmd);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ struct spi_bitbang_ops_s
|
|||||||
{
|
{
|
||||||
/* Platform specific chip select logic */
|
/* Platform specific chip select logic */
|
||||||
|
|
||||||
void (*select)(FAR struct spi_bitbang_s *priv, enum spi_dev_e devid,
|
void (*select)(FAR struct spi_bitbang_s *priv, uint32_t devid,
|
||||||
bool selected);
|
bool selected);
|
||||||
|
|
||||||
/* Platform-specific, SPI frequency function */
|
/* Platform-specific, SPI frequency function */
|
||||||
@@ -81,12 +81,12 @@ struct spi_bitbang_ops_s
|
|||||||
|
|
||||||
/* Platform-specific word exchange function */
|
/* Platform-specific word exchange function */
|
||||||
|
|
||||||
uint8_t (*status)(FAR struct spi_bitbang_s *priv, enum spi_dev_e devid);
|
uint8_t (*status)(FAR struct spi_bitbang_s *priv, uint32_t devid);
|
||||||
|
|
||||||
#ifdef CONFIG_SPI_CMDDATA
|
#ifdef CONFIG_SPI_CMDDATA
|
||||||
/* Platform-specific CMD/DATA function */
|
/* Platform-specific CMD/DATA function */
|
||||||
|
|
||||||
int (*cmddata)(FAR struct spi_bitbang_s *priv, enum spi_dev_e devid,
|
int (*cmddata)(FAR struct spi_bitbang_s *priv, uint32_t devid,
|
||||||
bool cmd);
|
bool cmd);
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user