mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 04:04:43 +01:00
dt-bindings: net: Document Qcom QCA807x PHY package
Document Qcom QCA807x PHY package. Qualcomm QCA807X Ethernet PHY is PHY package of 2 or 5 IEEE 802.3 clause 22 compliant 10BASE-Te, 100BASE-TX and 1000BASE-T PHY-s. Document the required property to make the PHY package correctly configure and work. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
737eb75a81
commit
dd87eaa137
1 changed files with 184 additions and 0 deletions
184
Documentation/devicetree/bindings/net/qcom,qca807x.yaml
Normal file
184
Documentation/devicetree/bindings/net/qcom,qca807x.yaml
Normal file
|
|
@ -0,0 +1,184 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/net/qcom,qca807x.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm QCA807x Ethernet PHY
|
||||
|
||||
maintainers:
|
||||
- Christian Marangi <ansuelsmth@gmail.com>
|
||||
- Robert Marko <robert.marko@sartura.hr>
|
||||
|
||||
description: |
|
||||
Qualcomm QCA8072/5 Ethernet PHY is PHY package of 2 or 5
|
||||
IEEE 802.3 clause 22 compliant 10BASE-Te, 100BASE-TX and
|
||||
1000BASE-T PHY-s.
|
||||
|
||||
They feature 2 SerDes, one for PSGMII or QSGMII connection with
|
||||
MAC, while second one is SGMII for connection to MAC or fiber.
|
||||
|
||||
Both models have a combo port that supports 1000BASE-X and
|
||||
100BASE-FX fiber.
|
||||
|
||||
Each PHY inside of QCA807x series has 4 digitally controlled
|
||||
output only pins that natively drive LED-s for up to 2 attached
|
||||
LEDs. Some vendor also use these 4 output for GPIO usage without
|
||||
attaching LEDs.
|
||||
|
||||
Note that output pins can be set to drive LEDs OR GPIO, mixed
|
||||
definition are not accepted.
|
||||
|
||||
$ref: ethernet-phy-package.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,qca8072-package
|
||||
- qcom,qca8075-package
|
||||
|
||||
qcom,package-mode:
|
||||
description: |
|
||||
PHY package can be configured in 3 mode following this table:
|
||||
|
||||
First Serdes mode Second Serdes mode
|
||||
Option 1 PSGMII for copper Disabled
|
||||
ports 0-4
|
||||
Option 2 PSGMII for copper 1000BASE-X / 100BASE-FX
|
||||
ports 0-4
|
||||
Option 3 QSGMII for copper SGMII for
|
||||
ports 0-3 copper port 4
|
||||
|
||||
PSGMII mode (option 1 or 2) is configured dynamically based on
|
||||
the presence of a connected SFP device.
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
enum:
|
||||
- qsgmii
|
||||
- psgmii
|
||||
default: psgmii
|
||||
|
||||
qcom,tx-drive-strength-milliwatt:
|
||||
description: set the TX Amplifier value in mv.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
enum: [140, 160, 180, 200, 220,
|
||||
240, 260, 280, 300, 320,
|
||||
400, 500, 600]
|
||||
default: 600
|
||||
|
||||
patternProperties:
|
||||
^ethernet-phy@[a-f0-9]+$:
|
||||
$ref: ethernet-phy.yaml#
|
||||
|
||||
properties:
|
||||
qcom,dac-full-amplitude:
|
||||
description:
|
||||
Set Analog MDI driver amplitude to FULL.
|
||||
|
||||
With this not defined, amplitude is set to DSP.
|
||||
(amplitude is adjusted based on cable length)
|
||||
|
||||
With this enabled and qcom,dac-full-bias-current
|
||||
and qcom,dac-disable-bias-current-tweak disabled,
|
||||
bias current is half.
|
||||
type: boolean
|
||||
|
||||
qcom,dac-full-bias-current:
|
||||
description:
|
||||
Set Analog MDI driver bias current to FULL.
|
||||
|
||||
With this not defined, bias current is set to DSP.
|
||||
(bias current is adjusted based on cable length)
|
||||
|
||||
Actual bias current might be different with
|
||||
qcom,dac-disable-bias-current-tweak disabled.
|
||||
type: boolean
|
||||
|
||||
qcom,dac-disable-bias-current-tweak:
|
||||
description: |
|
||||
Set Analog MDI driver bias current to disable tweak
|
||||
to bias current.
|
||||
|
||||
With this not defined, bias current tweak are enabled
|
||||
by default.
|
||||
|
||||
With this enabled the following tweak are NOT applied:
|
||||
- With both FULL amplitude and FULL bias current: bias current
|
||||
is set to half.
|
||||
- With only DSP amplitude: bias current is set to half and
|
||||
is set to 1/4 with cable < 10m.
|
||||
- With DSP bias current (included both DSP amplitude and
|
||||
DSP bias current): bias current is half the detected current
|
||||
with cable < 10m.
|
||||
type: boolean
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
'#gpio-cells':
|
||||
const: 2
|
||||
|
||||
if:
|
||||
required:
|
||||
- gpio-controller
|
||||
then:
|
||||
properties:
|
||||
leds: false
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethernet-phy-package@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "qcom,qca8075-package";
|
||||
reg = <0>;
|
||||
|
||||
qcom,package-mode = "qsgmii";
|
||||
|
||||
ethernet-phy@0 {
|
||||
reg = <0>;
|
||||
|
||||
leds {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
led@0 {
|
||||
reg = <0>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
function = LED_FUNCTION_LAN;
|
||||
default-state = "keep";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
ethernet-phy@2 {
|
||||
reg = <2>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
ethernet-phy@3 {
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue