File nut/arch/avr/dev/tlc16c550.c


Included Files


Preprocessor definitions

#define ACE_RBR_OFS 0

#define ACE_THR_OFS 0

#define ACE_DLL_OFS 0

#define ACE_DLM_OFS 1

#define ACE_IER_OFS 1

#define ACE_FCR_OFS 2

#define ACE_IIR_OFS 2

#define ACE_LCR_OFS 3

#define ACE_MCR_OFS 4

#define ACE_LSR_OFS 5

#define ACE_MSR_OFS 6

#define ACE_SRC_OFS 7

#define IER_RDA_MSK 0x01

#define IER_THE_MSK 0x02

#define IER_LST_MSK 0x04

#define IER_MST_MSK 0x08

#define FCR_ENABLE 0x01

#define FCR_PURGE_I 0x02

#define FCR_PURGE_O 0x04

#define FCR_LEVEL_1 0x00

#define FCR_LEVEL_4 0x40

#define FCR_LEVEL_8 0x80

#define FCR_LEVEL_14 0xc0

#define IIR_MST_MSK 0x00

#define IIR_TXE_MSK 0x02

#define IIR_RDA_MSK 0x04

#define IIR_TDA_MSK 0x0c

#define IIR_LST_MSK 0x06

#define IIR_NON_MSK 0x01

#define IIR_FIFO_MSK 0xc0

#define LCR_WS0_MSK 0x01

#define LCR_WS1_MSK 0x02

#define LCR_STB_MSK 0x04

#define LCR_PEN_MSK 0x08

#define LCR_PRE_MSK 0x10

#define LCR_PRS_MSK 0x20

#define LCR_BRK_MSK 0x40

#define LCR_ENB_MSK 0x80

#define MCR_DTR_MSK 0x01

#define MCR_RTS_MSK 0x02

#define MCR_GP1_MSK 0x04

#define MCR_GP2_MSK 0x08

#define MCR_LOP_MSK 0x10

#define LSR_RDR_MSK 0x01

#define LSR_OVR_MSK 0x02

#define LSR_PER_MSK 0x04

#define LSR_FER_MSK 0x08

#define LSR_BDT_MSK 0x10

#define LSR_THE_MSK 0x20

#define LSR_TXE_MSK 0x40

#define LSR_EIF_MSK 0x80

#define MSR_DCTS_MSK 0x01

#define MSR_DDSR_MSK 0x02

#define MSR_DRI_MSK 0x04

#define MSR_DDCD_MSK 0x08

#define MSR_CTS_MSK 0x10

#define MSR_DSR_MSK 0x20

#define MSR_RI_MSK 0x40

#define MSR_DCD_MSK 0x80


Typedef IRQDEFS

typedef struct tagIRQDEFS IRQDEFS
struct tagIRQDEFS  
   {  
      IRQ_HANDLER* pvIrq;  
      volatile uint8_t* pnIrqMskPort;  
      uint8_t nMask;  
   }  

Local Variables

atIrqDefs
static const IRQDEFS atIrqDefs[]
Used in: AceInit()  

pIrqDev
static NUTDEVICE* pIrqDev[8]

Used in: AceInit()  

irqMask
static uint8_t irqMask

Used in: AceInit()  

Global Function AceClose()

int AceClose ( NUTFILE* fp )
Prototyped in: nut/include/dev/ace.h
Calls: NutHeapRootFree()
Used in:   nut/arch/avr/dev/ace.c

Global Function AceFlush()

int AceFlush ( NUTDEVICE* dev )
Prototyped in: nut/include/dev/ace.h
Calls: AceOutput() nut/arch/avr/dev/tlc16c550.c
  NutEventWaitNext()
Called by: AcePut() nut/arch/avr/dev/tlc16c550.c
Used in: AceInit() nut/arch/avr/dev/tlc16c550.c

Global Function AceIOCtl()

int AceIOCtl ( NUTDEVICE* dev, int req, void* conf )
Prototyped in: nut/include/dev/ace.h
Calls: AceDisable() nut/arch/avr/dev/tlc16c550.c
  AceEnable() nut/arch/avr/dev/tlc16c550.c
  AceGetStatus() nut/arch/avr/dev/tlc16c550.c
  NutEventPostAsync()
