Skip to content

Commit 45e2360

Browse files
committed
gpiolib: use gpiochip_get_desc() in lineevent_create()
Unduplicate the ngpio check by simply calling gpiochip_get_desc() and checking its return value. Signed-off-by: Bartosz Golaszewski <[email protected]> Reviewed-by: Andy Shevchenko <[email protected]> Reviewed-by: Linus Walleij <[email protected]>
1 parent 0f41dab commit 45e2360

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

drivers/gpio/gpiolib.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1009,8 +1009,9 @@ static int lineevent_create(struct gpio_device *gdev, void __user *ip)
10091009
lflags = eventreq.handleflags;
10101010
eflags = eventreq.eventflags;
10111011

1012-
if (offset >= gdev->ngpio)
1013-
return -EINVAL;
1012+
desc = gpiochip_get_desc(gdev->chip, offset);
1013+
if (IS_ERR(desc))
1014+
return PTR_ERR(desc);
10141015

10151016
/* Return an error if a unknown flag is set */
10161017
if ((lflags & ~GPIOHANDLE_REQUEST_VALID_FLAGS) ||
@@ -1048,7 +1049,6 @@ static int lineevent_create(struct gpio_device *gdev, void __user *ip)
10481049
}
10491050
}
10501051

1051-
desc = &gdev->descs[offset];
10521052
ret = gpiod_request(desc, le->label);
10531053
if (ret)
10541054
goto out_free_label;

0 commit comments

Comments
 (0)