Skip to content

Commit

Permalink
dt-bindings: PCI: intel: Add YAML schemas for the PCIe RC controller
Browse files Browse the repository at this point in the history
Add YAML schemas for PCIe RC controller on Intel Gateway SoCs
which is Synopsys DesignWare based PCIe core.

Signed-off-by: Dilip Kota <eswara.kota@linux.intel.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Reviewed-by: Rob Herring <robh@kernel.org>
  • Loading branch information
Dilip Kota authored and Lorenzo Pieralisi committed Dec 9, 2019
1 parent e42617b commit e54ea45
Showing 1 changed file with 138 additions and 0 deletions.
138 changes: 138 additions & 0 deletions Documentation/devicetree/bindings/pci/intel-gw-pcie.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pci/intel-gw-pcie.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: PCIe RC controller on Intel Gateway SoCs

maintainers:
- Dilip Kota <eswara.kota@linux.intel.com>

properties:
compatible:
items:
- const: intel,lgm-pcie
- const: snps,dw-pcie

device_type:
const: pci

"#address-cells":
const: 3

"#size-cells":
const: 2

reg:
items:
- description: Controller control and status registers.
- description: PCIe configuration registers.
- description: Controller application registers.

reg-names:
items:
- const: dbi
- const: config
- const: app

ranges:
maxItems: 1

resets:
maxItems: 1

clocks:
maxItems: 1

phys:
maxItems: 1

phy-names:
const: pcie

reset-gpios:
maxItems: 1

linux,pci-domain: true

num-lanes:
maximum: 2
description: Number of lanes to use for this port.

'#interrupt-cells':
const: 1

interrupt-map-mask:
description: Standard PCI IRQ mapping properties.

interrupt-map:
description: Standard PCI IRQ mapping properties.

max-link-speed:
description: Specify PCI Gen for link capability.
allOf:
- $ref: /schemas/types.yaml#/definitions/uint32
- enum: [ 1, 2, 3, 4 ]
- default: 1

bus-range:
description: Range of bus numbers associated with this controller.

reset-assert-ms:
description: |
Delay after asserting reset to the PCIe device.
maximum: 500
default: 100

required:
- compatible
- device_type
- "#address-cells"
- "#size-cells"
- reg
- reg-names
- ranges
- resets
- clocks
- phys
- phy-names
- reset-gpios
- '#interrupt-cells'
- interrupt-map
- interrupt-map-mask

additionalProperties: false

examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/clock/intel,lgm-clk.h>
pcie10: pcie@d0e00000 {
compatible = "intel,lgm-pcie", "snps,dw-pcie";
device_type = "pci";
#address-cells = <3>;
#size-cells = <2>;
reg = <0xd0e00000 0x1000>,
<0xd2000000 0x800000>,
<0xd0a41000 0x1000>;
reg-names = "dbi", "config", "app";
linux,pci-domain = <0>;
max-link-speed = <4>;
bus-range = <0x00 0x08>;
interrupt-parent = <&ioapic1>;
#interrupt-cells = <1>;
interrupt-map-mask = <0 0 0 0x7>;
interrupt-map = <0 0 0 1 &ioapic1 27 1>,
<0 0 0 2 &ioapic1 28 1>,
<0 0 0 3 &ioapic1 29 1>,
<0 0 0 4 &ioapic1 30 1>;
ranges = <0x02000000 0 0xd4000000 0xd4000000 0 0x04000000>;
resets = <&rcu0 0x50 0>;
clocks = <&cgu0 LGM_GCLK_PCIE10>;
phys = <&cb0phy0>;
phy-names = "pcie";
reset-assert-ms = <500>;
reset-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
num-lanes = <2>;
};

0 comments on commit e54ea45

Please sign in to comment.