This series addresses issue #54[1], making reconfigure_lines() less restrictive in the configurations it will accept, allowing for misordered configurations and reconfiguring a subset of lines. Patch 1 adds a set of tests for the new behaviour. These all fail with the existing bindings, but pass after patch 2 is applied. Patch 2 is the change to reconfigure_lines() itself. The reconfiguration of a subset of lines works better with a change to the kernel to ignore reconfiguration of lines without a direction set, i.e. a default LineSettings. With existing kernels, if a line has been requested with flags set to non-default values those flags will be reset to default values, though that may not become evident electrically until subsequent operations are performed on the line. Patch 3 extends the tests to demonstrate that kernel issue. A kernel patch addressing that issue has been submitted[2], and the test passes with that patch applied. Cheers, Kent. [1] https://github.com/brgl/libgpiod/issues/54 [2] https://lore.kernel.org/linux-gpio/20240626052925.174272-3-warthog618@xxxxxxxxx Kent Gibson (3): bindings: python: tests: extend reconfiguration tests bindings: python: more flexible reconfigure_lines() bindings: python: tests: add coverage of kernel reconfigure as-is behaviour bindings/python/gpiod/line_request.py | 17 +++--- bindings/python/tests/tests_line_request.py | 64 ++++++++++++++++++++- 2 files changed, 72 insertions(+), 9 deletions(-) -- 2.39.2