menu "Hardware Drivers Config" config SOC_HPM5100 bool select SOC_SERIES_HPM5100 select RT_USING_COMPONENTS_INIT select RT_USING_USER_MAIN default y menu "On-chip Peripheral Drivers" config BSP_USING_GPIO bool "Enable GPIO" select RT_USING_PIN if BSP_USING_GPIO default n if BSP_USING_GPIO config BSP_GPIO_IRQ_PRIORITY int "GPIO Interrupt Priority" range 1 7 default 1 endif menuconfig BSP_USING_UART bool "Enable UART" default y select RT_USING_SERIAL if BSP_USING_UART menuconfig BSP_USING_UART0 bool "Enable UART0 (Debugger)" default y if BSP_USING_UART0 config BSP_UART0_RX_USING_DMA bool "Enable UART0 RX DMA" depends on BSP_USING_UART0 && RT_SERIAL_USING_DMA default n config BSP_UART0_TX_USING_DMA bool "Enable UART0 TX DMA" depends on BSP_USING_UART0 && RT_SERIAL_USING_DMA default n config BSP_UART0_RX_BUFSIZE int "Set UART0 RX buffer size" range 64 65535 depends on RT_USING_SERIAL_V2 default 128 config BSP_UART0_TX_BUFSIZE int "Set UART0 TX buffer size" range 0 65535 depends on RT_USING_SERIAL_V2 default 0 config BSP_UART0_IRQ_PRIORITY int "UART0 Interrupt Priority" range 1 7 default 1 config BSP_UART0_DMA_PINGPONG_BUFSIZE int "Set UART0 RX DMA ping-pong buffer size" range 32 8192 depends on RT_USING_SERIAL_V2 && BSP_UART0_RX_USING_DMA default 128 endif menuconfig BSP_USING_UART1 bool "Enable UART1" default n if BSP_USING_UART1 config BSP_UART1_RX_USING_DMA bool "Enable UART1 RX DMA" depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA default n config BSP_UART1_TX_USING_DMA bool "Enable UART1 TX DMA" depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA default n config BSP_UART1_RX_BUFSIZE int "Set UART1 RX buffer size" range 64 65535 depends on RT_USING_SERIAL_V2 default 128 config BSP_UART1_TX_BUFSIZE int "Set UART1 TX buffer size" range 0 65535 depends on RT_USING_SERIAL_V2 default 0 config BSP_UART1_IRQ_PRIORITY int "UART1 Interrupt Priority" range 1 7 default 1 config BSP_UART1_DMA_PINGPONG_BUFSIZE int "Set UART1 RX DMA ping-pong buffer size" range 32 8192 depends on RT_USING_SERIAL_V2 && BSP_UART1_RX_USING_DMA default 128 endif menuconfig BSP_USING_UART2 bool "Enable UART2" default n if BSP_USING_UART2 config BSP_UART2_RX_USING_DMA bool "Enable UART2 RX DMA" depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA default n config BSP_UART2_TX_USING_DMA bool "Enable UART2 TX DMA" depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA default n config BSP_UART2_RX_BUFSIZE int "Set UART2 RX buffer size" range 64 65535 depends on RT_USING_SERIAL_V2 default 128 config BSP_UART2_TX_BUFSIZE int "Set UART2 TX buffer size" range 0 65535 depends on RT_USING_SERIAL_V2 default 0 config BSP_UART2_IRQ_PRIORITY int "UART2 Interrupt Priority" range 1 7 default 1 config BSP_UART2_DMA_PINGPONG_BUFSIZE int "Set UART2 RX DMA ping-pong buffer size" range 32 8192 depends on RT_USING_SERIAL_V2 && BSP_UART2_RX_USING_DMA default 128 endif menuconfig BSP_USING_UART3 bool "Enable UART3" default n if BSP_USING_UART3 config BSP_UART3_RX_USING_DMA bool "Enable UART3 RX DMA" depends on BSP_USING_UART3 && RT_SERIAL_USING_DMA default n config BSP_UART3_TX_USING_DMA bool "Enable UART3 TX DMA" depends on BSP_USING_UART3 && RT_SERIAL_USING_DMA default n config BSP_UART3_RX_BUFSIZE int "Set UART3 RX buffer size" range 64 65535 depends on RT_USING_SERIAL_V2 default 128 config BSP_UART3_TX_BUFSIZE int "Set UART3 TX buffer size" range 0 65535 depends on RT_USING_SERIAL_V2 default 0 config BSP_UART3_IRQ_PRIORITY int "UART3 Interrupt Priority" range 1 7 default 1 config BSP_UART3_DMA_PINGPONG_BUFSIZE int "Set UART3 RX DMA ping-pong buffer size" range 32 8192 depends on RT_USING_SERIAL_V2 && BSP_UART3_RX_USING_DMA default 128 endif menuconfig BSP_USING_PUART bool "Enable PUART" default n if BSP_USING_PUART config BSP_PUART_RX_BUFSIZE int "Set PUART RX buffer size" range 64 65535 depends on RT_USING_SERIAL_V2 default 1024 config BSP_PUART_TX_BUFSIZE int "Set PUART TX buffer size" range 0 65535 depends on RT_USING_SERIAL_V2 default 128 config BSP_PUART_IRQ_PRIORITY int "PUART Interrupt Priority" range 1 7 default 1 endif endif menuconfig BSP_USING_I2C bool "Enable I2C" default n select RT_USING_I2C if BSP_USING_I2C if BSP_USING_I2C config BSP_USING_I2C0 bool "Enable I2C0" default y if BSP_USING_I2C0 config BSP_I2C0_USING_DMA bool "Enable I2C0 DMA" default n config BSP_I2C0_IRQ_PRIORITY int "I2C0 Interrupt Priority" range 1 7 default 1 endif config BSP_USING_I2C1 bool "Enable I2C1" default n if BSP_USING_I2C1 config BSP_I2C1_USING_DMA bool "Enable I2C1 DMA" default n config BSP_I2C1_IRQ_PRIORITY int "I2C1 Interrupt Priority" range 1 7 default 1 endif config BSP_USING_I2C2 bool "Enable I2C2" default n if BSP_USING_I2C2 config BSP_I2C2_USING_DMA bool "Enable I2C2 DMA" default n config BSP_I2C2_IRQ_PRIORITY int "I2C2 Interrupt Priority" range 1 7 default 1 endif endif menuconfig BSP_USING_SPI bool "Enable SPI" default n select RT_USING_SPI if BSP_USING_SPI if BSP_USING_SPI config BSP_USING_SPI0 bool "Enable SPI0" default n if BSP_USING_SPI0 config BSP_SPI0_USING_DMA bool "Enable SPI0 DMA" default n config BSP_SPI0_IRQ_PRIORITY int "SPI0 Interrupt Priority" range 1 7 default 1 choice prompt "Select SPI0 CS TYPE" default BSP_SPI0_USING_SOFT_CS config BSP_SPI0_USING_SOFT_CS bool "Enable SPI0 software cs" config BSP_SPI0_USING_HARD_CS bool "Enable SPI0 hardware cs" endchoice choice prompt "Select SPI0 IO mode" default BSP_SPI0_USING_SINGLE_IO config BSP_SPI0_USING_SINGLE_IO bool "Enable SPI0 single IO mode" config BSP_SPI0_USING_DUAL_IO bool "Enable SPI0 dual IO mode" config BSP_SPI0_USING_QUAD_IO bool "Enable SPI0 quad IO mode" endchoice endif config BSP_USING_SPI1 bool "Enable SPI1" default n if BSP_USING_SPI1 config BSP_SPI1_USING_DMA bool "Enable SPI1 DMA" default n config BSP_SPI1_IRQ_PRIORITY int "SPI1 Interrupt Priority" range 1 7 default 1 choice prompt "Select SPI1 CS TYPE" default BSP_SPI1_USING_SOFT_CS config BSP_SPI1_USING_SOFT_CS bool "Enable SPI1 software cs" config BSP_SPI1_USING_HARD_CS bool "Enable SPI1 hardware cs" endchoice choice prompt "Select SPI1 IO mode" default BSP_SPI1_USING_SINGLE_IO config BSP_SPI1_USING_SINGLE_IO bool "Enable SPI1 single IO mode" config BSP_SPI1_USING_DUAL_IO bool "Enable SPI1 dual IO mode" config BSP_SPI1_USING_QUAD_IO bool "Enable SPI1 quad IO mode" endchoice endif config BSP_USING_SPI2 bool "Enable SPI2" default n if BSP_USING_SPI2 config BSP_SPI2_USING_DMA bool "Enable SPI2 DMA" default n config BSP_SPI2_IRQ_PRIORITY int "SPI2 Interrupt Priority" range 1 7 default 1 choice prompt "Select SPI2 CS TYPE" default BSP_SPI2_USING_SOFT_CS config BSP_SPI2_USING_SOFT_CS bool "Enable SPI2 software cs" config BSP_SPI2_USING_HARD_CS bool "Enable SPI2 hardware cs" endchoice choice prompt "Select SPI2 IO mode" default BSP_SPI2_USING_SINGLE_IO config BSP_SPI2_USING_SINGLE_IO bool "Enable SPI2 single IO mode" config BSP_SPI2_USING_DUAL_IO bool "Enable SPI2 dual IO mode" config BSP_SPI2_USING_QUAD_IO bool "Enable SPI2 quad IO mode" endchoice endif config BSP_USING_SPI3 bool "Enable SPI3" default y if BSP_USING_SPI3 config BSP_SPI3_USING_DMA bool "Enable SPI3 DMA" default n config BSP_SPI3_IRQ_PRIORITY int "SPI3 Interrupt Priority" range 1 7 default 1 choice prompt "Select SPI3 CS TYPE" default BSP_SPI3_USING_SOFT_CS config BSP_SPI3_USING_SOFT_CS bool "Enable SPI3 software cs" config BSP_SPI3_USING_HARD_CS bool "Enable SPI3 hardware cs" endchoice choice prompt "Select SPI3 IO mode" default BSP_SPI3_USING_SINGLE_IO config BSP_SPI3_USING_SINGLE_IO bool "Enable SPI3 single IO mode" config BSP_SPI3_USING_DUAL_IO bool "Enable SPI3 dual IO mode" config BSP_SPI3_USING_QUAD_IO bool "Enable SPI3 quad IO mode" endchoice endif endif menuconfig BSP_USING_I2S bool "Enable I2S" default n select RT_USING_I2S if BSP_USING_I2S if BSP_USING_I2S config BSP_USING_I2S0 bool "Enable I2S0" default n if BSP_USING_I2S0 config BSP_I2S0_USING_DMA bool "Enable I2S0 DMA" default n config BSP_I2S0_IRQ_PRIORITY int "I2S0 Interrupt Priority" range 1 7 default 1 endif config BSP_USING_I2S1 bool "Enable I2S1" default n if BSP_USING_I2S1 config BSP_I2S1_USING_DMA bool "Enable I2S1 DMA" default n config BSP_I2S1_IRQ_PRIORITY int "I2S1 Interrupt Priority" range 1 7 default 1 endif endif menuconfig BSP_USING_PWM bool "Enable PWM" default n select RT_USING_PWM menuconfig BSP_USING_GPTMRV2 bool "Enable GPTMR" default n select RT_USING_CLOCK_TIME if BSP_USING_GPTMRV2 if BSP_USING_GPTMRV2 config BSP_USING_GPTMR0 bool "Enable GPTMR0" depends on !HPM_USING_VECTOR_PREEMPTED_MODE default n if BSP_USING_GPTMR0 config BSP_GPTMR0_IRQ_PRIORITY int "GPTMR0 Interrupt Priority" range 1 7 default 1 endif config BSP_USING_GPTMR1 bool "Enable GPTMR1" default n if BSP_USING_GPTMR1 config BSP_GPTMR1_IRQ_PRIORITY int "GPTMR1 Interrupt Priority" range 1 7 default 1 endif config BSP_USING_PTMR bool "Enable PTMR" default n if BSP_USING_PTMR config BSP_PTMR_IRQ_PRIORITY int "PTMR Interrupt Priority" range 1 7 default 1 endif endif menuconfig BSP_USING_ADC bool "Enable ADC" default n select RT_USING_ADC if BSP_USING_ADC menuconfig BSP_USING_ADC16 bool "Enable ADC16" default y if BSP_USING_ADC16 config BSP_USING_ADC0 bool "Enable ADC0" default y config BSP_USING_ADC1 bool "Enable ADC1" default n config BSP_USING_ADC2 bool "Enable ADC2" default n config BSP_USING_ADC3 bool "Enable ADC3" default n endif endif menuconfig BSP_USING_ACMP bool "Enable ACMP (Analog Comparator)" default n if BSP_USING_ACMP config BSP_USING_ACMP0 bool "Enable ACMP0" default n config BSP_USING_ACMP1 bool "Enable ACMP1" default n endif menuconfig BSP_USING_OPAMP bool "Enable OPAMP (Operational Amplifier)" default n if BSP_USING_OPAMP config BSP_USING_OPAMP0 bool "Enable OPAMP0" default n config BSP_USING_OPAMP1 bool "Enable OPAMP1" default n config BSP_USING_OPAMP2 bool "Enable OPAMP2" default n config BSP_USING_OPAMP3 bool "Enable OPAMP3" default n endif menuconfig BSP_USING_MCAN bool "Enable MCAN" default n select RT_USING_CAN if BSP_USING_MCAN if BSP_USING_MCAN config BSP_USING_MCAN0 bool "Enable MCAN0" default n if BSP_USING_MCAN0 config BSP_MCAN0_IRQ_PRIORITY int "MCAN0 Interrupt Priority" range 1 7 default 1 endif endif menuconfig BSP_USING_USB bool "Enable USB" default n if BSP_USING_USB config BSP_USING_USB_DEVICE bool "Enable USB Device" select RT_USING_CACHE default n config BSP_USING_USB_HOST bool "Enable USB HOST" select RT_USING_CACHE default n endif menuconfig BSP_USING_WDG bool "Enable WDG" default n select RT_USING_WDT if BSP_USING_WDG if BSP_USING_WDG config BSP_USING_WDG0 bool "Enable WDG0" default y config BSP_USING_WDG1 bool "Enable WDG1" default n endif menuconfig BSP_USING_EWDG bool "Enable EWDG" default n select RT_USING_WDT if BSP_USING_EWDG if BSP_USING_EWDG config BSP_USING_EWDG0 bool "Enable EWDG0" default n config BSP_USING_EWDG1 bool "Enable EWDG1" default n endif menuconfig BSP_USING_TSNS bool "Enable TSNS (Temperature Sensor)" default n menuconfig BSP_USING_PTPC bool "Enable PTPC (PTP Controller)" default n menuconfig BSP_USING_MCHTMR bool "Enable MCHTMR (Machine Timer)" default n menuconfig BSP_USING_SOFT_I2C bool "Enable Software I2C" default n select RT_USING_I2C if BSP_USING_SOFT_I2C if BSP_USING_SOFT_I2C config BSP_USING_SOFT_I2C_TIMING_DELAY_US int "Soft I2C timing delay in microseconds" range 1 1000 default 1 config BSP_USING_SOFT_I2C_TIMING_TIMEOUT int "Soft I2C timing timeout" range 10 10000 default 100 config BSP_USING_SOFT_I2C0 bool "Enable Soft I2C0" default n if BSP_USING_SOFT_I2C0 config BSP_SOFT_I2C0_SCL_PIN string "Soft I2C0 SCL pin name" default "None" config BSP_SOFT_I2C0_SDA_PIN string "Soft I2C0 SDA pin name" default "None" endif config BSP_USING_SOFT_I2C1 bool "Enable Soft I2C1" default n if BSP_USING_SOFT_I2C1 config BSP_SOFT_I2C1_SCL_PIN string "Soft I2C1 SCL pin name" default "None" config BSP_SOFT_I2C1_SDA_PIN string "Soft I2C1 SDA pin name" default "None" endif config BSP_USING_SOFT_I2C2 bool "Enable Soft I2C2" default n if BSP_USING_SOFT_I2C2 config BSP_SOFT_I2C2_SCL_PIN string "Soft I2C2 SCL pin name" default "None" config BSP_SOFT_I2C2_SDA_PIN string "Soft I2C2 SDA pin name" default "None" endif endif menuconfig BSP_USING_SOFT_SPI bool "Enable Software SPI" default n select RT_USING_SPI if BSP_USING_SOFT_SPI select RT_USING_PIN if BSP_USING_SOFT_SPI select RT_USING_SPI_BITOPS if BSP_USING_SOFT_SPI if BSP_USING_SOFT_SPI config BSP_USING_SOFT_SPI_TIMING_DELAY_US int "Soft SPI timing delay in microseconds" range 1 1000 default 1 config BSP_USING_SOFT_SPI0 bool "Enable Soft SPI0" default n if BSP_USING_SOFT_SPI0 config BSP_SOFT_SPI0_SCK_PIN string "Soft SPI0 SCK pin name" default "None" config BSP_SOFT_SPI0_MOSI_PIN string "Soft SPI0 MOSI pin name" default "None" config BSP_SOFT_SPI0_MISO_PIN string "Soft SPI0 MISO pin name" default "None" endif config BSP_USING_SOFT_SPI1 bool "Enable Soft SPI1" default n if BSP_USING_SOFT_SPI1 config BSP_SOFT_SPI1_SCK_PIN string "Soft SPI1 SCK pin name" default "None" config BSP_SOFT_SPI1_MOSI_PIN string "Soft SPI1 MOSI pin name" default "None" config BSP_SOFT_SPI1_MISO_PIN string "Soft SPI1 MISO pin name" default "None" endif config BSP_USING_SOFT_SPI2 bool "Enable Soft SPI2" default n if BSP_USING_SOFT_SPI2 config BSP_SOFT_SPI2_SCK_PIN string "Soft SPI2 SCK pin name" default "None" config BSP_SOFT_SPI2_MOSI_PIN string "Soft SPI2 MOSI pin name" default "None" config BSP_SOFT_SPI2_MISO_PIN string "Soft SPI2 MISO pin name" default "None" endif endif endmenu menu "HPMicro Interrupt Config" endmenu menu "HPMicro RT-Thread Interrupt Framework" endmenu menu "HPMicro Use Generic Startup Implementation" config HPM_BSP_USING_GENERIC_STARTUP bool "Enable this to use the common/startup/generic implementation" default n depends on HPM_USING_RTTHREAD_INTERRUPT_FRAMEWORK help Enable this to use the common/startup/generic implementation. This option is only available when RT-Thread Interrupt Framework is enabled. endmenu menu "HPMicro RT-Thread backtrace configuration (experimental)" config HPM_ENABLE_RTTHREAD_BACKTRACE_PORT bool "Enable RT-Thread Backtrace for HPMicro BSP" default n help Enable RT-Thread Backtrace to support backtrace feature config HPM_USE_RTTHREAD_BACKTRACE_IN_EXCEPTION_HANDLER select HPM_ENABLE_RTTHREAD_BACKTRACE_PORT bool "Use RT-Thread Backtrace in Exception Handler" default n help Use RT-Thread Backtrace in Exception Handler to print backtrace information endmenu endmenu menu "Third-Party Add-ons" menu "Segger SystemView Config" config BSP_USING_SYSTEMVIEW select RT_USING_SYSTEMVIEW select RT_USING_LEGACY bool "Enable Segger SystemView" default n if BSP_USING_SYSTEMVIEW menuconfig BSP_SYSTEMVIEW_RTT_SECTION bool "enable SystemView RTT section" default y if BSP_SYSTEMVIEW_RTT_SECTION config SEGGER_RTT_SECTION string "segger rtt section" default ".noncacheable.bss" config SEGGER_RTT_BUFFER_SECTION string "segger rtt buffer section" default ".noncacheable.bss" config SEGGER_SYSVIEW_SECTION string "segger sysview section" default ".noncacheable.bss" endif endif endmenu menu "RT-Thread Insight Config" config BSP_USING_RTI select BSP_USING_MCHTMR select RT_USING_RTI select RT_USING_RT_TUNNEL bool "Enable RT-Thread Insight(experimental)" default n if BSP_USING_RTI config RT_TUNNEL_USE_NONCACHE_RAM bool "Enable RT-Thread Insight Non-cacheable RAM support" default y help Enable this to use non-cacheable RAM for RT-Thread Insight data transfer. This option is useful when RT-Thread Insight is used with cache enabled. endif endmenu endmenu