Netdev List
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Andrew Lunn <andrew@lunn.ch>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Marcin Wojtas <mw@semihalf.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
	netdev <netdev@vger.kernel.org>, Len Brown <lenb@kernel.org>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Vladimir Oltean <olteanv@gmail.com>,
	David Miller <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Russell King - ARM Linux <linux@armlinux.org.uk>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Grzegorz Bernacki <gjb@semihalf.com>,
	Grzegorz Jaszczyk <jaz@semihalf.com>,
	Tomasz Nowicki <tn@semihalf.com>,
	Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>,
	upstream@semihalf.com
Subject: Re: [net-next: PATCH 09/12] Documentation: ACPI: DSD: introduce DSA description
Date: Tue, 21 Jun 2022 19:11:40 +0100	[thread overview]
Message-ID: <20220621181140.6vvujfyhr4tumd2u@bogus> (raw)
In-Reply-To: <CAJZ5v0gvs20PgdX1cR0PzMnQcv-bg8yQ4v8qQZRvKn1z-7=y8Q@mail.gmail.com>

On Tue, Jun 21, 2022 at 06:00:42PM +0200, Rafael J. Wysocki wrote:
> On Tue, Jun 21, 2022 at 5:37 PM Sudeep Holla <sudeep.holla@arm.com> wrote:
> >
> > On Tue, Jun 21, 2022 at 05:23:30PM +0200, Rafael J. Wysocki wrote:
> > > On Tue, Jun 21, 2022 at 3:28 PM Sudeep Holla <sudeep.holla@arm.com> wrote:
> > > >
> > > > On Tue, Jun 21, 2022 at 01:24:51PM +0200, Andrew Lunn wrote:
> > > > > On Tue, Jun 21, 2022 at 02:15:41PM +0300, Andy Shevchenko wrote:
> > > > > > On Tue, Jun 21, 2022 at 10:45:56AM +0100, Sudeep Holla wrote:
> > > > > > > On Mon, Jun 20, 2022 at 05:02:22PM +0200, Marcin Wojtas wrote:
> > > > > > > > Describe the Distributed Switch Architecture (DSA) - compliant
> > > > > > > > MDIO devices. In ACPI world they are represented as children
> > > > > > > > of the MDIO busses, which are responsible for their enumeration
> > > > > > > > based on the standard _ADR fields and description in _DSD objects
> > > > > > > > under device properties UUID [1].
> > > > > > > >
> > > > > > > > [1] http://www.uefi.org/sites/default/files/resources/_DSD-device-properties-UUID.pdf
> > > > > >
> > > > > > > Why is this document part of Linux code base ?
> > > > > >
> > > > > > It's fine, but your are right with your latter questions.
> > > > > >
> > > > > > > How will the other OSes be aware of this ?
> > > > > >
> > > > > > Should be a standard somewhere.
> > > > > >
> > > > > > > I assume there was some repository to maintain such DSDs so that it
> > > > > > > is accessible for other OSes. I am not agreeing or disagreeing on the
> > > > > > > change itself, but I am concerned about this present in the kernel
> > > > > > > code.
> > > > > >
> > > > > > I dunno we have a such, but the closest I may imagine is MIPI standardization,
> > > > > > that we have at least for cameras and sound.
> > > > > >
> > > > > > I would suggest to go and work with MIPI for network / DSA / etc area, so
> > > > > > everybody else will be aware of the standard.
> > > > >
> > > > > It is the same argument as for DT. Other OSes and bootloaders seem to
> > > > > manage digging around in Linux for DT binding documentation. I don't
> > > > > see why bootloaders and other OSes can not also dig around in Linux
> > > > > for ACPI binding documentations.
> > > > >
> > > >
> > > > Theoretically you are right. But in DT case majority of non-standard(by
> > > > standard I am referring to the one's in Open Firmware specification) are
> > > > in the kernel. But that is not true for ACPI. And that is the reason for
> > > > objecting it. One of the main other OS using ACPI may not look here for
> > > > any ACPI bindings(we may not care, but still OS neutral place is better
> > > > for this).
> > > >
> > > > > Ideally, somebody will submit all this for acceptance into ACPI, but
> > > > > into somebody does, i suspect it will just remain a defacto standard
> > > > > in Linux.
> > > > >
> > > >
> > > > DSD is not integral part of ACPI spec, so the process is never clear.
> > > > However there is this project[1], IIUC it is just guidance and doesn't
> > > > include any bindings IIUC. But we need something similar here for better
> > > > visibility and to remain OS agnostic. Even with DT, there is a strong
> > > > desire to separate it out, but it has grown so much that it is getting
> > > > harder to do that with every release. I was just trying to avoid getting
> > > > into that situation.
> > > >
> > > > [1] https://github.com/UEFI/DSD-Guide
> > >
> > > Here's my personal take on this.
> > >
> > > This patch series essentially makes the kernel recognize a few generic
> > > (that is, not tied on any specific device ID) device properties
> > > supplied by the firmware via _DSD.  They are generic, because there is
> > > some library code in the kernel that can consume them and that library
> > > code is used in multiple places (and it is better to supply data from
> > > the firmware directly to it).
> > >
> > > If we all agree that it is a good idea for the kernel to allow these
> > > properties to be supplied via _DSD this way, there is no reason to
> > > avoid admitting that fact in the kernel documentation.
> > >
> > > IMV, there's nothing wrong with stating officially that these
> > > properties are recognized by the kernel and what they are used for and
> > > it has no bearing on whether or not they are also used by someone
> > > else.
> >
> > Good point. I was also suggested to make properties have prefix "linux-"
> > similar to "uefi-" in the set of DSD properties list @[1]. In that case
> > it makes more sense to maintain in the kernel. If they add "uefi-" prefix,
> > I was also told that it can be hosted @[1] as specific in section 3.1.4 @[2]
> 
> Well, the point here is to use the same property names on both the DT
> and ACPI ends IIUC and there's certain value in doing that.
> 
> The library in question already uses these names with DT and there is
> no real need to change that.
>

Make sense and I agree.

> Of course, if the platform firmware supplies these properties in a way
> described in the document in question, it will be a provision
> specifically for Linux and nothing else (unless that hypothetical
> other thing decides to follow Linux in this respect, that is).  As
> long as that is clear, I don't see why it would be better to introduce
> different property names just for _DSD.
>

Understood and very valid point.

> > I just sent an update to Documentation with the link to[1].
> 
> Thanks!
> 
> > I can also
> > update the same to mention about the process as described in section 3.1.4
> > if that helps and we are happy to follow that in the kernel.
> >
> > [1] https://github.com/UEFI/DSD-Guide
> > [2] https://github.com/UEFI/DSD-Guide/blob/main/src/dsd-guide.adoc#314-adding-uefi-device-properties
> 
> IMV it would be useful to add that information, but IMO the process is
> mostly relevant for new use cases, when someone wants to introduce an
> entirely new property that is not yet covered by the DT bindings.
> 
> In the cases when the existing DT properties are the closest thing to
> a standard way of supplying the OS with the information in question it
> is most appealing to use the property names that are in use already.

Agreed, I wasn't aware that the properties discussed in $subject are already
DT properties. I agree on the point that we don't want to have a different
one(with prefix) if the DT properties are already supported.

--
Regards,
Sudeep

  reply	other threads:[~2022-06-21 18:11 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-20 15:02 [net-next: PATCH 00/12] ACPI support for DSA Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 01/12] net: phy: fixed_phy: switch to fwnode_ API Marcin Wojtas
2022-06-20 17:25   ` Andy Shevchenko
2022-06-20 17:59   ` Andrew Lunn
2022-06-21  9:56     ` Marcin Wojtas
2022-06-21 10:01       ` Russell King (Oracle)
2022-06-20 15:02 ` [net-next: PATCH 02/12] net: mdio: switch fixed-link PHYs API to fwnode_ Marcin Wojtas
2022-06-20 17:32   ` Andy Shevchenko
2022-06-21  9:22     ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 03/12] net: dsa: switch to device_/fwnode_ APIs Marcin Wojtas
2022-06-20 17:41   ` Andy Shevchenko
2022-06-21  9:27     ` Marcin Wojtas
2022-06-21 11:02       ` Andy Shevchenko
2022-06-22 16:09         ` Florian Fainelli
2022-06-20 15:02 ` [net-next: PATCH 04/12] net: mvpp2: initialize port fwnode pointer Marcin Wojtas
2022-06-20 17:43   ` Andy Shevchenko
2022-06-20 17:44     ` Andy Shevchenko
2022-06-21  9:28       ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 05/12] net: core: switch to fwnode_find_net_device_by_node() Marcin Wojtas
2022-06-20 17:46   ` Andy Shevchenko
2022-06-20 23:15     ` Marcin Wojtas
2022-06-20 22:30   ` kernel test robot
2022-06-20 15:02 ` [net-next: PATCH 06/12] net: mdio: introduce fwnode_mdiobus_register_device() Marcin Wojtas
2022-06-20 17:48   ` Andy Shevchenko
2022-06-21  9:33     ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 07/12] net: mdio: allow registering non-PHY devices in ACPI world Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 08/12] ACPI: scan: prevent double enumeration of MDIO bus children Marcin Wojtas
2022-06-20 17:53   ` Andy Shevchenko
2022-06-20 23:04     ` Marcin Wojtas
2022-06-22 12:09       ` Rafael J. Wysocki
2022-06-22 15:05         ` Marcin Wojtas
2022-06-20 19:08   ` Andrew Lunn
2022-06-22 12:05     ` Rafael J. Wysocki
2022-06-22 16:12       ` Florian Fainelli
2022-06-22 16:21         ` Rafael J. Wysocki
2022-06-23  7:41           ` Andrew Lunn
2022-06-23 23:07             ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 09/12] Documentation: ACPI: DSD: introduce DSA description Marcin Wojtas
2022-06-20 18:19   ` Andrew Lunn
2022-06-20 23:21     ` Marcin Wojtas
2022-06-20 19:47   ` Andrew Lunn
2022-06-20 23:25     ` Marcin Wojtas
2022-06-21 11:09     ` Andy Shevchenko
2022-06-21 11:18       ` Andrew Lunn
2022-06-21 11:42         ` Andy Shevchenko
2022-06-22  9:08           ` Marcin Wojtas
2022-06-22  9:24             ` Andrew Lunn
2022-06-22 10:22               ` Marcin Wojtas
2022-06-22 10:37                 ` Andrew Lunn
2022-06-22 11:08                   ` Andy Shevchenko
2022-06-22 11:04               ` Andy Shevchenko
2022-06-22 11:03             ` Andy Shevchenko
2022-06-22 11:22               ` Andrew Lunn
2022-06-22 14:20                 ` Andy Shevchenko
2022-06-22 15:00                   ` Marcin Wojtas
2022-06-21  9:45   ` Sudeep Holla
2022-06-21 11:15     ` Andy Shevchenko
2022-06-21 11:24       ` Andrew Lunn
2022-06-21 11:46         ` Andy Shevchenko
2022-06-21 11:57           ` Andrew Lunn
2022-06-21 13:28         ` Sudeep Holla
2022-06-21 15:23           ` Rafael J. Wysocki
2022-06-21 15:37             ` Sudeep Holla
2022-06-21 16:00               ` Rafael J. Wysocki
2022-06-21 18:11                 ` Sudeep Holla [this message]
2022-06-20 15:02 ` [net-next: PATCH 10/12] net: dsa: add ACPI support Marcin Wojtas
2022-06-20 18:32   ` Andrew Lunn
2022-06-20 23:31     ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 11/12] net: dsa: mv88e6xxx: switch to device_/fwnode_ APIs Marcin Wojtas
2022-06-20 18:00   ` Andy Shevchenko
2022-06-21  9:14     ` Marcin Wojtas
2022-06-20 18:04   ` Andy Shevchenko
2022-06-21  9:15     ` Marcin Wojtas
2022-06-20 15:02 ` [net-next: PATCH 12/12] net: dsa: mv88e6xxx: add ACPI support Marcin Wojtas
2022-06-25  2:54   ` kernel test robot
2022-06-20 17:21 ` [net-next: PATCH 00/12] ACPI support for DSA Andy Shevchenko
2022-06-21 10:02   ` Marcin Wojtas
2022-06-20 17:55 ` Andrew Lunn
2022-06-20 18:07   ` Andy Shevchenko
2022-06-20 18:45     ` Andrew Lunn
2022-06-21 10:46       ` Marcin Wojtas
2022-06-22 15:40         ` Marcin Wojtas
2022-06-22 16:14           ` Andy Shevchenko
2022-06-21 10:16   ` Marcin Wojtas

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=20220621181140.6vvujfyhr4tumd2u@bogus \
    --to=sudeep.holla@arm.com \
    --cc=Samer.El-Haj-Mahmoud@arm.com \
    --cc=andrew@lunn.ch \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=gjb@semihalf.com \
    --cc=hkallweit1@gmail.com \
    --cc=jaz@semihalf.com \
    --cc=kuba@kernel.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mw@semihalf.com \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=rafael@kernel.org \
    --cc=tn@semihalf.com \
    --cc=upstream@semihalf.com \
    --cc=vivien.didelot@gmail.com \
    /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