public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Andy Shevchenko <andy.shevchenko@gmail.com>
To: u-boot@lists.denx.de
Subject: Antwort: Re: Re: Re: [PATCH v3 13/29] dts: Add a binding for hid-over-i2c
Date: Wed, 15 Apr 2020 18:17:31 +0300	[thread overview]
Message-ID: <20200415151731.GQ185537@smile.fi.intel.com> (raw)
In-Reply-To: <20200415151539.GP185537@smile.fi.intel.com>

On Wed, Apr 15, 2020 at 06:15:39PM +0300, Andy Shevchenko wrote:
> On Wed, Apr 15, 2020 at 04:57:33PM +0200, Wolfgang Wallner wrote:
> > > On Wed, Apr 15, 2020 at 5:00 PM Wolfgang Wallner
> > > <wolfgang.wallner@br-automation.com> wrote:
> > > > -----"Andy Shevchenko" <andy.shevchenko@gmail.com> schrieb: -----
> > > > > Betreff: Re: Re: [PATCH v3 13/29] dts: Add a binding for hid-over-i2c
> > > > >
> > > > > On Wed, Apr 8, 2020 at 11:40 PM Andy Shevchenko
> > > > > <andy.shevchenko@gmail.com> wrote:
> > > > > > On Wed, Apr 8, 2020 at 10:39 PM Wolfgang Wallner
> > > > > > <wolfgang.wallner@br-automation.com> wrote:
> > > > > > > > On Tue, Apr 07, 2020 at 08:58:13PM -0600, Simon Glass wrote:
> > > > > > > > > On Tue, 31 Mar 2020 at 13:25, Wolfgang Wallner
> > > > > > > > > <wolfgang.wallner@br-automation.com> wrote:
> > > > > > > > > > >An: u-boot at lists.denx.de
> > > > > > > > > > >Von: "Simon Glass" <sjg@chromium.org>
> > > > > > > > > > >Datum: 31.03.2020 01:14
> > > > > > > > > > >Kopie: "Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
> > > > > > > > > > >"Wolfgang Wallner" <wolfgang.wallner@br-automation.com>, "Leif
> > > > > > > > > > >Lindholm" <leif@nuviainc.com>, "Simon Glass" <sjg@chromium.org>
> > > > > > > > > > >Betreff: [PATCH v3 14/29] acpi: Add a binding for ACPI settings in
> > > > > > > > > > >the device tree
> > > > > > > >
> > > > > > > > > > The _DSD-method for "PRP0001"-devices in ACPI allows to use Devicetree
> > > > > > > > > > properties inside ACPI, especially it allows to re-use Devicetree's
> > > > > > > > > > "compatible"-property. But this is for a different use case (using Devicetree
> > > > > > > > > > properties inside ACPI, not add ACPI properties in Devicetree).
> > > > > > > >
> > > > > > > > Before we are going further with this here is a BIG CAVEAT.
> > > > > > > >
> > > > > > > > PRP0001   MUST NOT be used in production devices.
> > > > > > > >
> > > > > > > > This has been derived solely for debugging / pre-production testing / etc
> > > > > > > > purposes. The real devices must have an official ACPI _HID.
> > > > > > >
> > > > > > > Thanks for pointing this out! I was not aware of this.
> > > > > > > I have tried to understand how the PRP0001 is meant to be used, but could not
> > > > > > > find sufficient documentation. The best document I could find is
> > > > > > > Documentation/firmware-guide/acpi/enumeration.rst in the Linux kernel, and
> > > > > > > as far as I can tell the constraint that you mention is also not described
> > > > > > > there.
> > > > > > >
> > > > > > > Do you know any other resources regarding PRP0001, e.g. some kind of
> > > > > > > speficiation?
> > > > > >
> > > > > > I guess the best one is to ask somebody from UEFI Forum / ASWG. PRP is
> > > > > > a PNP ID for UEFI Forum.
> > > > >
> > > > > Basically last message in [3] from Rafael mentions his view on
> > > > > PRP0001. I guess there is still no document, although as I noticed the
> > > > > PRP prefix become official in a mean time.
> > > >
> > > > Thanks for the references. I have read them carefully, especially the thread
> > > > in [3].
> > > >
> > > > My understanding up to now was based on presentations by David Woodhouse,
> > > > so it matches with his viewpoint in the thread at [3]. And as far as I can
> > > > tell Rafael Wysocki agrees with him in this thread.
> > > >
> > > > What I could not find in either of the references is that PRP0001 is only
> > > > for debugging, I only know about this constraint from your mail. Could you
> > > > point me to any source for this?
> > > 
> > > From [3], Rafael said:
> > > "Let alone the fact that PRP0001 is actually quite useful at the
> > > prototyping stage when it is premature to allocate a new device ID just
> > > yet.  Taking that to the extreme, if someone whittles a board in his or
> > > her garage and wants to use it to drive their homemade grass watering
> > > system, having to invent a new device ID and put it into the existing
> > > driver that otherwise doesn't require any modifications is ... you know
> > > what I mean."
> > > 
> > > It implies that the process should have included the allocation of an
> > > official ACPI ID.
> > 
> > I understand the quoted paragraph differently. In the paragraphs above Rafael
> > argues that PRP0001 is useful, as with PRP0001 we can avoid registering
> > redundant ACPI IDs. In the quoted paragraph he then gives another example
> > where PRP0001 is also useful: for debugging.
> > But I don't understand it in a way that PRP0001 would be limited to only
> > debugging.
> > 
> > A few posts before in [4] he explains in more detail, and I think it matches
> > my understanding of the last post, especially the following sentence:
> > 
> > "It would be a failure if people had to write separate drivers for 
> > ACPI-based and DT-based platforms to handle the same hardware, at least 
> > at the leaf driver level."
> > 
> 
> Maybe better to ask him directly?

