menu "Hardware Drivers Config"

    menu "On-chip Peripheral Drivers"
        source "$BSP_DIR/../libraries/nuc980/rtt_port/Kconfig"
    endmenu

    menu "On-board Peripheral Drivers"

        config BSP_USING_CONSOLE
            bool "Enable UART0 for RTT Console(uart0)"
            select BSP_USING_UART
            select BSP_USING_UART0
            default y

        config BOARD_USING_IP101GR
            bool "Enable ethernet phy supporting(over emac/mdio)"
            select BSP_USING_EMAC
            default n


        config BOARD_USING_NAU8822
            bool "NAU8822 Audio Codec supporting(over i2s, i2c0)"
            select NU_PKG_USING_NAU8822
            select BSP_USING_I2C0
            select BSP_USING_I2S
            select BSP_USING_I2S0
            default n

        config BOARD_USING_STORAGE_SDCARD
            bool "SDCARD supporting(over sdh1)"
            select BSP_USING_SDH
            select BSP_USING_SDH1
            default y

        config BOARD_USING_STORAGE_SPIFLASH
            bool "SPI NOR FLASH supporting(over qspi0)"
            select BSP_USING_QSPI
            select BSP_USING_QSPI0
            default n

        config BOARD_USING_STORAGE_SPINAND
            bool "SPI NAND FLASH supporting(over qspi0)"
            select BSP_USING_QSPI
            select BSP_USING_QSPI0
            select NU_PKG_USING_SPINAND
            default y

        config BOARD_USING_USB0_DEVICE_HOST
            select BSP_USING_USBH
            select BSP_USING_USBD
            bool "Enable USB0 Device/Host"
            help
                Choose this option if you need USB device or host function mode.
                    If you need USB host, please remember short to ground on JP1 jumper.

        config BOARD_USING_USB1_HOST
            select BSP_USING_USBH
            bool "Enable USB1 Host"
            help
                Choose this option if you need USB1 HOST.

    endmenu

    menu "Board extended module drivers"

        config BOARD_USING_MAX31875
            bool "MAX31875 Temperature sensor(over i2c1)"
            select NU_PKG_USING_MAX31875
            select BSP_USING_I2C1
            default n

        config BOARD_USING_LCD_ILI9341
            bool "LCD ILI9341 (over spi0)"
            select RT_USING_TOUCH
            select BSP_USING_ADC_TOUCH
            select NU_PKG_USING_ADC_TOUCH
            select NU_PKG_USING_ILI9341
            select NU_PKG_USING_ILI9341_SPI
            select NU_PKG_ILI9341_WITH_OFFSCREEN_FRAMEBUFFER
            select NU_PKG_ILI9341_HORIZONTAL
            select BSP_USING_SPI0
            default n

        if BOARD_USING_LCD_ILI9341

            config BOARD_USING_ILI9341_PIN_BACKLIGHT
            int "Specify the pin index of backlight pin index"
                range 0 127
                default 103

            config BOARD_USING_ILI9341_PIN_RESET
            int "Specify the pin index of reset pin index"
                range 0 127
                default 90

            config BOARD_USING_ILI9341_PIN_DC
            int "Specify the pin index of data&command switching"
                range 0 127
                default 89

        endif

        config BOARD_USING_ESP8266
            bool "ESP8266 Wi-Fi module supporting(over uart1)"
            select BSP_USING_UART
            select BSP_USING_UART1
            select BSP_USING_UART1_RX_DMA
            select BSP_USING_UART1_TX_DMA
            select PKG_USING_AT_DEVICE
            select AT_DEVICE_USING_ESP8266
            select AT_DEVICE_ESP8266_INIT_ASYN
            default n

    endmenu

    source "$BSP_DIR/../libraries/nu_packages/Kconfig"

endmenu
