|
| | SPI (const char *name, ChipSelectMethod cs_assert, ChipSelectMethod cs_deassert, OSMutex *bus_lock=nullptr) |
| | Constructor.
|
| |
| | ~SPI () |
| | Destructor.
|
| |
| void | bus_lock () |
| | Lock the bus shared by many chip selects.
|
| |
| void | bus_unlock () |
| | Unlock the bus shared by many chip selects.
|
| |
| virtual int | transfer (struct spi_ioc_transfer *msg)=0 |
| | Method to transmit/receive the data.
|
| |
| virtual int | transfer_polled (struct spi_ioc_transfer *msg)=0 |
| | Method to transmit/receive the data, but always in polled mode.
|
| |
| virtual int | update_configuration ()=0 |
| | Update the configuration of the bus.
|
| |
| int | ioctl (File *file, unsigned long int key, unsigned long data) override |
| | Request an ioctl transaction.
|
| |
| | Node (const char *name) |
| | Constructor.
|
| |
| virtual | ~Node () |
| | Destructor.
|
| |
| virtual void | enable ()=0 |
| | This will be called once when reference-count goes from 0 to positive.
|
| |
| virtual void | disable ()=0 |
| | This will be called when reference count goes from non-zero to 0.
|
| |
| int | open (File *, const char *, int, int) OVERRIDE |
| | Open method.
|
| |
| int | close (File *) OVERRIDE |
| | Close method.
|
| |
| virtual int | fstat (File *file, struct stat *stat) override |
| | Get the status information of a file or device.
|
| |
| | FileIO (const char *name) |
| | Constructor.
|
| |
| virtual | ~FileIO () |
| | Destructor.
|
| |
| virtual off_t | lseek (File *f, off_t offset, int whence) |
| | Seek method.
|
| |
| virtual int | fcntl (File *file, int cmd, unsigned long data) |
| | Manipulate a file descriptor.
|
| |
| virtual bool | select (File *file, int mode) |
| | Device select method.
|
| |
|
| static int | open (struct _reent *reent, const char *path, int flags, int mode) |
| | Open a file or device.
|
| |
| static int | close (struct _reent *reent, int fd) |
| | Close a file or device.
|
| |
| static int | stat (struct _reent *reent, const char *path, struct stat *stat) |
| | Get the status information of a file or device.
|
| |
| static int | select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, long long timeout) |
| | POSIX select().
|
| |
| static void | select_clear () |
| | Clears the current thread's select bits.
|
| |
| static ssize_t | read (struct _reent *reent, int fd, void *buf, size_t count) |
| | Read from a file or device.
|
| |
| static ssize_t | write (struct _reent *reent, int fd, const void *buf, size_t count) |
| | Write to a file or device.
|
| |
| static _off_t | lseek (struct _reent *reent, int fd, _off_t offset, int whence) |
| | Change the offset index of a file or device.
|
| |
| static int | fstat (struct _reent *reent, int fd, struct stat *stat) |
| | Get the status information of a file or device.
|
| |
| static int | ioctl (int fd, unsigned long int key, unsigned long data) |
| | Request and ioctl transaction.
|
| |
| static int | fcntl (int fd, int cmd, unsigned long data) |
| | Manipulate a file descriptor.
|
| |
| static bool | is_device (int fd) |
| | Test if the file descriptor belongs to a device.
|
| |
| static void | select_insert (SelectInfo *info) |
| | Add client to list of clients needing woken.
|
| |
| static void | select_wakeup (SelectInfo *info) |
| | Wakeup the list of clients needing woken.
|
| |
| static void | select_wakeup_from_isr (SelectInfo *info, int *woken) |
| | Wakeup the list of clients needing woken.
|
| |
| static int | fd_alloc (void) |
| | Allocate a free file descriptor.
|
| |
| static void | fd_free (int fd) |
| | Free up a file descriptor.
|
| |
| static File * | file_lookup (int fd) |
| | Looks up a reference to a File corresponding to a given file descriptor.
|
| |
| static int | fd_lookup (File *file) |
| | Looks up a file descriptor corresponding to a given File reference.
|
| |
| static const unsigned int | numOpenFiles = 20 |
| |
| static File | files [] |
| | File descriptor pool.
|
| |
| static OSMutex | mutex |
| | mutual exclusion for fileio
|
| |
Private data for an SPI device.
Unlike the Linux model this interface is based on, speed, bits per word, mode, and lsb first will always be the same for both read and write. Changing one of these parameters for read will also reflect the change in write and vice versa.
Definition at line 52 of file SPI.hxx.