Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757224AbcCaOpW (ORCPT ); Thu, 31 Mar 2016 10:45:22 -0400 Received: from hqemgate14.nvidia.com ([216.228.121.143]:18883 "EHLO hqemgate14.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755404AbcCaOpU (ORCPT ); Thu, 31 Mar 2016 10:45:20 -0400 X-PGP-Universal: processed; by hqnvupgp07.nvidia.com on Thu, 31 Mar 2016 07:43:32 -0700 Subject: Re: Tegra boots failing due to as3722 I/O errors To: Mark Brown , Laxman Dewangan , Thierry Reding References: <20160329190319.GE2350@sirena.org.uk> <56FBB923.4000302@nvidia.com> <56FBD164.7040707@nvidia.com> <20160330164646.GH2350@sirena.org.uk> CC: "Maciej S. Szmigiero" , Lee Jones , Stephen Warren , "Alexandre Courbot" , , , Liam Girdwood From: Jon Hunter Message-ID: <56FD37FA.8010005@nvidia.com> Date: Thu, 31 Mar 2016 15:45:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160330164646.GH2350@sirena.org.uk> X-Originating-IP: [10.21.132.115] X-ClientProxiedBy: UKMAIL102.nvidia.com (10.26.138.15) To UKMAIL101.nvidia.com (10.26.138.13) Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1994 Lines: 47 On 30/03/16 17:46, Mark Brown wrote: > * PGP Signed by an unknown key > > On Wed, Mar 30, 2016 at 02:15:16PM +0100, Jon Hunter wrote: > >> On second thoughts, is this the correct way to fix this? I see that >> there are some operators defined for get/set_bypass for a regulator and >> these are not specified for LDO6 either. However, even if they were I >> don't believe this will fix the problem alone. > > If this is trying to implement bypass support it should use bypass > support (and the other things doing this fixed to do so). I have created 2 patches to add bypass support for LDO6 on the as3722 [0]. >> The failure is caused by _regulator_get_voltage() returning an error. >> This function does not check if the regulator is bypassed, but I am >> wondering if it should and then return the bypass voltage? > > Yes, like we already do for switches. I'll send an untested patch > shortly. Thanks. I have tested the patch, but as I mentioned in my response, the issue is still not resolved even my patches for as3722. Hence, I have not sent out my patches yet (although I verified they are working and detecting bypass correctly). Unfortunately, I am leaving for a weeks holiday starting tomorrow. Laxman, Thierry, if you have some time to look at this over the next week that would be great. Otherwise I will pick it up when I get back. I don't think that it is too hard to resolve, we just need to add support for bypass on LDO6 for as3722 (hopefully I have done this now) and then ensure the bypass voltage is read correctly when registering the LDO. Mark's initial patch to do this [1] is not working so far. By the way, this issue has been recently exposed by a change to the regulator core (bisect showed the problem is first seen after commit fa93fd4ecc9c "regulator: core: Ensure we are at least in bounds for our constraints" was added). Cheers Jon [0] https://github.com/jonhunter/linux/commits/as3722 [1] http://marc.info/?l=linux-kernel&m=145935914903138&w=2