All of lore.kernel.org
 help / color / mirror / Atom feed
* [libgpiod v2][PATCH 0/3] libgpiod v2: new API improvements
@ 2021-07-30 14:43 Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 1/3] chip: provide gpiod_chip_get_path() Bartosz Golaszewski
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-30 14:43 UTC (permalink / raw)
  To: Kent Gibson, Linus Walleij, Andy Shevchenko, Jack Winch,
	Helmut Grohne, Ben Hutchings
  Cc: linux-gpio, Bartosz Golaszewski

These patches add new features and improvements to the core C library API.

Bartosz Golaszewski (3):
  chip: provide gpiod_chip_get_path()
  line-info: provide gpiod_line_info_get_event_clock()
  treewide: unify the line settings defines

 include/gpiod.h      | 118 +++++++++++++++++--------------------------
 lib/chip.c           |  15 +++++-
 lib/line-config.c    |  38 +++++++-------
 lib/line-info.c      |  11 ++++
 tools/gpioget.c      |   4 +-
 tools/gpiomon.c      |   6 +--
 tools/gpioset.c      |   7 ++-
 tools/tools-common.c |   6 +--
 8 files changed, 101 insertions(+), 104 deletions(-)

-- 
2.30.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [libgpiod v2][PATCH 1/3] chip: provide gpiod_chip_get_path()
  2021-07-30 14:43 [libgpiod v2][PATCH 0/3] libgpiod v2: new API improvements Bartosz Golaszewski
@ 2021-07-30 14:43 ` Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock() Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 3/3] treewide: unify the line settings defines Bartosz Golaszewski
  2 siblings, 0 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-30 14:43 UTC (permalink / raw)
  To: Kent Gibson, Linus Walleij, Andy Shevchenko, Jack Winch,
	Helmut Grohne, Ben Hutchings
  Cc: linux-gpio, Bartosz Golaszewski

Provide a chip getter for retrieving the path to the device file used to
get the GPIO chip handle.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
---
 include/gpiod.h |  7 +++++++
 lib/chip.c      | 15 ++++++++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/include/gpiod.h b/include/gpiod.h
index 56dc986..d3c327b 100644
--- a/include/gpiod.h
+++ b/include/gpiod.h
@@ -88,6 +88,13 @@ const char *gpiod_chip_get_name(struct gpiod_chip *chip);
  */
 const char *gpiod_chip_get_label(struct gpiod_chip *chip);
 
+/**
+ * @brief Get the path used to open this GPIO chip.
+ * @param chip GPIO chip object.
+ * @return Path to the file passed as argument to ::gpiod_chip_open.
+ */
+const char *gpiod_chip_get_path(struct gpiod_chip *chip);
+
 /**
  * @brief Get the number of GPIO lines exposed by this chip.
  * @param chip GPIO chip object.
diff --git a/lib/chip.c b/lib/chip.c
index a200ef2..6fcada9 100644
--- a/lib/chip.c
+++ b/lib/chip.c
@@ -18,6 +18,7 @@ struct gpiod_chip {
 	unsigned int num_lines;
 	char name[32];
 	char label[32];
+	char *path;
 };
 
 GPIOD_API struct gpiod_chip *gpiod_chip_open(const char *path)
@@ -40,9 +41,13 @@ GPIOD_API struct gpiod_chip *gpiod_chip_open(const char *path)
 	memset(chip, 0, sizeof(*chip));
 	memset(&info, 0, sizeof(info));
 
+	chip->path = strdup(path);
+	if (!chip->path)
+		goto err_free_chip;
+
 	ret = ioctl(fd, GPIO_GET_CHIPINFO_IOCTL, &info);
 	if (ret < 0)
-		goto err_free_chip;
+		goto err_free_path;
 
 	chip->fd = fd;
 	chip->num_lines = info.lines;
@@ -65,6 +70,8 @@ GPIOD_API struct gpiod_chip *gpiod_chip_open(const char *path)
 
 	return chip;
 
+err_free_path:
+	free(chip->path);
 err_free_chip:
 	free(chip);
 err_close_fd:
@@ -79,6 +86,7 @@ GPIOD_API void gpiod_chip_close(struct gpiod_chip *chip)
 		return;
 
 	close(chip->fd);
+	free(chip->path);
 	free(chip);
 }
 
@@ -92,6 +100,11 @@ GPIOD_API const char *gpiod_chip_get_label(struct gpiod_chip *chip)
 	return chip->label;
 }
 
+GPIOD_API const char *gpiod_chip_get_path(struct gpiod_chip *chip)
+{
+	return chip->path;
+}
+
 GPIOD_API unsigned int gpiod_chip_get_num_lines(struct gpiod_chip *chip)
 {
 	return chip->num_lines;
-- 
2.30.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock()
  2021-07-30 14:43 [libgpiod v2][PATCH 0/3] libgpiod v2: new API improvements Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 1/3] chip: provide gpiod_chip_get_path() Bartosz Golaszewski
@ 2021-07-30 14:43 ` Bartosz Golaszewski
  2021-07-31  2:27   ` Kent Gibson
  2021-07-30 14:43 ` [libgpiod v2][PATCH 3/3] treewide: unify the line settings defines Bartosz Golaszewski
  2 siblings, 1 reply; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-30 14:43 UTC (permalink / raw)
  To: Kent Gibson, Linus Walleij, Andy Shevchenko, Jack Winch,
	Helmut Grohne, Ben Hutchings
  Cc: linux-gpio, Bartosz Golaszewski

