[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20231103-pretense-caviar-eacbb7f2fe09@spud>
Date: Fri, 3 Nov 2023 13:15:37 +0000
From: Conor Dooley <conor@...nel.org>
To: Christian Marangi <ansuelsmth@...il.com>
Cc: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>, Andrew Lunn <andrew@...n.ch>,
Heiner Kallweit <hkallweit1@...il.com>,
Russell King <linux@...linux.org.uk>,
Robert Marko <robimarko@...il.com>,
Vladimir Oltean <vladimir.oltean@....com>, netdev@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [net-next RFC PATCH v4 4/4] dt-bindings: Document bindings for
Marvell Aquantia PHY
Hey,
On Fri, Nov 03, 2023 at 01:35:32PM +0100, Christian Marangi wrote:
> Document bindings for Marvell Aquantia PHY.
>
> The Marvell Aquantia PHY require a firmware to work correctly and there
> at least 3 way to load this firmware.
>
> Describe all the different way and document the binding "firmware-name"
> to load the PHY firmware from userspace.
>
> Signed-off-by: Christian Marangi <ansuelsmth@...il.com>
> ---
> Changes v3:
> - Make DT description more OS agnostic
> - Use custom select to fix dtbs checks
> Changes v2:
> - Add DT patch
Please, it's the merge window, there's even less reason than usual to
spit out versions less than 24h apart. This is the third version in 48
hours. As there are no changes to the binding in the v4 patch, please
take a look at
<https://lore.kernel.org/all/20231103-outboard-murkiness-e3256874c9a7@spud/>
I left a review there a few moments ago.
Thanks,
Conor.
> .../bindings/net/marvell,aquantia.yaml | 126 ++++++++++++++++++
> 1 file changed, 126 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/net/marvell,aquantia.yaml
>
> diff --git a/Documentation/devicetree/bindings/net/marvell,aquantia.yaml b/Documentation/devicetree/bindings/net/marvell,aquantia.yaml
> new file mode 100644
> index 000000000000..d43cf28a4d61
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/marvell,aquantia.yaml
> @@ -0,0 +1,126 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/net/marvell,aquantia.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Marvell Aquantia Ethernet PHY
> +
> +maintainers:
> + - Christian Marangi <ansuelsmth@...il.com>
> +
> +description: |
> + Marvell Aquantia Ethernet PHY require a firmware to be loaded to actually
> + work.
> +
> + This can be done and is implemented by OEM in 3 different way:
> + - Attached SPI directly to the PHY with the firmware. The PHY will
> + self load the firmware in the presence of this configuration.
> + - Dedicated partition on system NAND with firmware in it. NVMEM
> + subsystem will be used and the declared NVMEM cell will load
> + the firmware to the PHY using the PHY mailbox interface.
> + - Manually provided firmware loaded from a file in the filesystem.
> +
> + If declared, NVMEM will always take priority over filesystem provided
> + firmware.
> +
> +allOf:
> + - $ref: ethernet-phy.yaml#
> +
> +select:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - ethernet-phy-id03a1.b445
> + - ethernet-phy-id03a1.b460
> + - ethernet-phy-id03a1.b4a2
> + - ethernet-phy-id03a1.b4d0
> + - ethernet-phy-id03a1.b4e0
> + - ethernet-phy-id03a1.b5c2
> + - ethernet-phy-id03a1.b4b0
> + - ethernet-phy-id03a1.b662
> + - ethernet-phy-id03a1.b712
> + - ethernet-phy-id31c3.1c12
> + required:
> + - compatible
> +
> +properties:
> + reg:
> + maxItems: 1
> +
> + firmware-name:
> + description: specify the name of PHY firmware to load
> +
> + nvmem-cells:
> + description: phandle to the firmware nvmem cell
> + maxItems: 1
> +
> + nvmem-cell-names:
> + const: firmware
> +
> +required:
> + - compatible
> + - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + mdio {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + ethernet-phy@0 {
> + /* Only needed to make DT lint tools work. Do not copy/paste
> + * into real DTS files.
> + */
> + compatible = "ethernet-phy-id31c3.1c12",
> + "ethernet-phy-ieee802.3-c45";
> +
> + reg = <0>;
> + firmware-name = "AQR-G4_v5.4.C-AQR_CIG_WF-1945_0x8_ID44776_VER1630.cld";
> + };
> +
> + ethernet-phy@1 {
> + /* Only needed to make DT lint tools work. Do not copy/paste
> + * into real DTS files.
> + */
> + compatible = "ethernet-phy-id31c3.1c12",
> + "ethernet-phy-ieee802.3-c45";
> +
> + reg = <0>;
> + nvmem-cells = <&aqr_fw>;
> + nvmem-cell-names = "firmware";
> + };
> + };
> +
> + flash {
> + compatible = "jedec,spi-nor";
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + partitions {
> + compatible = "fixed-partitions";
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + /* ... */
> +
> + partition@...000 {
> + compatible = "nvmem-cells";
> + label = "0:ethphyfw";
> + reg = <0x650000 0x80000>;
> + read-only;
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + aqr_fw: aqr_fw@0 {
> + reg = <0x0 0x5f42a>;
> + };
> + };
> +
> + /* ... */
> +
> + };
> + };
> --
> 2.40.1
>
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists