Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp5983785ybc; Wed, 27 Nov 2019 12:53:48 -0800 (PST) X-Google-Smtp-Source: APXvYqx1mjyoAxc4A8Pj8gG+8aOFARck+bVPSuyKj6FvAdriVT+ux9d5GVC5g3kniI9LtHaJj8IU X-Received: by 2002:a50:b63b:: with SMTP id b56mr34464530ede.165.1574888028018; Wed, 27 Nov 2019 12:53:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574888028; cv=none; d=google.com; s=arc-20160816; b=Bjwsp6v2KfekvrJ1+1OoeiDFj0/ZgHPXmz0idu5AGGaEsTK9fcqPKTOBk+sd9Dc/ox IGBrIHBIBB3yPbQ+3ZbsZvGSxsILaILGxQzCPrpPVVc09Nx2qnDnTCge7ppvVI0ctzUj IitLwUqMhKLjt+WsyL+7Si5jazkt1vT9wdqMJADG7u1W9DWE60A/K7i6f/N3Cp5IapWo C1WvZSaXpj0VHW1AZC9vYF9T6kp9nkADv1XCBTKbSlSAU69h8pUunOGYwQiAC2QU0Xq8 RAPxHUE3WMUtLAAG+PWk5wvESvEA/DIYHDUsu/hpzVIbL2encCRXV8hyaSDolSr1mkz/ /KdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=UGa41Y5H07VdrnwPteDWhN8HUvlD76C9Xz25ms32H54=; b=MvUHluWzBSkmKPC4vMM0B/ure8LSEDJkm+v8hWK6IXqmBV/ebMb3Kvia3YYgtxh/yr CEjs1m7VGOoC5T5vgIeaj/VvnejSgS3EsESnoG5qAeI9XeHULB0QXzJDf6k2z4/eybbR P/RYUc+UbEVuTSby5paDWnSMVuBfRctJmgOav6WFbMiqzWzpI8ZWzTxAWDKQz6ttblNJ RgpWf82U3VvlZhbERJRhE019Q7YRaO+Pk+y8kncX2C9cSd/1Py2lHyb/5yfo4dpoEX96 VGYfF9JqIZT5OPj8zK7t71U8YaYYJbNz4PiARGq+lt2P+Ah/4WgRBHsVvPlODNsXsEMv o6ng== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=eaRVgaB4; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b19si11748579edb.40.2019.11.27.12.53.24; Wed, 27 Nov 2019 12:53:48 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=eaRVgaB4; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729783AbfK0Ut0 (ORCPT + 99 others); Wed, 27 Nov 2019 15:49:26 -0500 Received: from mail.kernel.org ([198.145.29.99]:34870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730226AbfK0UtU (ORCPT ); Wed, 27 Nov 2019 15:49:20 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B875220678; Wed, 27 Nov 2019 20:49:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574887759; bh=vm84ASlpradK3YRp36649IF0WvfGXEHeTtm8gY3B1AY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=eaRVgaB4NqfpZOUEwBYRqMZhT+6R0xXFmfJeFF4WtBoXcZf7sjfjWNeXtoh7xFLQ1 Birfn+i2JIAOvP1qpcVls8uNLYQa1L2UDpMZZ8hvAcjk6VPiTkRtk/kv0jl+b5/T0U RjT4xPdPM5/8vOBpbSWV/2v64Eq0Pn+AhfLJk+CQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Fabio Estevam , Chris Healy , Lee Jones , Sasha Levin Subject: [PATCH 4.14 082/211] mfd: mc13xxx-core: Fix PMIC shutdown when reading ADC values Date: Wed, 27 Nov 2019 21:30:15 +0100 Message-Id: <20191127203101.531647847@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191127203049.431810767@linuxfoundation.org> References: <20191127203049.431810767@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Fabio Estevam [ Upstream commit 55143439b7b501882bea9d95a54adfe00ffc79a3 ] When trying to read any MC13892 ADC channel on a imx51-babbage board: The MC13892 PMIC shutdowns completely. After debugging this issue and comparing the MC13892 and MC13783 initializations done in the vendor kernel, it was noticed that the CHRGRAWDIV bit of the ADC0 register was not being set. This bit is set by default after power on, but the driver was clearing it. After setting this bit it is possible to read the ADC values correctly. Signed-off-by: Fabio Estevam Tested-by: Chris Healy Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/mfd/mc13xxx-core.c | 3 ++- include/linux/mfd/mc13xxx.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/mc13xxx-core.c b/drivers/mfd/mc13xxx-core.c index 6c16f170529f5..75d52034f89da 100644 --- a/drivers/mfd/mc13xxx-core.c +++ b/drivers/mfd/mc13xxx-core.c @@ -278,7 +278,8 @@ int mc13xxx_adc_do_conversion(struct mc13xxx *mc13xxx, unsigned int mode, if (ret) goto out; - adc0 = MC13XXX_ADC0_ADINC1 | MC13XXX_ADC0_ADINC2; + adc0 = MC13XXX_ADC0_ADINC1 | MC13XXX_ADC0_ADINC2 | + MC13XXX_ADC0_CHRGRAWDIV; adc1 = MC13XXX_ADC1_ADEN | MC13XXX_ADC1_ADTRIGIGN | MC13XXX_ADC1_ASC; if (channel > 7) diff --git a/include/linux/mfd/mc13xxx.h b/include/linux/mfd/mc13xxx.h index 638222e43e489..93011c61aafd2 100644 --- a/include/linux/mfd/mc13xxx.h +++ b/include/linux/mfd/mc13xxx.h @@ -247,6 +247,7 @@ struct mc13xxx_platform_data { #define MC13XXX_ADC0_TSMOD0 (1 << 12) #define MC13XXX_ADC0_TSMOD1 (1 << 13) #define MC13XXX_ADC0_TSMOD2 (1 << 14) +#define MC13XXX_ADC0_CHRGRAWDIV (1 << 15) #define MC13XXX_ADC0_ADINC1 (1 << 16) #define MC13XXX_ADC0_ADINC2 (1 << 17) -- 2.20.1