board.h 826 B

123456789101112131415161718192021222324252627282930313233
  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. #elif defined HARDWARE_BT6710
  10. #include "board_bt6710.h"
  11. #endif
  12. #define EXPAND_AS_ENUM(name, ...) name,
  13. #define EXPAND_AS_DEFS(name, port, pin, flags) {port, pin, flags},
  14. #define ADC_EXPAND_AS_DEFS(name, chan, coef) {chan, coef},
  15. typedef enum gpio_e {
  16. GPIO_TABLE(EXPAND_AS_ENUM)
  17. GPIO_TOTAL_COUNT
  18. } gpio_t;
  19. /* to prevent compilation error on pin conflict */
  20. #define MAKE_PIN_CHECK 1
  21. #if MAKE_PIN_CHECK
  22. #define GPIO_EXPAND_AS_CHECK(name, port, pin, flags) port ## pin,
  23. #define ADC_EXPAND_AS_CHECK(name, chan) _ ## chan,
  24. enum gpio_check {
  25. GPIO_TABLE(GPIO_EXPAND_AS_CHECK)
  26. };
  27. #endif /* MAKE_PIN_CHECK */
  28. #endif /* BOARD_H */