board.h 770 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef BOARD_H
  2. #define BOARD_H
  3. #if defined HARDWARE_BT6703
  4. #include "board_bt6703.h"
  5. #elif defined HARDWARE_BT6707
  6. #include "board_bt6707.h"
  7. #elif defined HARDWARE_BT6709
  8. #include "board_bt6709.h"
  9. #endif
  10. #define EXPAND_AS_ENUM(name, ...) name,
  11. #define EXPAND_AS_DEFS(name, port, pin, flags) {port, pin, flags},
  12. #define ADC_EXPAND_AS_DEFS(name, chan, coef) {chan, coef},
  13. typedef enum gpio_e {
  14. GPIO_TABLE(EXPAND_AS_ENUM)
  15. GPIO_TOTAL_COUNT
  16. } gpio_t;
  17. /* to prevent compilation error on pin conflict */
  18. #define MAKE_PIN_CHECK 1
  19. #if MAKE_PIN_CHECK
  20. #define GPIO_EXPAND_AS_CHECK(name, port, pin, flags) port ## pin,
  21. #define ADC_EXPAND_AS_CHECK(name, chan) _ ## chan,
  22. enum gpio_check {
  23. GPIO_TABLE(GPIO_EXPAND_AS_CHECK)
  24. };
  25. #endif /* MAKE_PIN_CHECK */
  26. #endif /* BOARD_H */