devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
To: "Rafael J. Wysocki" <rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org>
Cc: Linus Walleij
	<linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Mika Westerberg
	<mika.westerberg-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	Grant Likely
	<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Darren Hart <dvhart-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	ACPI Devel Maling List
	<linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Greg Kroah-Hartman
	<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
	Alexandre Courbot
	<gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Dmitry Torokhov
	<dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Bryan Wu <cooloney-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Aaron Lu <aaron.lu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Subject: Re: [RFC PATCH v2 07/16] gpio: Add support for unified device properties interface
Date: Wed, 24 Sep 2014 09:55:12 +0200	[thread overview]
Message-ID: <4515093.TGIQh7cBOD@wuerfel> (raw)
In-Reply-To: <1579761.oeYleOAY1N-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>

On Tuesday 23 September 2014 22:47:36 Rafael J. Wysocki wrote:
> Quite frankly, I'm not sure what you're asking for.
> 
> It seems to mean "I kind of don't like the current implementation", but
> then the last part is quite unclear to me.  Are you suggesting to add more
> "if (IS_ENABLED(CONFIG_OF) && pdev->dev.of_node) etc" type of checks to
> device drivers?  That I'd like to avoid to be honest.

No, that is not what I want. Device drivers should ideally call interfaces
that just take a 'struct device' or 'struct platform_device' pointer,
and those should be implemented in an appropriate way.

> Instead of the current proposal we can introduce something like
> 
> int device_get_child_property(struct device *dev, void *child_node,
>                               const char *propname, void **valptr);
> 
> (and analogously for device_read_property*) and use that in the drivers that
> need to iterate over child nodes of a device.  Quite along the lines of what
> Dmitry is suggesting.
> 
> Then, fn() in acpi_for_each_child_node() (and the of_ counterpart of it)
> would become
> 
> int (*fn)(struct device *dev, void *child_node, void *data)
> 
> and so on.
> 
> Would you prefer that?

I must still be missing part of what you are trying to achieve above.
We definitely need an interface to get properties from the device itself,
like

int device_get_property(struct device *dev, const char *propname, void **valptr);

(whatever valptr ends up being, that would be a separate discussion).

As soon as it comes to devices that have child nodes, I don't see a
necessity to have a generic abstraction for them, as this is typically
only done for some of the more obscure bindings, or for child nodes that
are defined in a subsystem-wide binding rather than a device private
binding.

For the former case, I think they are indeed better left in drivers that
actively know the difference between DT and ACPI, and that don't necessarily
use the same binding for both. In the latter case, I'd leave the
implementation up to subsystem code, which again would know what
interface it is using.

	Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2014-09-24  7:55 UTC|newest]

Thread overview: 130+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-16 11:52 [RFC PATCH v2 00/16] Add ACPI _DSD and unified device properties support Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 01/16] ACPI: Add support for device specific properties Mika Westerberg
2014-10-06 13:50   ` Grant Likely
     [not found]     ` <20141006135021.0EB04C43FBE-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-10-06 14:32       ` Mika Westerberg
2014-10-06 16:25         ` Darren Hart
2014-09-16 11:52 ` [RFC PATCH v2 02/16] Driver core: Unified device properties interface for platform firmware Mika Westerberg
2014-09-17 18:28   ` Greg Kroah-Hartman
2014-09-16 11:52 ` [RFC PATCH v2 03/16] ACPI: Allow drivers to match using Device Tree compatible property Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 04/16] ACPI: Document ACPI device specific properties Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 05/16] mfd: Add ACPI support Mika Westerberg
2014-09-16 21:54   ` Lee Jones
2014-09-24 12:00   ` Lee Jones
2014-09-16 11:52 ` [RFC PATCH v2 06/16] gpio / ACPI: Add support for _DSD device properties Mika Westerberg
2014-09-23 15:27   ` Linus Walleij
2014-09-16 11:52 ` [RFC PATCH v2 07/16] gpio: Add support for unified device properties interface Mika Westerberg
     [not found]   ` <1410868367-11056-8-git-send-email-mika.westerberg-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2014-09-23 15:25     ` Linus Walleij
2014-09-23 15:45       ` Arnd Bergmann
2014-09-23 15:52         ` Mika Westerberg
2014-09-23 16:17           ` Dmitry Torokhov
     [not found]             ` <20140923161724.GA40700-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2014-09-23 20:31               ` Rafael J. Wysocki
2014-09-23 16:25         ` Rafael J. Wysocki
     [not found]           ` <2895905.coa5UvrkJk-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-09-23 16:26             ` Arnd Bergmann
