board.h 1008 B

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