From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753682AbbGWPmW (ORCPT ); Thu, 23 Jul 2015 11:42:22 -0400 Received: from mail-wi0-f170.google.com ([209.85.212.170]:37424 "EHLO mail-wi0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753207AbbGWPmQ (ORCPT ); Thu, 23 Jul 2015 11:42:16 -0400 Date: Thu, 23 Jul 2015 16:42:12 +0100 From: Lee Jones To: Linus Walleij Cc: Samuel Ortiz , linux-kernel@vger.kernel.org Subject: Re: [PATCH 3/3] mfd: ipaq-micro: convert to builtin platform driver Message-ID: <20150723154212.GR3436@x1> References: <1437551743-20599-1-git-send-email-linus.walleij@linaro.org> <1437551743-20599-3-git-send-email-linus.walleij@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1437551743-20599-3-git-send-email-linus.walleij@linaro.org> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 22 Jul 2015, Linus Walleij wrote: > Signal that this is a builting driver and call its probe function > immediately on init. Suppress binding attributes and delete the > .remove() function since it is never unloaded. Tag probe() and > functions only called from probe() with __init. Delete all module > macros since this is a pure builtin. > > Signed-off-by: Linus Walleij > --- > drivers/mfd/ipaq-micro.c | 27 ++++----------------------- > 1 file changed, 4 insertions(+), 23 deletions(-) Fixed up the typo in the commit log and applied, thanks. > diff --git a/drivers/mfd/ipaq-micro.c b/drivers/mfd/ipaq-micro.c > index 9bfe2462c5c5..a41859c55bda 100644 > --- a/drivers/mfd/ipaq-micro.c > +++ b/drivers/mfd/ipaq-micro.c > @@ -242,7 +242,7 @@ static u16 ipaq_micro_to_u16(u8 *data) > return data[1] << 8 | data[0]; > } > > -static void ipaq_micro_eeprom_dump(struct ipaq_micro *micro) > +static void __init ipaq_micro_eeprom_dump(struct ipaq_micro *micro) > { > u8 dump[256]; > char *str; > @@ -386,7 +386,7 @@ static int micro_resume(struct device *dev) > return 0; > } > > -static int micro_probe(struct platform_device *pdev) > +static int __init micro_probe(struct platform_device *pdev) > { > struct ipaq_micro *micro; > struct resource *res; > @@ -448,21 +448,6 @@ static int micro_probe(struct platform_device *pdev) > return 0; > } > > -static int micro_remove(struct platform_device *pdev) > -{ > - struct ipaq_micro *micro = platform_get_drvdata(pdev); > - u32 val; > - > - mfd_remove_devices(&pdev->dev); > - > - val = readl(micro->base + UTCR3); > - val &= ~(UTCR3_RXE | UTCR3_RIE); /* disable receive interrupt */ > - val &= ~(UTCR3_TXE | UTCR3_TIE); /* disable transmit interrupt */ > - writel(val, micro->base + UTCR3); > - > - return 0; > -} > - > static const struct dev_pm_ops micro_dev_pm_ops = { > SET_SYSTEM_SLEEP_PM_OPS(NULL, micro_resume) > }; > @@ -471,11 +456,7 @@ static struct platform_driver micro_device_driver = { > .driver = { > .name = "ipaq-h3xxx-micro", > .pm = µ_dev_pm_ops, > + .suppress_bind_attrs = true, > }, > - .probe = micro_probe, > - .remove = micro_remove, > }; > -module_platform_driver(micro_device_driver); > - > -MODULE_LICENSE("GPL"); > -MODULE_DESCRIPTION("driver for iPAQ Atmel micro core and backlight"); > +builtin_platform_driver_probe(micro_device_driver, micro_probe); -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog