linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] media: use new GPIO line value setter callbacks
@ 2025-06-10 12:35 Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 1/7] media: dvb-frontends/cxd2820r: " Bartosz Golaszewski
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

Commit 98ce1eb1fd87e ("gpiolib: introduce gpio_chip setters that return
values") added new line setter callbacks to struct gpio_chip. They allow
to indicate failures to callers. We're in the process of converting all
GPIO controllers to using them before removing the old ones. This series
converts all GPIO chips implemented under drivers/media/.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
Bartosz Golaszewski (7):
      media: dvb-frontends/cxd2820r: use new GPIO line value setter callbacks
      media: solo6x10: remove unneeded GPIO direction setters
      media: solo6x10: use new GPIO line value setter callbacks
      media: i2c: ds90ub953: use new GPIO line value setter callbacks
      media: i2c: ds90ub913: use new GPIO line value setter callbacks
      media: i2c: max96717: use new GPIO line value setter callbacks
      media: i2c: max9286: use new GPIO line value setter callbacks

 drivers/media/dvb-frontends/cxd2820r_core.c |  6 +++---
 drivers/media/i2c/ds90ub913.c               |  6 +++---
 drivers/media/i2c/ds90ub953.c               | 11 +++++------
 drivers/media/i2c/max9286.c                 |  8 ++++----
 drivers/media/i2c/max96717.c                | 10 +++++-----
 drivers/media/pci/solo6x10/solo6x10-gpio.c  | 20 ++++----------------
 6 files changed, 24 insertions(+), 37 deletions(-)
---
base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494
change-id: 20250522-gpiochip-set-rv-media-e310a591836f

Best regards,
-- 
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>


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

* [PATCH 1/7] media: dvb-frontends/cxd2820r: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 2/7] media: solo6x10: remove unneeded GPIO direction setters Bartosz Golaszewski
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/dvb-frontends/cxd2820r_core.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/media/dvb-frontends/cxd2820r_core.c b/drivers/media/dvb-frontends/cxd2820r_core.c
index c3d8ced6c3baa6608e17cc4797dbeddc5a5ed510..a31a8a6a494652e6aae874c399fc70df3f9ee172 100644
--- a/drivers/media/dvb-frontends/cxd2820r_core.c
+++ b/drivers/media/dvb-frontends/cxd2820r_core.c
@@ -433,7 +433,7 @@ static int cxd2820r_gpio_direction_output(struct gpio_chip *chip, unsigned nr,
 	return cxd2820r_gpio(&priv->fe, gpio);
 }
 
-static void cxd2820r_gpio_set(struct gpio_chip *chip, unsigned nr, int val)
+static int cxd2820r_gpio_set(struct gpio_chip *chip, unsigned int nr, int val)
 {
 	struct cxd2820r_priv *priv = gpiochip_get_data(chip);
 	struct i2c_client *client = priv->client[0];
@@ -446,7 +446,7 @@ static void cxd2820r_gpio_set(struct gpio_chip *chip, unsigned nr, int val)
 
 	(void) cxd2820r_gpio(&priv->fe, gpio);
 
-	return;
+	return 0;
 }
 
 static int cxd2820r_gpio_get(struct gpio_chip *chip, unsigned nr)
@@ -651,7 +651,7 @@ static int cxd2820r_probe(struct i2c_client *client)
 		priv->gpio_chip.parent = &client->dev;
 		priv->gpio_chip.owner = THIS_MODULE;
 		priv->gpio_chip.direction_output = cxd2820r_gpio_direction_output;
-		priv->gpio_chip.set = cxd2820r_gpio_set;
+		priv->gpio_chip.set_rv = cxd2820r_gpio_set;
 		priv->gpio_chip.get = cxd2820r_gpio_get;
 		priv->gpio_chip.base = -1; /* Dynamic allocation */
 		priv->gpio_chip.ngpio = GPIO_COUNT;

-- 
2.48.1


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

* [PATCH 2/7] media: solo6x10: remove unneeded GPIO direction setters
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 1/7] media: dvb-frontends/cxd2820r: " Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 3/7] media: solo6x10: use new GPIO line value setter callbacks Bartosz Golaszewski
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

