Re: [PATCH v2 11/18] gpio: uapi: document uAPI v1 as deprecated

2020-08-04 Thread Bartosz Golaszewski
On Sat, Jul 25, 2020 at 6:22 AM Kent Gibson  wrote:
>
> Update uAPI documentation to deprecate v1 structs and ioctls.
>
> Signed-off-by: Kent Gibson 
> ---
>  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
>


[PATCH v2 11/18] gpio: uapi: document uAPI v1 as deprecated

2020-07-24 Thread Kent Gibson
Update uAPI documentation to deprecate v1 structs and ioctls.

Signed-off-by: Kent Gibson 
---
 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.
  */
 
 /* 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.
+ * 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.
+ * 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