From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> When printing line information: check the bias configuration and include the current value in the 'flags' column of output. Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> --- tools/gpioinfo.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tools/gpioinfo.c b/tools/gpioinfo.c index 6f94b4e..67be379 100644 --- a/tools/gpioinfo.c +++ b/tools/gpioinfo.c @@ -21,6 +21,21 @@ struct flag { is_set_func is_set; }; +static bool line_bias_is_pullup(struct gpiod_line *line) +{ + return gpiod_line_bias(line) == GPIOD_LINE_BIAS_PULL_UP; +} + +static bool line_bias_is_pulldown(struct gpiod_line *line) +{ + return gpiod_line_bias(line) == GPIOD_LINE_BIAS_PULL_DOWN; +} + +static bool line_bias_is_disabled(struct gpiod_line *line) +{ + return gpiod_line_bias(line) == GPIOD_LINE_BIAS_DISABLE; +} + static const struct flag flags[] = { { .name = "used", @@ -34,6 +49,18 @@ static const struct flag flags[] = { .name = "open-source", .is_set = gpiod_line_is_open_source, }, + { + .name = "pull-up", + .is_set = line_bias_is_pullup, + }, + { + .name = "pull-down", + .is_set = line_bias_is_pulldown, + }, + { + .name = "bias-disabled", + .is_set = line_bias_is_disabled, + }, }; static const struct option longopts[] = { -- 2.25.0