firmware/br-ext-chip-allwinner/board/v83x/kernel/patches/00000-drivers_gpio_gpiolib....

22 lines
736 B
Diff

diff -drupN a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
--- a/drivers/gpio/gpiolib.c 2018-08-06 17:23:04.000000000 +0300
+++ b/drivers/gpio/gpiolib.c 2022-06-12 05:28:14.000000000 +0300
@@ -3280,9 +3280,16 @@ struct gpio_desc *fwnode_get_named_gpiod
if (is_of_node(fwnode)) {
enum of_gpio_flags flags;
-
+#ifndef CONFIG_ARCH_SUNXI
desc = of_get_named_gpiod_flags(to_of_node(fwnode), propname, 0,
&flags);
+#else
+ struct gpio_config gpio_flags;
+
+ desc = of_get_named_gpiod_flags(to_of_node(fwnode), propname, 0,
+ (enum of_gpio_flags *)&gpio_flags);
+ flags = gpio_flags.data;
+#endif
if (!IS_ERR(desc)) {
active_low = flags & OF_GPIO_ACTIVE_LOW;
single_ended = flags & OF_GPIO_SINGLE_ENDED;