23#ifndef included_Retro_Rw11CntlDL11
24#define included_Retro_Rw11CntlDL11 1
37 void Config(
const std::string& name, uint16_t base,
int lam);
51 uint16_t
Itype()
const;
55 virtual void Dump(std::ostream& os,
int ind=0,
const char* text=0,
62 static const uint16_t
kRCSR = 000;
63 static const uint16_t
kRBUF = 002;
64 static const uint16_t
kXCSR = 004;
65 static const uint16_t
kXBUF = 006;
107 void TraceChar(
char dir, uint16_t xbuf, uint8_t chr);
static const uint16_t kWBit01
static const uint16_t kWBit15
static const uint16_t kWBit07
Implemenation (inline) of Rw11CntlBase.
uint16_t fItype
interface type
static const bool kProbeInt
probe int active
static const uint16_t kXBUF_M_DATA
xbuf data mask
void SetRxQlim(uint16_t qlim)
FIXME_docs.
static const uint16_t kXCSR_V_RLIM
xcsr.rlim shift
static const uint16_t kRCSR_M_FCLR
rcsr.fclr mask
static const uint16_t kRCSR_V_TYPE
rcsr.type shift
static const int kLam
DL11 default lam.
static const uint16_t kXCSR_M_FCLR
xcsr.fclr mask
uint16_t fLastRbuf
last seen rbuf
static const uint16_t kIbaddr
DL11 default address.
void RxProcessBuf(uint16_t rbuf)
FIXME_docs.
uint16_t RxRlim() const
FIXME_docs.
static const uint16_t kXCSR_M_XRDY
xcsr.xrdy mask
int TxRcvHandler()
FIXME_docs.
static const uint16_t kRBUF_B_RFUSE
rbuf.rfuse bit mask
uint16_t TxRlim() const
FIXME_docs.
uint16_t RxQlim() const
FIXME_docs.
static const uint16_t kRBUF_V_RFUSE
rbuf.rfuse shift
~Rw11CntlDL11()
Destructor.
void SetTxRlim(uint16_t rlim)
FIXME_docs.
static const bool kProbeRem
probr rem active
static const uint16_t kRCSR_M_RDONE
rcsr.rdone mask
static const uint16_t kRCSR_B_TYPE
rcsr.type bit mask
static const uint16_t kRCSR
RCSR reg offset.
void ProcessUnbuf(uint16_t rbuf, uint16_t xbuf)
FIXME_docs.
void TraceChar(char dir, uint16_t xbuf, uint8_t chr)
FIXME_docs.
uint16_t fRxRlim
rx interrupt rate limit
static const uint16_t kXBUF_B_FUSE
xbuf.fuse bit mask
static const uint16_t kXBUF
XBUF reg offset.
void RxProcessUnbuf()
FIXME_docs.
void Config(const std::string &name, uint16_t base, int lam)
FIXME_docs.
static const uint16_t kXCSR
XCSR reg offset.
static const uint16_t kRBUF_M_DATA
rbuf data mask
int AttnHandler(RlinkServer::AttnArgs &args)
FIXME_docs.
uint16_t fTxRblkSize
tx rblk chunk size
bool Buffered() const
FIXME_docs.
static const uint16_t kXCSR_B_RLIM
xcsr.rlim bit mask
static const uint16_t kXBUF_M_VAL
xbuf.val mask
bool fTxQueBusy
tx queue busy
static const uint16_t kRCSR_B_RLIM
rcsr.rlim bit mask
Rw11CntlDL11()
Default constructor.
uint16_t fTxRlim
tx interrupt rate limit
static const uint16_t kRBUF
RBUF reg offset.
uint16_t Itype() const
FIXME_docs.
static const uint16_t kFifoMaxSize
maximal fifo size
void TxProcessBuf(const RlinkCommand &cmd, bool prim, uint16_t rbuf)
FIXME_docs.
virtual void Dump(std::ostream &os, int ind=0, const char *text=0, int detail=0) const
FIXME_docs.
static const uint16_t kRCSR_V_RLIM
rcsr.rlim shift
uint16_t FifoSize() const
FIXME_docs.
void SetRxRlim(uint16_t rlim)
FIXME_docs.
static const uint16_t kProbeOff
probe address offset (rcsr)
uint16_t fRxQlim
rx queue limit
size_t fPC_xbuf
PrimClist: xbuf index.
virtual void UnitSetup(size_t ind)
FIXME_docs.
virtual void Start()
FIXME_docs.
size_t fPC_rbuf
PrimClist: rbuf index.
static const uint16_t kXBUF_V_FUSE
xbuf.fuse shift
Declaration of class ReventLoop.