menu "Hardware Drivers Config"

config SOC_HPM6000
    bool
    select SOC_SERIES_HPM6000
    select RT_USING_COMPONENTS_INIT
    select RT_USING_USER_MAIN
    default y

config BSP_USING_ENET_PHY_DP83867
    bool
    default n

config BSP_USING_ENET_PHY_DP83848
    bool
    default n

menu "On-chip Peripheral Drivers"
    config BSP_USING_GPIO
        bool "Enable GPIO"
        select RT_USING_PIN if BSP_USING_GPIO
        default n

    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
                endif
            menuconfig BSP_USING_UART6
                bool "Enable UART6"
                default n
                if BSP_USING_UART6
                    config BSP_UART6_RX_USING_DMA
                        bool "Enable UART6 RX DMA"
                        depends on BSP_USING_UART6 && RT_SERIAL_USING_DMA
                        default n

                    config BSP_UART6_TX_USING_DMA
                        bool "Enable UART6 TX DMA"
                        depends on BSP_USING_UART6 && RT_SERIAL_USING_DMA
                        default n
                    config BSP_UART6_RX_BUFSIZE
                        int "Set UART6 RX buffer size"
                        range 64 65535
                        depends on RT_USING_SERIAL_V2
                        default 128
                    config BSP_UART6_TX_BUFSIZE
                        int "Set UART6 TX buffer size"
                        range 0 65535
                        depends on RT_USING_SERIAL_V2
                        default 0
                endif
            menuconfig BSP_USING_UART13
                bool "Enable UART13"
                default y
                if BSP_USING_UART13
                    config BSP_UART13_RX_USING_DMA
                        bool "Enable UART13 RX DMA"
                        depends on BSP_USING_UART13 && RT_SERIAL_USING_DMA
                        default n
                    config BSP_UART13_TX_USING_DMA
                        bool "Enable UART13 TX DMA"
                        depends on BSP_USING_UART13 && RT_SERIAL_USING_DMA
                        default n
                    config BSP_UART13_RX_BUFSIZE
                        int "Set UART13 RX buffer size"
                        range 64 65535
                        depends on RT_USING_SERIAL_V2
                        default 128
                    config BSP_UART13_TX_BUFSIZE
                        int "Set UART13 TX buffer size"
                        range 0 65535
                        depends on RT_USING_SERIAL_V2
                        default 0
                endif
            menuconfig BSP_USING_UART14
                bool "Enable UART14"
                default n
                if BSP_USING_UART14
                    config BSP_UART14_RX_USING_DMA
                        bool "Enable UART14 RX DMA"
                        depends on BSP_USING_UART14 && RT_SERIAL_USING_DMA
                        default n
                    config BSP_UART14_TX_USING_DMA
                        bool "Enable UART14 TX DMA"
                        depends on BSP_USING_UART14 && RT_SERIAL_USING_DMA
                        default n
                    config BSP_UART14_RX_BUFSIZE
                        int "Set UART14 RX buffer size"
                        range 64 65535
                        depends on RT_USING_SERIAL_V2
                        default 128
                    config BSP_UART14_TX_BUFSIZE
                        int "Set UART14 TX buffer size"
                        range 0 65535
                        depends on RT_USING_SERIAL_V2
                        default 0
                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_SPI1
                bool "Enable SPI1"
                default y
                if BSP_USING_SPI1
                    config BSP_SPI1_USING_DMA
                    bool "Enable SPI1 DMA"
                    default n
                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
                endif
            config BSP_USING_SPI3
                bool "Enable SPI3"
                default n
                if BSP_USING_SPI3
                    config BSP_SPI3_USING_DMA
                    bool "Enable SPI3 DMA"
                    default n
                endif
        endif

    menuconfig BSP_USING_RTC
       bool "Enable RTC"
       default n

    menuconfig BSP_USING_ETH
       bool "Enable Ethernet"
       default n

       select RT_USING_ETH
       if BSP_USING_ETH
               config BSP_USING_ETH0
               bool "Enable ETH0"
               default y
               select BSP_USING_ENET_PHY_DP83867

               config BSP_USING_ETH1
               bool "Enable ETH1"
               default n
               select BSP_USING_ENET_PHY_DP83848
       endif

    menuconfig BSP_USING_SDXC
        bool "Enable SDXC"
        default n
        select RT_USING_SDIO if BSP_USING_SDXC
        if BSP_USING_SDXC
            config BSP_USING_SDXC0
                bool "Enable SDXC0"
                default n
            if BSP_USING_SDXC0
                choice BSP_SDXC0_BUS_WIDTH_SEL
                    prompt "Select BUS_WIDTH"
                    default BSP_SDXC0_BUS_WIDTH_8BIT
                    config BSP_SDXC0_BUS_WIDTH_1BIT
                        bool "1-bit"
                    config BSP_SDXC0_BUS_WIDTH_4BIT
                        bool "4-bit"
                    config BSP_SDXC0_BUS_WIDTH_8BIT
                        bool "8-bit"
                endchoice
                choice BSP_SDXC0_VOLT_SEL
                    prompt "Select Voltage"
                    default BSP_SDXC0_VOLTAGE_3V3
                    config BSP_SDXC0_VOLTAGE_3V3
                        bool "3.3V"
                    config BSP_SDXC0_VOLTAGE_1V8
                        bool "1.8V"
                    config BSP_SDXC0_VOLTAGE_DUAL
                        bool "Dual voltage 3.3V / 1.8V"
                endchoice
                config BSP_SDXC0_VSEL_PIN
                    default "None"
                    string "VSEL pin name"
                config BSP_SDXC0_PWR_PIN
                    default "None"
                    string "PWR pin name"
            endif

            config BSP_USING_SDXC1
                bool "Enable SDXC1"
                default n
            if BSP_USING_SDXC1
                choice BSP_SDXC1_BUS_WIDTH_SEL
                    prompt "Select BUS_WIDTH"
                    default BSP_SDXC1_BUS_WIDTH_4BIT
                    config BSP_SDXC1_BUS_WIDTH_1BIT
                        bool "1-bit"
                    config BSP_SDXC1_BUS_WIDTH_4BIT
                        bool "4-bit"
                endchoice
                choice BSP_SDXC1_VOLT_SEL
                    prompt "Select Voltage"
                    default BSP_SDXC1_VOLTAGE_3V3
                    config BSP_SDXC1_VOLTAGE_3V3
                        bool "3.3V"
                    config BSP_SDXC1_VOLTAGE_1V8
                        bool "1.8V"
                    config BSP_SDXC1_VOLTAGE_DUAL
                        bool "Dual voltage 3.3V / 1.8V"
                endchoice
                config BSP_SDXC1_VSEL_PIN
                    default "None"
                    string "VSEL pin name"
                config BSP_SDXC1_PWR_PIN
                    default "None"
                    string "PWR pin name"
            endif
        endif

    menuconfig BSP_USING_TOUCH
       bool "Enable touch"
       default n
        if BSP_USING_TOUCH
            config BSP_USING_TOUCH_GT911
                bool "Enable GT911"
                default y

            config BSP_USING_TOUCH_FT5406
                bool "Enable FT5406"
                default n
        endif

    menuconfig BSP_USING_LCD
        bool "Enable LCD"
        default n
        if BSP_USING_LCD
            config BSP_USING_LCD_ISR
                bool "Enable LCD interrupt"
                default n
        endif

    menuconfig BSP_USING_LVGL
        bool "Enable LVGL"
        default n
        select PKG_USING_LVGL if BSP_USING_LVGL
        select BSP_USING_PDMA if BSP_USING_LVGL

    menuconfig BSP_USING_PDMA
        bool "Enable PDMA Driver"
        default n

    menuconfig BSP_USING_GPTMR
        bool "Enable GPTMR"
        default n
        select RT_USING_CLOCK_TIME if BSP_USING_GPTMR
        if BSP_USING_GPTMR
            config BSP_USING_GPTMR1
                bool "Enable GPTMR1"
                default n
            config BSP_USING_GPTMR2
                bool "Enable GPTMR2"
                default n
            config BSP_USING_GPTMR3
                bool "Enable GPTMR3"
                default n
            config BSP_USING_GPTMR4
                bool "Enable GPTMR4"
                default n
            config BSP_USING_GPTMR5
                bool "Enable GPTMR5"
                default n
            config BSP_USING_GPTMR6
                bool "Enable GPTMR6"
                default n
            config BSP_USING_GPTMR7
                bool "Enable GPTMR7"
                default n
        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
        endif
        if BSP_USING_I2C0
            config BSP_I2C0_USING_DMA
                bool "Enable I2C0 DMA"
                default n
        endif

    menuconfig BSP_USING_FEMC
       bool "Enable DRAM"
       default y
    menuconfig INIT_EXT_RAM_FOR_DATA
        bool "INIT_EXT_RAM_FOR_DATA"
        default y


    menuconfig BSP_USING_XPI_FLASH
        bool "Enable XPI FLASH"
        default n
        select RT_USING_FAL if BSP_USING_XPI_FLASH

    menuconfig BSP_USING_PWM
        bool "Enable PWM"
        default n

    menuconfig BSP_USING_DAO
        bool "Enable Audio DAO play"
        default n
        select RT_USING_AUDIO if BSP_USING_DAO

    menuconfig BSP_USING_PDM
        bool "Enable Audio PDM record"
        default n
        select RT_USING_AUDIO if BSP_USING_PDM

    menuconfig BSP_USING_I2S
        bool "Enable Audio I2S device"
        default n
        select RT_USING_AUDIO if BSP_USING_I2S
        if BSP_USING_I2S
            config BSP_USING_I2S0
                bool "Enable I2S0"
                default y
            config BSP_USING_AUDIO_CODEC_SGTL5000
                bool "Enable audio codec on board"
                default y
        endif

    menuconfig BSP_USING_USB
       bool "Enable USB"
       default n
       if BSP_USING_USB
            config BSP_USING_USB_DEVICE
                bool "Enable USB Device"
                default n
            config BSP_USING_USB_HOST
                bool "Enable USB Host"
                select RT_USING_CACHE
                default n
       endif


    menuconfig BSP_USING_WDG
        bool "Enable Watchdog"
        default n
        select RT_USING_WDT if BSP_USING_WDG
        if BSP_USING_WDG
            config BSP_USING_WDG0
                bool "Enable WDG0"
                default n
            config BSP_USING_WDG1
                bool "Enable WDG1"
                default n
            config BSP_USING_WDG2
                bool "Enable WDG2"
                default n
            config BSP_USING_WDG3
                bool "Enable WDG3"
                default n
        endif

    menuconfig BSP_USING_CAN
        bool "Enable CAN"
        default n
        select RT_USING_CAN if BSP_USING_CAN
        if BSP_USING_CAN
            config BSP_USING_CAN0
                bool "Enable CAN0"
                default n
            config BSP_USING_CAN1
                bool "Enable CAN1"
                default n
            config BSP_USING_CAN2
                bool "Enable CAN2"
                default n
            config BSP_USING_CAN3
                bool "Enable CAN3"
                default n
        endif

    menuconfig BSP_USING_ADC
        bool "Enable ADC"
        default n
        select RT_USING_ADC if BSP_USING_ADC
        if BSP_USING_ADC
            menuconfig BSP_USING_ADC12
                bool "Enable ADC12"
                default n
                if BSP_USING_ADC12
                    config BSP_USING_ADC0
                        bool "Enable ADC0"
                        default n
                    config BSP_USING_ADC1
                        bool "Enable ADC1"
                        default n
                    config BSP_USING_ADC2
                        bool "Enable ADC2"
                        default n
                endif
            menuconfig BSP_USING_ADC16
                bool "Enable ADC16"
                default n
                if BSP_USING_ADC16
                    config BSP_USING_ADC3
                        bool "Enable ADC3"
                        default n
                endif
        endif

    menuconfig BSP_USING_CAMERA
        bool "Enable camera"
        default n
        if BSP_USING_CAMERA
            config BSP_USING_CAMERA_MT9M114
                bool "Enable mt9m114"
                default y

            config BSP_USING_CAMERA_OV5640
                bool "Enable ov5640"
                default n

            config BSP_USING_CAMERA_OV7725
                bool "Enable ov7725"
                default n
            endif

     menuconfig BSP_USING_JPEG
                bool "Enable JPEG Driver"
                default n

            menuconfig BSP_USING_CAM
                bool "Enable CAM Driver"
                default n

    menuconfig  BSP_USING_PANEL
        bool "Enable panel"
        default n
        if BSP_USING_PANEL
            config BSP_USEING_PANEL_RGB_TM070RDH13
                bool "Enable RGB TM070RDH13"
                default y
            endif

    menuconfig BSP_USING_RTT_LCD_DRIVER
        bool "Enable RTT LCD Driver"
        select BSP_USING_LCD
        default n


endmenu

endmenu
