mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 18:35:42 +01:00 
			
		
		
		
	4dbc107f46("cmd: gpio: Correct do_gpio() return value") correctly changed the behaviour of the gpio command to return CMD_RET_SUCCESS or CMD_RET_FAILURE, but any existing script which expects the return value to be the pin value is broken by this change. Reinstate the legacy behaviour for `gpio input` only. Fixes:4dbc107f46("cmd: gpio: Correct do_gpio() return value") Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Alex Kiernan <alex.kiernan@hivehome.com> Reviewed-by: Simon Glass <sjg@chromium.org>
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0+
 | |
| 
 | |
| import pytest
 | |
| 
 | |
| @pytest.mark.boardspec('sandbox')
 | |
| @pytest.mark.buildconfigspec('cmd_gpio')
 | |
| def test_gpio_input(u_boot_console):
 | |
|     """Test that gpio input correctly returns the value of a gpio pin."""
 | |
| 
 | |
|     response = u_boot_console.run_command('gpio input 0; echo rc:$?')
 | |
|     expected_response = 'rc:0'
 | |
|     assert(expected_response in response)
 | |
|     response = u_boot_console.run_command('gpio toggle 0; gpio input 0; echo rc:$?')
 | |
|     expected_response = 'rc:1'
 | |
|     assert(expected_response in response)
 | |
| 
 | |
| @pytest.mark.boardspec('sandbox')
 | |
| @pytest.mark.buildconfigspec('cmd_gpio')
 | |
| def test_gpio_exit_statuses(u_boot_console):
 | |
|     """Test that non-input gpio commands correctly return the command
 | |
|     success/failure status."""
 | |
| 
 | |
|     expected_response = 'rc:0'
 | |
|     response = u_boot_console.run_command('gpio clear 0; echo rc:$?')
 | |
|     assert(expected_response in response)
 | |
|     response = u_boot_console.run_command('gpio set 0; echo rc:$?')
 | |
|     assert(expected_response in response)
 | |
|     response = u_boot_console.run_command('gpio toggle 0; echo rc:$?')
 | |
|     assert(expected_response in response)
 | |
|     response = u_boot_console.run_command('gpio status -a; echo rc:$?')
 | |
|     assert(expected_response in response)
 | |
| 
 | |
|     expected_response = 'rc:1'
 | |
|     response = u_boot_console.run_command('gpio nonexistent-command; echo rc:$?')
 | |
|     assert(expected_response in response)
 | |
|     response = u_boot_console.run_command('gpio input 200; echo rc:$?')
 | |
|     assert(expected_response in response)
 |