2014-09-23 20:47               ` Rafael J. Wysocki
     [not found]                 ` <1579761.oeYleOAY1N-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-09-24  7:55                   ` Arnd Bergmann [this message]
2014-09-24 14:08                     ` Rafael J. Wysocki
2014-09-23 21:15               ` Darren Hart
2014-09-24  9:12                 ` Arnd Bergmann
2014-09-24  9:38                   ` Mika Westerberg
2014-09-24 14:11                     ` Rafael J. Wysocki
2014-09-26  3:21                   ` Darren Hart
2014-09-26  8:36                     ` Arnd Bergmann
2014-09-26 14:42                       ` Rafael J. Wysocki
2014-10-07 13:37                     ` Linus Walleij
2014-10-07 15:37                       ` Andy Shevchenko
2014-10-07 23:57                       ` Rafael J. Wysocki
2014-09-16 11:52 ` [RFC PATCH v2 08/16] gpio: sch: Consolidate core and resume banks Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 09/16] leds: leds-gpio: Add support for GPIO descriptors Mika Westerberg
2014-09-19  8:18   ` Alexandre Courbot
2014-09-24  7:55   ` Linus Walleij
2014-09-24  9:42     ` Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 10/16] leds: leds-gpio: Make use of device property API Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 11/16] leds: leds-gpio: Add ACPI probing support Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 12/16] input: gpio_keys_polled - Add support for GPIO descriptors Mika Westerberg
2014-09-19  8:22   ` Alexandre Courbot
2014-09-24  8:02   ` Linus Walleij
2014-09-16 11:52 ` [RFC PATCH v2 13/16] input: gpio_keys_polled - Make use of device property API Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 14/16] input: gpio_keys_polled - Add ACPI probing support Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 15/16] misc: at25: Make use of device property API Mika Westerberg
2014-09-16 11:52 ` [RFC PATCH v2 16/16] misc: at25: Add ACPI probing support Mika Westerberg
2014-09-21  0:26 ` [RFC PATCH v2 00/16] Add ACPI _DSD and unified device properties support Rafael J. Wysocki
2014-09-24  8:34   ` Lee Jones
2014-09-24  9:45     ` Mika Westerberg
2014-09-22 23:29 ` Bryan Wu
2014-10-01  2:08 ` [PATCH v3 00/15] " Rafael J. Wysocki
2014-10-01  2:08   ` [PATCH v3 01/15] ACPI: Add support for device specific properties Rafael J. Wysocki
2014-10-01  7:38     ` Arnd Bergmann
2014-10-01  2:10   ` [PATCH v3 02/15] Driver core: Unified device properties interface for platform firmware Rafael J. Wysocki
2014-10-01  7:47     ` Arnd Bergmann
2014-10-01 22:09       ` Rafael J. Wysocki
2014-10-01 23:01         ` Rafael J. Wysocki
2014-10-02  7:46         ` Arnd Bergmann
2014-10-02 16:50           ` Rafael J. Wysocki
2014-10-02  0:03     ` Greg Kroah-Hartman
2014-10-01  2:10   ` [PATCH v3 03/15] ACPI: Allow drivers to match using Device Tree compatible property Rafael J. Wysocki
2014-10-01  7:48     ` Arnd Bergmann
2014-10-03 13:43     ` Mark Rutland
2014-10-03 17:59       ` Dmitry Torokhov
2014-10-04  0:02         ` Rafael J. Wysocki
2014-10-01  2:11   ` [PATCH v3 04/15] ACPI: Document ACPI device specific properties Rafael J. Wysocki
2014-10-01  7:59     ` Arnd Bergmann
2014-10-02 10:41       ` Mika Westerberg
2014-10-02 11:51         ` Arnd Bergmann
2014-10-02 12:15           ` Mika Westerberg
2014-10-02 12:46             ` Arnd Bergmann
2014-10-02 13:36               ` Mika Westerberg
2014-10-02 14:29                 ` Arnd Bergmann
2014-10-02 14:38                   ` Mika Westerberg
2014-10-02 14:55                     ` Arnd Bergmann
2014-10-03 13:56                       ` Mark Rutland
2014-10-03 15:02                         ` Arnd Bergmann
2014-10-03 23:58                           ` Rafael J. Wysocki
2014-10-04 10:56                             ` Arnd Bergmann
2014-10-05 21:40                               ` Rafael J. Wysocki
2014-10-03  2:03                 ` Rafael J. Wysocki
2014-10-03  8:12                   ` Mika Westerberg
2014-10-03 13:58                   ` Mark Rutland
2014-10-03 14:38                     ` Rafael J. Wysocki
2014-10-03 14:35                       ` Mark Rutland
2014-10-04  0:13                         ` Rafael J. Wysocki
     [not found]                           ` <6568619.UkU5qISONv-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-10-04 10:59                             ` Arnd Bergmann
