/* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ &qupv3_se4_i2c { pinctrl-1 = <&if_pmic_i2c_sleep>; status = "okay"; sm5714@49{ status = "okay"; compatible = "siliconmitus,sm5714mfd"; reg = <0x49>; pinctrl-names = "default"; pinctrl-0 = <&if_pmic_irq_default>; sm5714,irq-gpio = <&tlmm 33 0>; sm5714,wakeup; }; }; &qupv3_se11_i2c { pinctrl-1 = <&usbpd_i2c_sleep>; status = "okay"; usbpd-sm5714@33 { status = "okay"; compatible = "sm5714-usbpd"; reg = <0x33>; pinctrl-names = "default"; pinctrl-0 = <&usbpd_irq_default>; usbpd,usbpd_int = <&tlmm 104 0>; support_pd_role_swap; pdic-manager { /* sink */ pdic,max_power = <5000>; pdic_op_power = <2500>; pdic_max_voltage = <6000>; pdic_max_current = <2000>; pdic,min_current = <500>; pdic,giveback = <0>; pdic,usb_com_capable = <1>; pdic,no_usb_suspend = <1>; /* source */ source,max_voltage = <5000>; source,min_voltage = <4000>; source,max_power = <2500>; }; }; }; &tlmm { if_pmic_irq { if_pmic_irq_default: if_pmic_irq_default { mux { pins = "gpio33"; function = "gpio"; }; config { pins = "gpio33"; drive-strength = <2>; /* 16 mA */ bias-disable; input-enable; }; }; }; usbpd_irq { usbpd_irq_default: usbpd_irq_default { mux { pins = "gpio104"; function = "gpio"; }; config { pins = "gpio104"; drive-strength = <2>; /* 16 mA */ bias-disable; input-enable; }; }; }; }; &qusb_phy0 { qcom,qusb-phy-init-seq = /* */ <0x23 0x210 /* PWR_CTRL1 */ 0x03 0x04 /* PLL_ANALOG_CONTROLS_TWO */ 0x7c 0x18c /* PLL_CLOCK_INVERTERS */ 0x80 0x2c /* PLL_CMODE */ 0x0a 0x184 /* PLL_LOCK_DELAY */ 0x19 0xb4 /* PLL_DIGITAL_TIMERS_TWO */ 0x40 0x194 /* PLL_BIAS_CONTROL_1 */ 0x16 0x198 /* PLL_BIAS_CONTROL_2 */ 0x21 0x214 /* PWR_CTRL2 */ 0x08 0x220 /* IMP_CTRL1 */ 0x58 0x224 /* IMP_CTRL2 */ 0x47 0x240 /* TUNE1 */ 0x2b 0x244 /* TUNE2 */ 0xca 0x248 /* TUNE3 */ 0x00 0x24c /* TUNE4 */ 0x03 0x250 /* TUNE5 */ 0x30 0x23c /* CHG_CTRL2 */ 0x22 0x210>; /* PWR_CTRL1 */ qcom,qusb-phy-host-init-seq = /* */ <0x23 0x210 /* PWR_CTRL1 */ 0x03 0x04 /* PLL_ANALOG_CONTROLS_TWO */ 0x7c 0x18c /* PLL_CLOCK_INVERTERS */ 0x80 0x2c /* PLL_CMODE */ 0x0a 0x184 /* PLL_LOCK_DELAY */ 0x19 0xb4 /* PLL_DIGITAL_TIMERS_TWO */ 0x40 0x194 /* PLL_BIAS_CONTROL_1 */ 0x18 0x198 /* PLL_BIAS_CONTROL_2 */ 0x21 0x214 /* PWR_CTRL2 */ 0x08 0x220 /* IMP_CTRL1 */ 0x58 0x224 /* IMP_CTRL2 */ 0x47 0x240 /* TUNE1 */ 0x2b 0x244 /* TUNE2 */ 0xca 0x248 /* TUNE3 */ 0x00 0x24c /* TUNE4 */ 0x03 0x250 /* TUNE5 */ 0x30 0x23c /* CHG_CTRL2 */ 0x22 0x210>; /* PWR_CTRL1 */ };