0053-gpio-axp-Report-the-correct-value-for-outputs.patch 818 B

12345678910111213141516171819202122232425262728
  1. From 52c172782d659750b447572281cd11835d1edf58 Mon Sep 17 00:00:00 2001
  2. From: Samuel Holland <[email protected]>
  3. Date: Sun, 31 Jul 2022 18:19:39 -0500
  4. Subject: [PATCH 53/90] gpio: axp: Report the correct value for outputs
  5. Signed-off-by: Samuel Holland <[email protected]>
  6. ---
  7. drivers/gpio/axp_gpio.c | 9 +++++++++
  8. 1 file changed, 9 insertions(+)
  9. --- a/drivers/gpio/axp_gpio.c
  10. +++ b/drivers/gpio/axp_gpio.c
  11. @@ -33,6 +33,15 @@ static int axp_gpio_get_value(struct ude
  12. const struct axp_gpio_desc *desc = dev_get_priv(dev);
  13. int ret;
  14. + ret = pmic_reg_read(dev->parent, desc->pins[pin]);
  15. + if (ret < 0)
  16. + return ret;
  17. +
  18. + if (ret == AXP_GPIO_CTRL_OUTPUT_LOW)
  19. + return 0;
  20. + if (ret == AXP_GPIO_CTRL_OUTPUT_HIGH)
  21. + return 1;
  22. +
  23. ret = pmic_reg_read(dev->parent, desc->status_reg);
  24. if (ret < 0)
  25. return ret;