1 # SPDX-License-Identifier: GPL-2.0
6 @pytest.mark.buildconfigspec('cmd_pinmux')
7 def test_pinmux_usage_1(u_boot_console):
8 """Test that 'pinmux' command without parameters displays
10 output = u_boot_console.run_command('pinmux')
11 assert 'Usage:' in output
13 @pytest.mark.buildconfigspec('cmd_pinmux')
14 def test_pinmux_usage_2(u_boot_console):
15 """Test that 'pinmux status' executed without previous "pinmux dev"
16 command displays pinmux usage."""
17 output = u_boot_console.run_command('pinmux status')
18 assert 'Usage:' in output
20 @pytest.mark.buildconfigspec('cmd_pinmux')
21 @pytest.mark.boardspec('sandbox')
22 def test_pinmux_status_all(u_boot_console):
23 """Test that 'pinmux status -a' displays pin's muxing."""
24 output = u_boot_console.run_command('pinmux status -a')
26 assert ('pinctrl-gpio:' in output)
27 assert ('a5 : gpio output .' in output)
28 assert ('a6 : gpio output .' in output)
30 assert ('pinctrl:' in output)
31 assert ('SCL : I2C SCL.' in output)
32 assert ('SDA : I2C SDA.' in output)
33 assert ('TX : Uart TX.' in output)
34 assert ('RX : Uart RX.' in output)
35 assert ('W1 : 1-wire gpio.' in output)
36 assert ('GPIO0 : gpio bias-pull-up input-disable.' in output)
37 assert ('GPIO1 : gpio drive-open-drain.' in output)
38 assert ('GPIO2 : gpio bias-pull-down input-enable.' in output)
39 assert ('GPIO3 : gpio bias-disable.' in output)
41 @pytest.mark.buildconfigspec('cmd_pinmux')
42 @pytest.mark.boardspec('sandbox')
43 def test_pinmux_list(u_boot_console):
44 """Test that 'pinmux list' returns the pin-controller list."""
45 output = u_boot_console.run_command('pinmux list')
46 assert 'sandbox_pinctrl' in output
48 @pytest.mark.buildconfigspec('cmd_pinmux')
49 def test_pinmux_dev_bad(u_boot_console):
50 """Test that 'pinmux dev' returns an error when trying to select a
51 wrong pin controller."""
52 pincontroller = 'bad_pin_controller_name'
53 output = u_boot_console.run_command('pinmux dev ' + pincontroller)
54 expected_output = 'Can\'t get the pin-controller: ' + pincontroller + '!'
55 assert (expected_output in output)
57 @pytest.mark.buildconfigspec('cmd_pinmux')
58 @pytest.mark.boardspec('sandbox')
59 def test_pinmux_dev(u_boot_console):
60 """Test that 'pinmux dev' select the wanted pin controller."""
61 pincontroller = 'pinctrl'
62 output = u_boot_console.run_command('pinmux dev ' + pincontroller)
63 expected_output = 'dev: ' + pincontroller
64 assert (expected_output in output)
66 @pytest.mark.buildconfigspec('cmd_pinmux')
67 @pytest.mark.boardspec('sandbox')
68 def test_pinmux_status(u_boot_console):
69 """Test that 'pinmux status' displays selected pincontroller's pin
70 muxing descriptions."""
71 output = u_boot_console.run_command('pinmux status')
73 assert (not 'pinctrl-gpio:' in output)
74 assert (not 'pinctrl:' in output)
76 assert ('SCL : I2C SCL.' in output)
77 assert ('SDA : I2C SDA.' in output)
78 assert ('TX : Uart TX.' in output)
79 assert ('RX : Uart RX.' in output)
80 assert ('W1 : 1-wire gpio.' in output)
81 assert ('GPIO0 : gpio bias-pull-up input-disable.' in output)
82 assert ('GPIO1 : gpio drive-open-drain.' in output)
83 assert ('GPIO2 : gpio bias-pull-down input-enable.' in output)
84 assert ('GPIO3 : gpio bias-disable.' in output)