From 34a560f95aa759aad882ed4cd7363e60e8a872a6 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Wed, 11 Jan 2017 16:01:25 +0100 Subject: [PATCH] core: code shrink in gpiod_simple_set_value() Use one of the line request helpers and omit the set value operation, since we can set the default value when requesting the line. Signed-off-by: Bartosz Golaszewski --- core.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/core.c b/core.c index 6db048f..0e87648 100644 --- a/core.c +++ b/core.c @@ -192,17 +192,10 @@ int gpiod_simple_get_value(const char *device, int gpiod_simple_set_value(const char *device, unsigned int offset, int value, bool active_low, void (*cb)(void *), void *data) { - struct gpiod_line_request_config config; struct gpiod_chip *chip; struct gpiod_line *line; int status; - memset(&config, 0, sizeof(config)); - config.consumer = libgpiod_consumer; - config.direction = GPIOD_DIRECTION_OUTPUT; - config.active_state = active_low ? GPIOD_ACTIVE_STATE_LOW - : GPIOD_ACTIVE_STATE_HIGH; - chip = gpiod_chip_open_lookup(device); if (!chip) return -1; @@ -213,15 +206,9 @@ int gpiod_simple_set_value(const char *device, unsigned int offset, int value, return -1; } - status = gpiod_line_request(line, &config, 0); - if (status < 0) { - gpiod_chip_close(chip); - return -1; - } - - status = gpiod_line_set_value(line, value); + status = gpiod_line_request_output(line, libgpiod_consumer, + active_low, value); if (status < 0) { - gpiod_line_release(line); gpiod_chip_close(chip); return -1; } -- 2.30.2