Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754649AbbLAP3X (ORCPT ); Tue, 1 Dec 2015 10:29:23 -0500 Received: from mail-yk0-f182.google.com ([209.85.160.182]:35208 "EHLO mail-yk0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754376AbbLAP3T (ORCPT ); Tue, 1 Dec 2015 10:29:19 -0500 MIME-Version: 1.0 In-Reply-To: <1448976866-7892-4-git-send-email-m.szyprowski@samsung.com> References: <1448976866-7892-1-git-send-email-m.szyprowski@samsung.com> <1448976866-7892-4-git-send-email-m.szyprowski@samsung.com> Date: Tue, 1 Dec 2015 16:29:18 +0100 Message-ID: Subject: Re: [PATCH v3 3/3] ARM: amba: Properly handle devices with power domains From: Ulf Hansson To: Marek Szyprowski Cc: linux-samsung-soc , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Russell King - ARM Linux , Tomeu Vizoso , Greg Kroah-Hartman , Kukjin Kim , Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1524 Lines: 48 On 1 December 2015 at 14:34, Marek Szyprowski wrote: > To read pid/cid registers, the probed device need to be properly turned on. > When it is inside a power domain, the bus code should ensure that the > given power domain is enabled before trying to access device's registers. > > Signed-off-by: Marek Szyprowski Reviewed-by: Ulf Hansson Kind regards Uffe > --- > drivers/amba/bus.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/amba/bus.c b/drivers/amba/bus.c > index 879a421..8d182a4 100644 > --- a/drivers/amba/bus.c > +++ b/drivers/amba/bus.c > @@ -365,6 +365,10 @@ static int amba_read_periphid(struct amba_device *dev) > if (!tmp) > return -ENOMEM; > > + ret = dev_pm_domain_attach(&dev->dev, true); > + if (ret == -EPROBE_DEFER) > + goto err_unmap; > + > ret = amba_get_enable_pclk(dev); > if (ret == 0) { > u32 pid, cid; > @@ -389,6 +393,8 @@ static int amba_read_periphid(struct amba_device *dev) > ret = -ENODEV; > } > > + dev_pm_domain_detach(&dev->dev, true); > +err_unmap: > iounmap(tmp); > > return ret; > -- > 1.9.2 > -- 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/