Received: by 10.223.176.46 with SMTP id f43csp857070wra; Fri, 19 Jan 2018 03:08:42 -0800 (PST) X-Google-Smtp-Source: ACJfBouoPBDOgh8heWlllj9SeUf+LN/VwPRuBUXVL42MpaA+pGC7tRcMIewaIXTXAipgoIOucmXp X-Received: by 10.98.14.3 with SMTP id w3mr20371106pfi.154.1516360122284; Fri, 19 Jan 2018 03:08:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516360122; cv=none; d=google.com; s=arc-20160816; b=kOrIqK+tWBB0MGJ+k5XaJqSuCMYDzrBA1XAwoOtXOuGcrN7s2BeLwfMGTZgNrAdVgp XMzCpZYMDWwL0CPXKRJFPe63bGqtUNgjCiSAqO7uN1Fg4/CKO+furRuXPX18ZTrkSwWt m5H6DmXYt7emOliFOHHY4b6jwXx1WlT2U0eLnt/imRZjmXx8W13tl/l5RVLOTegM9xFa 8pDXhtTCYnV/W6Hq2oAONy66NvihFCzu5t39fhHcgYaQNndXpIuEw30juIkLMHLzph/9 FtnB6u8MxX7iMot0bU54xKP4w/GRGUBzKAVf+vvF4duuiLKJvTdtJ2OeisYvnQPRJk3E IDPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=ESWOH+WBtoho696kxa+ygE3k2qAwU1I4N6y/adheRhI=; b=N7JwPBJRc5BOFle+GSjs3eS9IWfY+CmK/u0XMvGBFcPM977SBAixINCaTD7pTxO9GJ FCjTuQINYk5iu9iOLFJ6F0rUOGWZ/TtSIe2TXGYv9GuyJt4fdq55RnzEgQO6zYtmA9F2 GKMcHrn+29gJ/IjRh4LqG8qr0rRRrqaOvNCLeXigtyGjtcuXlb8Ur4BlwXB/X3SydRij N7Svb6N38qSWSzAEsPnmZ0+PFVWpesg7JNr2e5DwjeLN/0KgIdPWonR2PBJw7xpK05qq sPiunTQIGRExtPOpCK9D4kzMv2RjE7+Nr5Ql2HK4cSQGEOlTditkYywbuUkvqmOmNFgk SNjA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ZDlWbbzS; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s3-v6si732516plq.400.2018.01.19.03.08.28; Fri, 19 Jan 2018 03:08:42 -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=@linaro.org header.s=google header.b=ZDlWbbzS; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755309AbeASLGo (ORCPT + 99 others); Fri, 19 Jan 2018 06:06:44 -0500 Received: from mail-wm0-f66.google.com ([74.125.82.66]:41034 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754693AbeASLGj (ORCPT ); Fri, 19 Jan 2018 06:06:39 -0500 Received: by mail-wm0-f66.google.com with SMTP id f71so2637592wmf.0 for ; Fri, 19 Jan 2018 03:06:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=ESWOH+WBtoho696kxa+ygE3k2qAwU1I4N6y/adheRhI=; b=ZDlWbbzSD4yWWYPg+wDedGSjiXT0NL0Y6pA5lSsC+JhjVnz47SqKjZ7L2xRxjgDAFJ mX/0SJgbbW7w5vNzpL+L2s8GhGO8LEJxuNB8piyQVRq8Ri6kPwQk7AfYvMZ9IoPBB2VC OPE3nkFnDbKbdq2w/xIX6ZuaMTAmdVwT+VHMs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=ESWOH+WBtoho696kxa+ygE3k2qAwU1I4N6y/adheRhI=; b=GOY6UkpY/J6nlDVB1DpHirEoNXXZ/7lPa9yCtzIJsmYwf2ivIxHx6PdyT7u7xs810r srgq2Umz1YEB3T2gt+hKDy8K/eACyB2mFxYMPDMM1CFwlL0lDoWr9x8GqcsfDatO4DY9 tD7VlHvTKWaLnvWkezv4xEBtqWAtpptafWKPFo00syMggx2zfTmfz6wt5AZy7p656mGt wKjH/l+MHhxRbX0Ie1GLapOu6GDbCb9+1MTaoaF7xViIsOf07jwy1f8vqNmhz9IMBHJc 987o723HhPo9Ne9/1C9inpJGGMBil/rFgJqtU/P13W95iBdqZDmW4c5K03fr/Yaw4VVR kN0A== X-Gm-Message-State: AKwxytezqPZZlWoXHE0vl+nF3EeKOzIynvCgzypJWAWF2GkceMOvFwTN 6dDOXk0ZUmD/sPR5ppy/XIG9Mw== X-Received: by 10.28.247.11 with SMTP id v11mr8379165wmh.27.1516359998723; Fri, 19 Jan 2018 03:06:38 -0800 (PST) Received: from oak.lan (cpc141214-aztw34-2-0-cust773.18-1.cable.virginm.net. [86.9.19.6]) by smtp.gmail.com with ESMTPSA id r68sm725308wmd.47.2018.01.19.03.06.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 19 Jan 2018 03:06:37 -0800 (PST) Date: Fri, 19 Jan 2018 11:06:35 +0000 From: Daniel Thompson To: Meghana Madhyastha Cc: Lee Jones , Jingoo Han , Thierry Reding , Noralf =?iso-8859-1?Q?Tr=F8nnes?= , Tomi Valkeinen , Daniel Vetter , Sean Paul , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v17 05/10] video: backlight: Add devres versions of of_find_backlight Message-ID: <20180119110635.bwf3gb3ee3zby7z2@oak.lan> References: <021f8fecfa3f374dc5dcb70fb07a6f6b019bea7b.1516358037.git.meghana.madhyastha@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <021f8fecfa3f374dc5dcb70fb07a6f6b019bea7b.1516358037.git.meghana.madhyastha@gmail.com> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jan 19, 2018 at 10:44:33AM +0000, Meghana Madhyastha wrote: > Add devm_of_find_backlight and the corresponding release > function because some drivers use devres versions of functions > for acquiring device resources. > > Signed-off-by: Meghana Madhyastha Acked-by: Daniel Thompson > --- > changes in v17: > -fix checkpath errors/warnings > -rename devm_backlight_put to > devm_backlight_release > > drivers/video/backlight/backlight.c | 30 ++++++++++++++++++++++++++++++ > include/linux/backlight.h | 7 +++++++ > 2 files changed, 37 insertions(+) > > diff --git a/drivers/video/backlight/backlight.c b/drivers/video/backlight/backlight.c > index 553bf5c48..deb824bef 100644 > --- a/drivers/video/backlight/backlight.c > +++ b/drivers/video/backlight/backlight.c > @@ -623,6 +623,36 @@ struct backlight_device *of_find_backlight(struct device *dev) > } > EXPORT_SYMBOL(of_find_backlight); > > +static void devm_backlight_release(void *data) > +{ > + backlight_put(data); > +} > + > +/** > + * devm_of_find_backlight - Resource-managed of_find_backlight() > + * @dev: Device > + * > + * Device managed version of of_find_backlight(). > + * The reference on the backlight device is automatically > + * dropped on driver detach. > + */ > +struct backlight_device *devm_of_find_backlight(struct device *dev) > +{ > + struct backlight_device *bd; > + int ret; > + > + bd = of_find_backlight(dev); > + if (IS_ERR_OR_NULL(bd)) > + return bd; > + ret = devm_add_action(dev, devm_backlight_release, bd); > + if (ret) { > + backlight_put(bd); > + return ERR_PTR(ret); > + } > + return bd; > +} > +EXPORT_SYMBOL(devm_of_find_backlight); > + > static void __exit backlight_class_exit(void) > { > class_destroy(backlight_class); > diff --git a/include/linux/backlight.h b/include/linux/backlight.h > index ddc9bade4..2baab6f38 100644 > --- a/include/linux/backlight.h > +++ b/include/linux/backlight.h > @@ -217,11 +217,18 @@ of_find_backlight_by_node(struct device_node *node) > > #if IS_ENABLED(CONFIG_BACKLIGHT_CLASS_DEVICE) > struct backlight_device *of_find_backlight(struct device *dev); > +struct backlight_device *devm_of_find_backlight(struct device *dev); > #else > static inline struct backlight_device *of_find_backlight(struct device *dev) > { > return NULL; > } > + > +static inline struct backlight_device * > +devm_of_find_backlight(struct device *dev) > +{ > + return NULL; > +} > #endif > > #endif > -- > 2.11.0 >