Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp2461718ybl; Sat, 11 Jan 2020 17:57:16 -0800 (PST) X-Google-Smtp-Source: APXvYqzYcXCvcydyFoiOnF6BXIjw9r0n1xGKk1aLJNmJ/ra3KMflRSDt2ZBA+61P8F2S5W3ArtB6 X-Received: by 2002:aca:ec93:: with SMTP id k141mr7551607oih.145.1578794235881; Sat, 11 Jan 2020 17:57:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578794235; cv=none; d=google.com; s=arc-20160816; b=tkglDfHev4j88bL6oSLhXbg8VA7/Sk9ny+s80wRUzPnNL7wcccBIif0Ff1v1DKF6Uc 2OtrwYULcslmECHYwg5N41OkRSblvFEMsjavoIn/431eGJRxI2namAxCERXBMAT9+KRJ r/fFae9znPuZ8R6eQCC+y2vbst6DnFZWZ0QU5Cm4tkjxlDPCqHpYb9vatF5PXvZvKEMD 85vQ/vUO/+ON6bmGb5UosZTrdnG82SQCvxa0qjSQ6fJG+QUIq1t4zzIKDwpcYp/W9ata PVYtg+Eu/m8j4mvIbKhLEmCP5WfaZNVJAFikZRCHT2a7QEukERqXnI4wBxrYU/OEis+8 5Pvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=hwR7i1Q4Zlw8x3aWmdj3QW3E0aJq0zolXWAvftNPiCA=; b=axrILM29sKtLn5xm4FO/fynfHYPiZog/i7EVkhTV/P032Q5eZ/CahlSdywblb+Emff 2D+gmBt8z7kDVtfQlG6PVfsSvPBIBzloUnXiOlgKg0CKfr1L/uES8t/b95QM0txyK5yt ZWtJQOlGIyuAXTlmWgwkuz9x0w7BIVxfGBA3kt1wcPcQKL61ROBC5WuiTaJCwdDkSYPY VdPKeNpVXG0GT5o2k2RZQTjaFyVrkm+V0VyE29mDR6ROVPrhbICz70ox5AI/RcO0s5xr ugimh+7aH8DTyEiWGR6uPVLjBkUJCt2TDPTVfWExoqtGVeQek3NjIE53U53P44V5pHA8 ZAdw== ARC-Authentication-Results: i=1; mx.google.com; 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 s6si4236823otp.126.2020.01.11.17.57.05; Sat, 11 Jan 2020 17:57:15 -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; 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 S1731926AbgALBzT (ORCPT + 99 others); Sat, 11 Jan 2020 20:55:19 -0500 Received: from foss.arm.com ([217.140.110.172]:57774 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731897AbgALBzT (ORCPT ); Sat, 11 Jan 2020 20:55:19 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 98235328; Sat, 11 Jan 2020 17:55:18 -0800 (PST) Received: from DESKTOP-VLO843J.lan (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B605A3F6C4; Sat, 11 Jan 2020 17:55:17 -0800 (PST) From: Robin Murphy To: lee.jones@linaro.org Cc: linux-kernel@vger.kernel.org, heiko@sntech.de, linux-rockchip@lists.infradead.org, smoch@web.de Subject: [PATCH v2 1/5] mfd: rk808: Always use poweroff when requested Date: Sun, 12 Jan 2020 01:55:00 +0000 Message-Id: <233bf172a5310658d703b11be6e637d6c4d46338.1578789410.git.robin.murphy@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Soeren Moch With the device tree property "rockchip,system-power-controller" we explicitly request to use this PMIC to power off the system. So always register our poweroff function, even if some other handler (probably PSCI poweroff) was registered before. This does tend to reveal a warning on shutdown due to the Rockchip I2C driver not implementing an atomic transfer method, however since the write to DEV_OFF takes effect immediately the I2C completion interrupt is moot anyway, and as the very last thing written to the console it is only visible to users going out of their way to capture serial output. Signed-off-by: Soeren Moch Reviewed-by: Heiko Stuebner [ rm: note potential warning in commit message ] Signed-off-by: Robin Murphy --- drivers/mfd/rk808.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/drivers/mfd/rk808.c b/drivers/mfd/rk808.c index a69a6742ecdc..616e44e7ef98 100644 --- a/drivers/mfd/rk808.c +++ b/drivers/mfd/rk808.c @@ -550,7 +550,7 @@ static int rk808_probe(struct i2c_client *client, const struct mfd_cell *cells; int nr_pre_init_regs; int nr_cells; - int pm_off = 0, msb, lsb; + int msb, lsb; unsigned char pmic_id_msb, pmic_id_lsb; int ret; int i; @@ -674,16 +674,9 @@ static int rk808_probe(struct i2c_client *client, goto err_irq; } - pm_off = of_property_read_bool(np, - "rockchip,system-power-controller"); - if (pm_off && !pm_power_off) { + if (of_property_read_bool(np, "rockchip,system-power-controller")) { rk808_i2c_client = client; pm_power_off = rk808->pm_pwroff_fn; - } - - if (pm_off && !pm_power_off_prepare) { - if (!rk808_i2c_client) - rk808_i2c_client = client; pm_power_off_prepare = rk808->pm_pwroff_prep_fn; } -- 2.17.1