# Kconfig.dw - DesignWare GPIO configuration options # # # Copyright (c) 2016 Intel Corporation # # SPDX-License-Identifier: Apache-2.0 # menuconfig GPIO_DW prompt "Designware GPIO" default n depends on GPIO bool help Enable driver for Designware GPIO if GPIO_DW config GPIO_DW_SHARED_IRQ bool default n config GPIO_DW_INIT_PRIORITY int default 60 prompt "Init priority" help Device driver initialization priority. config GPIO_DW_CLOCK_GATE bool "Enable clock gating" select CLOCK_CONTROL default n config GPIO_DW_CLOCK_GATE_DRV_NAME string depends on GPIO_DW_CLOCK_GATE default "" config GPIO_DW_0 bool "Designware GPIO block 0" default n help Include Designware GPIO driver if !HAS_DTS config GPIO_DW_0_NAME string "Driver name" depends on GPIO_DW_0 default "GPIO_0" endif config GPIO_DW_0_CLOCK_GATE_SUBSYS int "Clock controller's subsystem" depends on GPIO_DW_CLOCK_GATE && GPIO_DW_0 choice prompt "Port 0 Interrupts via" default GPIO_DW_0_IRQ_DIRECT depends on GPIO_DW_0 config GPIO_DW_0_IRQ_DIRECT bool "Direct Hardware Interrupt" help When interrupts fire, the driver's ISR function is being called directly. config GPIO_DW_0_IRQ_SHARED bool "Shared IRQ" depends on SHARED_IRQ select GPIO_DW_SHARED_IRQ help When interrupts fire, the shared IRQ driver is notified. Then the shared IRQ driver dispatches the interrupt to other drivers. endchoice config GPIO_DW_0_IRQ_SHARED_NAME string "Device name for Shared IRQ" depends on GPIO_DW_0 && GPIO_DW_0_IRQ_SHARED help Specify the device name for the shared IRQ driver. It is used to register this driver with the shared IRQ driver, so interrupts can be dispatched correctly. if !HAS_DTS config GPIO_DW_0_IRQ_PRI int "Controller interrupt priority" depends on GPIO_DW_0 && GPIO_DW_0_IRQ_DIRECT help IRQ priority endif config GPIO_DW_1 bool "Designware GPIO block 1" default n help Include Designware GPIO driver if !HAS_DTS config GPIO_DW_1_NAME string "Driver name" depends on GPIO_DW_1 default "GPIO_1" endif config GPIO_DW_1_CLOCK_GATE_SUBSYS int "Clock controller's subsystem" depends on GPIO_DW_CLOCK_GATE && GPIO_DW_1 choice prompt "Port 1 Interrupts via" default GPIO_DW_1_IRQ_DIRECT depends on GPIO_DW_1 config GPIO_DW_1_IRQ_DIRECT bool "Direct Hardware Interrupt" help When interrupts fire, the driver's ISR function is being called directly. config GPIO_DW_1_IRQ_SHARED bool "Shared IRQ" depends on SHARED_IRQ select GPIO_DW_SHARED_IRQ help When interrupts fire, the shared IRQ driver is notified. Then the shared IRQ driver dispatches the interrupt to other drivers. endchoice config GPIO_DW_1_IRQ_SHARED_NAME string "Device name for Shared IRQ" depends on GPIO_DW_1_IRQ_SHARED help Specify the device name for the shared IRQ driver. It is used to register this driver with the shared IRQ driver, so interrupts can be dispatched correctly. if !HAS_DTS config GPIO_DW_1_IRQ_PRI int "Controller interrupt priority" depends on GPIO_DW_1 && GPIO_DW_1_IRQ_DIRECT help IRQ priority endif config GPIO_DW_2 bool "Designware GPIO block 1" default n help Include Designware GPIO driver if !HAS_DTS config GPIO_DW_2_NAME string "Driver name" depends on GPIO_DW_2 default "GPIO_2" endif config GPIO_DW_2_CLOCK_GATE_SUBSYS int "Clock controller's subsystem" depends on GPIO_DW_CLOCK_GATE && GPIO_DW_2 choice prompt "Port 1 Interrupts via" default GPIO_DW_2_IRQ_DIRECT depends on GPIO_DW_2 config GPIO_DW_2_IRQ_DIRECT bool "Direct Hardware Interrupt" help When interrupts fire, the driver's ISR function is being called directly. config GPIO_DW_2_IRQ_SHARED bool "Shared IRQ" depends on SHARED_IRQ select GPIO_DW_SHARED_IRQ help When interrupts fire, the shared IRQ driver is notified. Then the shared IRQ driver dispatches the interrupt to other drivers. endchoice config GPIO_DW_2_IRQ_SHARED_NAME string "Device name for Shared IRQ" depends on GPIO_DW_2_IRQ_SHARED help Specify the device name for the shared IRQ driver. It is used to register this driver with the shared IRQ driver, so interrupts can be dispatched correctly. if !HAS_DTS config GPIO_DW_2_IRQ_PRI int "Controller interrupt priority" depends on GPIO_DW_2 && GPIO_DW_2_IRQ_DIRECT help IRQ priority endif config GPIO_DW_3 bool "Designware GPIO block 1" default n help Include Designware GPIO driver if !HAS_DTS config GPIO_DW_3_NAME string "Driver name" depends on GPIO_DW_3 default "GPIO_3" endif config GPIO_DW_3_CLOCK_GATE_SUBSYS int "Clock controller's subsystem" depends on GPIO_DW_CLOCK_GATE && GPIO_DW_3 choice prompt "Port 1 Interrupts via" default GPIO_DW_3_IRQ_DIRECT depends on GPIO_DW_3 config GPIO_DW_3_IRQ_DIRECT bool "Direct Hardware Interrupt" help When interrupts fire, the driver's ISR function is being called directly. config GPIO_DW_3_IRQ_SHARED bool "Shared IRQ" depends on SHARED_IRQ select GPIO_DW_SHARED_IRQ help When interrupts fire, the shared IRQ driver is notified. Then the shared IRQ driver dispatches the interrupt to other drivers. endchoice config GPIO_DW_3_IRQ_SHARED_NAME string "Device name for Shared IRQ" depends on GPIO_DW_3_IRQ_SHARED help Specify the device name for the shared IRQ driver. It is used to register this driver with the shared IRQ driver, so interrupts can be dispatched correctly. if !HAS_DTS config GPIO_DW_3_IRQ_PRI int "Controller interrupt priority" depends on GPIO_DW_3 && GPIO_DW_3_IRQ_DIRECT help IRQ priority endif endif # GPIO_DW