GPIO core already handles missing direction_input/output() callbacks.
The ones in this driver also effectively return magic numbers which is
not optimal either (the number accidentally corresponds with -EPERM which
is different from the number GPIOLIB returns and so inconsistent). Just
remove them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/pci/solo6x10/solo6x10-gpio.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/drivers/media/pci/solo6x10/solo6x10-gpio.c b/drivers/media/pci/solo6x10/solo6x10-gpio.c
index 084c30760e459e37cd1800132a93dfb0fc70398e..f51f865c69bd7b04fac7a1f951c734965d8fc993 100644
--- a/drivers/media/pci/solo6x10/solo6x10-gpio.c
+++ b/drivers/media/pci/solo6x10/solo6x10-gpio.c
@@ -116,18 +116,6 @@ static int solo_gpiochip_get_direction(struct gpio_chip *chip,
 	return -1;
 }
 
-static int solo_gpiochip_direction_input(struct gpio_chip *chip,
-					 unsigned int offset)
-{
-	return -1;
-}
-
-static int solo_gpiochip_direction_output(struct gpio_chip *chip,
-					  unsigned int offset, int value)
-{
-	return -1;
-}
-
 static int solo_gpiochip_get(struct gpio_chip *chip,
 						unsigned int offset)
 {
@@ -167,8 +155,6 @@ int solo_gpio_init(struct solo_dev *solo_dev)
 	solo_dev->gpio_dev.can_sleep = 0;
 
 	solo_dev->gpio_dev.get_direction = solo_gpiochip_get_direction;
-	solo_dev->gpio_dev.direction_input = solo_gpiochip_direction_input;
-	solo_dev->gpio_dev.direction_output = solo_gpiochip_direction_output;
 	solo_dev->gpio_dev.get = solo_gpiochip_get;
 	solo_dev->gpio_dev.set = solo_gpiochip_set;
 

-- 
2.48.1


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

* [PATCH 3/7] media: solo6x10: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 1/7] media: dvb-frontends/cxd2820r: " Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 2/7] media: solo6x10: remove unneeded GPIO direction setters Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 4/7] media: i2c: ds90ub953: " Bartosz Golaszewski
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/pci/solo6x10/solo6x10-gpio.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/media/pci/solo6x10/solo6x10-gpio.c b/drivers/media/pci/solo6x10/solo6x10-gpio.c
index f51f865c69bd7b04fac7a1f951c734965d8fc993..6948f246a29ca92f12e3320d9c130d9bda7eef6a 100644
--- a/drivers/media/pci/solo6x10/solo6x10-gpio.c
+++ b/drivers/media/pci/solo6x10/solo6x10-gpio.c
@@ -127,7 +127,7 @@ static int solo_gpiochip_get(struct gpio_chip *chip,
 	return 1 & (ret >> (offset + 8));
 }
 
-static void solo_gpiochip_set(struct gpio_chip *chip,
+static int solo_gpiochip_set(struct gpio_chip *chip,
 						unsigned int offset, int value)
 {
 	struct solo_dev *solo_dev = gpiochip_get_data(chip);
@@ -136,6 +136,8 @@ static void solo_gpiochip_set(struct gpio_chip *chip,
 		solo_gpio_set(solo_dev, 1 << (offset + 8));
 	else
 		solo_gpio_clear(solo_dev, 1 << (offset + 8));
+
+	return 0;
 }
 #endif
 
@@ -156,7 +158,7 @@ int solo_gpio_init(struct solo_dev *solo_dev)
 
 	solo_dev->gpio_dev.get_direction = solo_gpiochip_get_direction;
 	solo_dev->gpio_dev.get = solo_gpiochip_get;
-	solo_dev->gpio_dev.set = solo_gpiochip_set;
+	solo_dev->gpio_dev.set_rv = solo_gpiochip_set;
 
 	ret = gpiochip_add_data(&solo_dev->gpio_dev, solo_dev);
 

-- 
2.48.1


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

* [PATCH 4/7] media: i2c: ds90ub953: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
                   ` (2 preceding siblings ...)
  2025-06-10 12:35 ` [PATCH 3/7] media: solo6x10: use new GPIO line value setter callbacks Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 5/7] media: i2c: ds90ub913: " Bartosz Golaszewski
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/i2c/ds90ub953.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/media/i2c/ds90ub953.c b/drivers/media/i2c/ds90ub953.c
index 59bd92388845eedf64587289c7f7424ee570524a..242dbf6d48f3905c8908bbb06ede84e068e2f267 100644
--- a/drivers/media/i2c/ds90ub953.c
+++ b/drivers/media/i2c/ds90ub953.c
@@ -317,14 +317,13 @@ static int ub953_gpio_get(struct gpio_chip *gc, unsigned int offset)
 	return !!(v & UB953_REG_GPIO_PIN_STS_GPIO_STS(offset));
 }
 
