*/
static size_t ser_read(struct KFile *fd, void *_buf, size_t size)
{
*/
static size_t ser_read(struct KFile *fd, void *_buf, size_t size)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
size_t i = 0;
char *buf = (char *)_buf;
size_t i = 0;
char *buf = (char *)_buf;
*/
static size_t ser_write(struct KFile *fd, const void *_buf, size_t size)
{
*/
static size_t ser_write(struct KFile *fd, const void *_buf, size_t size)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
const char *buf = (const char *)_buf;
size_t i = 0;
const char *buf = (const char *)_buf;
size_t i = 0;
static int ser_error(struct KFile *fd)
{
static int ser_error(struct KFile *fd)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
return ser_getstatus(fds);
}
static void ser_clearerr(struct KFile *fd)
{
return ser_getstatus(fds);
}
static void ser_clearerr(struct KFile *fd)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
*/
static int ser_flush(struct KFile *fd)
{
*/
static int ser_flush(struct KFile *fd)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
/*
* Wait until the FIFO becomes empty, and then until the byte currently in
/*
* Wait until the FIFO becomes empty, and then until the byte currently in
*/
static int ser_close(struct KFile *fd)
{
*/
static int ser_close(struct KFile *fd)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
Serial *port = fds;
ASSERT(port->is_open);
Serial *port = fds;
ASSERT(port->is_open);
*/
static struct KFile *ser_reopen(struct KFile *fd)
{
*/
static struct KFile *ser_reopen(struct KFile *fd)
{
- Serial *fds = SERIAL(fd);
+ Serial *fds = SERIAL_CAST(fd);
ser_close(fd);
ser_open(fds, fds->unit);
ser_close(fd);
ser_open(fds, fds->unit);
*/
static size_t spimaster_read(struct KFile *fd, void *_buf, size_t size)
{
*/
static size_t spimaster_read(struct KFile *fd, void *_buf, size_t size)
{
- Serial *fd_spi = SERIAL(fd);
+ Serial *fd_spi = SERIAL_CAST(fd);
ser_flush(&fd_spi->fd);
ser_purgeRx(fd_spi);
ser_flush(&fd_spi->fd);
ser_purgeRx(fd_spi);
*/
static size_t spimaster_write(struct KFile *fd, const void *buf, size_t size)
{
*/
static size_t spimaster_write(struct KFile *fd, const void *buf, size_t size)
{
- Serial *fd_spi = SERIAL(fd);
+ Serial *fd_spi = SERIAL_CAST(fd);
#define KFT_SERIAL MAKE_ID('S', 'E', 'R', 'L')
#define KFT_SERIAL MAKE_ID('S', 'E', 'R', 'L')
-INLINE Serial * SERIAL(KFile *fd)
+INLINE Serial * SERIAL_CAST(KFile *fd)
{
ASSERT(fd->_type == KFT_SERIAL);
return (Serial *)fd;
{
ASSERT(fd->_type == KFT_SERIAL);
return (Serial *)fd;
* {
* KFile fd;
* Serial *ser;
* {
* KFile fd;
* Serial *ser;
* \endcode
*
* You should also supply a macro for casting KFile to SerialKFile:
*
* \code
* \endcode
*
* You should also supply a macro for casting KFile to SerialKFile:
*
* \code
- * INLINE SerialKFile * SERIALKFILE(KFile *fd)
+ * INLINE Serial * SERIAL_CAST(KFile *fd)
* {
* ASSERT(fd->_type == KFT_SERIAL);
* {
* ASSERT(fd->_type == KFT_SERIAL);
- * return (SerialKFile *)fd;