mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
dt-bindings: PCI: Add binding for Toshiba TC9563 PCIe switch
Add a device tree binding for the Toshiba TC9563 PCIe switch, which provides an Ethernet MAC integrated to the 3rd downstream port and two downstream PCIe ports. Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Acked-by: Manivannan Sadhasivam <mani@kernel.org> Link: https://patch.msgid.link/20251101-tc9563-v9-1-de3429f7787a@oss.qualcomm.com
This commit is contained in:
parent
3a86608788
commit
26f3ac8848
179
Documentation/devicetree/bindings/pci/toshiba,tc9563.yaml
Normal file
179
Documentation/devicetree/bindings/pci/toshiba,tc9563.yaml
Normal file
|
|
@ -0,0 +1,179 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/pci/toshiba,tc9563.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Toshiba TC9563 PCIe switch
|
||||
|
||||
maintainers:
|
||||
- Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
|
||||
|
||||
description: |
|
||||
Toshiba TC9563 PCIe switch has one upstream and three downstream ports.
|
||||
The 3rd downstream port has integrated endpoint device of Ethernet MAC.
|
||||
Other two downstream ports are supposed to connect to external device.
|
||||
|
||||
The TC9563 PCIe switch can be configured through I2C interface before
|
||||
PCIe link is established to change FTS, ASPM related entry delays,
|
||||
tx amplitude etc for better power efficiency and functionality.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- pci1179,0623
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
resx-gpios:
|
||||
maxItems: 1
|
||||
description:
|
||||
GPIO controlling the RESX# pin.
|
||||
|
||||
vdd18-supply: true
|
||||
|
||||
vdd09-supply: true
|
||||
|
||||
vddc-supply: true
|
||||
|
||||
vddio1-supply: true
|
||||
|
||||
vddio2-supply: true
|
||||
|
||||
vddio18-supply: true
|
||||
|
||||
i2c-parent:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description:
|
||||
A phandle to the parent I2C node and the slave address of the device
|
||||
used to configure tc9563 to change FTS, tx amplitude etc.
|
||||
items:
|
||||
- description: Phandle to the I2C controller node
|
||||
- description: I2C slave address
|
||||
|
||||
patternProperties:
|
||||
"^pcie@[1-3],0$":
|
||||
description:
|
||||
child nodes describing the internal downstream ports of
|
||||
the tc9563 switch.
|
||||
type: object
|
||||
allOf:
|
||||
- $ref: "#/$defs/tc9563-node"
|
||||
- $ref: /schemas/pci/pci-pci-bridge.yaml#
|
||||
unevaluatedProperties: false
|
||||
|
||||
$defs:
|
||||
tc9563-node:
|
||||
type: object
|
||||
|
||||
properties:
|
||||
toshiba,tx-amplitude-microvolt:
|
||||
description:
|
||||
Change Tx Margin setting for low power consumption.
|
||||
|
||||
toshiba,no-dfe-support:
|
||||
type: boolean
|
||||
description:
|
||||
Disable DFE (Decision Feedback Equalizer), which mitigates
|
||||
intersymbol interference and some reflections caused by
|
||||
impedance mismatches.
|
||||
|
||||
required:
|
||||
- resx-gpios
|
||||
- vdd18-supply
|
||||
- vdd09-supply
|
||||
- vddc-supply
|
||||
- vddio1-supply
|
||||
- vddio2-supply
|
||||
- vddio18-supply
|
||||
- i2c-parent
|
||||
|
||||
allOf:
|
||||
- $ref: "#/$defs/tc9563-node"
|
||||
- $ref: /schemas/pci/pci-bus-common.yaml#
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
pcie {
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
|
||||
pcie@0 {
|
||||
device_type = "pci";
|
||||
reg = <0x0 0x0 0x0 0x0 0x0>;
|
||||
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
bus-range = <0x01 0xff>;
|
||||
|
||||
pcie@0,0 {
|
||||
compatible = "pci1179,0623";
|
||||
|
||||
reg = <0x10000 0x0 0x0 0x0 0x0>;
|
||||
device_type = "pci";
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
bus-range = <0x02 0xff>;
|
||||
|
||||
i2c-parent = <&qup_i2c 0x77>;
|
||||
|
||||
vdd18-supply = <&vdd>;
|
||||
vdd09-supply = <&vdd>;
|
||||
vddc-supply = <&vdd>;
|
||||
vddio1-supply = <&vdd>;
|
||||
vddio2-supply = <&vdd>;
|
||||
vddio18-supply = <&vdd>;
|
||||
|
||||
resx-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
|
||||
|
||||
pcie@1,0 {
|
||||
compatible = "pciclass,0604";
|
||||
reg = <0x20800 0x0 0x0 0x0 0x0>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
ranges;
|
||||
bus-range = <0x03 0xff>;
|
||||
|
||||
toshiba,no-dfe-support;
|
||||
};
|
||||
|
||||
pcie@2,0 {
|
||||
compatible = "pciclass,0604";
|
||||
reg = <0x21000 0x0 0x0 0x0 0x0>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
ranges;
|
||||
bus-range = <0x04 0xff>;
|
||||
};
|
||||
|
||||
pcie@3,0 {
|
||||
compatible = "pciclass,0604";
|
||||
reg = <0x21800 0x0 0x0 0x0 0x0>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
device_type = "pci";
|
||||
ranges;
|
||||
bus-range = <0x05 0xff>;
|
||||
|
||||
toshiba,tx-amplitude-microvolt = <10>;
|
||||
|
||||
ethernet@0,0 {
|
||||
reg = <0x50000 0x0 0x0 0x0 0x0>;
|
||||
};
|
||||
|
||||
ethernet@0,1 {
|
||||
reg = <0x50100 0x0 0x0 0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user