-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'dt-bindings-net-convert-fsl-fman-related-file-to-yaml-f…
…ormat' Frank Li says: ==================== dt-bindings: net: Convert fsl,fman related file to yaml format Passed dt_binding_check Run dt_binding_check: fsl,fman-mdio.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.json CHKDT Documentation/devicetree/bindings LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/net/fsl,fman-mdio.example.dts DTC_CHK Documentation/devicetree/bindings/net/fsl,fman-mdio.example.dtb Run dt_binding_check: fsl,fman-muram.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.json CHKDT Documentation/devicetree/bindings LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/net/fsl,fman-muram.example.dts DTC_CHK Documentation/devicetree/bindings/net/fsl,fman-muram.example.dtb Run dt_binding_check: fsl,fman-port.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.json CHKDT Documentation/devicetree/bindings LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/net/fsl,fman-port.example.dts DTC_CHK Documentation/devicetree/bindings/net/fsl,fman-port.example.dtb Run dt_binding_check: fsl,fman.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.json CHKDT Documentation/devicetree/bindings LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/net/fsl,fman.example.dts DTC_CHK Documentation/devicetree/bindings/net/fsl,fman.example.dtb Run dt_binding_check: ptp-qoriq.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.json CHKDT Documentation/devicetree/bindings LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/ptp/ptp-qoriq.example.dts DTC_CHK Documentation/devicetree/bindings/ptp/ptp-qoriq.example.dtb v1: https://lore.kernel.org/r/20240614-ls_fman-v1-0-cb33c96dc799@nxp.com ==================== Link: https://patch.msgid.link/20240618-ls_fman-v2-0-f00a82623d8e@nxp.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
- Loading branch information
Showing
9 changed files
with
589 additions
and
638 deletions.
There are no files selected for viewing
123 changes: 123 additions & 0 deletions
123
Documentation/devicetree/bindings/net/fsl,fman-mdio.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/net/fsl,fman-mdio.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale Frame Manager MDIO Device | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: FMan MDIO Node. | ||
The MDIO is a bus to which the PHY devices are connected. | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- fsl,fman-mdio | ||
- fsl,fman-xmdio | ||
- fsl,fman-memac-mdio | ||
description: | ||
Must include "fsl,fman-mdio" for 1 Gb/s MDIO from FMan v2. | ||
Must include "fsl,fman-xmdio" for 10 Gb/s MDIO from FMan v2. | ||
Must include "fsl,fman-memac-mdio" for 1/10 Gb/s MDIO from | ||
FMan v3. | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
clocks: | ||
items: | ||
- description: A reference to the input clock of the controller | ||
from which the MDC frequency is derived. | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
fsl,fman-internal-mdio: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: | ||
Fman has internal MDIO for internal PCS(Physical | ||
Coding Sublayer) PHYs and external MDIO for external PHYs. | ||
The settings and programming routines for internal/external | ||
MDIO are different. Must be included for internal MDIO. | ||
|
||
fsl,erratum-a009885: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: Indicates the presence of the A009885 | ||
erratum describing that the contents of MDIO_DATA may | ||
become corrupt unless it is read within 16 MDC cycles | ||
of MDIO_CFG[BSY] being cleared, when performing an | ||
MDIO read operation. | ||
|
||
fsl,erratum-a011043: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: | ||
Indicates the presence of the A011043 erratum | ||
describing that the MDIO_CFG[MDIO_RD_ER] bit may be falsely | ||
set when reading internal PCS registers. MDIO reads to | ||
internal PCS registers may result in having the | ||
MDIO_CFG[MDIO_RD_ER] bit set, even when there is no error and | ||
read data (MDIO_DATA[MDIO_DATA]) is correct. | ||
Software may get false read error when reading internal | ||
PCS registers through MDIO. As a workaround, all internal | ||
MDIO accesses should ignore the MDIO_CFG[MDIO_RD_ER] bit. | ||
|
||
For internal PHY device on internal mdio bus, a PHY node should be created. | ||
See the definition of the PHY node in booting-without-of.txt for an | ||
example of how to define a PHY (Internal PHY has no interrupt line). | ||
- For "fsl,fman-mdio" compatible internal mdio bus, the PHY is TBI PHY. | ||
- For "fsl,fman-memac-mdio" compatible internal mdio bus, the PHY is PCS PHY. | ||
The PCS PHY address should correspond to the value of the appropriate | ||
MDEV_PORT. | ||
|
||
little-endian: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: | ||
IP block is little-endian mode. The default endian mode is big-endian. | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
allOf: | ||
- $ref: mdio.yaml# | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
mdio@f1000 { | ||
compatible = "fsl,fman-xmdio"; | ||
reg = <0xf1000 0x1000>; | ||
interrupts = <101 2 0 0>; | ||
}; | ||
- | | ||
mdio@e3120 { | ||
compatible = "fsl,fman-mdio"; | ||
reg = <0xe3120 0xee0>; | ||
fsl,fman-internal-mdio; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
tbi-phy@8 { | ||
reg = <0x8>; | ||
device_type = "tbi-phy"; | ||
}; | ||
}; | ||
- | | ||
mdio@f1000 { | ||
compatible = "fsl,fman-memac-mdio"; | ||
reg = <0xf1000 0x1000>; | ||
fsl,fman-internal-mdio; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
pcsphy6: ethernet-phy@0 { | ||
reg = <0x0>; | ||
}; | ||
}; | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/net/fsl,fman-muram.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale Frame Manager MURAM Device | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | | ||
FMan Internal memory - shared between all the FMan modules. | ||
It contains data structures that are common and written to or read by | ||
the modules. | ||
FMan internal memory is split into the following parts: | ||
Packet buffering (Tx/Rx FIFOs) | ||
Frames internal context | ||
properties: | ||
compatible: | ||
enum: | ||
- fsl,fman-muram | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
muram@0 { | ||
compatible = "fsl,fman-muram"; | ||
reg = <0x0 0x28000>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/net/fsl,fman-port.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Freescale Frame Manager Port Device | ||
|
||
maintainers: | ||
- Frank Li <Frank.Li@nxp.com> | ||
|
||
description: | | ||
The Frame Manager (FMan) supports several types of hardware ports: | ||
Ethernet receiver (RX) | ||
Ethernet transmitter (TX) | ||
Offline/Host command (O/H) | ||
properties: | ||
compatible: | ||
enum: | ||
- fsl,fman-v2-port-oh | ||
- fsl,fman-v2-port-rx | ||
- fsl,fman-v2-port-tx | ||
- fsl,fman-v3-port-oh | ||
- fsl,fman-v3-port-rx | ||
- fsl,fman-v3-port-tx | ||
|
||
cell-index: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | ||
Specifies the hardware port id. | ||
Each hardware port on the FMan has its own hardware PortID. | ||
Super set of all hardware Port IDs available at FMan Reference | ||
Manual under "FMan Hardware Ports in Freescale Devices" table. | ||
|
||
Each hardware port is assigned a 4KB, port-specific page in | ||
the FMan hardware port memory region (which is part of the | ||
FMan memory map). The first 4 KB in the FMan hardware ports | ||
memory region is used for what are called common registers. | ||
The subsequent 63 4KB pages are allocated to the hardware | ||
ports. | ||
The page of a specific port is determined by the cell-index. | ||
|
||
reg: | ||
items: | ||
- description: There is one reg region describing the port | ||
configuration registers. | ||
|
||
fsl,fman-10g-port: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: The default port rate is 1G. | ||
If this property exists, the port is s 10G port. | ||
|
||
fsl,fman-best-effort-port: | ||
$ref: /schemas/types.yaml#/definitions/flag | ||
description: The default port rate is 1G. | ||
Can be defined only if 10G-support is set. | ||
This property marks a best-effort 10G port (10G port that | ||
may not be capable of line rate). | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- cell-index | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
port@a8000 { | ||
compatible = "fsl,fman-v2-port-tx"; | ||
reg = <0xa8000 0x1000>; | ||
cell-index = <0x28>; | ||
}; | ||
Oops, something went wrong.