| * Rockchip AXI PCIe Endpoint Controller DT description |
| |
| Required properties: |
| - compatible: Should contain "rockchip,rk3399-pcie-ep" |
| - reg: Two register ranges as listed in the reg-names property |
| - reg-names: Must include the following names |
| - "apb-base" |
| - "mem-base" |
| - clocks: Must contain an entry for each entry in clock-names. |
| See ../clocks/clock-bindings.txt for details. |
| - clock-names: Must include the following entries: |
| - "aclk" |
| - "aclk-perf" |
| - "hclk" |
| - "pm" |
| - resets: Must contain seven entries for each entry in reset-names. |
| See ../reset/reset.txt for details. |
| - reset-names: Must include the following names |
| - "core" |
| - "mgmt" |
| - "mgmt-sticky" |
| - "pipe" |
| - "pm" |
| - "aclk" |
| - "pclk" |
| - pinctrl-names : The pin control state names |
| - pinctrl-0: The "default" pinctrl state |
| - phys: Must contain an phandle to a PHY for each entry in phy-names. |
| - phy-names: Must include 4 entries for all 4 lanes even if some of |
| them won't be used for your cases. Entries are of the form "pcie-phy-N": |
| where N ranges from 0 to 3. |
| (see example below and you MUST also refer to ../phy/rockchip-pcie-phy.txt |
| for changing the #phy-cells of phy node to support it) |
| - rockchip,max-outbound-regions: Maximum number of outbound regions |
| |
| Optional Property: |
| - num-lanes: number of lanes to use |
| - max-functions: Maximum number of functions that can be configured (default 1). |
| |
| pcie0-ep: pcie@f8000000 { |
| compatible = "rockchip,rk3399-pcie-ep"; |
| #address-cells = <3>; |
| #size-cells = <2>; |
| rockchip,max-outbound-regions = <16>; |
| clocks = <&cru ACLK_PCIE>, <&cru ACLK_PERF_PCIE>, |
| <&cru PCLK_PCIE>, <&cru SCLK_PCIE_PM>; |
| clock-names = "aclk", "aclk-perf", |
| "hclk", "pm"; |
| max-functions = /bits/ 8 <8>; |
| num-lanes = <4>; |
| reg = <0x0 0xfd000000 0x0 0x1000000>, <0x0 0x80000000 0x0 0x20000>; |
| reg-names = "apb-base", "mem-base"; |
| resets = <&cru SRST_PCIE_CORE>, <&cru SRST_PCIE_MGMT>, |
| <&cru SRST_PCIE_MGMT_STICKY>, <&cru SRST_PCIE_PIPE> , |
| <&cru SRST_PCIE_PM>, <&cru SRST_P_PCIE>, <&cru SRST_A_PCIE>; |
| reset-names = "core", "mgmt", "mgmt-sticky", "pipe", |
| "pm", "pclk", "aclk"; |
| phys = <&pcie_phy 0>, <&pcie_phy 1>, <&pcie_phy 2>, <&pcie_phy 3>; |
| phy-names = "pcie-phy-0", "pcie-phy-1", "pcie-phy-2", "pcie-phy-3"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pcie_clkreq>; |
| }; |