mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-01 17:10:11 +00:00
d90a5a30de
This creates a new framework for handling of pin control devices, i.e. devices that control different aspects of package pins. This uclass handles pinmuxing and pin configuration; pinmuxing controls switching among silicon blocks that share certain physical pins, pin configuration handles electronic properties such as pin- biasing, load capacitance etc. This framework can support the same device tree bindings, but if you do not need full interface support, you can disable some features to reduce memory foot print. Typically around 1.5KB is necessary to include full-featured uclass support on ARM board (CONFIG_PINCTRL + CONFIG_PINCTRL_FULL + CONFIG_PINCTRL_GENERIC + CONFIG_PINCTRL_PINMUX), for example. We are often limited on code size for SPL. Besides, we still have many boards that do not support device tree configuration. The full pinctrl, which requires OF_CONTROL, does not make sense for those boards. So, this framework also has a Do-It-Yourself (let's say simple pinctrl) interface. With CONFIG_PINCTRL_FULL disabled, the uclass itself provides no systematic mechanism for identifying the peripheral device, applying pinctrl settings, etc. They must be done in each low-level driver. In return, you can save much memory footprint and it might be useful especially for SPL. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Simon Glass <sjg@chromium.org>
75 lines
1.3 KiB
Text
75 lines
1.3 KiB
Text
menu "Device Drivers"
|
|
|
|
source "drivers/core/Kconfig"
|
|
|
|
# types of drivers sorted in alphabetical order
|
|
|
|
source "drivers/block/Kconfig"
|
|
|
|
source "drivers/clk/Kconfig"
|
|
|
|
source "drivers/cpu/Kconfig"
|
|
|
|
source "drivers/crypto/Kconfig"
|
|
|
|
source "drivers/demo/Kconfig"
|
|
|
|
source "drivers/dfu/Kconfig"
|
|
|
|
source "drivers/dma/Kconfig"
|
|
|
|
source "drivers/gpio/Kconfig"
|
|
|
|
source "drivers/hwmon/Kconfig"
|
|
|
|
source "drivers/i2c/Kconfig"
|
|
|
|
source "drivers/input/Kconfig"
|
|
|
|
source "drivers/led/Kconfig"
|
|
|
|
source "drivers/misc/Kconfig"
|
|
|
|
source "drivers/mmc/Kconfig"
|
|
|
|
source "drivers/mtd/Kconfig"
|
|
|
|
source "drivers/net/Kconfig"
|
|
|
|
source "drivers/pci/Kconfig"
|
|
|
|
source "drivers/pcmcia/Kconfig"
|
|
|
|
source "drivers/pinctrl/Kconfig"
|
|
|
|
source "drivers/power/Kconfig"
|
|
|
|
source "drivers/ram/Kconfig"
|
|
|
|
source "drivers/rtc/Kconfig"
|
|
|
|
source "drivers/serial/Kconfig"
|
|
|
|
source "drivers/sound/Kconfig"
|
|
|
|
source "drivers/spi/Kconfig"
|
|
|
|
source "drivers/thermal/Kconfig"
|
|
|
|
source "drivers/tpm/Kconfig"
|
|
|
|
source "drivers/usb/Kconfig"
|
|
|
|
source "drivers/video/Kconfig"
|
|
|
|
source "drivers/watchdog/Kconfig"
|
|
|
|
config PHYS_TO_BUS
|
|
bool "Custom physical to bus address mapping"
|
|
help
|
|
Some SoCs use a different address map for CPU physical addresses and
|
|
peripheral DMA master accesses. If yours does, select this option in
|
|
your platform's Kconfig, and implement the appropriate mapping
|
|
functions in your platform's support code.
|
|
|
|
endmenu
|