You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
3.0 KiB

  1. /*
  2. ChibiOS - Copyright (C) 2006..2021 Giovanni Di Sirio
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. */
  13. #ifndef MCUCONF_H
  14. #define MCUCONF_H
  15. /*
  16. * RP2040_MCUCONF drivers configuration.
  17. *
  18. * IRQ priorities:
  19. * 3...0 Lowest...Highest.
  20. *
  21. * DMA priorities:
  22. * 0...1 Lowest...Highest.
  23. */
  24. #define RP2040_MCUCONF
  25. /*
  26. * HAL driver system settings.
  27. */
  28. #define RP_NO_INIT FALSE
  29. #define RP_CORE1_START FALSE
  30. #define RP_CORE1_VECTORS_TABLE _vectors
  31. #define RP_CORE1_ENTRY_POINT _crt0_c1_entry
  32. #define RP_CORE1_STACK_END __c1_main_stack_end__
  33. /*
  34. * IRQ system settings.
  35. */
  36. #define RP_IRQ_SYSTICK_PRIORITY 2
  37. #define RP_IRQ_TIMER_ALARM0_PRIORITY 2
  38. #define RP_IRQ_TIMER_ALARM1_PRIORITY 2
  39. #define RP_IRQ_TIMER_ALARM2_PRIORITY 2
  40. #define RP_IRQ_TIMER_ALARM3_PRIORITY 2
  41. #define RP_IRQ_UART0_PRIORITY 3
  42. #define RP_IRQ_UART1_PRIORITY 3
  43. #define RP_IRQ_SPI0_PRIORITY 2
  44. #define RP_IRQ_SPI1_PRIORITY 2
  45. #define RP_IRQ_USB0_PRIORITY 3
  46. #define RP_IRQ_I2C0_PRIORITY 2
  47. #define RP_IRQ_I2C1_PRIORITY 2
  48. /*
  49. * ADC driver system settings.
  50. */
  51. #define RP_ADC_USE_ADC1 FALSE
  52. /*
  53. * SIO driver system settings.
  54. */
  55. #define RP_SIO_USE_UART0 TRUE
  56. #define RP_SIO_USE_UART1 FALSE
  57. /*
  58. * SPI driver system settings.
  59. */
  60. #define RP_SPI_USE_SPI0 TRUE
  61. #define RP_SPI_USE_SPI1 FALSE
  62. #define RP_SPI_SPI0_RX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY
  63. #define RP_SPI_SPI0_TX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY
  64. #define RP_SPI_SPI1_RX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY
  65. #define RP_SPI_SPI1_TX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY
  66. #define RP_SPI_SPI0_DMA_PRIORITY 1
  67. #define RP_SPI_SPI1_DMA_PRIORITY 1
  68. #define RP_SPI_DMA_ERROR_HOOK(spip)
  69. /*
  70. * I2C driver system settings.
  71. */
  72. #define RP_I2C_USE_I2C0 FALSE
  73. #define RP_I2C_USE_I2C1 TRUE
  74. #define RP_I2C_BUSY_TIMEOUT 50
  75. #define RP_I2C_ADDRESS_MODE_10BIT FALSE
  76. /*
  77. * USB driver system settings.
  78. */
  79. #define RP_USB_USE_USBD0 TRUE
  80. #define RP_USB_FORCE_VBUS_DETECT TRUE
  81. #define RP_USE_EXTERNAL_VBUS_DETECT FALSE
  82. #define RP_USB_USE_SOF_INTR TRUE
  83. #define RP_USB_USE_ERROR_DATA_SEQ_INTR FALSE
  84. #endif /* MCUCONF_H */