mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-01 22:01:55 +00:00
Most of these are from source'ing a file within an 'if GPIO', and then adding another 'depends on GPIO' within it. 'if FOO' is just shorthand for adding 'depends on FOO' to each item within the 'if'. There are no "conditional includes" in Kconfig, so 'if FOO' has no special meaning around a 'source'. Conditional includes wouldn't be possible, because an 'if' condition could include (directly or indirectly) forward references to symbols not defined yet. Tip: When adding a symbol, check its dependencies in the menuconfig ('ninja menuconfig', then / to jump to the symbol). The menuconfig also shows how the file with the symbol got included, so if you see duplicated dependencies, it's easy to hunt down where they come from. Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
212 lines
4.3 KiB
Plaintext
212 lines
4.3 KiB
Plaintext
# Kconfig.dw - DesignWare GPIO configuration options
|
|
#
|
|
#
|
|
# Copyright (c) 2016 Intel Corporation
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
menuconfig GPIO_DW
|
|
bool "Designware GPIO"
|
|
select HAS_DTS_GPIO
|
|
help
|
|
Enable driver for Designware GPIO
|
|
|
|
if GPIO_DW
|
|
|
|
config GPIO_DW_SHARED_IRQ
|
|
bool
|
|
|
|
config GPIO_DW_INIT_PRIORITY
|
|
int "Init priority"
|
|
default 60
|
|
help
|
|
Device driver initialization priority.
|
|
|
|
config GPIO_DW_CLOCK_GATE
|
|
bool "Enable clock gating"
|
|
select CLOCK_CONTROL
|
|
|
|
config GPIO_DW_CLOCK_GATE_DRV_NAME
|
|
string
|
|
depends on GPIO_DW_CLOCK_GATE
|
|
default ""
|
|
|
|
config GPIO_DW_0
|
|
bool "Designware GPIO block 0"
|
|
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
|
|
|
|
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"
|
|
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
|
|
|
|
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"
|
|
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
|
|
|
|
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"
|
|
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
|
|
|
|
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
|