1*993274f4SPeng Fan/* 2*993274f4SPeng Fan * Copyright 2015 Freescale Semiconductor, Inc. 3*993274f4SPeng Fan * Copyright 2016 Toradex AG 4*993274f4SPeng Fan * 5*993274f4SPeng Fan * This file is dual-licensed: you can use it either under the terms 6*993274f4SPeng Fan * of the GPL or the X11 license, at your option. Note that this dual 7*993274f4SPeng Fan * licensing only applies to this file, and not this project as a 8*993274f4SPeng Fan * whole. 9*993274f4SPeng Fan * 10*993274f4SPeng Fan * a) This file is free software; you can redistribute it and/or 11*993274f4SPeng Fan * modify it under the terms of the GNU General Public License as 12*993274f4SPeng Fan * published by the Free Software Foundation; either version 2 of the 13*993274f4SPeng Fan * License, or (at your option) any later version. 14*993274f4SPeng Fan * 15*993274f4SPeng Fan * This file is distributed in the hope that it will be useful, 16*993274f4SPeng Fan * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*993274f4SPeng Fan * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*993274f4SPeng Fan * GNU General Public License for more details. 19*993274f4SPeng Fan * 20*993274f4SPeng Fan * Or, alternatively, 21*993274f4SPeng Fan * 22*993274f4SPeng Fan * b) Permission is hereby granted, free of charge, to any person 23*993274f4SPeng Fan * obtaining a copy of this software and associated documentation 24*993274f4SPeng Fan * files (the "Software"), to deal in the Software without 25*993274f4SPeng Fan * restriction, including without limitation the rights to use, 26*993274f4SPeng Fan * copy, modify, merge, publish, distribute, sublicense, and/or 27*993274f4SPeng Fan * sell copies of the Software, and to permit persons to whom the 28*993274f4SPeng Fan * Software is furnished to do so, subject to the following 29*993274f4SPeng Fan * conditions: 30*993274f4SPeng Fan * 31*993274f4SPeng Fan * The above copyright notice and this permission notice shall be 32*993274f4SPeng Fan * included in all copies or substantial portions of the Software. 33*993274f4SPeng Fan * 34*993274f4SPeng Fan * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 35*993274f4SPeng Fan * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 36*993274f4SPeng Fan * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 37*993274f4SPeng Fan * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 38*993274f4SPeng Fan * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 39*993274f4SPeng Fan * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 40*993274f4SPeng Fan * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 41*993274f4SPeng Fan * OTHER DEALINGS IN THE SOFTWARE. 42*993274f4SPeng Fan */ 43*993274f4SPeng Fan 44*993274f4SPeng Fan#include "imx7s.dtsi" 45*993274f4SPeng Fan 46*993274f4SPeng Fan/ { 47*993274f4SPeng Fan cpus { 48*993274f4SPeng Fan cpu0: cpu@0 { 49*993274f4SPeng Fan operating-points = < 50*993274f4SPeng Fan /* KHz uV */ 51*993274f4SPeng Fan 996000 1075000 52*993274f4SPeng Fan 792000 975000 53*993274f4SPeng Fan >; 54*993274f4SPeng Fan clock-frequency = <996000000>; 55*993274f4SPeng Fan }; 56*993274f4SPeng Fan 57*993274f4SPeng Fan cpu1: cpu@1 { 58*993274f4SPeng Fan compatible = "arm,cortex-a7"; 59*993274f4SPeng Fan device_type = "cpu"; 60*993274f4SPeng Fan reg = <1>; 61*993274f4SPeng Fan clock-frequency = <996000000>; 62*993274f4SPeng Fan }; 63*993274f4SPeng Fan }; 64*993274f4SPeng Fan 65*993274f4SPeng Fan soc { 66*993274f4SPeng Fan etm@3007d000 { 67*993274f4SPeng Fan compatible = "arm,coresight-etm3x", "arm,primecell"; 68*993274f4SPeng Fan reg = <0x3007d000 0x1000>; 69*993274f4SPeng Fan 70*993274f4SPeng Fan /* 71*993274f4SPeng Fan * System will hang if added nosmp in kernel command line 72*993274f4SPeng Fan * without arm,primecell-periphid because amba bus try to 73*993274f4SPeng Fan * read id and core1 power off at this time. 74*993274f4SPeng Fan */ 75*993274f4SPeng Fan arm,primecell-periphid = <0xbb956>; 76*993274f4SPeng Fan cpu = <&cpu1>; 77*993274f4SPeng Fan clocks = <&clks IMX7D_MAIN_AXI_ROOT_CLK>; 78*993274f4SPeng Fan clock-names = "apb_pclk"; 79*993274f4SPeng Fan 80*993274f4SPeng Fan port { 81*993274f4SPeng Fan etm1_out_port: endpoint { 82*993274f4SPeng Fan remote-endpoint = <&ca_funnel_in_port1>; 83*993274f4SPeng Fan }; 84*993274f4SPeng Fan }; 85*993274f4SPeng Fan }; 86*993274f4SPeng Fan }; 87*993274f4SPeng Fan}; 88*993274f4SPeng Fan 89*993274f4SPeng Fan&aips3 { 90*993274f4SPeng Fan usbotg2: usb@30b20000 { 91*993274f4SPeng Fan compatible = "fsl,imx7d-usb", "fsl,imx27-usb"; 92*993274f4SPeng Fan reg = <0x30b20000 0x200>; 93*993274f4SPeng Fan interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 94*993274f4SPeng Fan clocks = <&clks IMX7D_USB_CTRL_CLK>; 95*993274f4SPeng Fan fsl,usbphy = <&usbphynop2>; 96*993274f4SPeng Fan fsl,usbmisc = <&usbmisc2 0>; 97*993274f4SPeng Fan phy-clkgate-delay-us = <400>; 98*993274f4SPeng Fan status = "disabled"; 99*993274f4SPeng Fan }; 100*993274f4SPeng Fan 101*993274f4SPeng Fan usbmisc2: usbmisc@30b20200 { 102*993274f4SPeng Fan #index-cells = <1>; 103*993274f4SPeng Fan compatible = "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc"; 104*993274f4SPeng Fan reg = <0x30b20200 0x200>; 105*993274f4SPeng Fan }; 106*993274f4SPeng Fan 107*993274f4SPeng Fan usbphynop2: usbphynop2 { 108*993274f4SPeng Fan compatible = "usb-nop-xceiv"; 109*993274f4SPeng Fan clocks = <&clks IMX7D_USB_PHY2_CLK>; 110*993274f4SPeng Fan clock-names = "main_clk"; 111*993274f4SPeng Fan }; 112*993274f4SPeng Fan 113*993274f4SPeng Fan fec2: ethernet@30bf0000 { 114*993274f4SPeng Fan compatible = "fsl,imx7d-fec", "fsl,imx6sx-fec"; 115*993274f4SPeng Fan reg = <0x30bf0000 0x10000>; 116*993274f4SPeng Fan interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 117*993274f4SPeng Fan <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, 118*993274f4SPeng Fan <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 119*993274f4SPeng Fan clocks = <&clks IMX7D_ENET_AXI_ROOT_CLK>, 120*993274f4SPeng Fan <&clks IMX7D_ENET_AXI_ROOT_CLK>, 121*993274f4SPeng Fan <&clks IMX7D_ENET2_TIME_ROOT_CLK>, 122*993274f4SPeng Fan <&clks IMX7D_PLL_ENET_MAIN_125M_CLK>, 123*993274f4SPeng Fan <&clks IMX7D_ENET_PHY_REF_ROOT_CLK>; 124*993274f4SPeng Fan clock-names = "ipg", "ahb", "ptp", 125*993274f4SPeng Fan "enet_clk_ref", "enet_out"; 126*993274f4SPeng Fan fsl,num-tx-queues=<3>; 127*993274f4SPeng Fan fsl,num-rx-queues=<3>; 128*993274f4SPeng Fan status = "disabled"; 129*993274f4SPeng Fan }; 130*993274f4SPeng Fan}; 131*993274f4SPeng Fan 132*993274f4SPeng Fan&ca_funnel_ports { 133*993274f4SPeng Fan port@1 { 134*993274f4SPeng Fan reg = <1>; 135*993274f4SPeng Fan ca_funnel_in_port1: endpoint { 136*993274f4SPeng Fan slave-mode; 137*993274f4SPeng Fan remote-endpoint = <&etm1_out_port>; 138*993274f4SPeng Fan }; 139*993274f4SPeng Fan }; 140*993274f4SPeng Fan}; 141