Linux preempt-rt

Check our new training course

Real-Time Linux with PREEMPT_RT

Check our new training course
with Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# Kconfig.mmio - MMIO-based GPIO configuration options
#
#
# Copyright (c) 2016 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

menuconfig GPIO_MMIO
	bool "MMIO-based GPIO driver"
	depends on GPIO
	default n
	help
	  Enable driver for MMIO-based GPIOs.

if GPIO_MMIO

config GPIO_MMIO_INIT_PRIORITY
	int
	depends on GPIO_MMIO
	default 60
	prompt "Init priority"
	help
	  Device driver initialization priority.

config GPIO_MMIO_0
	bool "MMIO-based GPIO Port #0"
	depends on GPIO_MMIO
	default n
	help
	  Enable config options for MMIO-based GPIO port #0.

config GPIO_MMIO_0_DEV_NAME
	string "MMIO-based GPIO Port #0 Device Name"
	depends on GPIO_MMIO_0
	default "GPIO_0"
	help
	  Specify the device name.

choice
	prompt "MMIO-based GPIO Port #0 Access Method"
	default GPIO_MMIO_0_ACCESS_MM
	depends on GPIO_MMIO_0

config GPIO_MMIO_0_ACCESS_MM
	bool "Direct Memory Access"

config GPIO_MMIO_0_ACCESS_IO
	bool "I/O Port"

endchoice

config GPIO_MMIO_0_CFG
	hex "MMIO-based GPIO Port #0 Configuration"
	depends on GPIO_MMIO_0
	default 0x0
	help
	  Configuration for this GPIO port.

	  Refer to <drivers/gpio/gpio-mmio.h> for more information.

config GPIO_MMIO_0_EN
	hex "MMIO-based GPIO Port #0 Enable Register Address"
	depends on GPIO_MMIO_0
	default 0x0
	help
	  The memory address for enable register.

config GPIO_MMIO_0_DIR
	hex "MMIO-based GPIO Port #0 Direction Register Address"
	depends on GPIO_MMIO_0
	default 0x0
	help
	  The memory address for direction register.

config GPIO_MMIO_0_INPUT
	hex "MMIO-based GPIO Port #0 Input Pin Level Register Address"
	depends on GPIO_MMIO_0
	default 0x0
	help
	  The memory address for input pin level register.

config GPIO_MMIO_0_OUTPUT
	hex "MMIO-based GPIO Port #0 Output Pin Level Register Address"
	depends on GPIO_MMIO_0
	default 0x0
	help
	  The memory address for output pin level register.

config GPIO_MMIO_1
	bool "MMIO-based GPIO Port #1"
	depends on GPIO_MMIO
	default n
	help
	  Enable config options for MMIO-based GPIO port #1.

config GPIO_MMIO_1_DEV_NAME
	string "MMIO-based GPIO Port #1 Device Name"
	depends on GPIO_MMIO_1
	default "GPIO_1"
	help
	  Specify the device name.

choice
	prompt "MMIO-based GPIO Port #1 Access Method"
	default GPIO_MMIO_1_ACCESS_MM
	depends on GPIO_MMIO_1

config GPIO_MMIO_1_ACCESS_MM
	bool "Direct Memory Access"

config GPIO_MMIO_1_ACCESS_IO
	bool "I/O Port"

endchoice

config GPIO_MMIO_1_CFG
	hex "MMIO-based GPIO Port #1 Configuration"
	depends on GPIO_MMIO_1
	default 0x0
	help
	  Configuration for this GPIO port.

	  Refer to <drivers/gpio/gpio-mmio.h> for more information.

config GPIO_MMIO_1_EN
	hex "MMIO-based GPIO Port #1 Enable Register Address"
	depends on GPIO_MMIO_1
	default 0x0
	help
	  The memory address for enable register.

config GPIO_MMIO_1_DIR
	hex "MMIO-based GPIO Port #1 Direction Register Address"
	depends on GPIO_MMIO_1
	default 0x0
	help
	  The memory address for direction register.

config GPIO_MMIO_1_INPUT
	hex "MMIO-based GPIO Port #1 Input Pin Level Register Address"
	depends on GPIO_MMIO_1
	default 0x0
	help
	  The memory address for input pin level register.

config GPIO_MMIO_1_OUTPUT
	hex "MMIO-based GPIO Port #1 Output Pin Level Register Address"
	depends on GPIO_MMIO_1
	default 0x0
	help
	  The memory address for output pin level register.

endif # GPIO_MMIO