bindings: rust: tests: set direction when reconfiguring lines
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 8 Jul 2024 09:48:58 +0000 (11:48 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 8 Jul 2024 18:53:40 +0000 (20:53 +0200)
Linux kernel commit b44039638741 ("gpiolib: cdev: Ignore reconfiguration
without direction") made the direction setting mandatory for line config
passed to the kernel when reconfiguring requested lines. Fix the Rust
test cases which don't do it and now fail due to the rest of the
settings being ignored.

Reviewed-by: Kent Gibson <warthog618@gmail.com>
Link: https://lore.kernel.org/r/20240708094858.85015-1-brgl@bgdev.pl
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
bindings/rust/libgpiod/tests/line_request.rs

index 4e095a40e09d8c8fe8b3d32ae3db0ca6e6a00652..4ba0d18b0f635eeab4fba99a6bcf38db0bca9289 100644 (file)
@@ -138,6 +138,7 @@ mod line_request {
             // Value read properly after reconfigure
             let mut lsettings = line::Settings::new().unwrap();
             lsettings.set_active_low(true);
+            lsettings.set_direction(Direction::Input).unwrap();
             let mut lconfig = line::Config::new().unwrap();
             lconfig.add_line_settings(&offsets, lsettings).unwrap();
             request.reconfigure_lines(&lconfig).unwrap();
@@ -452,6 +453,7 @@ mod line_request {
             let mut lconfig = line::Config::new().unwrap();
             let mut lsettings = line::Settings::new().unwrap();
             lsettings.set_event_clock(EventClock::Monotonic).unwrap();
+            lsettings.set_direction(Direction::Input).unwrap();
             lconfig.add_line_settings(&[0], lsettings).unwrap();
             config.request().reconfigure_lines(&lconfig).unwrap();
             let info = config.chip().line_info(0).unwrap();
@@ -460,6 +462,7 @@ mod line_request {
             let mut lconfig = line::Config::new().unwrap();
             let mut lsettings = line::Settings::new().unwrap();
             lsettings.set_event_clock(EventClock::Realtime).unwrap();
+            lsettings.set_direction(Direction::Input).unwrap();
             lconfig.add_line_settings(&[0], lsettings).unwrap();
             config.request().reconfigure_lines(&lconfig).unwrap();
             let info = config.chip().line_info(0).unwrap();