Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: net: Convert apm,xgene-enet to DT schema

Convert the APM XGene Ethernet binding to DT schema format.

Add the missing apm,xgene2-sgenet and apm,xgene2-xgenet compatibles.
Drop "reg-names" as required. Add support for up to 16 interrupts.

Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patch.msgid.link/20250908231016.2070305-1-robh@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Rob Herring (Arm) and committed by
Jakub Kicinski
0b467f5a a9d517ae

+116 -92
+115
Documentation/devicetree/bindings/net/apm,xgene-enet.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/net/apm,xgene-enet.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: APM X-Gene SoC Ethernet 8 + 9 + maintainers: 10 + - Iyappan Subramanian <iyappan@os.amperecomputing.com> 11 + - Keyur Chudgar <keyur@os.amperecomputing.com> 12 + - Quan Nguyen <quan@os.amperecomputing.com> 13 + 14 + allOf: 15 + - $ref: ethernet-controller.yaml# 16 + 17 + properties: 18 + compatible: 19 + enum: 20 + - apm,xgene-enet 21 + - apm,xgene1-sgenet 22 + - apm,xgene1-xgenet 23 + - apm,xgene2-sgenet 24 + - apm,xgene2-xgenet 25 + 26 + reg: 27 + maxItems: 3 28 + 29 + reg-names: 30 + items: 31 + - const: enet_csr 32 + - const: ring_csr 33 + - const: ring_cmd 34 + 35 + clocks: 36 + maxItems: 1 37 + 38 + dma-coherent: true 39 + 40 + interrupts: 41 + description: An rx and tx completion interrupt pair per queue 42 + minItems: 1 43 + maxItems: 16 44 + 45 + channel: 46 + description: Ethernet to CPU start channel number 47 + $ref: /schemas/types.yaml#/definitions/uint32 48 + 49 + port-id: 50 + description: Port number 51 + $ref: /schemas/types.yaml#/definitions/uint32 52 + maximum: 1 53 + 54 + tx-delay: 55 + description: Delay value for RGMII bridge TX clock 56 + $ref: /schemas/types.yaml#/definitions/uint32 57 + maximum: 7 58 + default: 4 59 + 60 + rx-delay: 61 + description: Delay value for RGMII bridge RX clock 62 + $ref: /schemas/types.yaml#/definitions/uint32 63 + maximum: 7 64 + default: 2 65 + 66 + rxlos-gpios: 67 + description: Input GPIO from SFP+ module indicating incoming signal 68 + maxItems: 1 69 + 70 + mdio: 71 + description: MDIO bus subnode 72 + $ref: mdio.yaml# 73 + unevaluatedProperties: false 74 + 75 + properties: 76 + compatible: 77 + const: apm,xgene-mdio 78 + 79 + required: 80 + - compatible 81 + 82 + required: 83 + - compatible 84 + - reg 85 + - interrupts 86 + 87 + unevaluatedProperties: false 88 + 89 + examples: 90 + - | 91 + ethernet@17020000 { 92 + compatible = "apm,xgene-enet"; 93 + reg = <0x17020000 0xd100>, 94 + <0x17030000 0x400>, 95 + <0x10000000 0x200>; 96 + reg-names = "enet_csr", "ring_csr", "ring_cmd"; 97 + interrupts = <0x0 0x3c 0x4>; 98 + channel = <0>; 99 + port-id = <0>; 100 + clocks = <&menetclk 0>; 101 + local-mac-address = [00 01 73 00 00 01]; 102 + phy-connection-type = "rgmii"; 103 + phy-handle = <&menetphy>; 104 + 105 + mdio { 106 + compatible = "apm,xgene-mdio"; 107 + #address-cells = <1>; 108 + #size-cells = <0>; 109 + 110 + menetphy: ethernet-phy@3 { 111 + compatible = "ethernet-phy-id001c.c915"; 112 + reg = <3>; 113 + }; 114 + }; 115 + };
-91
Documentation/devicetree/bindings/net/apm-xgene-enet.txt
··· 1 - APM X-Gene SoC Ethernet nodes 2 - 3 - Ethernet nodes are defined to describe on-chip ethernet interfaces in 4 - APM X-Gene SoC. 5 - 6 - Required properties for all the ethernet interfaces: 7 - - compatible: Should state binding information from the following list, 8 - - "apm,xgene-enet": RGMII based 1G interface 9 - - "apm,xgene1-sgenet": SGMII based 1G interface 10 - - "apm,xgene1-xgenet": XFI based 10G interface 11 - - reg: Address and length of the register set for the device. It contains the 12 - information of registers in the same order as described by reg-names 13 - - reg-names: Should contain the register set names 14 - - "enet_csr": Ethernet control and status register address space 15 - - "ring_csr": Descriptor ring control and status register address space 16 - - "ring_cmd": Descriptor ring command register address space 17 - - interrupts: Two interrupt specifiers can be specified. 18 - - First is the Rx interrupt. This irq is mandatory. 19 - - Second is the Tx completion interrupt. 20 - This is supported only on SGMII based 1GbE and 10GbE interfaces. 21 - - channel: Ethernet to CPU, start channel (prefetch buffer) number 22 - - Must map to the first irq and irqs must be sequential 23 - - port-id: Port number (0 or 1) 24 - - clocks: Reference to the clock entry. 25 - - local-mac-address: MAC address assigned to this device 26 - - phy-connection-type: Interface type between ethernet device and PHY device 27 - 28 - Required properties for ethernet interfaces that have external PHY: 29 - - phy-handle: Reference to a PHY node connected to this device 30 - 31 - - mdio: Device tree subnode with the following required properties: 32 - - compatible: Must be "apm,xgene-mdio". 33 - - #address-cells: Must be <1>. 34 - - #size-cells: Must be <0>. 35 - 36 - For the phy on the mdio bus, there must be a node with the following fields: 37 - - compatible: PHY identifier. Please refer ./phy.txt for the format. 38 - - reg: The ID number for the phy. 39 - 40 - Optional properties: 41 - - status: Should be "ok" or "disabled" for enabled/disabled. Default is "ok". 42 - - tx-delay: Delay value for RGMII bridge TX clock. 43 - Valid values are between 0 to 7, that maps to 44 - 417, 717, 1020, 1321, 1611, 1913, 2215, 2514 ps 45 - Default value is 4, which corresponds to 1611 ps 46 - - rx-delay: Delay value for RGMII bridge RX clock. 47 - Valid values are between 0 to 7, that maps to 48 - 273, 589, 899, 1222, 1480, 1806, 2147, 2464 ps 49 - Default value is 2, which corresponds to 899 ps 50 - - rxlos-gpios: Input gpio from SFP+ module to indicate availability of 51 - incoming signal. 52 - 53 - 54 - Example: 55 - menetclk: menetclk { 56 - compatible = "apm,xgene-device-clock"; 57 - clock-output-names = "menetclk"; 58 - status = "ok"; 59 - }; 60 - 61 - menet: ethernet@17020000 { 62 - compatible = "apm,xgene-enet"; 63 - status = "disabled"; 64 - reg = <0x0 0x17020000 0x0 0xd100>, 65 - <0x0 0x17030000 0x0 0x400>, 66 - <0x0 0x10000000 0x0 0x200>; 67 - reg-names = "enet_csr", "ring_csr", "ring_cmd"; 68 - interrupts = <0x0 0x3c 0x4>; 69 - port-id = <0>; 70 - clocks = <&menetclk 0>; 71 - local-mac-address = [00 01 73 00 00 01]; 72 - phy-connection-type = "rgmii"; 73 - phy-handle = <&menetphy>; 74 - mdio { 75 - compatible = "apm,xgene-mdio"; 76 - #address-cells = <1>; 77 - #size-cells = <0>; 78 - menetphy: menetphy@3 { 79 - compatible = "ethernet-phy-id001c.c915"; 80 - reg = <0x3>; 81 - }; 82 - 83 - }; 84 - }; 85 - 86 - /* Board-specific peripheral configurations */ 87 - &menet { 88 - tx-delay = <4>; 89 - rx-delay = <2>; 90 - status = "ok"; 91 - };
+1 -1
MAINTAINERS
··· 1886 1886 M: Keyur Chudgar <keyur@os.amperecomputing.com> 1887 1887 M: Quan Nguyen <quan@os.amperecomputing.com> 1888 1888 S: Maintained 1889 - F: Documentation/devicetree/bindings/net/apm-xgene-enet.txt 1889 + F: Documentation/devicetree/bindings/net/apm,xgene-enet.yaml 1890 1890 F: Documentation/devicetree/bindings/net/apm-xgene-mdio.txt 1891 1891 F: drivers/net/ethernet/apm/xgene/ 1892 1892 F: drivers/net/mdio/mdio-xgene.c