[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMpxmJX1z2=E4zao_pRR_Qkp8LFLixTk5V1uHH4q3=EA6rChug@mail.gmail.com>
Date: Tue, 4 Aug 2020 21:43:23 +0200
From: Bartosz Golaszewski <bgolaszewski@...libre.com>
To: Kent Gibson <warthog618@...il.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
linux-gpio <linux-gpio@...r.kernel.org>,
Linus Walleij <linus.walleij@...aro.org>
Subject: Re: [PATCH v2 11/18] gpio: uapi: document uAPI v1 as deprecated
On Sat, Jul 25, 2020 at 6:22 AM Kent Gibson <warthog618@...il.com> wrote:
>
> Update uAPI documentation to deprecate v1 structs and ioctls.
>
> Signed-off-by: Kent Gibson <warthog618@...il.com>
> ---
> include/uapi/linux/gpio.h | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/include/uapi/linux/gpio.h b/include/uapi/linux/gpio.h
> index 3f6db33014f0..92a74c245534 100644
> --- a/include/uapi/linux/gpio.h
> +++ b/include/uapi/linux/gpio.h
> @@ -278,6 +278,9 @@ struct gpioline_event {
>
> /*
> * ABI v1
> + *
> + * This version of the ABI is deprecated and will be removed in the future.
> + * Use the latest version if the ABI, defined above, instead.
typo: of the ABI
> */
>
> /* Informational flags */
> @@ -301,6 +304,9 @@ struct gpioline_event {
> * @consumer: a functional name for the consumer of this GPIO line as set by
> * whatever is using it, will be empty if there is no current user but may
> * also be empty if the consumer doesn't set this up
> + *
> + * This struct part of ABI v1 and is deprecated.
"This struct is part of ABI (...)"
> + * Use struct gpioline_info_v2 instead.
> */
> struct gpioline_info {
> __u32 line_offset;
> @@ -325,6 +331,9 @@ struct gpioline_info {
> * guarantee there are no implicit holes between it and subsequent members.
> * The 20-byte padding at the end makes sure we don't add any implicit padding
> * at the end of the structure on 64-bit architectures.
> + *
> + * This struct part of ABI v1 and is deprecated.
Same as above and same below.
Bart
> + * Use struct gpioline_info_changed_v2 instead.
> */
> struct gpioline_info_changed {
> struct gpioline_info info;
> @@ -364,6 +373,9 @@ struct gpioline_info_changed {
> * @fd: if successful this field will contain a valid anonymous file handle
> * after a GPIO_GET_LINEHANDLE_IOCTL operation, zero or negative value
> * means error
> + *
> + * This struct part of ABI v1 and is deprecated.
> + * Use struct gpioline_request instead.
> */
> struct gpiohandle_request {
> __u32 lineoffsets[GPIOHANDLES_MAX];
> @@ -383,6 +395,9 @@ struct gpiohandle_request {
> * this specifies the default output value, should be 0 (low) or
> * 1 (high), anything else than 0 or 1 will be interpreted as 1 (high)
> * @padding: reserved for future use and should be zero filled
> + *
> + * This struct part of ABI v1 and is deprecated.
> + * Use struct gpioline_config instead.
> */
> struct gpiohandle_config {
> __u32 flags;
> @@ -395,6 +410,9 @@ struct gpiohandle_config {
> * @values: when getting the state of lines this contains the current
> * state of a line, when setting the state of lines these should contain
> * the desired target state
> + *
> + * This struct part of ABI v1 and is deprecated.
> + * Use struct gpioline_values instead.
> */
> struct gpiohandle_data {
> __u8 values[GPIOHANDLES_MAX];
> @@ -418,6 +436,9 @@ struct gpiohandle_data {
> * @fd: if successful this field will contain a valid anonymous file handle
> * after a GPIO_GET_LINEEVENT_IOCTL operation, zero or negative value
> * means error
> + *
> + * This struct part of ABI v1 and is deprecated.
> + * Use struct gpioline_request instead.
> */
> struct gpioevent_request {
> __u32 lineoffset;
> @@ -437,6 +458,9 @@ struct gpioevent_request {
> * struct gpioevent_data - The actual event being pushed to userspace
> * @timestamp: best estimate of time of event occurrence, in nanoseconds
> * @id: event identifier
> + *
> + * This struct part of ABI v1 and is deprecated.
> + * Use struct gpioline_event instead.
> */
> struct gpioevent_data {
> __u64 timestamp;
> @@ -461,6 +485,8 @@ struct gpioevent_data {
>
> /*
> * v1 ioctl()s
> + *
> + * These ioctl()s are deprecated. Use the v2 equivalent instead.
> */
> #define GPIO_GET_LINEINFO_IOCTL _IOWR(0xB4, 0x02, struct gpioline_info)
> #define GPIO_GET_LINEHANDLE_IOCTL _IOWR(0xB4, 0x03, struct gpiohandle_request)
> --
> 2.27.0
>
Powered by blists - more mailing lists