FAILED: patch "[PATCH] gpio: fix getting nonexclusive gpiods from DT" failed to apply to 5.3-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 5.3-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From be7ae45cfea97e787234e00e1a9eb341acacd84e Mon Sep 17 00:00:00 2001
From: Marco Felsch <[email protected]>
Date: Tue, 1 Oct 2019 11:49:21 +0200
Subject: [PATCH] gpio: fix getting nonexclusive gpiods from DT
Since commit ec757001c818 ("gpio: Enable nonexclusive gpiods from DT nodes") we are able to get GPIOD_FLAGS_BIT_NONEXCLUSIVE marked gpios. Currently the gpiolib uses the wrong flags variable for the check. We need to check the gpiod_flags instead of the of_gpio_flags else we return -EBUSY for GPIOD_FLAGS_BIT_NONEXCLUSIVE marked and requested gpiod's.
drivers/gpio/gpiolib-of.c +1 -1
@@ -317,7 +317,7 @@ struct gpio_desc *gpiod_get_from_of_node(struct device_node *node, transitory = flags &OF_GPIO_TRANSITORY ; ret =gpiod_request (desc, label); -if (ret == -EBUSY && (flags &GPIOD_FLAGS_BIT_NONEXCLUSIVE )) +if (ret == -EBUSY && (dflags &GPIOD_FLAGS_BIT_NONEXCLUSIVE ))return desc;if (ret)return ERR_PTR (ret);
pon., 14 paź 2019 o 16:58 <[email protected]> napisał(a):
Quoted 37 lines
The patch below does not apply to the 5.3-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From
be7ae45cfea97e787234e00e1a9eb341acacd84eMon Sep 17 00:00:00 2001
From: Marco Felsch <[email protected]>
Date: Tue, 1 Oct 2019 11:49:21 +0200
Subject: [PATCH] gpio: fix getting nonexclusive gpiods from DTSince commit
ec757001c818("gpio: Enable nonexclusive gpiods from DT nodes") we are able to getGPIOD_FLAGS_BIT_NONEXCLUSIVEmarked gpios. Currently the gpiolib uses the wrong flags variable for the check. We need to check thegpiod_flagsinstead of theof_gpio_flagselse we return-EBUSYforGPIOD_FLAGS_BIT_NONEXCLUSIVEmarked and requested gpiod's.Fixes ec757001c818 gpio: Enable nonexclusive gpiods from DT nodesSigned-off-by Marco Felsch <[email protected]>[Bartosz: the function was moved to gpiolib-of.c so updated the patch]Signed-off-by Bartosz Golaszewski <[email protected]>drivers/gpio/gpiolib-of.c +0
-0
drivers/gpio/gpiolib-of.c struct gpio_desc *gpiod_get_from_of_node(struct device_node *node, · line 323
Quoted 8 lines
drivers/gpio/gpiolib-of.c +1
-1@@ -317,7 +317,7 @@ struct gpio_desc *gpiod_get_from_of_node(struct device_node *node, transitory = flags &OF_GPIO_TRANSITORY ; ret =gpiod_request (desc, label); -if (ret == -EBUSY && (flags &GPIOD_FLAGS_BIT_NONEXCLUSIVE )) +if (ret == -EBUSY && (dflags &GPIOD_FLAGS_BIT_NONEXCLUSIVE ))return desc;if (ret)return ERR_PTR (ret);
Hi Greg,
this and other GPIO patches can't be applied because the relevant code has been moved a lot during the merge window. I'll send backports shortly.
Bart