Provide a new getter for the line-info object that becomes the
counterpart for the setter used to configure the event clock type with
line_config. It allows to check which even clock the line uses for
edge detection.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
---
 include/gpiod.h | 18 ++++++++++++++++++
 lib/line-info.c | 11 +++++++++++
 2 files changed, 29 insertions(+)

diff --git a/include/gpiod.h b/include/gpiod.h
index d3c327b..4506571 100644
--- a/include/gpiod.h
+++ b/include/gpiod.h
@@ -245,6 +245,16 @@ enum {
 	/**< Line detects both rising and falling edge events. */
 };
 
+/**
+ * @brief Possible event clock settings.
+ */
+enum {
+	GPIOD_LINE_EVENT_CLOCK_MONOTONIC = 1,
+	/**< Line uses the monotonic clock for edge event timestamps. */
+	GPIOD_LINE_EVENT_CLOCK_REALTIME,
+	/**< Line uses the realtime clock for edge event timestamps. */
+};
+
 /**
  * @brief Free a line info object and release all associated resources.
  * @param info GPIO line info object to free.
@@ -333,6 +343,14 @@ int gpiod_line_info_get_drive(struct gpiod_line_info *info);
  */
 int gpiod_line_info_get_edge_detection(struct gpiod_line_info *info);
 
