1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright (C) 2015 Altera Corporation <www.altera.com> 4*f126890aSEmmanuel Vadot */ 5*f126890aSEmmanuel Vadot#include "socfpga_arria10.dtsi" 6*f126890aSEmmanuel Vadot 7*f126890aSEmmanuel Vadot/ { 8*f126890aSEmmanuel Vadot model = "Altera SOCFPGA Arria 10"; 9*f126890aSEmmanuel Vadot compatible = "altr,socfpga-arria10-socdk", "altr,socfpga-arria10", "altr,socfpga"; 10*f126890aSEmmanuel Vadot 11*f126890aSEmmanuel Vadot aliases { 12*f126890aSEmmanuel Vadot ethernet0 = &gmac0; 13*f126890aSEmmanuel Vadot serial0 = &uart1; 14*f126890aSEmmanuel Vadot }; 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot chosen { 17*f126890aSEmmanuel Vadot bootargs = "earlyprintk"; 18*f126890aSEmmanuel Vadot stdout-path = "serial0:115200n8"; 19*f126890aSEmmanuel Vadot }; 20*f126890aSEmmanuel Vadot 21*f126890aSEmmanuel Vadot memory@0 { 22*f126890aSEmmanuel Vadot name = "memory"; 23*f126890aSEmmanuel Vadot device_type = "memory"; 24*f126890aSEmmanuel Vadot reg = <0x0 0x40000000>; /* 1GB */ 25*f126890aSEmmanuel Vadot }; 26*f126890aSEmmanuel Vadot 27*f126890aSEmmanuel Vadot a10leds { 28*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 29*f126890aSEmmanuel Vadot 30*f126890aSEmmanuel Vadot a10sr_led0 { 31*f126890aSEmmanuel Vadot label = "a10sr-led0"; 32*f126890aSEmmanuel Vadot gpios = <&a10sr_gpio 0 1>; 33*f126890aSEmmanuel Vadot }; 34*f126890aSEmmanuel Vadot 35*f126890aSEmmanuel Vadot a10sr_led1 { 36*f126890aSEmmanuel Vadot label = "a10sr-led1"; 37*f126890aSEmmanuel Vadot gpios = <&a10sr_gpio 1 1>; 38*f126890aSEmmanuel Vadot }; 39*f126890aSEmmanuel Vadot 40*f126890aSEmmanuel Vadot a10sr_led2 { 41*f126890aSEmmanuel Vadot label = "a10sr-led2"; 42*f126890aSEmmanuel Vadot gpios = <&a10sr_gpio 2 1>; 43*f126890aSEmmanuel Vadot }; 44*f126890aSEmmanuel Vadot 45*f126890aSEmmanuel Vadot a10sr_led3 { 46*f126890aSEmmanuel Vadot label = "a10sr-led3"; 47*f126890aSEmmanuel Vadot gpios = <&a10sr_gpio 3 1>; 48*f126890aSEmmanuel Vadot }; 49*f126890aSEmmanuel Vadot }; 50*f126890aSEmmanuel Vadot 51*f126890aSEmmanuel Vadot ref_033v: 033-v-ref { 52*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 53*f126890aSEmmanuel Vadot regulator-name = "0.33V"; 54*f126890aSEmmanuel Vadot regulator-min-microvolt = <330000>; 55*f126890aSEmmanuel Vadot regulator-max-microvolt = <330000>; 56*f126890aSEmmanuel Vadot }; 57*f126890aSEmmanuel Vadot 58*f126890aSEmmanuel Vadot soc { 59*f126890aSEmmanuel Vadot clkmgr@ffd04000 { 60*f126890aSEmmanuel Vadot clocks { 61*f126890aSEmmanuel Vadot osc1 { 62*f126890aSEmmanuel Vadot clock-frequency = <25000000>; 63*f126890aSEmmanuel Vadot }; 64*f126890aSEmmanuel Vadot }; 65*f126890aSEmmanuel Vadot }; 66*f126890aSEmmanuel Vadot }; 67*f126890aSEmmanuel Vadot}; 68*f126890aSEmmanuel Vadot 69*f126890aSEmmanuel Vadot&gmac0 { 70*f126890aSEmmanuel Vadot phy-mode = "rgmii"; 71*f126890aSEmmanuel Vadot phy-addr = <0xffffffff>; /* probe for phy addr */ 72*f126890aSEmmanuel Vadot 73*f126890aSEmmanuel Vadot /* 74*f126890aSEmmanuel Vadot * These skews assume the user's FPGA design is adding 600ps of delay 75*f126890aSEmmanuel Vadot * for TX_CLK on Arria 10. 76*f126890aSEmmanuel Vadot * 77*f126890aSEmmanuel Vadot * All skews are offset since hardware skew values for the ksz9031 78*f126890aSEmmanuel Vadot * range from a negative skew to a positive skew. 79*f126890aSEmmanuel Vadot * See the micrel-ksz90x1.txt Documentation file for details. 80*f126890aSEmmanuel Vadot */ 81*f126890aSEmmanuel Vadot txd0-skew-ps = <0>; /* -420ps */ 82*f126890aSEmmanuel Vadot txd1-skew-ps = <0>; /* -420ps */ 83*f126890aSEmmanuel Vadot txd2-skew-ps = <0>; /* -420ps */ 84*f126890aSEmmanuel Vadot txd3-skew-ps = <0>; /* -420ps */ 85*f126890aSEmmanuel Vadot rxd0-skew-ps = <420>; /* 0ps */ 86*f126890aSEmmanuel Vadot rxd1-skew-ps = <420>; /* 0ps */ 87*f126890aSEmmanuel Vadot rxd2-skew-ps = <420>; /* 0ps */ 88*f126890aSEmmanuel Vadot rxd3-skew-ps = <420>; /* 0ps */ 89*f126890aSEmmanuel Vadot txen-skew-ps = <0>; /* -420ps */ 90*f126890aSEmmanuel Vadot txc-skew-ps = <1860>; /* 960ps */ 91*f126890aSEmmanuel Vadot rxdv-skew-ps = <420>; /* 0ps */ 92*f126890aSEmmanuel Vadot rxc-skew-ps = <1680>; /* 780ps */ 93*f126890aSEmmanuel Vadot max-frame-size = <3800>; 94*f126890aSEmmanuel Vadot status = "okay"; 95*f126890aSEmmanuel Vadot}; 96*f126890aSEmmanuel Vadot 97*f126890aSEmmanuel Vadot&gpio1 { 98*f126890aSEmmanuel Vadot status = "okay"; 99*f126890aSEmmanuel Vadot}; 100*f126890aSEmmanuel Vadot 101*f126890aSEmmanuel Vadot&spi1 { 102*f126890aSEmmanuel Vadot status = "okay"; 103*f126890aSEmmanuel Vadot 104*f126890aSEmmanuel Vadot resource-manager@0 { 105*f126890aSEmmanuel Vadot compatible = "altr,a10sr"; 106*f126890aSEmmanuel Vadot reg = <0>; 107*f126890aSEmmanuel Vadot spi-max-frequency = <100000>; 108*f126890aSEmmanuel Vadot /* low-level active IRQ at GPIO1_5 */ 109*f126890aSEmmanuel Vadot interrupt-parent = <&portb>; 110*f126890aSEmmanuel Vadot interrupts = <5 IRQ_TYPE_LEVEL_LOW>; 111*f126890aSEmmanuel Vadot interrupt-controller; 112*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 113*f126890aSEmmanuel Vadot 114*f126890aSEmmanuel Vadot a10sr_gpio: gpio-controller { 115*f126890aSEmmanuel Vadot compatible = "altr,a10sr-gpio"; 116*f126890aSEmmanuel Vadot gpio-controller; 117*f126890aSEmmanuel Vadot #gpio-cells = <2>; 118*f126890aSEmmanuel Vadot }; 119*f126890aSEmmanuel Vadot 120*f126890aSEmmanuel Vadot a10sr_rst: reset-controller { 121*f126890aSEmmanuel Vadot compatible = "altr,a10sr-reset"; 122*f126890aSEmmanuel Vadot #reset-cells = <1>; 123*f126890aSEmmanuel Vadot }; 124*f126890aSEmmanuel Vadot }; 125*f126890aSEmmanuel Vadot}; 126*f126890aSEmmanuel Vadot 127*f126890aSEmmanuel Vadot&i2c1 { 128*f126890aSEmmanuel Vadot status = "okay"; 129*f126890aSEmmanuel Vadot 130*f126890aSEmmanuel Vadot /* 131*f126890aSEmmanuel Vadot * adjust the falling times to decrease the i2c frequency to 50Khz 132*f126890aSEmmanuel Vadot * because the LCD module does not work at the standard 100Khz 133*f126890aSEmmanuel Vadot */ 134*f126890aSEmmanuel Vadot clock-frequency = <100000>; 135*f126890aSEmmanuel Vadot i2c-sda-falling-time-ns = <6000>; 136*f126890aSEmmanuel Vadot i2c-scl-falling-time-ns = <6000>; 137*f126890aSEmmanuel Vadot 138*f126890aSEmmanuel Vadot adc@14 { 139*f126890aSEmmanuel Vadot compatible = "lltc,ltc2497"; 140*f126890aSEmmanuel Vadot reg = <0x14>; 141*f126890aSEmmanuel Vadot vref-supply = <&ref_033v>; 142*f126890aSEmmanuel Vadot }; 143*f126890aSEmmanuel Vadot 144*f126890aSEmmanuel Vadot adc@16 { 145*f126890aSEmmanuel Vadot compatible = "lltc,ltc2497"; 146*f126890aSEmmanuel Vadot reg = <0x16>; 147*f126890aSEmmanuel Vadot vref-supply = <&ref_033v>; 148*f126890aSEmmanuel Vadot }; 149*f126890aSEmmanuel Vadot 150*f126890aSEmmanuel Vadot eeprom@51 { 151*f126890aSEmmanuel Vadot compatible = "atmel,24c32"; 152*f126890aSEmmanuel Vadot reg = <0x51>; 153*f126890aSEmmanuel Vadot pagesize = <32>; 154*f126890aSEmmanuel Vadot }; 155*f126890aSEmmanuel Vadot 156*f126890aSEmmanuel Vadot rtc@68 { 157*f126890aSEmmanuel Vadot compatible = "dallas,ds1339"; 158*f126890aSEmmanuel Vadot reg = <0x68>; 159*f126890aSEmmanuel Vadot }; 160*f126890aSEmmanuel Vadot 161*f126890aSEmmanuel Vadot ltc@5c { 162*f126890aSEmmanuel Vadot compatible = "ltc2977"; 163*f126890aSEmmanuel Vadot reg = <0x5c>; 164*f126890aSEmmanuel Vadot }; 165*f126890aSEmmanuel Vadot 166*f126890aSEmmanuel Vadot temp@4c { 167*f126890aSEmmanuel Vadot compatible = "maxim,max1619"; 168*f126890aSEmmanuel Vadot reg = <0x4c>; 169*f126890aSEmmanuel Vadot }; 170*f126890aSEmmanuel Vadot}; 171*f126890aSEmmanuel Vadot 172*f126890aSEmmanuel Vadot&uart1 { 173*f126890aSEmmanuel Vadot status = "okay"; 174*f126890aSEmmanuel Vadot}; 175*f126890aSEmmanuel Vadot 176*f126890aSEmmanuel Vadot&usb0 { 177*f126890aSEmmanuel Vadot status = "okay"; 178*f126890aSEmmanuel Vadot disable-over-current; 179*f126890aSEmmanuel Vadot}; 180*f126890aSEmmanuel Vadot 181*f126890aSEmmanuel Vadot&watchdog1 { 182*f126890aSEmmanuel Vadot status = "okay"; 183*f126890aSEmmanuel Vadot}; 184