2014-10-05 22:26                               ` Rafael J. Wysocki
2014-10-03 13:48             ` Mark Rutland
2014-10-04  0:16               ` Rafael J. Wysocki
2014-10-01  2:12   ` [PATCH v3 05/15] gpio / ACPI: Add support for _DSD device properties Rafael J. Wysocki
     [not found]     ` <4786851.38d7sjpzag-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-10-01  8:03       ` Arnd Bergmann
2014-10-05 10:36         ` Alexandre Courbot
2014-10-05 21:20           ` Rafael J. Wysocki
2014-10-01  2:15   ` [PATCH v3 07/15] gpio: sch: Consolidate core and resume banks Rafael J. Wysocki
2014-10-01  2:15   ` [PATCH v3 08/15] leds: leds-gpio: Add support for GPIO descriptors Rafael J. Wysocki
     [not found]     ` <1490183.QvrzPxsV7q-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-10-01  8:05       ` Arnd Bergmann
2014-10-01  2:16   ` [PATCH v3 09/15] leds: leds-gpio: Make use of device property API Rafael J. Wysocki
2014-10-03 14:07     ` Mark Rutland
2014-10-04  0:18       ` Rafael J. Wysocki
2014-10-01  2:17   ` [PATCH v3 10/15] leds: leds-gpio: Add ACPI probing support Rafael J. Wysocki
2014-10-01  8:13     ` Arnd Bergmann
2014-10-01  9:13       ` Mika Westerberg
2014-10-01 10:01         ` Arnd Bergmann
2014-10-01 11:59           ` Mika Westerberg
2014-10-01 13:52             ` Arnd Bergmann
2014-10-01 14:04               ` Mika Westerberg
     [not found]                 ` <20141001140441.GF1786-3PARRvDOhMZrdx17CPfAsdBPR1lH4CV8@public.gmane.org>
2014-10-01 14:14                   ` Arnd Bergmann
2014-10-02  9:55                     ` Mika Westerberg
2014-10-02 10:44                       ` Arnd Bergmann
2014-10-01 16:30       ` Dmitry Torokhov
2014-10-01 18:11         ` Darren Hart
2014-10-01 18:21           ` Dmitry Torokhov
2014-10-01 18:22           ` Arnd Bergmann
2014-10-01  2:17   ` [PATCH v3 11/15] input: gpio_keys_polled - Add support for GPIO descriptors Rafael J. Wysocki
2014-10-01  8:13     ` Arnd Bergmann
2014-10-01  2:20   ` [PATCH v3 12/15] input: gpio_keys_polled - Make use of device property API Rafael J. Wysocki
2014-10-01  2:20   ` [PATCH v3 13/15] input: gpio_keys_polled - Add ACPI probing support Rafael J. Wysocki
2014-10-01  7:48     ` Dmitry Torokhov
2014-10-01  9:15       ` Mika Westerberg
2014-10-01 16:28         ` Dmitry Torokhov
2014-10-02  9:53           ` Mika Westerberg
2014-10-01  2:21   ` [PATCH v3 14/15] misc: at25: Make use of device property API Rafael J. Wysocki
     [not found]     ` <2074642.sV7QBxD3Ne-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-10-01  8:14       ` Arnd Bergmann
     [not found]   ` <1852462.V1jlbi8OPt-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2014-10-01  2:14     ` [PATCH v3 06/15] gpio: Support for unified device properties interface Rafael J. Wysocki
2014-10-01  2:22     ` [PATCH v3 15/15] misc: at25: Add ACPI probing support Rafael J. Wysocki
2014-10-01  8:15       ` Arnd Bergmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4515093.TGIQh7cBOD@wuerfel \
    --to=arnd-r2ngtmty4d4@public.gmane.org \
    --cc=aaron.lu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=cooloney-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=dvhart-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
    --cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=mika.westerberg-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).