lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <52930F74.7060808@nvidia.com>
Date:	Mon, 25 Nov 2013 17:51:00 +0900
From:	Alex Courbot <acourbot@...dia.com>
To:	Mika Westerberg <mika.westerberg@...ux.intel.com>,
	Alexandre Courbot <gnurou@...il.com>
CC:	ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
	"Rafael J. Wysocki" <rjw@...ysocki.net>,
	Linus Walleij <linus.walleij@...aro.org>,
	Chris Ball <cjb@...top.org>,
	Johannes Berg <johannes@...solutions.net>,
	Rhyland Klein <rklein@...dia.com>,
	Adrian Hunter <adrian.hunter@...el.com>,
	Mathias Nyman <mathias.nyman@...ux.intel.com>,
	Rob Landley <rob@...dley.net>,
	Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
	Stephen Warren <swarren@...dotorg.org>,
	Thierry Reding <thierry.reding@...il.com>,
	"linux-gpio@...r.kernel.org" <linux-gpio@...r.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 6/7] gpio / ACPI: get rid of acpi_gpio.h

On 11/25/2013 05:54 PM, Mika Westerberg wrote:
> On Sat, Nov 23, 2013 at 06:21:03PM +0900, Alexandre Courbot wrote:
>> On Fri, Nov 22, 2013 at 9:14 PM, Mika Westerberg
>> <mika.westerberg@...ux.intel.com> wrote:
>>> Now that all users of acpi_gpio.h have been moved to user either the GPIO
>>
>> s/user/use
>
> OK.
>
>>
>>> descriptor interface or to the internal gpiolib.h we can get rid of
>>
>> gpiolib.h will also need to be renamed if you follow my suggestion below.
>>
>>> acpi_gpio.h entirely.
>>>
>>> Once this is done the only interface to get GPIOs to drivers enumerated
>>> from ACPI namespace is the descriptor based interface.
>>
>> Oh, do I like this. :)
>>
>>>
>>> Signed-off-by: Mika Westerberg <mika.westerberg@...ux.intel.com>
>>> ---
>>>   drivers/gpio/gpiolib-acpi.c |  4 +++-
>>>   drivers/gpio/gpiolib.c      |  1 -
>>>   drivers/gpio/gpiolib.h      | 23 +++++++++++++++++++++++
>>>   include/linux/acpi_gpio.h   | 45 ---------------------------------------------
>>>   4 files changed, 26 insertions(+), 47 deletions(-)
>>>   delete mode 100644 include/linux/acpi_gpio.h
>>>
>>> diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c
>>> index cb2da66fbbfe..6c158d9a6efa 100644
>>> --- a/drivers/gpio/gpiolib-acpi.c
>>> +++ b/drivers/gpio/gpiolib-acpi.c
>>> @@ -12,11 +12,13 @@
>>>
>>>   #include <linux/errno.h>
>>>   #include <linux/gpio/consumer.h>
>>> +#include <linux/gpio/driver.h>
>>>   #include <linux/export.h>
>>> -#include <linux/acpi_gpio.h>
>>>   #include <linux/acpi.h>
>>>   #include <linux/interrupt.h>
>>>
>>> +#include "gpiolib.h"
>>> +
>>>   struct acpi_gpio_evt_pin {
>>>          struct list_head node;
>>>          acpi_handle *evt_handle;
>>> diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
>>> index 70abccf0d144..a6b82413c290 100644
>>> --- a/drivers/gpio/gpiolib.c
>>> +++ b/drivers/gpio/gpiolib.c
>>> @@ -10,7 +10,6 @@
>>>   #include <linux/seq_file.h>
>>>   #include <linux/gpio.h>
>>>   #include <linux/of_gpio.h>
>>> -#include <linux/acpi_gpio.h>
>>>   #include <linux/idr.h>
>>>   #include <linux/slab.h>
>>>   #include <linux/acpi.h>
>>> diff --git a/drivers/gpio/gpiolib.h b/drivers/gpio/gpiolib.h
>>> index 2ed23ab8298c..82be586c1f90 100644
>>> --- a/drivers/gpio/gpiolib.h
>>> +++ b/drivers/gpio/gpiolib.h
>>> @@ -12,12 +12,35 @@
>>>   #ifndef GPIOLIB_H
>>>   #define GPIOLIB_H
>>>
>>> +#include <linux/err.h>
>>> +#include <linux/device.h>
>>> +
>>> +/**
>>> + * struct acpi_gpio_info - ACPI GPIO specific information
>>> + * @gpioint: if %true this GPIO is of type GpioInt otherwise type is GpioIo
>>> + * @active_low: in case of @gpioint, the pin is active low
>>> + */
>>> +struct acpi_gpio_info {
>>> +       bool gpioint;
>>> +       bool active_low;
>>> +};
>>> +
>>>   #ifdef CONFIG_ACPI
>>>   void acpi_gpiochip_add(struct gpio_chip *chip);
>>>   void acpi_gpiochip_remove(struct gpio_chip *chip);
>>> +
>>> +struct gpio_desc *acpi_get_gpiod_by_index(struct device *dev, int index,
>>> +                                         struct acpi_gpio_info *info);
>>>   #else
>>>   static inline void acpi_gpiochip_add(struct gpio_chip *chip) { }
>>>   static inline void acpi_gpiochip_remove(struct gpio_chip *chip) { }
>>> +
>>> +static inline struct gpio_desc *
>>> +acpi_get_gpiod_by_index(struct device *dev, int index,
>>> +                       struct acpi_gpio_info *info)
>>> +{
>>> +       return ERR_PTR(-ENOSYS);
>>> +}
>>>   #endif
>>
>> Since this header contains purely ACPI-related declarations so far, I wonder
>> if it should not be renamed acpi.h?
>
> Well, for now it contains only ACPI related stuff but once you guys start
> tearing DT interfaces away from drivers, this header is expected to grow :)
>
> So idea is to have gpiolib internal/private header where we can add stuff
> taht is not going to be exported to drivers.

I just wondered if these headers should not be split by GPIO providers, 
but if you prefer it that way I'm fine with it too. We can move stuff 
later if needed.

Acked-by: Alexandre Courbot <acourbot@...dia.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