From patchwork Wed May 4 19:20:18 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nishanth Menon X-Patchwork-Id: 67178 Delivered-To: patch@linaro.org Received: by 10.140.92.199 with SMTP id b65csp362318qge; Wed, 4 May 2016 12:20:52 -0700 (PDT) X-Received: by 10.98.19.151 with SMTP id 23mr14468720pft.62.1462389652874; Wed, 04 May 2016 12:20:52 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k28si6171484pfk.240.2016.05.04.12.20.52; Wed, 04 May 2016 12:20:52 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of devicetree-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753344AbcEDTUt (ORCPT + 7 others); Wed, 4 May 2016 15:20:49 -0400 Received: from comal.ext.ti.com ([198.47.26.152]:41079 "EHLO comal.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751436AbcEDTUs (ORCPT ); Wed, 4 May 2016 15:20:48 -0400 Received: from dflxv15.itg.ti.com ([128.247.5.124]) by comal.ext.ti.com (8.13.7/8.13.7) with ESMTP id u44JKKY8023582; Wed, 4 May 2016 14:20:20 -0500 Received: from DLEE70.ent.ti.com (dlee70.ent.ti.com [157.170.170.113]) by dflxv15.itg.ti.com (8.14.3/8.13.8) with ESMTP id u44JKKA3020055; Wed, 4 May 2016 14:20:20 -0500 Received: from dflp32.itg.ti.com (10.64.6.15) by DLEE70.ent.ti.com (157.170.170.113) with Microsoft SMTP Server id 14.3.224.2; Wed, 4 May 2016 14:20:20 -0500 Received: from localhost (ileax41-snat.itg.ti.com [10.172.224.153]) by dflp32.itg.ti.com (8.14.3/8.13.8) with ESMTP id u44JKJGp020066; Wed, 4 May 2016 14:20:19 -0500 From: Nishanth Menon To: Tony Lindgren , =?UTF-8?q?Beno=C3=AEt=20Cousson?= CC: , , , , Nishanth Menon Subject: [PATCH] ARM: dts: omap5-board-common: Describe the voltage supply mapping accurately Date: Wed, 4 May 2016 14:20:18 -0500 Message-ID: <1462389618-28860-1-git-send-email-nm@ti.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org OMAP5uEVM[1] based platforms share a similar voltage rail map. This should be properly described in device tree, without this regulator core will be unable to determine the source voltage of LDOs such as LDO9 and SMPS10 which could be configured for bypass depending on the voltage requested of them. This results in conditions such as [ 4.207853] ldo9: bypassed regulator has no supply! [ 4.212982] ldo9: failed to get the current voltage(-517) [ 4.218662] palmas-pmic 48070000.i2c:palmas@48:palmas_pmic: failed to register 48070000.i2c:palmas@48:palmas_pmic regulator NOTE: I do not have access to omap5-igep0050 schematics, but based on test behavior for LDO9 by Tony, I am assuming to be the same map as OMAP5uEVM. Reference schematics document: 750-2628-103-SCH rev D (Access to schematics requires NDA as per https://e2e.ti.com/support/omap/f/885/t/282560) [1] https://svtronics.com/5432 Reported-by: Tony Lindgren Signed-off-by: Nishanth Menon --- Based on next-20160504 This should fix regression reported for mmcsd such as that seen in: https://storage.kernelci.org/next/next-20160504/arm-omap2plus_defconfig/lab-baylibre-seattle/boot-omap5-uevm_rootfs:mmc.txt http://pastebin.ubuntu.com/16223856/ NFS data transfer test however failed on linux-next next-20160504 - this could be a second order issue to be identified. arch/arm/boot/dts/omap5-board-common.dtsi | 42 +++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) -- 2.8.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/arch/arm/boot/dts/omap5-board-common.dtsi b/arch/arm/boot/dts/omap5-board-common.dtsi index dc759a3028b7..56eb4f1a6bf0 100644 --- a/arch/arm/boot/dts/omap5-board-common.dtsi +++ b/arch/arm/boot/dts/omap5-board-common.dtsi @@ -14,6 +14,29 @@ display0 = &hdmi0; }; + vmain: fixedregulator-vmain { + compatible = "regulator-fixed"; + regulator-name = "vmain"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + }; + + vsys_cobra: fixedregulator-vsys_cobra { + compatible = "regulator-fixed"; + regulator-name = "vsys_cobra"; + vin-supply = <&vmain>; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + }; + + vdds_1v8_main: fixedregulator-vdds_1v8_main { + compatible = "regulator-fixed"; + regulator-name = "vdds_1v8_main"; + vin-supply = <&smps7_reg>; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + vmmcsd_fixed: fixedregulator-mmcsd { compatible = "regulator-fixed"; regulator-name = "vmmcsd_fixed"; @@ -413,6 +436,7 @@ smps123_reg: smps123 { /* VDD_OPP_MPU */ regulator-name = "smps123"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1500000>; regulator-always-on; @@ -422,6 +446,7 @@ smps45_reg: smps45 { /* VDD_OPP_MM */ regulator-name = "smps45"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1310000>; regulator-always-on; @@ -431,6 +456,7 @@ smps6_reg: smps6 { /* VDD_DDR3 - over VDD_SMPS6 */ regulator-name = "smps6"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; regulator-always-on; @@ -440,6 +466,7 @@ smps7_reg: smps7 { /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */ regulator-name = "smps7"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; @@ -449,6 +476,7 @@ smps8_reg: smps8 { /* VDD_OPP_CORE */ regulator-name = "smps8"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = < 600000>; regulator-max-microvolt = <1310000>; regulator-always-on; @@ -458,6 +486,7 @@ smps9_reg: smps9 { /* VDDA_2v1_AUD over VDD_2v1 */ regulator-name = "smps9"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <2100000>; regulator-max-microvolt = <2100000>; ti,smps-range = <0x80>; @@ -466,6 +495,7 @@ smps10_out2_reg: smps10_out2 { /* VBUS_5V_OTG */ regulator-name = "smps10_out2"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; regulator-always-on; @@ -475,6 +505,7 @@ smps10_out1_reg: smps10_out1 { /* VBUS_5V_OTG */ regulator-name = "smps10_out1"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; @@ -482,6 +513,7 @@ ldo1_reg: ldo1 { /* VDDAPHY_CAM: vdda_csiport */ regulator-name = "ldo1"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; @@ -489,6 +521,7 @@ ldo2_reg: ldo2 { /* VCC_2V8_DISP: Does not go anywhere */ regulator-name = "ldo2"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <2800000>; regulator-max-microvolt = <2800000>; /* Unused */ @@ -498,6 +531,7 @@ ldo3_reg: ldo3 { /* VDDAPHY_MDM: vdda_lli */ regulator-name = "ldo3"; + vin-supply = <&vdds_1v8_main>; regulator-min-microvolt = <1500000>; regulator-max-microvolt = <1500000>; regulator-boot-on; @@ -508,6 +542,7 @@ ldo4_reg: ldo4 { /* VDDAPHY_DISP: vdda_dsiport/hdmi */ regulator-name = "ldo4"; + vin-supply = <&vdds_1v8_main>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; @@ -515,6 +550,7 @@ ldo5_reg: ldo5 { /* VDDA_1V8_PHY: usb/sata/hdmi.. */ regulator-name = "ldo5"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; @@ -524,6 +560,7 @@ ldo6_reg: ldo6 { /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */ regulator-name = "ldo6"; + vin-supply = <&vdds_1v8_main>; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; regulator-always-on; @@ -533,6 +570,7 @@ ldo7_reg: ldo7 { /* VDD_VPP: vpp1 */ regulator-name = "ldo7"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <2000000>; regulator-max-microvolt = <2000000>; /* Only for efuse reprograming! */ @@ -542,6 +580,7 @@ ldo8_reg: ldo8 { /* VDD_3v0: Does not go anywhere */ regulator-name = "ldo8"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3000000>; regulator-boot-on; @@ -551,6 +590,8 @@ ldo9_reg: ldo9 { /* VCC_DV_SDIO: vdds_sdcard */ + vin-supply = <&vmmcsdio_fixed>; + regulator-name = "ldo9"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3000000>; @@ -569,6 +610,7 @@ ldousb_reg: ldousb { /* VDDA_3V_USB: VDDA_USBHS33 */ regulator-name = "ldousb"; + vin-supply = <&vsys_cobra>; regulator-min-microvolt = <3250000>; regulator-max-microvolt = <3250000>; regulator-always-on;