Re: selftests/gpio: gpio-sim.sh: BUG: test FAILED due to recent change in sh source

From: Andy Shevchenko
Date: Tue Apr 11 2023 - 09:37:55 EST


On Mon, Feb 27, 2023 at 06:51:09PM +0100, Mirsad Todorovac wrote:
> Hi,
>
> The gpio-sim.sh test appears to FAIL in a wrong way due to missing initialisation
> of shell variables:
>
> $ sudo gpio-sim.sh
> .
> .
> .
> 4. Simulated GPIO chips are functional
> 4.1. Values can be read from sysfs
> 4.2. Bias settings work correctly
> cat: /sys/devices/platform/gpio-sim.0/gpiochip18/sim_gpio0/value: No such file or directory
> ./gpio-sim.sh: line 393: test: =: unary operator expected
> bias setting does not work
> GPIO gpio-sim test FAIL
> $
>
> This patch fixed the issue:
>
> diff --git a/tools/testing/selftests/gpio/gpio-sim.sh b/tools/testing/selftests/gpio/gpio-sim.sh
> index 9f539d454ee4..fa2ce2b9dd5f 100755
> --- a/tools/testing/selftests/gpio/gpio-sim.sh
> +++ b/tools/testing/selftests/gpio/gpio-sim.sh
> @@ -389,6 +389,9 @@ create_chip chip
> create_bank chip bank
> set_num_lines chip bank 8
> enable_chip chip
> +DEVNAME=`configfs_dev_name chip`
> +CHIPNAME=`configfs_chip_name chip bank`
> +SYSFS_PATH="/sys/devices/platform/$DEVNAME/$CHIPNAME/sim_gpio0/value"
> $BASE_DIR/gpio-mockup-cdev -b pull-up /dev/`configfs_chip_name chip bank` 0
> test `cat $SYSFS_PATH` = "1" || fail "bias setting does not work"
> remove_chip chip
>
> ... after which the test passed:
>
> 4. Simulated GPIO chips are functional
> 4.1. Values can be read from sysfs
> 4.2. Bias settings work correctly
> GPIO gpio-sim test PASS
>
> Which I believe proves that the bug was in the script and not in the gpio-sim driver.

I agree with the analysis. Bart, seems to me that it might be the case, but
I want to amend the fix a bit.

--
With Best Regards,
Andy Shevchenko