u-boot/drivers/core
Masahiro Yamada d90a5a30de pinctrl: add pin control uclass support
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>
2015-08-31 07:57:29 -06:00
..
device-remove.c devres: introduce Devres (Managed Device Resource) framework 2015-08-06 07:44:29 -06:00
device.c pinctrl: add pin control uclass support 2015-08-31 07:57:29 -06:00
devres.c devres: add debug command to dump device resources 2015-08-06 07:44:29 -06:00
dump.c dm: Move the tree/uclass dump code into its own file 2015-07-21 17:39:22 -06:00
Kconfig dm: core: Add Kconfig for simple bus driver 2015-08-31 07:57:26 -06:00
lists.c of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
Makefile dm: core: Add Kconfig for simple bus driver 2015-08-31 07:57:26 -06:00
regmap.c dm: Add support for register maps (regmap) 2015-07-21 17:39:23 -06:00
root.c of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
simple-bus.c dm: Support address translation for simple-bus 2015-08-06 07:44:28 -06:00
syscon-uclass.c dm: core: Add device checking to syscon_get_regmap() 2015-07-21 17:39:33 -06:00
uclass.c dm: drop CONFIG_DM_DEVICE_REMOVE from uncmd list 2015-08-18 13:46:04 -04:00
util.c dm: Add base driver model support 2014-03-04 12:15:29 -05:00