mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-19 09:04:51 +08:00
a3542b0ccd
This property has always been supported by the Linux driver; see commit9f93ac8d40
("net-next: stmmac: Add dwmac-sun8i"). In fact, the original driver submission includes the phy-supply code but no mention of it in the binding, so the omission appears to be accidental. In addition, the property is documented in the binding for the previous hardware generation, allwinner,sun7i-a20-gmac. Document phy-supply in the binding to fix devicetree validation for the 25+ boards that already use this property. Fixes:0441bde003
("dt-bindings: net-next: Add DT bindings documentation for Allwinner dwmac-sun8i") Acked-by: Rob Herring <robh@kernel.org> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Samuel Holland <samuel@sholland.org> Signed-off-by: David S. Miller <davem@davemloft.net>
323 lines
7.4 KiB
YAML
323 lines
7.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/net/allwinner,sun8i-a83t-emac.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Allwinner A83t EMAC
|
|
|
|
maintainers:
|
|
- Chen-Yu Tsai <wens@csie.org>
|
|
- Maxime Ripard <mripard@kernel.org>
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- const: allwinner,sun8i-a83t-emac
|
|
- const: allwinner,sun8i-h3-emac
|
|
- const: allwinner,sun8i-r40-gmac
|
|
- const: allwinner,sun8i-v3s-emac
|
|
- const: allwinner,sun50i-a64-emac
|
|
- items:
|
|
- enum:
|
|
- allwinner,sun20i-d1-emac
|
|
- allwinner,sun50i-h6-emac
|
|
- allwinner,sun50i-h616-emac0
|
|
- const: allwinner,sun50i-a64-emac
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
interrupt-names:
|
|
const: macirq
|
|
|
|
clocks:
|
|
maxItems: 1
|
|
|
|
clock-names:
|
|
const: stmmaceth
|
|
|
|
phy-supply:
|
|
description: PHY regulator
|
|
|
|
syscon:
|
|
$ref: /schemas/types.yaml#/definitions/phandle
|
|
description:
|
|
Phandle to the device containing the EMAC or GMAC clock
|
|
register
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- interrupt-names
|
|
- clocks
|
|
- clock-names
|
|
- resets
|
|
- reset-names
|
|
- phy-handle
|
|
- phy-mode
|
|
- syscon
|
|
|
|
allOf:
|
|
- $ref: "snps,dwmac.yaml#"
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- allwinner,sun8i-a83t-emac
|
|
- allwinner,sun8i-h3-emac
|
|
- allwinner,sun8i-v3s-emac
|
|
- allwinner,sun50i-a64-emac
|
|
|
|
then:
|
|
properties:
|
|
allwinner,tx-delay-ps:
|
|
default: 0
|
|
minimum: 0
|
|
maximum: 700
|
|
multipleOf: 100
|
|
description:
|
|
External RGMII PHY TX clock delay chain value in ps.
|
|
|
|
allwinner,rx-delay-ps:
|
|
default: 0
|
|
minimum: 0
|
|
maximum: 3100
|
|
multipleOf: 100
|
|
description:
|
|
External RGMII PHY TX clock delay chain value in ps.
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- allwinner,sun8i-r40-gmac
|
|
|
|
then:
|
|
properties:
|
|
allwinner,rx-delay-ps:
|
|
default: 0
|
|
minimum: 0
|
|
maximum: 700
|
|
multipleOf: 100
|
|
description:
|
|
External RGMII PHY TX clock delay chain value in ps.
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- allwinner,sun8i-h3-emac
|
|
- allwinner,sun8i-v3s-emac
|
|
|
|
then:
|
|
properties:
|
|
allwinner,leds-active-low:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
EPHY LEDs are active low.
|
|
|
|
mdio-mux:
|
|
type: object
|
|
unevaluatedProperties: false
|
|
|
|
properties:
|
|
compatible:
|
|
const: allwinner,sun8i-h3-mdio-mux
|
|
|
|
mdio-parent-bus:
|
|
$ref: /schemas/types.yaml#/definitions/phandle
|
|
description:
|
|
Phandle to EMAC MDIO.
|
|
|
|
"#address-cells":
|
|
const: 1
|
|
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
mdio@1:
|
|
$ref: mdio.yaml#
|
|
unevaluatedProperties: false
|
|
description: Internal MDIO Bus
|
|
|
|
properties:
|
|
compatible:
|
|
const: allwinner,sun8i-h3-mdio-internal
|
|
|
|
reg:
|
|
const: 1
|
|
|
|
patternProperties:
|
|
"^ethernet-phy@[0-9a-f]$":
|
|
type: object
|
|
description:
|
|
Integrated PHY node
|
|
|
|
properties:
|
|
clocks:
|
|
maxItems: 1
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
required:
|
|
- clocks
|
|
- resets
|
|
|
|
|
|
mdio@2:
|
|
$ref: mdio.yaml#
|
|
unevaluatedProperties: false
|
|
description: External MDIO Bus (H3 only)
|
|
|
|
properties:
|
|
reg:
|
|
const: 2
|
|
|
|
required:
|
|
- compatible
|
|
- mdio-parent-bus
|
|
- mdio@1
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
ethernet@1c0b000 {
|
|
compatible = "allwinner,sun8i-h3-emac";
|
|
syscon = <&syscon>;
|
|
reg = <0x01c0b000 0x104>;
|
|
interrupts = <0 82 1>;
|
|
interrupt-names = "macirq";
|
|
resets = <&ccu 12>;
|
|
reset-names = "stmmaceth";
|
|
clocks = <&ccu 27>;
|
|
clock-names = "stmmaceth";
|
|
|
|
phy-handle = <&int_mii_phy>;
|
|
phy-mode = "mii";
|
|
allwinner,leds-active-low;
|
|
|
|
mdio1: mdio {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "snps,dwmac-mdio";
|
|
};
|
|
|
|
mdio-mux {
|
|
compatible = "allwinner,sun8i-h3-mdio-mux";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
mdio-parent-bus = <&mdio1>;
|
|
|
|
int_mii_phy: mdio@1 {
|
|
compatible = "allwinner,sun8i-h3-mdio-internal";
|
|
reg = <1>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ethernet-phy@1 {
|
|
reg = <1>;
|
|
clocks = <&ccu 67>;
|
|
resets = <&ccu 39>;
|
|
phy-is-integrated;
|
|
};
|
|
};
|
|
|
|
mdio@2 {
|
|
reg = <2>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
- |
|
|
ethernet@1c0b000 {
|
|
compatible = "allwinner,sun8i-h3-emac";
|
|
syscon = <&syscon>;
|
|
reg = <0x01c0b000 0x104>;
|
|
interrupts = <0 82 1>;
|
|
interrupt-names = "macirq";
|
|
resets = <&ccu 12>;
|
|
reset-names = "stmmaceth";
|
|
clocks = <&ccu 27>;
|
|
clock-names = "stmmaceth";
|
|
|
|
phy-handle = <&ext_rgmii_phy>;
|
|
phy-mode = "rgmii";
|
|
allwinner,leds-active-low;
|
|
|
|
mdio2: mdio {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "snps,dwmac-mdio";
|
|
};
|
|
|
|
mdio-mux {
|
|
compatible = "allwinner,sun8i-h3-mdio-mux";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
mdio-parent-bus = <&mdio2>;
|
|
|
|
mdio@1 {
|
|
compatible = "allwinner,sun8i-h3-mdio-internal";
|
|
reg = <1>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ethernet-phy@1 {
|
|
reg = <1>;
|
|
clocks = <&ccu 67>;
|
|
resets = <&ccu 39>;
|
|
};
|
|
};
|
|
|
|
mdio@2 {
|
|
reg = <2>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ext_rgmii_phy: ethernet-phy@1 {
|
|
reg = <1>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
- |
|
|
ethernet@1c0b000 {
|
|
compatible = "allwinner,sun8i-a83t-emac";
|
|
syscon = <&syscon>;
|
|
reg = <0x01c0b000 0x104>;
|
|
interrupts = <0 82 1>;
|
|
interrupt-names = "macirq";
|
|
resets = <&ccu 13>;
|
|
reset-names = "stmmaceth";
|
|
clocks = <&ccu 27>;
|
|
clock-names = "stmmaceth";
|
|
phy-handle = <&ext_rgmii_phy1>;
|
|
phy-mode = "rgmii";
|
|
|
|
mdio {
|
|
compatible = "snps,dwmac-mdio";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ext_rgmii_phy1: ethernet-phy@1 {
|
|
reg = <1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|