gptimer.h 941 B

12345678910111213141516171819202122232425262728293031323334
  1. /* GRLIB GPTIMER (General Purpose Timer) definitions
  2. *
  3. * (C) Copyright 2010, 2015
  4. * Daniel Hellstrom, Cobham Gaisler, daniel@gaisler.com
  5. *
  6. * SPDX-License-Identifier: GPL-2.0+
  7. */
  8. #ifndef __GRLIB_GPTIMER_H__
  9. #define __GRLIB_GPTIMER_H__
  10. typedef struct {
  11. volatile unsigned int val;
  12. volatile unsigned int rld;
  13. volatile unsigned int ctrl;
  14. volatile unsigned int unused;
  15. } ambapp_dev_gptimer_element;
  16. #define GPTIMER_CTRL_EN 0x1 /* Timer enable */
  17. #define GPTIMER_CTRL_RS 0x2 /* Timer reStart */
  18. #define GPTIMER_CTRL_LD 0x4 /* Timer reLoad */
  19. #define GPTIMER_CTRL_IE 0x8 /* interrupt enable */
  20. #define GPTIMER_CTRL_IP 0x10 /* interrupt flag/pending */
  21. #define GPTIMER_CTRL_CH 0x20 /* Chain with previous timer */
  22. typedef struct {
  23. volatile unsigned int scalar;
  24. volatile unsigned int scalar_reload;
  25. volatile unsigned int config;
  26. volatile unsigned int unused;
  27. volatile ambapp_dev_gptimer_element e[8];
  28. } ambapp_dev_gptimer;
  29. #endif