Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752640AbaLROLR (ORCPT ); Thu, 18 Dec 2014 09:11:17 -0500 Received: from mail-ie0-f174.google.com ([209.85.223.174]:50164 "EHLO mail-ie0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752246AbaLROLP (ORCPT ); Thu, 18 Dec 2014 09:11:15 -0500 MIME-Version: 1.0 In-Reply-To: References: <1414729631-11005-1-git-send-email-tharvey@gateworks.com> <1414729631-11005-5-git-send-email-tharvey@gateworks.com> Date: Thu, 18 Dec 2014 06:11:15 -0800 Message-ID: Subject: Re: [PATCH 4/5] cpufreq: imx6q: add ldo-bypass support From: Tim Harvey To: Fabio Estevam , Mark Brown , Philipp Zabel Cc: linux-kernel , "linux-arm-kernel@lists.infradead.org" , Lucas Stach , Silvio F , Christian Hemp , Russell King , Iain Paton , Anson.Huang@freescale.com, Shawn Guo Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Dec 17, 2014 at 6:36 AM, Fabio Estevam wrote: > Hi Tim, > > On Fri, Oct 31, 2014 at 2:27 AM, Tim Harvey wrote: >> When an external PMIC is used for VDD_SOC and VDD_ARM you can save power by >> bypassing the internal LDO's provided by the anantop regulator as long as >> you are running less than 1.2GHz. If running at 1.2GHz the IMX6 datasheets >> state that you must use the internal LDO's to reduce ripple on the suplies. >> >> A failure to bypass the LDO's when using an external PMIC will result in an >> extra voltage drop (~125mV) between VDD_ARM_IN and VDD_ARM and VDD_SOC_IN and >> VDD_SOC which violates the voltages specificed by the datasheets. >> >> Cc: Philipp Zabel >> Cc: Shawn Guo >> Signed-off-by: Tim Harvey >> --- >> drivers/cpufreq/imx6q-cpufreq.c | 51 +++++++++++++++++++++++++++++++++++++++++ > > Shouldn't the LDO bypass support be added into the anatop regulator > driver instead? > > What if someone wants to use LDO bypass and not use the cpufreq driver? Fabio, That does make sense perhaps - I'm just not sure the best way to do it. What is needed is to determine if the cpu vddsoc and vddarm regulators are both 'not' the same as the anatop provided regulators (then we bypass the anatop regulators) so I need to do such a check after all regulators are registered. Perhaps I need to have a late_init call (or some other init call that happens after all regulators are registered). Phillipp/Mark - what are your thoughts here? Do the regulator core functions regulator_is_same() [1] and regulator_is_bypass() [2] I propose make sense to determine if regulators are the same and in bypass mode and overcome the detection issues Phillipp discussed in a previous thread [3]? [1] http://article.gmane.org/gmane.linux.kernel/1818320/ [2] http://article.gmane.org/gmane.linux.kernel/1818324/ [3] http://thread.gmane.org/gmane.linux.ports.arm.kernel/359856 Regards, Tim -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/