1*80e5f83cSHans de Goede/* 2*80e5f83cSHans de Goede * Copyright 2015 Stefan Roese <sr@denx.de> 3*80e5f83cSHans de Goede * 4*80e5f83cSHans de Goede * This file is dual-licensed: you can use it either under the terms 5*80e5f83cSHans de Goede * of the GPL or the X11 license, at your option. Note that this dual 6*80e5f83cSHans de Goede * licensing only applies to this file, and not this project as a 7*80e5f83cSHans de Goede * whole. 8*80e5f83cSHans de Goede * 9*80e5f83cSHans de Goede * a) This file is free software; you can redistribute it and/or 10*80e5f83cSHans de Goede * modify it under the terms of the GNU General Public License as 11*80e5f83cSHans de Goede * published by the Free Software Foundation; either version 2 of the 12*80e5f83cSHans de Goede * License, or (at your option) any later version. 13*80e5f83cSHans de Goede * 14*80e5f83cSHans de Goede * This file is distributed in the hope that it will be useful, 15*80e5f83cSHans de Goede * but WITHOUT ANY WARRANTY; without even the implied warranty of 16*80e5f83cSHans de Goede * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17*80e5f83cSHans de Goede * GNU General Public License for more details. 18*80e5f83cSHans de Goede * 19*80e5f83cSHans de Goede * Or, alternatively, 20*80e5f83cSHans de Goede * 21*80e5f83cSHans de Goede * b) Permission is hereby granted, free of charge, to any person 22*80e5f83cSHans de Goede * obtaining a copy of this software and associated documentation 23*80e5f83cSHans de Goede * files (the "Software"), to deal in the Software without 24*80e5f83cSHans de Goede * restriction, including without limitation the rights to use, 25*80e5f83cSHans de Goede * copy, modify, merge, publish, distribute, sublicense, and/or 26*80e5f83cSHans de Goede * sell copies of the Software, and to permit persons to whom the 27*80e5f83cSHans de Goede * Software is furnished to do so, subject to the following 28*80e5f83cSHans de Goede * conditions: 29*80e5f83cSHans de Goede * 30*80e5f83cSHans de Goede * The above copyright notice and this permission notice shall be 31*80e5f83cSHans de Goede * included in all copies or substantial portions of the Software. 32*80e5f83cSHans de Goede * 33*80e5f83cSHans de Goede * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34*80e5f83cSHans de Goede * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35*80e5f83cSHans de Goede * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36*80e5f83cSHans de Goede * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37*80e5f83cSHans de Goede * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38*80e5f83cSHans de Goede * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39*80e5f83cSHans de Goede * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40*80e5f83cSHans de Goede * OTHER DEALINGS IN THE SOFTWARE. 41*80e5f83cSHans de Goede */ 42*80e5f83cSHans de Goede 43*80e5f83cSHans de Goede/dts-v1/; 44*80e5f83cSHans de Goede#include "sun7i-a20.dtsi" 45*80e5f83cSHans de Goede#include "sunxi-common-regulators.dtsi" 46*80e5f83cSHans de Goede 47*80e5f83cSHans de Goede#include <dt-bindings/gpio/gpio.h> 48*80e5f83cSHans de Goede#include <dt-bindings/interrupt-controller/irq.h> 49*80e5f83cSHans de Goede#include <dt-bindings/pinctrl/sun4i-a10.h> 50*80e5f83cSHans de Goede 51*80e5f83cSHans de Goede/ { 52*80e5f83cSHans de Goede model = "ICnova-A20 SWAC"; 53*80e5f83cSHans de Goede compatible = "swac,icnova-a20-swac", "incircuit,icnova-a20", "allwinner,sun7i-a20"; 54*80e5f83cSHans de Goede 55*80e5f83cSHans de Goede aliases { 56*80e5f83cSHans de Goede serial0 = &uart0; 57*80e5f83cSHans de Goede }; 58*80e5f83cSHans de Goede 59*80e5f83cSHans de Goede chosen { 60*80e5f83cSHans de Goede stdout-path = "serial0:115200n8"; 61*80e5f83cSHans de Goede }; 62*80e5f83cSHans de Goede}; 63*80e5f83cSHans de Goede 64*80e5f83cSHans de Goede&cpu0 { 65*80e5f83cSHans de Goede cpu-supply = <®_dcdc2>; 66*80e5f83cSHans de Goede}; 67*80e5f83cSHans de Goede 68*80e5f83cSHans de Goede&ehci0 { 69*80e5f83cSHans de Goede status = "okay"; 70*80e5f83cSHans de Goede}; 71*80e5f83cSHans de Goede 72*80e5f83cSHans de Goede&ehci1 { 73*80e5f83cSHans de Goede status = "okay"; 74*80e5f83cSHans de Goede}; 75*80e5f83cSHans de Goede 76*80e5f83cSHans de Goede&gmac { 77*80e5f83cSHans de Goede pinctrl-names = "default"; 78*80e5f83cSHans de Goede pinctrl-0 = <&gmac_pins_mii_a>; 79*80e5f83cSHans de Goede phy = <&phy1>; 80*80e5f83cSHans de Goede phy-mode = "mii"; 81*80e5f83cSHans de Goede status = "okay"; 82*80e5f83cSHans de Goede 83*80e5f83cSHans de Goede phy1: ethernet-phy@1 { 84*80e5f83cSHans de Goede reg = <1>; 85*80e5f83cSHans de Goede }; 86*80e5f83cSHans de Goede}; 87*80e5f83cSHans de Goede 88*80e5f83cSHans de Goede&i2c0 { 89*80e5f83cSHans de Goede pinctrl-names = "default"; 90*80e5f83cSHans de Goede pinctrl-0 = <&i2c0_pins_a>; 91*80e5f83cSHans de Goede status = "okay"; 92*80e5f83cSHans de Goede 93*80e5f83cSHans de Goede axp209: pmic@34 { 94*80e5f83cSHans de Goede reg = <0x34>; 95*80e5f83cSHans de Goede interrupt-parent = <&nmi_intc>; 96*80e5f83cSHans de Goede interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 97*80e5f83cSHans de Goede }; 98*80e5f83cSHans de Goede}; 99*80e5f83cSHans de Goede 100*80e5f83cSHans de Goede&i2c1 { 101*80e5f83cSHans de Goede pinctrl-names = "default"; 102*80e5f83cSHans de Goede pinctrl-0 = <&i2c1_pins_a>; 103*80e5f83cSHans de Goede status = "okay"; 104*80e5f83cSHans de Goede}; 105*80e5f83cSHans de Goede 106*80e5f83cSHans de Goede&mmc0 { 107*80e5f83cSHans de Goede pinctrl-names = "default"; 108*80e5f83cSHans de Goede pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>; 109*80e5f83cSHans de Goede vmmc-supply = <®_vcc3v3>; 110*80e5f83cSHans de Goede bus-width = <4>; 111*80e5f83cSHans de Goede cd-gpios = <&pio 8 5 GPIO_ACTIVE_HIGH>; /* PI5 */ 112*80e5f83cSHans de Goede cd-inverted; 113*80e5f83cSHans de Goede status = "okay"; 114*80e5f83cSHans de Goede}; 115*80e5f83cSHans de Goede 116*80e5f83cSHans de Goede&ohci0 { 117*80e5f83cSHans de Goede status = "okay"; 118*80e5f83cSHans de Goede}; 119*80e5f83cSHans de Goede 120*80e5f83cSHans de Goede&ohci1 { 121*80e5f83cSHans de Goede status = "okay"; 122*80e5f83cSHans de Goede}; 123*80e5f83cSHans de Goede 124*80e5f83cSHans de Goede#include "axp209.dtsi" 125*80e5f83cSHans de Goede 126*80e5f83cSHans de Goede®_dcdc2 { 127*80e5f83cSHans de Goede regulator-always-on; 128*80e5f83cSHans de Goede regulator-min-microvolt = <1000000>; 129*80e5f83cSHans de Goede regulator-max-microvolt = <1400000>; 130*80e5f83cSHans de Goede regulator-name = "vdd-cpu"; 131*80e5f83cSHans de Goede}; 132*80e5f83cSHans de Goede 133*80e5f83cSHans de Goede®_dcdc3 { 134*80e5f83cSHans de Goede regulator-always-on; 135*80e5f83cSHans de Goede regulator-min-microvolt = <1000000>; 136*80e5f83cSHans de Goede regulator-max-microvolt = <1400000>; 137*80e5f83cSHans de Goede regulator-name = "vdd-int-dll"; 138*80e5f83cSHans de Goede}; 139*80e5f83cSHans de Goede 140*80e5f83cSHans de Goede®_ldo1 { 141*80e5f83cSHans de Goede regulator-name = "vdd-rtc"; 142*80e5f83cSHans de Goede}; 143*80e5f83cSHans de Goede 144*80e5f83cSHans de Goede®_ldo2 { 145*80e5f83cSHans de Goede regulator-always-on; 146*80e5f83cSHans de Goede regulator-min-microvolt = <3000000>; 147*80e5f83cSHans de Goede regulator-max-microvolt = <3000000>; 148*80e5f83cSHans de Goede regulator-name = "avcc"; 149*80e5f83cSHans de Goede}; 150*80e5f83cSHans de Goede 151*80e5f83cSHans de Goede®_usb1_vbus { 152*80e5f83cSHans de Goede status = "okay"; 153*80e5f83cSHans de Goede}; 154*80e5f83cSHans de Goede 155*80e5f83cSHans de Goede®_usb2_vbus { 156*80e5f83cSHans de Goede status = "okay"; 157*80e5f83cSHans de Goede}; 158*80e5f83cSHans de Goede 159*80e5f83cSHans de Goede&uart0 { 160*80e5f83cSHans de Goede pinctrl-names = "default"; 161*80e5f83cSHans de Goede pinctrl-0 = <&uart0_pins_a>; 162*80e5f83cSHans de Goede status = "okay"; 163*80e5f83cSHans de Goede}; 164*80e5f83cSHans de Goede 165*80e5f83cSHans de Goede&usbphy { 166*80e5f83cSHans de Goede usb1_vbus-supply = <®_usb1_vbus>; 167*80e5f83cSHans de Goede usb2_vbus-supply = <®_usb2_vbus>; 168*80e5f83cSHans de Goede status = "okay"; 169*80e5f83cSHans de Goede}; 170