-static void ub953_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
+static int ub953_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
 {
 	struct ub953_data *priv = gpiochip_get_data(gc);
 
-	regmap_update_bits(priv->regmap, UB953_REG_LOCAL_GPIO_DATA,
-			   UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset),
-			   value ? UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset) :
-				   0);
+	return regmap_update_bits(priv->regmap, UB953_REG_LOCAL_GPIO_DATA,
+				  UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset),
+				  value ? UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset) : 0);
 }
 
 static int ub953_gpio_of_xlate(struct gpio_chip *gc,
@@ -362,7 +361,7 @@ static int ub953_gpiochip_probe(struct ub953_data *priv)
 	gc->direction_input = ub953_gpio_direction_in;
 	gc->direction_output = ub953_gpio_direction_out;
 	gc->get = ub953_gpio_get;
-	gc->set = ub953_gpio_set;
+	gc->set_rv = ub953_gpio_set;
 	gc->of_xlate = ub953_gpio_of_xlate;
 	gc->of_gpio_n_cells = 2;
 

-- 
2.48.1


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

* [PATCH 5/7] media: i2c: ds90ub913: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
                   ` (3 preceding siblings ...)
  2025-06-10 12:35 ` [PATCH 4/7] media: i2c: ds90ub953: " Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 6/7] media: i2c: max96717: " Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 7/7] media: i2c: max9286: " Bartosz Golaszewski
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/i2c/ds90ub913.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/media/i2c/ds90ub913.c b/drivers/media/i2c/ds90ub913.c
index 6d3f8617ef136c6f47871f5886193fe934c6f3b7..c34ffeae5f5080875463b6b6d45acbd9e107d461 100644
--- a/drivers/media/i2c/ds90ub913.c
+++ b/drivers/media/i2c/ds90ub913.c
@@ -203,9 +203,9 @@ static int ub913_gpio_direction_out(struct gpio_chip *gc, unsigned int offset,
 						   0));
 }
 