I guess here is a root of misunderstanding, i.e. PRP0001 as _HID() vs. Device
Properties as _DSD() method.

I think you quoted the thoughts WRT latter, and not related to the _HID() part!

> > [4] https://patchwork.kernel.org/comment/15339311/
> > 
> > > You always can ask ASWG for the clarification. Maybe I learn something
> > > new about PRP0001 :-)
> > 
> > I had no interaction with ASWG before so I'm not sure what the process is,
> > but I will look it up.
> > 
> > > > > > > If PRP0001 is only for debugging, then I must also have misunderstood the
> > > > > > > Linux "device-property" API (define in include/linux/property.h).
> > > > > >
> > > > > > Not exactly.
> > > > > >
> > > > > > > There are some presentations available on the internet, e.g. [1], that I
> > > > > > > understand like PRP0001 + "device-property" API provide a way do access data
> > > > > > > from either Devicetree or ACPI, depending on what kind of platform you are on.
> > > > > >
> > > > > > No, these are not hard linked to each other (the relation is that
> > > > > > PRP0001 is a way to enumerate devices, which don't have dedicated ACPI
> > > > > > _HID, by using compatible property [1]). The _DSD per se (i.o.w.
> > > > > > device properties implementation in ACPI) is a different story [2].
> > > > > >
> > > > > > And I put [3] here, interesting to read. However, at that time I was
> > > > > > quite far from this topic.
> > > > > >
> > > > > > [1]: https://www.kernel.org/doc/html/latest/firmware-guide/acpi/enumeration.html#device-tree-namespace-link-device-id
> > > > > > [2]: https://uefi.org/sites/default/files/resources/_DSD-implementation-guide-toplevel-1_2-3.htm.
> > > > > > [3]: https://patchwork.kernel.org/patch/7004241/
> > > > > >
> > > > > > > [1] https://elinux.org/images/2/2d/Device_tree_acpi_compatibility-david_woodhouse-kernel_recipes_2015.pdf
> > 
> > regards, Wolfgang
> 
> -- 
> With Best Regards,
> Andy Shevchenko
> 
> 

