1*5076da2aSCristian Ciocaltea// SPDX-License-Identifier: GPL-2.0 OR MIT 2*5076da2aSCristian Ciocaltea/* 3*5076da2aSCristian Ciocaltea * Copyright (C) 2021 StarFive Technology Co., Ltd. 4*5076da2aSCristian Ciocaltea * Copyright (C) 2021 Emil Renner Berthing <kernel@esmil.dk> 5*5076da2aSCristian Ciocaltea */ 6*5076da2aSCristian Ciocaltea 7*5076da2aSCristian Ciocaltea/dts-v1/; 8*5076da2aSCristian Ciocaltea#include "jh7100.dtsi" 9*5076da2aSCristian Ciocaltea#include <dt-bindings/gpio/gpio.h> 10*5076da2aSCristian Ciocaltea#include <dt-bindings/leds/common.h> 11*5076da2aSCristian Ciocaltea#include <dt-bindings/pinctrl/pinctrl-starfive-jh7100.h> 12*5076da2aSCristian Ciocaltea 13*5076da2aSCristian Ciocaltea/ { 14*5076da2aSCristian Ciocaltea aliases { 15*5076da2aSCristian Ciocaltea serial0 = &uart3; 16*5076da2aSCristian Ciocaltea }; 17*5076da2aSCristian Ciocaltea 18*5076da2aSCristian Ciocaltea chosen { 19*5076da2aSCristian Ciocaltea stdout-path = "serial0:115200n8"; 20*5076da2aSCristian Ciocaltea }; 21*5076da2aSCristian Ciocaltea 22*5076da2aSCristian Ciocaltea cpus { 23*5076da2aSCristian Ciocaltea timebase-frequency = <6250000>; 24*5076da2aSCristian Ciocaltea }; 25*5076da2aSCristian Ciocaltea 26*5076da2aSCristian Ciocaltea memory@80000000 { 27*5076da2aSCristian Ciocaltea device_type = "memory"; 28*5076da2aSCristian Ciocaltea reg = <0x0 0x80000000 0x2 0x0>; 29*5076da2aSCristian Ciocaltea }; 30*5076da2aSCristian Ciocaltea 31*5076da2aSCristian Ciocaltea leds { 32*5076da2aSCristian Ciocaltea compatible = "gpio-leds"; 33*5076da2aSCristian Ciocaltea 34*5076da2aSCristian Ciocaltea led-ack { 35*5076da2aSCristian Ciocaltea gpios = <&gpio 43 GPIO_ACTIVE_HIGH>; 36*5076da2aSCristian Ciocaltea color = <LED_COLOR_ID_GREEN>; 37*5076da2aSCristian Ciocaltea function = LED_FUNCTION_HEARTBEAT; 38*5076da2aSCristian Ciocaltea linux,default-trigger = "heartbeat"; 39*5076da2aSCristian Ciocaltea label = "ack"; 40*5076da2aSCristian Ciocaltea }; 41*5076da2aSCristian Ciocaltea }; 42*5076da2aSCristian Ciocaltea}; 43*5076da2aSCristian Ciocaltea 44*5076da2aSCristian Ciocaltea&gpio { 45*5076da2aSCristian Ciocaltea i2c0_pins: i2c0-0 { 46*5076da2aSCristian Ciocaltea i2c-pins { 47*5076da2aSCristian Ciocaltea pinmux = <GPIOMUX(62, GPO_LOW, 48*5076da2aSCristian Ciocaltea GPO_I2C0_PAD_SCK_OEN, 49*5076da2aSCristian Ciocaltea GPI_I2C0_PAD_SCK_IN)>, 50*5076da2aSCristian Ciocaltea <GPIOMUX(61, GPO_LOW, 51*5076da2aSCristian Ciocaltea GPO_I2C0_PAD_SDA_OEN, 52*5076da2aSCristian Ciocaltea GPI_I2C0_PAD_SDA_IN)>; 53*5076da2aSCristian Ciocaltea bias-disable; /* external pull-up */ 54*5076da2aSCristian Ciocaltea input-enable; 55*5076da2aSCristian Ciocaltea input-schmitt-enable; 56*5076da2aSCristian Ciocaltea }; 57*5076da2aSCristian Ciocaltea }; 58*5076da2aSCristian Ciocaltea 59*5076da2aSCristian Ciocaltea i2c1_pins: i2c1-0 { 60*5076da2aSCristian Ciocaltea i2c-pins { 61*5076da2aSCristian Ciocaltea pinmux = <GPIOMUX(47, GPO_LOW, 62*5076da2aSCristian Ciocaltea GPO_I2C1_PAD_SCK_OEN, 63*5076da2aSCristian Ciocaltea GPI_I2C1_PAD_SCK_IN)>, 64*5076da2aSCristian Ciocaltea <GPIOMUX(48, GPO_LOW, 65*5076da2aSCristian Ciocaltea GPO_I2C1_PAD_SDA_OEN, 66*5076da2aSCristian Ciocaltea GPI_I2C1_PAD_SDA_IN)>; 67*5076da2aSCristian Ciocaltea bias-pull-up; 68*5076da2aSCristian Ciocaltea input-enable; 69*5076da2aSCristian Ciocaltea input-schmitt-enable; 70*5076da2aSCristian Ciocaltea }; 71*5076da2aSCristian Ciocaltea }; 72*5076da2aSCristian Ciocaltea 73*5076da2aSCristian Ciocaltea i2c2_pins: i2c2-0 { 74*5076da2aSCristian Ciocaltea i2c-pins { 75*5076da2aSCristian Ciocaltea pinmux = <GPIOMUX(60, GPO_LOW, 76*5076da2aSCristian Ciocaltea GPO_I2C2_PAD_SCK_OEN, 77*5076da2aSCristian Ciocaltea GPI_I2C2_PAD_SCK_IN)>, 78*5076da2aSCristian Ciocaltea <GPIOMUX(59, GPO_LOW, 79*5076da2aSCristian Ciocaltea GPO_I2C2_PAD_SDA_OEN, 80*5076da2aSCristian Ciocaltea GPI_I2C2_PAD_SDA_IN)>; 81*5076da2aSCristian Ciocaltea bias-disable; /* external pull-up */ 82*5076da2aSCristian Ciocaltea input-enable; 83*5076da2aSCristian Ciocaltea input-schmitt-enable; 84*5076da2aSCristian Ciocaltea }; 85*5076da2aSCristian Ciocaltea }; 86*5076da2aSCristian Ciocaltea 87*5076da2aSCristian Ciocaltea uart3_pins: uart3-0 { 88*5076da2aSCristian Ciocaltea rx-pins { 89*5076da2aSCristian Ciocaltea pinmux = <GPIOMUX(13, GPO_LOW, GPO_DISABLE, 90*5076da2aSCristian Ciocaltea GPI_UART3_PAD_SIN)>; 91*5076da2aSCristian Ciocaltea bias-pull-up; 92*5076da2aSCristian Ciocaltea drive-strength = <14>; 93*5076da2aSCristian Ciocaltea input-enable; 94*5076da2aSCristian Ciocaltea input-schmitt-enable; 95*5076da2aSCristian Ciocaltea slew-rate = <0>; 96*5076da2aSCristian Ciocaltea }; 97*5076da2aSCristian Ciocaltea tx-pins { 98*5076da2aSCristian Ciocaltea pinmux = <GPIOMUX(14, GPO_UART3_PAD_SOUT, 99*5076da2aSCristian Ciocaltea GPO_ENABLE, GPI_NONE)>; 100*5076da2aSCristian Ciocaltea bias-disable; 101*5076da2aSCristian Ciocaltea drive-strength = <35>; 102*5076da2aSCristian Ciocaltea input-disable; 103*5076da2aSCristian Ciocaltea input-schmitt-disable; 104*5076da2aSCristian Ciocaltea slew-rate = <0>; 105*5076da2aSCristian Ciocaltea }; 106*5076da2aSCristian Ciocaltea }; 107*5076da2aSCristian Ciocaltea}; 108*5076da2aSCristian Ciocaltea 109*5076da2aSCristian Ciocaltea&i2c0 { 110*5076da2aSCristian Ciocaltea clock-frequency = <100000>; 111*5076da2aSCristian Ciocaltea i2c-sda-hold-time-ns = <300>; 112*5076da2aSCristian Ciocaltea i2c-sda-falling-time-ns = <500>; 113*5076da2aSCristian Ciocaltea i2c-scl-falling-time-ns = <500>; 114*5076da2aSCristian Ciocaltea pinctrl-names = "default"; 115*5076da2aSCristian Ciocaltea pinctrl-0 = <&i2c0_pins>; 116*5076da2aSCristian Ciocaltea status = "okay"; 117*5076da2aSCristian Ciocaltea 118*5076da2aSCristian Ciocaltea pmic@5e { 119*5076da2aSCristian Ciocaltea compatible = "ti,tps65086"; 120*5076da2aSCristian Ciocaltea reg = <0x5e>; 121*5076da2aSCristian Ciocaltea gpio-controller; 122*5076da2aSCristian Ciocaltea #gpio-cells = <2>; 123*5076da2aSCristian Ciocaltea 124*5076da2aSCristian Ciocaltea regulators { 125*5076da2aSCristian Ciocaltea }; 126*5076da2aSCristian Ciocaltea }; 127*5076da2aSCristian Ciocaltea}; 128*5076da2aSCristian Ciocaltea 129*5076da2aSCristian Ciocaltea&i2c1 { 130*5076da2aSCristian Ciocaltea clock-frequency = <400000>; 131*5076da2aSCristian Ciocaltea i2c-sda-hold-time-ns = <300>; 132*5076da2aSCristian Ciocaltea i2c-sda-falling-time-ns = <100>; 133*5076da2aSCristian Ciocaltea i2c-scl-falling-time-ns = <100>; 134*5076da2aSCristian Ciocaltea pinctrl-names = "default"; 135*5076da2aSCristian Ciocaltea pinctrl-0 = <&i2c1_pins>; 136*5076da2aSCristian Ciocaltea status = "okay"; 137*5076da2aSCristian Ciocaltea}; 138*5076da2aSCristian Ciocaltea 139*5076da2aSCristian Ciocaltea&i2c2 { 140*5076da2aSCristian Ciocaltea clock-frequency = <100000>; 141*5076da2aSCristian Ciocaltea i2c-sda-hold-time-ns = <300>; 142*5076da2aSCristian Ciocaltea i2c-sda-falling-time-ns = <500>; 143*5076da2aSCristian Ciocaltea i2c-scl-falling-time-ns = <500>; 144*5076da2aSCristian Ciocaltea pinctrl-names = "default"; 145*5076da2aSCristian Ciocaltea pinctrl-0 = <&i2c2_pins>; 146*5076da2aSCristian Ciocaltea status = "okay"; 147*5076da2aSCristian Ciocaltea}; 148*5076da2aSCristian Ciocaltea 149*5076da2aSCristian Ciocaltea&osc_sys { 150*5076da2aSCristian Ciocaltea clock-frequency = <25000000>; 151*5076da2aSCristian Ciocaltea}; 152*5076da2aSCristian Ciocaltea 153*5076da2aSCristian Ciocaltea&osc_aud { 154*5076da2aSCristian Ciocaltea clock-frequency = <27000000>; 155*5076da2aSCristian Ciocaltea}; 156*5076da2aSCristian Ciocaltea 157*5076da2aSCristian Ciocaltea&uart3 { 158*5076da2aSCristian Ciocaltea pinctrl-names = "default"; 159*5076da2aSCristian Ciocaltea pinctrl-0 = <&uart3_pins>; 160*5076da2aSCristian Ciocaltea status = "okay"; 161*5076da2aSCristian Ciocaltea}; 162