1*4157c472SMarek Vasut/* 2*4157c472SMarek Vasut * Device Tree Source for the M3ULCB (R-Car Starter Kit Pro) board 3*4157c472SMarek Vasut * 4*4157c472SMarek Vasut * Copyright (C) 2016 Renesas Electronics Corp. 5*4157c472SMarek Vasut * Copyright (C) 2016 Cogent Embedded, Inc. 6*4157c472SMarek Vasut * 7*4157c472SMarek Vasut * This file is licensed under the terms of the GNU General Public License 8*4157c472SMarek Vasut * version 2. This program is licensed "as is" without any warranty of any 9*4157c472SMarek Vasut * kind, whether express or implied. 10*4157c472SMarek Vasut */ 11*4157c472SMarek Vasut 12*4157c472SMarek Vasut/dts-v1/; 13*4157c472SMarek Vasut#include "r8a7796.dtsi" 14*4157c472SMarek Vasut#include <dt-bindings/gpio/gpio.h> 15*4157c472SMarek Vasut#include <dt-bindings/input/input.h> 16*4157c472SMarek Vasut 17*4157c472SMarek Vasut/ { 18*4157c472SMarek Vasut model = "Renesas M3ULCB board based on r8a7796"; 19*4157c472SMarek Vasut compatible = "renesas,m3ulcb", "renesas,r8a7796"; 20*4157c472SMarek Vasut 21*4157c472SMarek Vasut aliases { 22*4157c472SMarek Vasut serial0 = &scif2; 23*4157c472SMarek Vasut }; 24*4157c472SMarek Vasut 25*4157c472SMarek Vasut chosen { 26*4157c472SMarek Vasut stdout-path = "serial0:115200n8"; 27*4157c472SMarek Vasut }; 28*4157c472SMarek Vasut 29*4157c472SMarek Vasut memory@48000000 { 30*4157c472SMarek Vasut device_type = "memory"; 31*4157c472SMarek Vasut /* first 128MB is reserved for secure area. */ 32*4157c472SMarek Vasut reg = <0x0 0x48000000 0x0 0x38000000>; 33*4157c472SMarek Vasut }; 34*4157c472SMarek Vasut 35*4157c472SMarek Vasut leds { 36*4157c472SMarek Vasut compatible = "gpio-leds"; 37*4157c472SMarek Vasut 38*4157c472SMarek Vasut led5 { 39*4157c472SMarek Vasut gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; 40*4157c472SMarek Vasut }; 41*4157c472SMarek Vasut led6 { 42*4157c472SMarek Vasut gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>; 43*4157c472SMarek Vasut }; 44*4157c472SMarek Vasut }; 45*4157c472SMarek Vasut 46*4157c472SMarek Vasut keyboard { 47*4157c472SMarek Vasut compatible = "gpio-keys"; 48*4157c472SMarek Vasut 49*4157c472SMarek Vasut key-1 { 50*4157c472SMarek Vasut linux,code = <KEY_1>; 51*4157c472SMarek Vasut label = "SW3"; 52*4157c472SMarek Vasut wakeup-source; 53*4157c472SMarek Vasut debounce-interval = <20>; 54*4157c472SMarek Vasut gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; 55*4157c472SMarek Vasut }; 56*4157c472SMarek Vasut }; 57*4157c472SMarek Vasut 58*4157c472SMarek Vasut reg_1p8v: regulator0 { 59*4157c472SMarek Vasut compatible = "regulator-fixed"; 60*4157c472SMarek Vasut regulator-name = "fixed-1.8V"; 61*4157c472SMarek Vasut regulator-min-microvolt = <1800000>; 62*4157c472SMarek Vasut regulator-max-microvolt = <1800000>; 63*4157c472SMarek Vasut regulator-boot-on; 64*4157c472SMarek Vasut regulator-always-on; 65*4157c472SMarek Vasut }; 66*4157c472SMarek Vasut 67*4157c472SMarek Vasut reg_3p3v: regulator1 { 68*4157c472SMarek Vasut compatible = "regulator-fixed"; 69*4157c472SMarek Vasut regulator-name = "fixed-3.3V"; 70*4157c472SMarek Vasut regulator-min-microvolt = <3300000>; 71*4157c472SMarek Vasut regulator-max-microvolt = <3300000>; 72*4157c472SMarek Vasut regulator-boot-on; 73*4157c472SMarek Vasut regulator-always-on; 74*4157c472SMarek Vasut }; 75*4157c472SMarek Vasut 76*4157c472SMarek Vasut vcc_sdhi0: regulator-vcc-sdhi0 { 77*4157c472SMarek Vasut compatible = "regulator-fixed"; 78*4157c472SMarek Vasut 79*4157c472SMarek Vasut regulator-name = "SDHI0 Vcc"; 80*4157c472SMarek Vasut regulator-min-microvolt = <3300000>; 81*4157c472SMarek Vasut regulator-max-microvolt = <3300000>; 82*4157c472SMarek Vasut 83*4157c472SMarek Vasut gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; 84*4157c472SMarek Vasut enable-active-high; 85*4157c472SMarek Vasut }; 86*4157c472SMarek Vasut 87*4157c472SMarek Vasut vccq_sdhi0: regulator-vccq-sdhi0 { 88*4157c472SMarek Vasut compatible = "regulator-gpio"; 89*4157c472SMarek Vasut 90*4157c472SMarek Vasut regulator-name = "SDHI0 VccQ"; 91*4157c472SMarek Vasut regulator-min-microvolt = <1800000>; 92*4157c472SMarek Vasut regulator-max-microvolt = <3300000>; 93*4157c472SMarek Vasut 94*4157c472SMarek Vasut gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 95*4157c472SMarek Vasut gpios-states = <1>; 96*4157c472SMarek Vasut states = <3300000 1 97*4157c472SMarek Vasut 1800000 0>; 98*4157c472SMarek Vasut }; 99*4157c472SMarek Vasut}; 100*4157c472SMarek Vasut 101*4157c472SMarek Vasut&extal_clk { 102*4157c472SMarek Vasut clock-frequency = <16666666>; 103*4157c472SMarek Vasut}; 104*4157c472SMarek Vasut 105*4157c472SMarek Vasut&extalr_clk { 106*4157c472SMarek Vasut clock-frequency = <32768>; 107*4157c472SMarek Vasut}; 108*4157c472SMarek Vasut 109*4157c472SMarek Vasut&pfc { 110*4157c472SMarek Vasut pinctrl-0 = <&scif_clk_pins>; 111*4157c472SMarek Vasut pinctrl-names = "default"; 112*4157c472SMarek Vasut 113*4157c472SMarek Vasut scif2_pins: scif2 { 114*4157c472SMarek Vasut groups = "scif2_data_a"; 115*4157c472SMarek Vasut function = "scif2"; 116*4157c472SMarek Vasut }; 117*4157c472SMarek Vasut 118*4157c472SMarek Vasut scif_clk_pins: scif_clk { 119*4157c472SMarek Vasut groups = "scif_clk_a"; 120*4157c472SMarek Vasut function = "scif_clk"; 121*4157c472SMarek Vasut }; 122*4157c472SMarek Vasut 123*4157c472SMarek Vasut sdhi0_pins: sd0 { 124*4157c472SMarek Vasut groups = "sdhi0_data4", "sdhi0_ctrl"; 125*4157c472SMarek Vasut function = "sdhi0"; 126*4157c472SMarek Vasut power-source = <3300>; 127*4157c472SMarek Vasut }; 128*4157c472SMarek Vasut 129*4157c472SMarek Vasut sdhi0_pins_uhs: sd0_uhs { 130*4157c472SMarek Vasut groups = "sdhi0_data4", "sdhi0_ctrl"; 131*4157c472SMarek Vasut function = "sdhi0"; 132*4157c472SMarek Vasut power-source = <1800>; 133*4157c472SMarek Vasut }; 134*4157c472SMarek Vasut 135*4157c472SMarek Vasut sdhi2_pins: sd2 { 136*4157c472SMarek Vasut groups = "sdhi2_data8", "sdhi2_ctrl"; 137*4157c472SMarek Vasut function = "sdhi2"; 138*4157c472SMarek Vasut power-source = <3300>; 139*4157c472SMarek Vasut }; 140*4157c472SMarek Vasut 141*4157c472SMarek Vasut sdhi2_pins_uhs: sd2_uhs { 142*4157c472SMarek Vasut groups = "sdhi2_data8", "sdhi2_ctrl"; 143*4157c472SMarek Vasut function = "sdhi2"; 144*4157c472SMarek Vasut power-source = <1800>; 145*4157c472SMarek Vasut }; 146*4157c472SMarek Vasut}; 147*4157c472SMarek Vasut 148*4157c472SMarek Vasut&sdhi0 { 149*4157c472SMarek Vasut pinctrl-0 = <&sdhi0_pins>; 150*4157c472SMarek Vasut pinctrl-1 = <&sdhi0_pins_uhs>; 151*4157c472SMarek Vasut pinctrl-names = "default", "state_uhs"; 152*4157c472SMarek Vasut 153*4157c472SMarek Vasut vmmc-supply = <&vcc_sdhi0>; 154*4157c472SMarek Vasut vqmmc-supply = <&vccq_sdhi0>; 155*4157c472SMarek Vasut cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 156*4157c472SMarek Vasut bus-width = <4>; 157*4157c472SMarek Vasut sd-uhs-sdr50; 158*4157c472SMarek Vasut status = "okay"; 159*4157c472SMarek Vasut}; 160*4157c472SMarek Vasut 161*4157c472SMarek Vasut&sdhi2 { 162*4157c472SMarek Vasut /* used for on-board 8bit eMMC */ 163*4157c472SMarek Vasut pinctrl-0 = <&sdhi2_pins>; 164*4157c472SMarek Vasut pinctrl-1 = <&sdhi2_pins_uhs>; 165*4157c472SMarek Vasut pinctrl-names = "default", "state_uhs"; 166*4157c472SMarek Vasut 167*4157c472SMarek Vasut vmmc-supply = <®_3p3v>; 168*4157c472SMarek Vasut vqmmc-supply = <®_1p8v>; 169*4157c472SMarek Vasut bus-width = <8>; 170*4157c472SMarek Vasut non-removable; 171*4157c472SMarek Vasut status = "okay"; 172*4157c472SMarek Vasut}; 173*4157c472SMarek Vasut 174*4157c472SMarek Vasut&scif2 { 175*4157c472SMarek Vasut pinctrl-0 = <&scif2_pins>; 176*4157c472SMarek Vasut pinctrl-names = "default"; 177*4157c472SMarek Vasut 178*4157c472SMarek Vasut status = "okay"; 179*4157c472SMarek Vasut}; 180*4157c472SMarek Vasut 181*4157c472SMarek Vasut&scif_clk { 182*4157c472SMarek Vasut clock-frequency = <14745600>; 183*4157c472SMarek Vasut}; 184*4157c472SMarek Vasut 185*4157c472SMarek Vasut&wdt0 { 186*4157c472SMarek Vasut timeout-sec = <60>; 187*4157c472SMarek Vasut status = "okay"; 188*4157c472SMarek Vasut}; 189