Called by: AceInit() nut/arch/avr/dev/tlc16c550.c
Used in:   nut/arch/avr/dev/ace.c

Global Function AceInit()

int AceInit ( NUTDEVICE* dev )
Prototyped in: nut/include/dev/ace.h
Calls: AceEnable() nut/arch/avr/dev/tlc16c550.c
  AceIOCtl() nut/arch/avr/dev/tlc16c550.c
  NutRegisterIrqHandler(), memset()
Used in:   nut/arch/avr/dev/ace.c
References Functions: AceFlush() nut/arch/avr/dev/tlc16c550.c
  AceInput() nut/arch/avr/dev/tlc16c550.c
  AceIrqHandler() nut/arch/avr/dev/tlc16c550.c
  AceOutput() nut/arch/avr/dev/tlc16c550.c
References Variables: atIrqDefs nut/arch/avr/dev/tlc16c550.c
  irqMask nut/arch/avr/dev/tlc16c550.c
  pIrqDev nut/arch/avr/dev/tlc16c550.c

Global Function AceInput()

int AceInput ( NUTDEVICE* dev )
Prototyped in: nut/include/dev/ace.h
Calls: NutEventWaitNext()
Called by: AceRead() nut/arch/avr/dev/tlc16c550.c
Used in: AceInit() nut/arch/avr/dev/tlc16c550.c

Global Function AceOpen()

NUTFILE* AceOpen ( NUTDEVICE* dev, const char* name, int mode, int acc )
Prototyped in: nut/include/dev/ace.h
Calls: NutHeapRootAlloc()
Used in:   nut/arch/avr/dev/ace.c

Global Function AceOutput()

int AceOutput ( NUTDEVICE* dev )
Prototyped in: nut/include/dev/ace.h
Called by: AceFlush() nut/arch/avr/dev/tlc16c550.c
Used in: AceInit() nut/arch/avr/dev/tlc16c550.c

Global Function AcePut()

int AcePut ( NUTDEVICE* dev, const void* buffer, int len, int pflg )
Calls: AceFlush() nut/arch/avr/dev/tlc16c550.c
Called by: AceWrite() nut/arch/avr/dev/tlc16c550.c
  AceWrite_P() nut/arch/avr/dev/tlc16c550.c

Global Function AceRead()

int AceRead ( NUTFILE* fp, void* buffer, int size )
Prototyped in: nut/include/dev/ace.h
Calls: AceInput() nut/arch/avr/dev/tlc16c550.c
Used in:   nut/arch/avr/dev/ace.c

Global Function AceSize()

long AceSize ( NUTFILE* fp )
Prototyped in: nut/include/dev/ace.h
Used in:   nut/arch/avr/dev/ace.c

Global Function AceWrite()

int AceWrite ( NUTFILE* fp, const void* buffer, int len )
Prototyped in: nut/include/dev/ace.h
Calls: AcePut() nut/arch/avr/dev/tlc16c550.c
Used in:   nut/arch/avr/dev/ace.c

Global Function AceWrite_P()

int AceWrite_P ( NUTFILE* fp, const char* buffer, int len )
Prototyped in: nut/include/dev/ace.h
Calls: AcePut() nut/arch/avr/dev/tlc16c550.c
Used in:   nut/arch/avr/dev/ace.c

Local Function AceDisable()

static void AceDisable ( uint16_t base )
Calls: NutDelay()
Called by: AceIOCtl() nut/arch/avr/dev/tlc16c550.c

Local Function AceEnable()

static void AceEnable ( uint16_t base )
Called by: AceIOCtl() nut/arch/avr/dev/tlc16c550.c
  AceInit() nut/arch/avr/dev/tlc16c550.c

Local Function AceGetStatus()

static int AceGetStatus ( NUTDEVICE* dev, uint32_t* status )
Called by: AceIOCtl() nut/arch/avr/dev/tlc16c550.c

Local Function AceIrqHandler()

static void AceIrqHandler ( void* arg )
Used in: AceInit() nut/arch/avr/dev/tlc16c550.c