From: Calvin Johnson <calvin.johnson@oss.nxp.com> To: "Rafael J . Wysocki" <rafael@kernel.org>, Len Brown <lenb@kernel.org>, Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>, Hanjun Guo <guohanjun@huawei.com>, Sudeep Holla <sudeep.holla@arm.com>, Al Stone <ahs3@redhat.com>, Jeremy Linton <jeremy.linton@arm.com>, Russell King - ARM Linux admin <linux@armlinux.org.uk>, Jon <jon@solid-run.com>, Cristi Sovaiala <cristian.sovaiala@nxp.com>, Ioana Ciornei <ioana.ciornei@nxp.com>, Andrew Lunn <andrew@lunn.ch>, Andy Shevchenko <andy.shevchenko@gmail.com>, Florian Fainelli <f.fainelli@gmail.com>, Madalin Bucur <madalin.bucur@oss.nxp.com> Cc: linux-acpi@vger.kernel.org, netdev@vger.kernel.org, linux.cj@gmail.com, Paul Yang <Paul.Yang@arm.com>, Calvin Johnson <calvin.johnson@oss.nxp.com> Subject: [net-next PATCH v7 1/6] Documentation: ACPI: DSD: Document MDIO PHY Date: Sat, 25 Jul 2020 19:53:59 +0530 Message-ID: <20200725142404.30634-2-calvin.johnson@oss.nxp.com> (raw) In-Reply-To: <20200725142404.30634-1-calvin.johnson@oss.nxp.com> Introduce ACPI mechanism to get PHYs registered on a MDIO bus and provide them to be connected to MAC. An ACPI node property "mdio-handle" is introduced to reference the MDIO bus on which PHYs are registered with autoprobing method used by mdiobus_register(). Describe properties "phy-channel" and "phy-mode" Signed-off-by: Calvin Johnson <calvin.johnson@oss.nxp.com> --- Changes in v7: None Changes in v6: None Changes in v5: None Changes in v4: None Changes in v3: - cleanup based on v2 comments - Added description for more properties - Added MDIO node DSDT entry Changes in v2: None Documentation/firmware-guide/acpi/dsd/phy.rst | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 Documentation/firmware-guide/acpi/dsd/phy.rst diff --git a/Documentation/firmware-guide/acpi/dsd/phy.rst b/Documentation/firmware-guide/acpi/dsd/phy.rst new file mode 100644 index 000000000000..0132fee10b45 --- /dev/null +++ b/Documentation/firmware-guide/acpi/dsd/phy.rst @@ -0,0 +1,90 @@ +.. SPDX-License-Identifier: GPL-2.0 + +========================= +MDIO bus and PHYs in ACPI +========================= + +The PHYs on an mdiobus are probed and registered using mdiobus_register(). +Later, for connecting these PHYs to MAC, the PHYs registered on the +mdiobus have to be referenced. + +mdio-handle +----------- +For each MAC node, a property "mdio-handle" is used to reference the +MDIO bus on which the PHYs are registered. On getting hold of the MDIO +bus, use find_phy_device() to get the PHY connected to the MAC. + +phy-channel +----------- +Property "phy-channel" defines the address of the PHY on the mdiobus. + +phy-mode +-------- +Property "phy-mode" defines the type of PHY interface. + +An example of this is shown below:: + +DSDT entry for MAC where MDIO node is referenced +------------------------------------------------ + Scope(\_SB.MCE0.PR17) // 1G + { + Name (_DSD, Package () { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package () {"phy-channel", 1}, + Package () {"phy-mode", "rgmii-id"}, + Package () {"mdio-handle", Package (){\_SB.MDI0}} + } + }) + } + + Scope(\_SB.MCE0.PR18) // 1G + { + Name (_DSD, Package () { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package () {"phy-channel", 2}, + Package () {"phy-mode", "rgmii-id"}, + Package () {"mdio-handle", Package (){\_SB.MDI0}} + } + }) + } + +DSDT entry for MDIO node +------------------------ +a) Silicon Component +-------------------- + Scope(_SB) + { + Device(MDI0) { + Name(_HID, "NXP0006") + Name(_CCA, 1) + Name(_UID, 0) + Name(_CRS, ResourceTemplate() { + Memory32Fixed(ReadWrite, MDI0_BASE, MDI_LEN) + Interrupt(ResourceConsumer, Level, ActiveHigh, Shared) + { + MDI0_IT + } + }) // end of _CRS for MDI0 + Name (_DSD, Package () { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package () {"little-endian", 1}, + } + }) + } // end of MDI0 + } + +b) Platform Component +--------------------- + Scope(\_SB.MDI0) + { + Device(PHY1) { + Name (_ADR, 0x1) + } // end of PHY1 + + Device(PHY2) { + Name (_ADR, 0x2) + } // end of PHY2 + } -- 2.17.1
next prev parent reply index Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-07-25 14:23 [net-next PATCH v7 0/6] ACPI support for dpaa2 MAC driver Calvin Johnson 2020-07-25 14:23 ` Calvin Johnson [this message] 2020-07-25 14:24 ` [net-next PATCH v7 2/6] net: phy: introduce device_mdiobus_register() Calvin Johnson 2020-07-25 14:24 ` [net-next PATCH v7 3/6] net/fsl: use device_mdiobus_register() Calvin Johnson 2020-07-25 14:24 ` [net-next PATCH v7 4/6] net: phy: introduce phy_find_by_mdio_handle() Calvin Johnson 2020-07-25 14:24 ` [net-next PATCH v7 5/6] phylink: introduce phylink_fwnode_phy_connect() Calvin Johnson 2020-07-25 14:24 ` [net-next PATCH v7 6/6] net: dpaa2-mac: Add ACPI support for DPAA2 MAC driver Calvin Johnson 2020-07-29 0:39 ` [net-next PATCH v7 0/6] ACPI support for dpaa2 " David Miller 2020-07-29 0:42 ` Florian Fainelli -- strict thread matches above, loose matches on Subject: below -- 2020-07-15 9:03 Calvin Johnson 2020-07-15 9:03 ` [net-next PATCH v7 1/6] Documentation: ACPI: DSD: Document MDIO PHY Calvin Johnson 2020-07-16 3:04 ` Florian Fainelli 2020-07-16 3:11 ` Andrew Lunn 2020-07-23 23:26 ` Jeremy Linton 2020-07-24 13:39 ` Andrew Lunn 2020-07-24 17:26 ` Jeremy Linton 2020-07-24 17:39 ` Florian Fainelli 2020-07-24 19:20 ` Andrew Lunn 2020-07-24 20:12 ` Andy Shevchenko 2020-07-24 20:13 ` Florian Fainelli 2020-07-24 20:20 ` Andy Shevchenko 2020-07-25 7:36 ` Calvin Johnson 2020-07-25 10:48 ` Andy Shevchenko 2020-07-24 21:06 ` Russell King - ARM Linux admin 2020-07-27 17:03 ` Sudeep Holla 2020-07-24 19:14 ` Andrew Lunn 2020-07-27 17:21 ` Sudeep Holla 2020-07-28 20:34 ` Andrew Lunn 2020-07-28 20:59 ` Russell King - ARM Linux admin 2020-07-28 21:26 ` Andy Shevchenko 2020-07-29 16:00 ` Rafael J. Wysocki 2020-07-31 15:08 ` Andrew Lunn 2020-07-27 17:32 ` Jon Nettleton [not found] ` <1595922651-sup-5323@galangal.danc.bne.opengear.com> 2020-07-28 20:45 ` Andrew Lunn 2020-07-28 20:56 ` Florian Fainelli 2020-07-28 21:28 ` Andy Shevchenko 2020-07-28 21:40 ` Florian Fainelli 2020-07-31 15:14 ` Andrew Lunn 2020-09-25 13:22 ` Grant Likely 2020-07-28 22:30 ` Jeremy Linton 2020-07-29 0:39 ` Florian Fainelli 2020-07-29 2:53 ` Jeremy Linton 2020-07-29 3:16 ` Florian Fainelli 2020-07-29 8:43 ` Jon Nettleton 2020-07-29 9:39 ` Calvin Johnson 2020-09-25 13:34 ` Grant Likely 2020-09-26 4:30 ` Calvin Johnson 2020-09-29 5:17 ` Calvin Johnson 2020-09-29 13:43 ` Andrew Lunn 2020-09-29 13:55 ` Andy Shevchenko 2020-09-29 14:32 ` Andrew Lunn 2020-09-29 14:46 ` Andy Shevchenko 2020-09-29 15:06 ` Andrew Lunn 2020-09-29 15:29 ` Arnd Bergmann 2020-09-29 14:44 ` Arnd Bergmann 2020-09-29 14:59 ` Andrew Lunn 2020-09-29 15:59 ` Grant Likely 2020-09-29 15:53 ` Grant Likely 2020-09-29 16:04 ` Calvin Johnson
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=20200725142404.30634-2-calvin.johnson@oss.nxp.com \ --to=calvin.johnson@oss.nxp.com \ --cc=Lorenzo.Pieralisi@arm.com \ --cc=Paul.Yang@arm.com \ --cc=ahs3@redhat.com \ --cc=andrew@lunn.ch \ --cc=andy.shevchenko@gmail.com \ --cc=cristian.sovaiala@nxp.com \ --cc=f.fainelli@gmail.com \ --cc=guohanjun@huawei.com \ --cc=ioana.ciornei@nxp.com \ --cc=jeremy.linton@arm.com \ --cc=jon@solid-run.com \ --cc=lenb@kernel.org \ --cc=linux-acpi@vger.kernel.org \ --cc=linux.cj@gmail.com \ --cc=linux@armlinux.org.uk \ --cc=madalin.bucur@oss.nxp.com \ --cc=netdev@vger.kernel.org \ --cc=rafael@kernel.org \ --cc=sudeep.holla@arm.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
Linux-ACPI Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-acpi/0 linux-acpi/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-acpi linux-acpi/ https://lore.kernel.org/linux-acpi \ linux-acpi@vger.kernel.org public-inbox-index linux-acpi Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-acpi AGPL code for this site: git clone https://public-inbox.org/public-inbox.git