SDL API Guide for J7200
sdl_tog.h
Go to the documentation of this file.
1 
39 #ifndef SDL_TOG_H_
40 #define SDL_TOG_H_
41 
42 #ifdef __cplusplus
43 extern "C" {
44 #endif
45 
46 #include <stdint.h>
47 #include <stdbool.h>
48 #include <src/ip/sdl_ip_tog.h>
49 #include <src/ip/sdlr_tog.h>
50 
114 typedef uint8_t SDL_TOG_cfgCtrl;
116 #define SDL_TOG_CFG_TIMEOUT 0x01U
117 
118 #define SDL_TOG_CFG_INTR_PENDING 0x02U
119 /* @} */
120 
134 typedef struct
135 {
137  uint32_t routeId;
139  uint32_t orderId;
141  uint32_t dir;
143  uint32_t type;
145  uint32_t tag;
148  uint32_t commandId;
153  uint32_t orgByteCnt;
157  uint32_t currByteCnt;
161  uint64_t address;
163 
169 typedef struct {
171  uint32_t timeoutVal;
174 
182 typedef struct {
183  uint32_t PID;
184  uint32_t CFG;
185  uint32_t ENABLE;
186  uint32_t FLUSH;
187  uint32_t TIMEOUT;
188  uint32_t ERR;
190 
212 int32_t SDL_TOG_init(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig);
213 
227 int32_t SDL_TOG_verifyConfig(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig);
228 
246 int32_t SDL_TOG_setIntrEnable( SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrcs, bool enable );
247 
263  int32_t SDL_TOG_clrIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc);
264 
279  int32_t SDL_TOG_getIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc *pPendInts);
280 
303  int32_t SDL_TOG_ackIntr(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t ackCnt);
304 
315  int32_t SDL_TOG_start(SDL_TOG_Inst instance);
316 
327  int32_t SDL_TOG_stop(SDL_TOG_Inst instance);
328 
345 int32_t SDL_TOG_reset(SDL_TOG_Inst instance);
346 
366  int32_t SDL_TOG_getErrInfo(SDL_TOG_Inst instance, SDL_TOG_errInfo *pErrInfo);
367 
379 int32_t SDL_TOG_getStaticRegisters(SDL_TOG_Inst instance, SDL_TOG_staticRegs *pStaticRegs);
380 
393 int32_t SDL_TOG_setFlushMode(SDL_TOG_Inst instance, bool enable);
394 
419 int32_t SDL_TOG_getIntrCount(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t *pIntrCnt );
420 
423 #ifdef __cplusplus
424 }
425 #endif
426 
427 #endif /* SDL_TOG_H_ */
428 
429 /* nothing past this point */
uint32_t routeId
Definition: sdl_tog.h:137
uint32_t type
Definition: sdl_tog.h:143
Slave TOG Static Registers.
Definition: sdl_tog.h:182
uint32_t ENABLE
Definition: sdl_tog.h:185
int32_t SDL_TOG_clrIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc)
Clear pending interrupt source(s)
SDL_TOG_IntrSrc intrSrcs
Definition: sdl_tog.h:172
uint32_t SDL_TOG_IntrSrc
Definition: sdl_ip_tog.h:111
This structure contains timeout error information.
Definition: sdl_tog.h:134
int32_t SDL_TOG_getErrInfo(SDL_TOG_Inst instance, SDL_TOG_errInfo *pErrInfo)
Get timeout error information.
uint32_t TIMEOUT
Definition: sdl_tog.h:187
int32_t SDL_TOG_getStaticRegisters(SDL_TOG_Inst instance, SDL_TOG_staticRegs *pStaticRegs)
Readback Static configuration registers.
int32_t SDL_TOG_init(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig)
Initialize TOG module with respect of instance.
uint32_t timeoutVal
Definition: sdl_tog.h:171
int32_t SDL_TOG_setIntrEnable(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrcs, bool enable)
Enable/disable interrupt source(s)
int32_t SDL_TOG_ackIntr(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t ackCnt)
Ack interrupt source.
uint32_t FLUSH
Definition: sdl_tog.h:186
uint32_t orderId
Definition: sdl_tog.h:139
int32_t SDL_TOG_getIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc *pPendInts)
Get masked (enabled) pending interrupt sources.
int32_t SDL_TOG_start(SDL_TOG_Inst instance)
Start the timer counter.
int32_t SDL_TOG_setFlushMode(SDL_TOG_Inst instance, bool enable)
Enable/disable flush mode.
int32_t SDL_TOG_getIntrCount(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t *pIntrCnt)
Get interrupt count.
uint32_t ERR
Definition: sdl_tog.h:188
uint8_t SDL_TOG_cfgCtrl
Definition: sdl_tog.h:114
uint32_t tag
Definition: sdl_tog.h:145
uint32_t currByteCnt
Definition: sdl_tog.h:157
uint32_t PID
Definition: sdl_tog.h:183
uint8_t SDL_TOG_Inst
Definition: sdl_soc_tog.h:60
uint32_t commandId
Definition: sdl_tog.h:148
uint32_t dir
Definition: sdl_tog.h:141
int32_t SDL_TOG_verifyConfig(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig)
Verifying written configuration with TOG module.
int32_t SDL_TOG_stop(SDL_TOG_Inst instance)
Stop the timer counter.
uint32_t CFG
Definition: sdl_tog.h:184
This structure contains TOG configuration information.
Definition: sdl_tog.h:169
SDL_TOG_cfgCtrl cfgCtrl
Definition: sdl_tog.h:170
uint64_t address
Definition: sdl_tog.h:161
int32_t SDL_TOG_reset(SDL_TOG_Inst instance)
Reset the timeout functionality.
uint32_t orgByteCnt
Definition: sdl_tog.h:153