SDL API Guide for J721E
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 
115 typedef uint8_t SDL_TOG_cfgCtrl;
117 #define SDL_TOG_CFG_TIMEOUT 0x01U
118 
119 #define SDL_TOG_CFG_INTR_PENDING 0x02U
120 /* @} */
121 
135 typedef struct
136 {
138  uint32_t routeId;
140  uint32_t orderId;
142  uint32_t dir;
144  uint32_t type;
146  uint32_t tag;
149  uint32_t commandId;
154  uint32_t orgByteCnt;
158  uint32_t currByteCnt;
162  uint64_t address;
164 
170 typedef struct {
172  uint32_t timeoutVal;
175 
183 typedef struct {
184  uint32_t PID;
185  uint32_t CFG;
186  uint32_t ENABLE;
187  uint32_t FLUSH;
188  uint32_t TIMEOUT;
189  uint32_t ERR;
191 
213 int32_t SDL_TOG_init(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig);
214 
228 int32_t SDL_TOG_verifyConfig(SDL_TOG_Inst instance, const SDL_TOG_config *pConfig);
229 
247 int32_t SDL_TOG_setIntrEnable( SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrcs, bool enable );
248 
264  int32_t SDL_TOG_clrIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc);
265 
280  int32_t SDL_TOG_getIntrPending(SDL_TOG_Inst instance, SDL_TOG_IntrSrc *pPendInts);
281 
304  int32_t SDL_TOG_ackIntr(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t ackCnt);
305 
316  int32_t SDL_TOG_start(SDL_TOG_Inst instance);
317 
328  int32_t SDL_TOG_stop(SDL_TOG_Inst instance);
329 
346 int32_t SDL_TOG_reset(SDL_TOG_Inst instance);
347 
367  int32_t SDL_TOG_getErrInfo(SDL_TOG_Inst instance, SDL_TOG_errInfo *pErrInfo);
368 
380 int32_t SDL_TOG_getStaticRegisters(SDL_TOG_Inst instance, SDL_TOG_staticRegs *pStaticRegs);
381 
394 int32_t SDL_TOG_setFlushMode(SDL_TOG_Inst instance, bool enable);
395 
420 int32_t SDL_TOG_getIntrCount(SDL_TOG_Inst instance, SDL_TOG_IntrSrc intrSrc, uint32_t *pIntrCnt );
421 
424 #ifdef __cplusplus
425 }
426 #endif
427 
428 #endif /* SDL_TOG_H_ */
429 
430 /* nothing past this point */
uint32_t routeId
Definition: sdl_tog.h:138
uint32_t type
Definition: sdl_tog.h:144
Slave TOG Static Registers.
Definition: sdl_tog.h:183
uint32_t ENABLE
Definition: sdl_tog.h:186
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:173
uint32_t SDL_TOG_IntrSrc
Definition: sdl_ip_tog.h:111
This structure contains timeout error information.
Definition: sdl_tog.h:135
int32_t SDL_TOG_getErrInfo(SDL_TOG_Inst instance, SDL_TOG_errInfo *pErrInfo)
Get timeout error information.
uint32_t TIMEOUT
Definition: sdl_tog.h:188
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:172
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:187
uint32_t orderId
Definition: sdl_tog.h:140
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:189
uint8_t SDL_TOG_cfgCtrl
Definition: sdl_tog.h:115
uint32_t tag
Definition: sdl_tog.h:146
uint32_t currByteCnt
Definition: sdl_tog.h:158
uint32_t PID
Definition: sdl_tog.h:184
uint8_t SDL_TOG_Inst
Definition: sdl_soc_tog.h:61
uint32_t commandId
Definition: sdl_tog.h:149
uint32_t dir
Definition: sdl_tog.h:142
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:185
This structure contains TOG configuration information.
Definition: sdl_tog.h:170
SDL_TOG_cfgCtrl cfgCtrl
Definition: sdl_tog.h:171
uint64_t address
Definition: sdl_tog.h:162
int32_t SDL_TOG_reset(SDL_TOG_Inst instance)
Reset the timeout functionality.
uint32_t orgByteCnt
Definition: sdl_tog.h:154