From: Bartosz Golaszewski Date: Mon, 26 Oct 2020 10:08:29 +0000 (+0100) Subject: Merge branch 'for-linux-v5.10-rc1' X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=aefe16f598ba98add1dda365843656c938e2b90d;p=qemu-gpiodev%2Flibgpiod.git Merge branch 'for-linux-v5.10-rc1' --- aefe16f598ba98add1dda365843656c938e2b90d diff --cc lib/core.c index 74d092b,1abe3a4..87dbbf6 --- a/lib/core.c +++ b/lib/core.c @@@ -398,9 -398,36 +398,31 @@@ bool gpiod_line_is_open_source(struct g return line->info_flags & GPIOLINE_FLAG_OPEN_SOURCE; } -bool gpiod_line_needs_update(struct gpiod_line *line GPIOD_UNUSED) -{ - return false; -} - + static int line_info_v2_to_info_flags(struct gpio_v2_line_info *info) + { + int iflags = 0; + + if (info->flags & GPIO_V2_LINE_FLAG_USED) + iflags |= GPIOLINE_FLAG_KERNEL; + + if (info->flags & GPIO_V2_LINE_FLAG_OPEN_DRAIN) + iflags |= GPIOLINE_FLAG_OPEN_DRAIN; + if (info->flags & GPIO_V2_LINE_FLAG_OPEN_SOURCE) + iflags |= GPIOLINE_FLAG_OPEN_SOURCE; + + if (info->flags & GPIO_V2_LINE_FLAG_BIAS_DISABLED) + iflags |= GPIOLINE_FLAG_BIAS_DISABLE; + if (info->flags & GPIO_V2_LINE_FLAG_BIAS_PULL_UP) + iflags |= GPIOLINE_FLAG_BIAS_PULL_UP; + if (info->flags & GPIO_V2_LINE_FLAG_BIAS_PULL_DOWN) + iflags |= GPIOLINE_FLAG_BIAS_PULL_DOWN; + + return iflags; + } + int gpiod_line_update(struct gpiod_line *line) { - struct gpioline_info info; + struct gpio_v2_line_info info; int rv; memset(&info, 0, sizeof(info));