menu "Hardware Drivers Config"

menu "On-chip Peripheral Drivers"
    menuconfig BSP_USING_UART
        bool "Enable UART"
        default y
        select RT_USING_SERIAL
        if BSP_USING_UART
            config RT_USING_UART1
                bool "Enable UART1"
                default y

            config RT_USING_UART0
                bool "Enable UART0"
                default n

        endif

    menuconfig BSP_USING_SDC
        bool "Enable sd controller"
        select RT_USING_SDIO
        select RT_USING_DFS
        select RT_USING_DFS_ELMFAT
        default n

        if BSP_USING_SDC

            config BSP_SDC_DEBUG_PRINT
                bool "Enable sd controller debug print"
                default n


            config BSP_SDC_USE_IRQ
                bool "Use interrupt to handle when cmd complete, dma complete"
                default n

            if BSP_SDC_USE_IRQ
                config BSP_SDC_IRQ_CARD_REMOVE
                    bool "Use interrupt to determine if the card is pulled out"
                    default n

            endif

        endif

    menuconfig BSP_USING_GMAC
        bool "Enable gmac"
        default n
        select RT_USING_NETDEV


        if BSP_USING_GMAC
            config BSP_USING_GMAC0
                bool "Enable GMAC0"
                default y

            config BSP_USING_GMAC1
                bool "Enable GMAC1"
                default n

            config RT_LWIP_ETH_PAD_SIZE
                int "set lwip ETH_PAD_SIZE"
                range 2 256
                default 2

            config RAW_DATA_PRINT
                bool "Enable mac raw data print"
                default n

                if RAW_DATA_PRINT
                    config ETH_RX_DUMP
                        bool "Enable gmac receive raw data print "
                        default n

                    config ETH_TX_DUMP
                        bool "Enable gmac send raw data print "
                        default n
                endif

        endif


    # menuconfig BSP_USE_QSPI
    #     bool "Enable Qspi"
    #     select RT_USING_SFUD
    #     select RT_SFUD_USING_QSPI
    #     default n

    #     if BSP_USE_QSPI
    #         config BSP_QSPI_DEBUG
    #             bool "Enable qspi debug print"
    #             default n
    #     endif

    menuconfig BSP_USE_SPI
        bool "Enable Spi"
        select RT_USING_SFUD
        select RT_SFUD_USING_SPI
        select RT_SFUD_USING_SFDP
        select RT_SFUD_USING_FLASH_INFO_TABLE
        select BSP_USE_GPIO
        default n
        if BSP_USE_SPI
            config BSP_SPI_DEBUG
                bool "Enable spi debug print"
                default n
        endif

    menuconfig BSP_USE_GPIO
        bool "Enable Gpio"
        default n
        if BSP_USE_GPIO
            config BSP_GPIO_DEBUG
                bool "Enable gpio debug print"
                default n
        endif

    menuconfig BSP_USE_CAN
        bool "Enable Can"
        select RT_USING_CAN
        default n

        if BSP_USE_CAN
            config BSP_USING_CAN0
                bool "Enable can0"
                default n
            config BSP_USING_CAN1
                bool "Enable can1"
                default n

            if BSP_USING_CAN0
                config BSP_USING_CAN0_DEBUG
                    bool "Enable can0 work in loop back"
                    default n
            endif

        endif


endmenu

menu "Board extended module Drivers"

endmenu

endmenu