-static void ub913_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
+static int ub913_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
 {
-	ub913_gpio_direction_out(gc, offset, value);
+	return ub913_gpio_direction_out(gc, offset, value);
 }
 
 static int ub913_gpio_of_xlate(struct gpio_chip *gc,
@@ -235,7 +235,7 @@ static int ub913_gpiochip_probe(struct ub913_data *priv)
 	gc->ngpio = UB913_NUM_GPIOS;
 	gc->get_direction = ub913_gpio_get_direction;
 	gc->direction_output = ub913_gpio_direction_out;
-	gc->set = ub913_gpio_set;
+	gc->set_rv = ub913_gpio_set;
 	gc->of_xlate = ub913_gpio_of_xlate;
 	gc->of_gpio_n_cells = 2;
 

-- 
2.48.1


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

* [PATCH 6/7] media: i2c: max96717: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
                   ` (4 preceding siblings ...)
  2025-06-10 12:35 ` [PATCH 5/7] media: i2c: ds90ub913: " Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  2025-06-10 12:35 ` [PATCH 7/7] media: i2c: max9286: " Bartosz Golaszewski
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/i2c/max96717.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/media/i2c/max96717.c b/drivers/media/i2c/max96717.c
index 3746729366aca3af8aef3a807e2f91a8f142ce59..a503a55fe8afa9bdda8fc9b1c2b0e7ebd02afe1c 100644
--- a/drivers/media/i2c/max96717.c
+++ b/drivers/media/i2c/max96717.c
@@ -297,13 +297,13 @@ static int max96717_gpiochip_get(struct gpio_chip *gpiochip,
 		return !!(val & MAX96717_GPIO_OUT);
 }
 
-static void max96717_gpiochip_set(struct gpio_chip *gpiochip,
-				  unsigned int offset, int value)
+static int max96717_gpiochip_set(struct gpio_chip *gpiochip,
+				 unsigned int offset, int value)
 {
 	struct max96717_priv *priv = gpiochip_get_data(gpiochip);
 
-	cci_update_bits(priv->regmap, MAX96717_GPIO_REG_A(offset),
-			MAX96717_GPIO_OUT, MAX96717_GPIO_OUT, NULL);
+	return cci_update_bits(priv->regmap, MAX96717_GPIO_REG_A(offset),
+			       MAX96717_GPIO_OUT, MAX96717_GPIO_OUT, NULL);
 }
 
 static int max96717_gpio_get_direction(struct gpio_chip *gpiochip,
@@ -355,7 +355,7 @@ static int max96717_gpiochip_probe(struct max96717_priv *priv)
 	gc->get_direction = max96717_gpio_get_direction;
 	gc->direction_input = max96717_gpio_direction_in;
 	gc->direction_output = max96717_gpio_direction_out;
-	gc->set = max96717_gpiochip_set;
+	gc->set_rv = max96717_gpiochip_set;
 	gc->get = max96717_gpiochip_get;
 	gc->of_gpio_n_cells = 2;
 

-- 
2.48.1


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

* [PATCH 7/7] media: i2c: max9286: use new GPIO line value setter callbacks
  2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
                   ` (5 preceding siblings ...)
  2025-06-10 12:35 ` [PATCH 6/7] media: i2c: max96717: " Bartosz Golaszewski
@ 2025-06-10 12:35 ` Bartosz Golaszewski
  6 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2025-06-10 12:35 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Linus Walleij, Bartosz Golaszewski,
	Bluecherry Maintainers, Andrey Utkin, Ismael Luceno,
	Tomi Valkeinen, Julien Massot, Jacopo Mondi, Kieran Bingham,
	Laurent Pinchart, Niklas Söderlund
  Cc: linux-media, linux-kernel, linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 drivers/media/i2c/max9286.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c
index 9fc4e130a273f8547d7e7ec194cade5b5e9c8df2..1d0b5f56f989874e46f87db4a49d935049e6e7ce 100644
--- a/drivers/media/i2c/max9286.c
+++ b/drivers/media/i2c/max9286.c
@@ -1193,12 +1193,12 @@ static int max9286_gpio_set(struct max9286_priv *priv, unsigned int offset,
 			     MAX9286_0X0F_RESERVED | priv->gpio_state);
 }
 
-static void max9286_gpiochip_set(struct gpio_chip *chip,
-				 unsigned int offset, int value)
+static int max9286_gpiochip_set(struct gpio_chip *chip,
+				unsigned int offset, int value)
 {
 	struct max9286_priv *priv = gpiochip_get_data(chip);
 
-	max9286_gpio_set(priv, offset, value);
+	return max9286_gpio_set(priv, offset, value);
 }
 
 static int max9286_gpiochip_get(struct gpio_chip *chip, unsigned int offset)
@@ -1220,7 +1220,7 @@ static int max9286_register_gpio(struct max9286_priv *priv)
 	gpio->owner = THIS_MODULE;
 	gpio->ngpio = 2;
 	gpio->base = -1;
-	gpio->set = max9286_gpiochip_set;
+	gpio->set_rv = max9286_gpiochip_set;
 	gpio->get = max9286_gpiochip_get;
 	gpio->can_sleep = true;
 

-- 
2.48.1


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

end of thread, other threads:[~2025-06-10 12:36 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-10 12:35 [PATCH 0/7] media: use new GPIO line value setter callbacks Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 1/7] media: dvb-frontends/cxd2820r: " Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 2/7] media: solo6x10: remove unneeded GPIO direction setters Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 3/7] media: solo6x10: use new GPIO line value setter callbacks Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 4/7] media: i2c: ds90ub953: " Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 5/7] media: i2c: ds90ub913: " Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 6/7] media: i2c: max96717: " Bartosz Golaszewski
2025-06-10 12:35 ` [PATCH 7/7] media: i2c: max9286: " Bartosz Golaszewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).