menu "Hardware Drivers Config"

config SOC_MCXA153
    bool
    select SOC_MCXA153_SERIES
    select RT_USING_COMPONENTS_INIT
    select RT_USING_USER_MAIN
    default y

menu "On-chip Peripheral Drivers"

    config BSP_USING_DMA
        bool "Enable DMA"
        select RT_USING_DMA
        default n

    config BSP_USING_PIN
        bool "Enable GPIO"
        select RT_USING_PIN
        default y

    menuconfig BSP_USING_UART
        config BSP_USING_UART
            bool "Enable UART"
            select RT_USING_SERIAL
            default y

            if BSP_USING_UART
                config BSP_USING_UART0
                    bool "Enable LPUART as UART0"
                    default y
                config BSP_USING_UART1
                    bool "Enable LPUART as UART1"
                    default n
                config BSP_USING_UART2
                    bool "Enable LPUART as UART2"
                    default n
            endif

    menuconfig BSP_USING_I2C
        config BSP_USING_I2C
            bool "Enable I2C"
            select RT_USING_I2C
            default n

            if BSP_USING_I2C
                config BSP_USING_I2C0
                    bool "Enable I2C0"
                    default n
            endif

    menuconfig BSP_USING_SPI
        config BSP_USING_SPI
            bool "Enable SPI"
            select RT_USING_SPI
            select BSP_USING_PIN
            default n

            if BSP_USING_SPI
                config BSP_USING_SPI0
                    bool "Enable SPI0"
                    default n
					
                config BSP_USING_SPI1
                    bool "Enable SPI1"
                    default n
            endif

    menuconfig BSP_USING_ADC
        config BSP_USING_ADC
            bool "Enable ADC Channel"
            select RT_USING_ADC
            default y

            if BSP_USING_ADC
                config BSP_USING_ADC0
                    bool "Enable ADC0"
                    default y
            endif

    config BSP_USING_FLASH
        bool "Enable onchip driver"
        select RT_USING_MTD_NOR
        default n

    menuconfig BSP_USING_FS
        bool "Enable File System"
        select RT_USING_DFS
        default n

        if BSP_USING_FS
            config BSP_USING_FLASH_LITTLEFS
                bool "Enable ONCHIP FLASH(littlefs)"
                select BSP_USING_FLASH
                select PKG_USING_LITTLEFS
                default y
        endif

    config BSP_USING_WDT
        bool "Enable WatchDog"
        select RT_USING_WDT
        default n

    menuconfig BSP_USING_CLOCK_TIMER
        config BSP_USING_CLOCK_TIMER
            bool "Enable Hardware Timer"
            select RT_USING_CLOCK_TIME
            default y

            if BSP_USING_CLOCK_TIMER
                config BSP_USING_CTIMER0
                    bool "Enable CIMER0"
                    default y

                config BSP_USING_CTIMER1
                    bool "Enable CIMER1"
                    default n

                config BSP_USING_CTIMER2
                    bool "Enable CIMER2"
                    default n
            endif

    menuconfig BSP_USING_PWM
        config BSP_USING_PWM
            bool "Enable PWM"
            select RT_USING_PWM
            default n

            if BSP_USING_PWM
                config BSP_USING_PWM0
                    bool "Enable eFlex PWM0"
                    default n
                config BSP_USING_PWM1
                    bool "Enable eFlex PWM1"
                    default n
                config BSP_USING_PWM2
                    bool "Enable eFlex PWM2"
                    default n
            endif
endmenu

menu "Board extended module Drivers"

endmenu

endmenu