+/**
+ * @brief Read the current event clock setting used for edge event timestamps.
+ * @param info GPIO line info object.
+ * @return Returns GPIOD_LINE_EVENT_CLOCK_MONOTONIC or
+ *         GPIOD_LINE_EVENT_CLOCK_REALTIME.
+ */
+int gpiod_line_info_get_event_clock(struct gpiod_line_info *info);
+
 /**
  * @brief Check if this line is debounced (either by hardware or by the kernel
  *        software debouncer).
diff --git a/lib/line-info.c b/lib/line-info.c
index aed8bee..0280981 100644
--- a/lib/line-info.c
+++ b/lib/line-info.c
@@ -17,6 +17,7 @@ struct gpiod_line_info {
 	int bias;
 	int drive;
 	int edge;
+	int event_clock;
 	bool debounced;
 	unsigned long debounce_period;
 };
@@ -86,6 +87,11 @@ GPIOD_API int gpiod_line_info_get_edge_detection(struct gpiod_line_info *info)
 	return info->edge;
 }
 
+GPIOD_API int gpiod_line_info_get_event_clock(struct gpiod_line_info *info)
+{
+	return info->event_clock;
+}
+
 GPIOD_API bool gpiod_line_info_is_debounced(struct gpiod_line_info *info)
 {
 	return info->debounced;
@@ -150,6 +156,11 @@ gpiod_line_info_from_kernel(struct gpio_v2_line_info *infobuf)
 	else
 		info->edge = GPIOD_LINE_EDGE_NONE;
 
+	if (infobuf->flags & GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME)
+		info->event_clock = GPIOD_LINE_EVENT_CLOCK_REALTIME;
+	else
+		info->event_clock = GPIOD_LINE_EVENT_CLOCK_MONOTONIC;
+
 	/*
 	 * We assume that the kernel returns correct configuration and that no
 	 * attributes repeat.
-- 
2.30.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [libgpiod v2][PATCH 3/3] treewide: unify the line settings defines
  2021-07-30 14:43 [libgpiod v2][PATCH 0/3] libgpiod v2: new API improvements Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 1/3] chip: provide gpiod_chip_get_path() Bartosz Golaszewski
  2021-07-30 14:43 ` [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock() Bartosz Golaszewski
@ 2021-07-30 14:43 ` Bartosz Golaszewski
  2 siblings, 0 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-30 14:43 UTC (permalink / raw)
  To: Kent Gibson, Linus Walleij, Andy Shevchenko, Jack Winch,
	Helmut Grohne, Ben Hutchings
  Cc: linux-gpio, Bartosz Golaszewski

The definitions of line settings are mostly duplicated between the
line-info and line-config objects. Unify them by merging any differences
into common enums.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
---
 include/gpiod.h      | 93 ++++++++++----------------------------------
 lib/line-config.c    | 38 +++++++++---------
 tools/gpioget.c      |  4 +-
 tools/gpiomon.c      |  6 +--
 tools/gpioset.c      |  7 ++--
 tools/tools-common.c |  6 +--
 6 files changed, 51 insertions(+), 103 deletions(-)

diff --git a/include/gpiod.h b/include/gpiod.h
index 4506571..85a671f 100644
--- a/include/gpiod.h
+++ b/include/gpiod.h
@@ -185,21 +185,19 @@ gpiod_chip_request_lines(struct gpiod_chip *chip,
 /**
  * @}
  *
- * @defgroup line_info Line info
+ * @defgroup line_settings Line settings
  * @{
  *
- * Definitions and functions for retrieving kernel information about both
- * requested and free lines.
- *
- * Line info object contains an immutable snapshot of the line's state at the
- * time when it was created.
+ * These defines are used both by gpiod_line_info and gpiod_line_config.
  */
 
 /**
  * @brief Direction settings.
  */
 enum {
-	GPIOD_LINE_DIRECTION_INPUT = 1,
+	GPIOD_LINE_DIRECTION_AS_IS = 1,
+	/**< Request the line(s), but don't change current direction. */
+	GPIOD_LINE_DIRECTION_INPUT,
 	/**< Direction is input - we're reading the state of a GPIO line. */
 	GPIOD_LINE_DIRECTION_OUTPUT
 	/**< Direction is output - we're driving the GPIO line. */
@@ -209,7 +207,9 @@ enum {
  * @brief Internal bias settings.
  */
 enum {
-	GPIOD_LINE_BIAS_UNKNOWN = 1,
+	GPIOD_LINE_BIAS_AS_IS = 1,
+	/**< Don't change the bias setting when applying line config. */
+	GPIOD_LINE_BIAS_UNKNOWN,
 	/**< The internal bias state is unknown. */
 	GPIOD_LINE_BIAS_DISABLED,
 	/**< The internal bias is disabled. */
@@ -255,6 +255,19 @@ enum {
 	/**< Line uses the realtime clock for edge event timestamps. */
 };
 
+/**
+ * @}
+ *
+ * @defgroup line_info Line info
+ * @{
+ *
+ * Functions for retrieving kernel information about both requested and free
+ * lines.
+ *
+ * Line info object contains an immutable snapshot of the line's state at the
+ * time when it was created.
+ */
+
 /**
  * @brief Free a line info object and release all associated resources.
  * @param info GPIO line info object to free.
@@ -445,70 +458,6 @@ gpiod_info_event_get_line_info(struct gpiod_info_event *event);
  * a single line offset or for multiple line offsets.
  */
 
-/**
- * @brief Available direction settings.
- */
-enum {
-	GPIOD_LINE_CONFIG_DIRECTION_AS_IS = 1,
-	/**< Request the line(s), but don't change current direction. */
-	GPIOD_LINE_CONFIG_DIRECTION_INPUT,
-	/**< Request the line(s) for reading the GPIO line state. */
-	GPIOD_LINE_CONFIG_DIRECTION_OUTPUT
-	/**< Request the line(s) for setting the GPIO line state. */
-};
-
-/**
- * @brief Available edge event detection settings. Only relevant for input
- *        direction.
- */
-enum {
-	GPIOD_LINE_CONFIG_EDGE_NONE = 1,
-	/**< Don't report edge events. */
-	GPIOD_LINE_CONFIG_EDGE_FALLING,
-	/**< Only watch falling edge events. */
-	GPIOD_LINE_CONFIG_EDGE_RISING,
-	/**< Only watch rising edge events. */
-	GPIOD_LINE_CONFIG_EDGE_BOTH
-	/**< Monitor both types of events. */
-};
-
-/**
- * @brief Available internal bias settings for line requests.
- */
-enum {
-	GPIOD_LINE_CONFIG_BIAS_AS_IS = 1,
-	/**< Don't change the current bias setting. */
-	GPIOD_LINE_CONFIG_BIAS_DISABLED,
-	/**< The internal bias should be disabled (the default). */
-	GPIOD_LINE_CONFIG_BIAS_PULL_UP,
-	/**< The internal pull-up bias is enabled. */
-	GPIOD_LINE_CONFIG_BIAS_PULL_DOWN
-	/**< The internal pull-down bias is enabled. */
-};
-
-/**
- * @brief Available drive settings for line requests. Only relevant for output
- *        direction.
- */
-enum {
-	GPIOD_LINE_CONFIG_DRIVE_PUSH_PULL = 1,
-	/**< Drive setting should be set to push-pull (the default). */
-	GPIOD_LINE_CONFIG_DRIVE_OPEN_DRAIN,
-	/**< Line output should be set to open-drain. */
-	GPIOD_LINE_CONFIG_DRIVE_OPEN_SOURCE
-	/**< Line output should be set to open-source. */
-};
-
-/**
- * @brief Available clock types used for event timestamps.
- */
-enum {
-	GPIOD_LINE_CONFIG_EVENT_CLOCK_MONOTONIC = 1,
-	/**< Use the monotonic clock. */
-	GPIOD_LINE_CONFIG_EVENT_CLOCK_REALTIME
-	/**< Use the realtime clock. */
-};
-
 /**
  * @brief Create a new line config object.
  * @return New line config object or NULL on error.
diff --git a/lib/line-config.c b/lib/line-config.c
index 24dc5f4..6cc4676 100644
--- a/lib/line-config.c
+++ b/lib/line-config.c
@@ -435,13 +435,13 @@ static int gpiod_make_kernel_flags(uint64_t *flags, struct base_config *config)
 	*flags = 0;
 
 	switch (config->direction) {
-	case GPIOD_LINE_CONFIG_DIRECTION_INPUT:
+	case GPIOD_LINE_DIRECTION_INPUT:
 		*flags |= GPIO_V2_LINE_FLAG_INPUT;
 		break;
-	case GPIOD_LINE_CONFIG_DIRECTION_OUTPUT:
+	case GPIOD_LINE_DIRECTION_OUTPUT:
 		*flags |= GPIO_V2_LINE_FLAG_OUTPUT;
 		break;
-	case GPIOD_LINE_CONFIG_DIRECTION_AS_IS:
+	case GPIOD_LINE_DIRECTION_AS_IS:
 	case 0:
 		break;
 	default:
@@ -449,23 +449,23 @@ static int gpiod_make_kernel_flags(uint64_t *flags, struct base_config *config)
 	}
 
 	switch (config->edge) {
-	case GPIOD_LINE_CONFIG_EDGE_FALLING:
+	case GPIOD_LINE_EDGE_FALLING:
 		*flags |= (GPIO_V2_LINE_FLAG_EDGE_FALLING |
 			   GPIO_V2_LINE_FLAG_INPUT);
-		*flags &= ~GPIOD_LINE_CONFIG_DIRECTION_OUTPUT;
+		*flags &= ~GPIOD_LINE_DIRECTION_OUTPUT;
 		break;
-	case GPIOD_LINE_CONFIG_EDGE_RISING:
+	case GPIOD_LINE_EDGE_RISING:
 		*flags |= (GPIO_V2_LINE_FLAG_EDGE_RISING |
 			   GPIO_V2_LINE_FLAG_INPUT);
-		*flags &= ~GPIOD_LINE_CONFIG_DIRECTION_OUTPUT;
+		*flags &= ~GPIOD_LINE_DIRECTION_OUTPUT;
 		break;
-	case GPIOD_LINE_CONFIG_EDGE_BOTH:
+	case GPIOD_LINE_EDGE_BOTH:
 		*flags |= (GPIO_V2_LINE_FLAG_EDGE_FALLING |
 			   GPIO_V2_LINE_FLAG_EDGE_RISING |
 			   GPIO_V2_LINE_FLAG_INPUT);
-		*flags &= ~GPIOD_LINE_CONFIG_DIRECTION_OUTPUT;
+		*flags &= ~GPIOD_LINE_DIRECTION_OUTPUT;
 		break;
-	case GPIOD_LINE_CONFIG_EDGE_NONE:
+	case GPIOD_LINE_EDGE_NONE:
 	case 0:
 		break;
 	default:
@@ -473,13 +473,13 @@ static int gpiod_make_kernel_flags(uint64_t *flags, struct base_config *config)
 	}
 
 	switch (config->drive) {
-	case GPIOD_LINE_CONFIG_DRIVE_OPEN_DRAIN:
+	case GPIOD_LINE_DRIVE_OPEN_DRAIN:
 		*flags |= GPIO_V2_LINE_FLAG_OPEN_DRAIN;
 		break;
-	case GPIOD_LINE_CONFIG_DRIVE_OPEN_SOURCE:
+	case GPIOD_LINE_DRIVE_OPEN_SOURCE:
 		*flags |= GPIO_V2_LINE_FLAG_OPEN_SOURCE;
 		break;
-	case GPIOD_LINE_CONFIG_DRIVE_PUSH_PULL:
+	case GPIOD_LINE_DRIVE_PUSH_PULL:
 	case 0:
 		break;
 	default:
@@ -487,16 +487,16 @@ static int gpiod_make_kernel_flags(uint64_t *flags, struct base_config *config)
 	}
 
 	switch (config->bias) {
-	case GPIOD_LINE_CONFIG_BIAS_DISABLED:
+	case GPIOD_LINE_BIAS_DISABLED:
 		*flags |= GPIO_V2_LINE_FLAG_BIAS_DISABLED;
 		break;
-	case GPIOD_LINE_CONFIG_BIAS_PULL_UP:
+	case GPIOD_LINE_BIAS_PULL_UP:
 		*flags |= GPIO_V2_LINE_FLAG_BIAS_PULL_UP;
 		break;
-	case GPIOD_LINE_CONFIG_BIAS_PULL_DOWN:
+	case GPIOD_LINE_BIAS_PULL_DOWN:
 		*flags |= GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN;
 		break;
-	case GPIOD_LINE_CONFIG_BIAS_AS_IS:
+	case GPIOD_LINE_BIAS_AS_IS:
 	case 0:
 		break;
 	default:
@@ -507,10 +507,10 @@ static int gpiod_make_kernel_flags(uint64_t *flags, struct base_config *config)
 		*flags |= GPIO_V2_LINE_FLAG_ACTIVE_LOW;
 
 	switch (config->clock) {
-	case GPIOD_LINE_CONFIG_EVENT_CLOCK_REALTIME:
+	case GPIOD_LINE_EVENT_CLOCK_REALTIME:
 		*flags |= GPIO_V2_LINE_FLAG_EVENT_CLOCK_REALTIME;
 		break;
-	case GPIOD_LINE_CONFIG_EVENT_CLOCK_MONOTONIC:
+	case GPIOD_LINE_EVENT_CLOCK_MONOTONIC:
 	case 0:
 		break;
 	default:
diff --git a/tools/gpioget.c b/tools/gpioget.c
index afa2ccb..965af3b 100644
--- a/tools/gpioget.c
+++ b/tools/gpioget.c
@@ -41,7 +41,7 @@ static void print_help(void)
 
 int main(int argc, char **argv)
 {
-	int direction = GPIOD_LINE_CONFIG_DIRECTION_INPUT;
+	int direction = GPIOD_LINE_DIRECTION_INPUT;
 	int optc, opti, bias = 0, ret, *values;
 	struct gpiod_request_config *req_cfg;
 	unsigned int *offsets, i, num_lines;
@@ -67,7 +67,7 @@ int main(int argc, char **argv)
 			active_low = true;
 			break;
 		case 'n':
-			direction = GPIOD_LINE_CONFIG_DIRECTION_AS_IS;
+			direction = GPIOD_LINE_DIRECTION_AS_IS;
 			break;
 		case 'B':
 			bias = parse_bias(optarg);
diff --git a/tools/gpiomon.c b/tools/gpiomon.c
index 66fbb13..740c249 100644
--- a/tools/gpiomon.c
+++ b/tools/gpiomon.c
@@ -225,11 +225,11 @@ int main(int argc, char **argv)
 	argv += optind;
 
 	if (watch_rising && !watch_falling)
-		edge = GPIOD_LINE_CONFIG_EDGE_RISING;
+		edge = GPIOD_LINE_EDGE_RISING;
 	else if (watch_falling && !watch_rising)
-		edge = GPIOD_LINE_CONFIG_EDGE_FALLING;
+		edge = GPIOD_LINE_EDGE_FALLING;
 	else
-		edge = GPIOD_LINE_CONFIG_EDGE_BOTH;
+		edge = GPIOD_LINE_EDGE_BOTH;
 
 	if (argc < 1)
 		die("gpiochip must be specified");
diff --git a/tools/gpioset.c b/tools/gpioset.c
index bf90087..55fcfe9 100644
--- a/tools/gpioset.c
+++ b/tools/gpioset.c
@@ -179,9 +179,9 @@ static const struct mode_mapping *parse_mode(const char *mode)
 static int parse_drive(const char *option)
 {
 	if (strcmp(option, "open-drain") == 0)
-		return GPIOD_LINE_CONFIG_DRIVE_OPEN_DRAIN;
+		return GPIOD_LINE_DRIVE_OPEN_DRAIN;
 	if (strcmp(option, "open-source") == 0)
-		return GPIOD_LINE_CONFIG_DRIVE_OPEN_SOURCE;
+		return GPIOD_LINE_DRIVE_OPEN_SOURCE;
 	if (strcmp(option, "push-pull") != 0)
 		die("invalid drive: %s", option);
 	return 0;
@@ -301,8 +301,7 @@ int main(int argc, char **argv)
 		gpiod_line_config_set_drive(line_cfg, drive);
 	if (active_low)
 		gpiod_line_config_set_active_low(line_cfg);
-	gpiod_line_config_set_direction(line_cfg,
-					GPIOD_LINE_CONFIG_DIRECTION_OUTPUT);
+	gpiod_line_config_set_direction(line_cfg, GPIOD_LINE_DIRECTION_OUTPUT);
 	gpiod_line_config_set_output_values(line_cfg, num_lines,
 					    offsets, values);
 
diff --git a/tools/tools-common.c b/tools/tools-common.c
index 36724d5..f5fd50c 100644
--- a/tools/tools-common.c
+++ b/tools/tools-common.c
@@ -60,11 +60,11 @@ void print_version(void)
 int parse_bias(const char *option)
 {
 	if (strcmp(option, "pull-down") == 0)
-		return GPIOD_LINE_CONFIG_BIAS_PULL_DOWN;
+		return GPIOD_LINE_BIAS_PULL_DOWN;
 	if (strcmp(option, "pull-up") == 0)
-		return GPIOD_LINE_CONFIG_BIAS_PULL_UP;
+		return GPIOD_LINE_BIAS_PULL_UP;
 	if (strcmp(option, "disable") == 0)
-		return GPIOD_LINE_CONFIG_BIAS_DISABLED;
+		return GPIOD_LINE_BIAS_DISABLED;
 	if (strcmp(option, "as-is") != 0)
 		die("invalid bias: %s", option);
 	return 0;
-- 
2.30.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock()
  2021-07-30 14:43 ` [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock() Bartosz Golaszewski
@ 2021-07-31  2:27   ` Kent Gibson
  2021-08-02  8:12     ` Bartosz Golaszewski
  0 siblings, 1 reply; 6+ messages in thread
From: Kent Gibson @ 2021-07-31  2:27 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Linus Walleij, Andy Shevchenko, Jack Winch, Helmut Grohne,
	Ben Hutchings, linux-gpio

On Fri, Jul 30, 2021 at 04:43:55PM +0200, Bartosz Golaszewski wrote:
> Provide a new getter for the line-info object that becomes the
> counterpart for the setter used to configure the event clock type with
> line_config. It allows to check which even clock the line uses for
> edge detection.
> 

"to check which even" -> "checking which event"

That is my only comment for the whole patch set - eveything else looks
good.

Cheers,
Kent.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock()
  2021-07-31  2:27   ` Kent Gibson
@ 2021-08-02  8:12     ` Bartosz Golaszewski
  0 siblings, 0 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-08-02  8:12 UTC (permalink / raw)
  To: Kent Gibson
  Cc: Linus Walleij, Andy Shevchenko, Jack Winch, Helmut Grohne,
	Ben Hutchings, open list:GPIO SUBSYSTEM

On Sat, Jul 31, 2021 at 4:27 AM Kent Gibson <warthog618@gmail.com> wrote:
>
> On Fri, Jul 30, 2021 at 04:43:55PM +0200, Bartosz Golaszewski wrote:
> > Provide a new getter for the line-info object that becomes the
> > counterpart for the setter used to configure the event clock type with
> > line_config. It allows to check which even clock the line uses for
> > edge detection.
> >
>
> "to check which even" -> "checking which event"
>
> That is my only comment for the whole patch set - eveything else looks
> good.
>
> Cheers,
> Kent.

This will be squashed with the big v2 commit, thanks!

Bart

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-08-02  8:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-30 14:43 [libgpiod v2][PATCH 0/3] libgpiod v2: new API improvements Bartosz Golaszewski
2021-07-30 14:43 ` [libgpiod v2][PATCH 1/3] chip: provide gpiod_chip_get_path() Bartosz Golaszewski
2021-07-30 14:43 ` [libgpiod v2][PATCH 2/3] line-info: provide gpiod_line_info_get_event_clock() Bartosz Golaszewski
2021-07-31  2:27   ` Kent Gibson
2021-08-02  8:12     ` Bartosz Golaszewski
2021-07-30 14:43 ` [libgpiod v2][PATCH 3/3] treewide: unify the line settings defines Bartosz Golaszewski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.