mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-05-05 20:56:12 +02:00
This driver adds the base support of pinctrl over SCMI. The driver
does two main things. First, it allows you to configure the initial
pin states. Secondly, it's used a base to build a GPIO driver on
top of it.
To configure the states then add a pinmux config to the scmi_pinctrl
section:
scmi_pinctrl: protocol@19 {
reg = <0x19>;
pinmux1: pinmux_test {
pinmux = <0 1 0xFFFFFFFF 18 1
0 2 0xFFFFFFFF 18 1
0 3 0xFFFFFFFF 18 1>;
function = "f_gpio1";
groups = "grp_1", "grp_3";
};
};
Under linux the pinctrl subsystem will parse the function and group
properties and use that to handle muxing. However, under u-boot the
pin muxing is done using the "pinmux" property, which feeds raw SCMI
pinctrl PINCTRL_SETTINGS_CONFIGURE commands to the server. The
numbers are: selector, identifier, function_id, config_type, and
config_value. In the example above, it sets pins 1, 2, and 3 to 1.
The linux-kernel ignores this pinmux property.
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
11 lines
386 B
Makefile
11 lines
386 B
Makefile
obj-y += scmi_agent-uclass.o
|
|
obj-y += base.o
|
|
obj-y += smt.o
|
|
obj-$(CONFIG_SCMI_AGENT_SMCCC) += smccc_agent.o
|
|
obj-$(CONFIG_SCMI_AGENT_MAILBOX) += mailbox_agent.o
|
|
obj-$(CONFIG_SCMI_AGENT_OPTEE) += optee_agent.o
|
|
obj-$(CONFIG_SCMI_POWER_DOMAIN) += pwdom.o
|
|
obj-$(CONFIG_PINCTRL_SCMI) += pinctrl.o
|
|
obj-$(CONFIG_SANDBOX) += sandbox-scmi_agent.o sandbox-scmi_devices.o
|
|
obj-y += vendors/imx/
|