spibus_npl.c File Reference

Go to the source code of this file.

Defines

#define NPL_MMC_CLOCK   12500000

Functions

int NplSpiBusSelect (NUTSPINODE *node, uint32_t tmo)
 Select a device on the first SPI bus.
int NplSpiBusDeselect (NUTSPINODE *node)
 Deselect a device on the first SPI bus.
int NplSpiBusNodeInit (NUTSPINODE *node)
 Initialize an SPI bus node.
int NplSpiBusPollTransfer (NUTSPINODE *node, CONST void *txbuf, void *rxbuf, int xlen)
 Transfer data on the SPI bus in polling mode.

Variables

NUTSPIBUS spiBusNpl
 SPI bus driver implementation structure.


Define Documentation

#define NPL_MMC_CLOCK   12500000

Definition at line 58 of file spibus_npl.c.


Function Documentation

int NplSpiBusSelect ( NUTSPINODE *  node,
uint32_t  tmo 
)

Select a device on the first SPI bus.

Locks and activates the bus for the specified node.

Parameters:
node Specifies the SPI bus node.
tmo Timeout in milliseconds. To disable timeout, set this parameter to NUT_WAIT_INFINITE.
Returns:
0 on success. In case of an error, -1 is returned and the bus is not locked.

Definition at line 153 of file spibus_npl.c.

References EIO, errno, NUTASSERT, NutEventPost(), NutEventWait(), and SPI_MODE_UPDATE.

int NplSpiBusDeselect ( NUTSPINODE *  node  ) 

Deselect a device on the first SPI bus.

Deactivates the chip select and unlocks the bus.

Parameters:
node Specifies the SPI bus node.
Returns:
Always 0.

Definition at line 190 of file spibus_npl.c.

References NUTASSERT, and NutEventPost().

int NplSpiBusNodeInit ( NUTSPINODE *  node  ) 

Initialize an SPI bus node.

This routine is called for each SPI node, which is registered via NutRegisterSpiDevice().

Parameters:
node Specifies the SPI bus node.
Returns:
0 on success or -1 if there is no valid chip select.

Definition at line 215 of file spibus_npl.c.

References NUTASSERT.

int NplSpiBusPollTransfer ( NUTSPINODE *  node,
CONST void *  txbuf,
void *  rxbuf,
int  xlen 
)

Transfer data on the SPI bus in polling mode.

A device must have been selected by calling NplSpiSelect().

Parameters:
node Specifies the SPI bus node.
txbuf Pointer to the transmit buffer. If NULL, undetermined byte values are transmitted.
rxbuf Pointer to the receive buffer. If NULL, then incoming data is discarded.
xlen Number of bytes to transfer.
Returns:
Always 0.

Definition at line 248 of file spibus_npl.c.

References inb, NPL_MMCDR, NPL_MMCREADY, NPL_SLR, NUTASSERT, and outb.


Variable Documentation

NUTSPIBUS spiBusNpl

Initial value:

SPI bus driver implementation structure.

Definition at line 281 of file spibus_npl.c.


© 2000-2007 by egnite Software GmbH - visit http://www.ethernut.de/