test: dm: update test for pins configuration in pinctrl node

Add test for "pins" configuration in gpio uclass with set_state() ops
and test for generic parsing of pinconf_param array).

set_state() is called by:
- pinctrl_generic_set_state
 |- pinctrl_generic_set_state_subnode

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Patrick Delaunay 2020-01-13 11:35:12 +01:00 committed by Tom Rini
parent 77ed5692c9
commit d15c05b5d0
3 changed files with 56 additions and 11 deletions

View File

@ -905,6 +905,31 @@
pinctrl {
compatible = "sandbox,pinctrl";
pinctrl-names = "default";
pinctrl-0 = <&gpios>;
gpios: gpios {
gpio0 {
pins = "GPIO0";
bias-pull-up;
input-disable;
};
gpio1 {
pins = "GPIO1";
output-high;
drive-open-drain;
};
gpio2 {
pins = "GPIO2";
bias-pull-down;
input-enable;
};
gpio3 {
pins = "GPIO3";
bias-disable;
};
};
};
hwspinlock@0 {

View File

@ -14,7 +14,11 @@ static const char * const sandbox_pins[] = {
"SDA",
"TX",
"RX",
"W1"
"W1",
"GPIO0",
"GPIO1",
"GPIO2",
"GPIO3",
};
static const char * const sandbox_pins_muxing[] = {
@ -23,6 +27,10 @@ static const char * const sandbox_pins_muxing[] = {
"Uart TX",
"Uart RX",
"1-wire gpio",
"gpio",
"gpio",
"gpio",
"gpio",
};
static const char * const sandbox_groups[] = {
@ -38,6 +46,10 @@ static const char * const sandbox_functions[] = {
"serial",
"spi",
"w1",
"gpio",
"gpio",
"gpio",
"gpio",
};
static const struct pinconf_param sandbox_conf_params[] = {

View File

@ -22,11 +22,15 @@ def test_pinmux_usage_2(u_boot_console):
def test_pinmux_status_all(u_boot_console):
"""Test that 'pinmux status -a' displays pin's muxing."""
output = u_boot_console.run_command('pinmux status -a')
assert ('SCL : I2C SCL' in output)
assert ('SDA : I2C SDA' in output)
assert ('TX : Uart TX' in output)
assert ('RX : Uart RX' in output)
assert ('W1 : 1-wire gpio' in output)
assert ('SCL : I2C SCL.' in output)
assert ('SDA : I2C SDA.' in output)
assert ('TX : Uart TX.' in output)
assert ('RX : Uart RX.' in output)
assert ('W1 : 1-wire gpio.' in output)
assert ('GPIO0 : gpio bias-pull-up input-disable.' in output)
assert ('GPIO1 : gpio drive-open-drain.' in output)
assert ('GPIO2 : gpio bias-pull-down input-enable.' in output)
assert ('GPIO3 : gpio bias-disable.' in output)
@pytest.mark.buildconfigspec('cmd_pinmux')
@pytest.mark.boardspec('sandbox')
@ -59,8 +63,12 @@ def test_pinmux_status(u_boot_console):
"""Test that 'pinmux status' displays selected pincontroller's pin
muxing descriptions."""
output = u_boot_console.run_command('pinmux status')
assert ('SCL : I2C SCL' in output)
assert ('SDA : I2C SDA' in output)
assert ('TX : Uart TX' in output)
assert ('RX : Uart RX' in output)
assert ('W1 : 1-wire gpio' in output)
assert ('SCL : I2C SCL.' in output)
assert ('SDA : I2C SDA.' in output)
assert ('TX : Uart TX.' in output)
assert ('RX : Uart RX.' in output)
assert ('W1 : 1-wire gpio.' in output)
assert ('GPIO0 : gpio bias-pull-up input-disable.' in output)
assert ('GPIO1 : gpio drive-open-drain.' in output)
assert ('GPIO2 : gpio bias-pull-down input-enable.' in output)
assert ('GPIO3 : gpio bias-disable.' in output)