~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/scripts/dtc/include-prefixes/arm64/ti/k3-am642-phyboard-electra-pcie-usb2.dtso

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0-only OR MIT
  2 /*
  3  * DT overlay for PCIe support (limits USB to 2.0/high-speed)
  4  *
  5  * Copyright (C) 2021 PHYTEC America, LLC - https://www.phytec.com
  6  * Author: Matt McKee <mmckee@phytec.com>
  7  *
  8  * Copyright (C) 2024 PHYTEC America, LLC - https://www.phytec.com
  9  * Author: Nathan Morrisson <nmorrisson@phytec.com>
 10  */
 11 
 12 /dts-v1/;
 13 /plugin/;
 14 
 15 #include <dt-bindings/gpio/gpio.h>
 16 #include <dt-bindings/phy/phy.h>
 17 #include <dt-bindings/phy/phy-cadence.h>
 18 
 19 #include "k3-pinctrl.h"
 20 #include "k3-serdes.h"
 21 
 22 &{/} {
 23         pcie_refclk0: pcie-refclk0 {
 24                 compatible = "gpio-gate-clock";
 25                 pinctrl-names = "default";
 26                 pinctrl-0 = <&pcie_usb_sel_pins_default>;
 27                 clocks = <&serdes_refclk>;
 28                 #clock-cells = <0>;
 29                 enable-gpios = <&main_gpio1 7 GPIO_ACTIVE_HIGH>;
 30         };
 31 };
 32 
 33 &main_pmx0 {
 34         pcie_usb_sel_pins_default: pcie-usb-sel-default-pins {
 35                 pinctrl-single,pins = <
 36                         AM64X_IOPAD(0x017c, PIN_OUTPUT, 7)      /* (T1) PRG0_PRU0_GPO7.GPIO1_7 */
 37                 >;
 38         };
 39 
 40         pcie_pins_default: pcie-default-pins {
 41                 pinctrl-single,pins = <
 42                         AM64X_IOPAD(0x0098, PIN_OUTPUT, 7)      /* (W19) GPMC0_WAIT0.GPIO0_37 */
 43                 >;
 44         };
 45 };
 46 
 47 &pcie0_rc {
 48         pinctrl-names = "default";
 49         pinctrl-0 = <&pcie_pins_default>;
 50         reset-gpios = <&main_gpio0 37 GPIO_ACTIVE_HIGH>;
 51         phys = <&serdes0_pcie_usb_link>;
 52         phy-names = "pcie-phy";
 53         num-lanes = <1>;
 54         status = "okay";
 55 };
 56 
 57 &serdes0_pcie_usb_link {
 58         cdns,phy-type = <PHY_TYPE_PCIE>;
 59 };
 60 
 61 &serdes_ln_ctrl {
 62         idle-states = <AM64_SERDES0_LANE0_PCIE0>;
 63 };
 64 
 65 &serdes0 {
 66         assigned-clock-parents = <&pcie_refclk0>, <&pcie_refclk0>, <&pcie_refclk0>;
 67 };
 68 
 69 &serdes_refclk {
 70         clock-frequency = <100000000>;
 71 };
 72 
 73 /*
 74  * Assign pcie_refclk0 to serdes_wiz0 as ext_ref_clk.
 75  * This makes sure that the clock generator gets enabled at the right time.
 76  */
 77 &serdes_wiz0 {
 78         clocks = <&k3_clks 162 0>, <&k3_clks 162 1>, <&pcie_refclk0>;
 79 };
 80 
 81 &usbss0 {
 82         ti,usb2-only;
 83 };
 84 
 85 &usb0 {
 86         maximum-speed = "high-speed";
 87 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php