-- 
With Best Regards,
Andy Shevchenko

  reply	other threads:[~2020-04-15 15:17 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-30 23:12 [PATCH v3 00/29] dm: Add programmatic generation of ACPI tables (part A) Simon Glass
2020-03-30 23:12 ` [PATCH v3 01/29] cpu: Support querying the address width Simon Glass
2020-03-30 23:12 ` [PATCH v3 02/29] spi: Add SPI mode enums Simon Glass
2020-03-30 23:12 ` [PATCH v3 03/29] tpm: cr50: Release locality on exit Simon Glass
2020-03-30 23:12 ` [PATCH v3 04/29] tpm: cr50: Add a comment for cr50_priv Simon Glass
2020-03-30 23:12 ` [PATCH v3 05/29] tpm: cr50: Use the correct GPIO binding Simon Glass
2020-03-30 23:12 ` [PATCH v3 06/29] tpm: Don't cleanup unless an error happens Simon Glass
2020-03-30 23:12 ` [PATCH v3 07/29] dm: pci: Allow disabling auto-config for a device Simon Glass
2020-03-30 23:12 ` [PATCH v3 08/29] x86: Correct wording of coreboot source code Simon Glass
2020-03-30 23:12 ` [PATCH v3 09/29] x86: apl: Move p2sb ofdata reading to the correct method Simon Glass
2020-03-30 23:12 ` [PATCH v3 10/29] pci: Adjust dm_pci_read_bar32() to return errors correctly Simon Glass
2020-04-03 11:22   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 16:58       ` Andy Shevchenko
2020-04-08 22:15         ` Simon Glass
2020-03-30 23:12 ` [PATCH v3 11/29] x86: apl: Add Global NVS table header Simon Glass
2020-03-31  8:07   ` Antwort: " Wolfgang Wallner
2020-04-03 11:25     ` Andy Shevchenko
2020-03-30 23:12 ` [PATCH v3 12/29] dm: core: Add basic ACPI support Simon Glass
2020-03-31  8:16   ` Antwort: " Wolfgang Wallner
2020-04-03 11:35   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 17:01       ` Andy Shevchenko
2020-04-08 22:15         ` Simon Glass
2020-03-30 23:12 ` [PATCH v3 13/29] dts: Add a binding for hid-over-i2c Simon Glass
2020-03-31 19:25   ` Antwort: " Wolfgang Wallner
2020-04-01  7:39     ` Wolfgang Wallner
2020-04-08  2:57       ` Simon Glass
2020-04-08  2:58     ` Simon Glass
2020-04-08 17:08       ` Andy Shevchenko
2020-04-08 19:39         ` Antwort: " Wolfgang Wallner
2020-04-08 20:40           ` Andy Shevchenko
2020-04-08 20:49             ` Andy Shevchenko
2020-04-15 14:00               ` Antwort: Re: " Wolfgang Wallner
2020-04-15 14:25                 ` Andy Shevchenko
2020-04-15 14:57                   ` Antwort: Re: Re: " Wolfgang Wallner
2020-04-15 15:15                     ` Andy Shevchenko
2020-04-15 15:17                       ` Andy Shevchenko [this message]
2020-03-30 23:12 ` [PATCH v3 14/29] acpi: Add a binding for ACPI settings in the device tree Simon Glass
2020-04-03 12:42   ` Andy Shevchenko
2020-03-30 23:12 ` [PATCH v3 15/29] acpi: Add a simple sandbox test Simon Glass
2020-04-03 12:51   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 16:57       ` Andy Shevchenko
2020-03-30 23:12 ` [PATCH v3 16/29] x86: Move acpi_s3.h to include/acpi/ Simon Glass
2020-04-03 12:53   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 17:03       ` Andy Shevchenko
2020-03-30 23:12 ` [PATCH v3 17/29] x86: Move acpi_table header to main include/ directory Simon Glass
2020-04-03 12:58   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 17:04       ` Andy Shevchenko
2020-04-08 22:15         ` Simon Glass
2020-03-30 23:12 ` [PATCH v3 18/29] acpi: Add an __ACPI__ preprocessor symbol Simon Glass
2020-03-30 23:12 ` [PATCH v3 19/29] acpi: Add a central location for table version numbers Simon Glass
2020-03-31 19:30   ` Antwort: " Wolfgang Wallner
2020-04-08  2:58     ` Simon Glass
2020-04-03 13:04   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-03-30 23:12 ` [PATCH v3 20/29] acpi: Add support for DMAR Simon Glass
2020-03-31 19:34   ` Antwort: " Wolfgang Wallner
2020-04-03 13:15   ` Andy Shevchenko
2020-03-30 23:12 ` [PATCH v3 21/29] test: Add hexdump.h to the unit test header Simon Glass
2020-04-06 11:53   ` Antwort: " Wolfgang Wallner
2020-03-30 23:12 ` [PATCH v3 22/29] acpi: Add a method to write tables for a device Simon Glass
2020-04-03 13:20   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-03-30 23:12 ` [PATCH v3 23/29] acpi: Convert part of acpi_table to use acpi_ctx Simon Glass
2020-04-03 13:24   ` Andy Shevchenko
2020-04-03 13:25     ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-03-30 23:13 ` [PATCH v3 24/29] x86: Allow devices to write ACPI tables Simon Glass
2020-03-30 23:13 ` [PATCH v3 25/29] acpi: Drop code for missing XSDT from acpi_write_rsdp() Simon Glass
2020-03-30 23:13 ` [PATCH v3 26/29] acpi: Move acpi_add_table() to generic code Simon Glass
2020-03-30 23:13 ` [PATCH v3 27/29] acpi: Put table-setup code in its own function Simon Glass
2020-04-03 13:32   ` Andy Shevchenko
2020-04-08  2:57     ` Simon Glass
2020-04-08 17:11       ` Andy Shevchenko
2020-04-08 19:35         ` Simon Glass
2020-03-30 23:13 ` [PATCH v3 28/29] acpi: Move the xsdt pointer to acpi_ctx Simon Glass
2020-03-30 23:13 ` [PATCH v3 29/29] acpi: Add an acpi command Simon Glass
2020-03-31 18:14   ` Leif Lindholm
2020-04-03 13:41     ` Andy Shevchenko
2020-04-03 13:39   ` Andy Shevchenko
2020-03-31  6:31 ` [PATCH v3 00/29] dm: Add programmatic generation of ACPI tables (part A) Heinrich Schuchardt
2020-04-02  2:34   ` Simon Glass

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=20200415151731.GQ185537@smile.fi.intel.com \
    --to=andy.shevchenko@gmail.com \
    --cc=u-boot@lists.denx.de \
    /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