From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759852AbbLCKnu (ORCPT ); Thu, 3 Dec 2015 05:43:50 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:15784 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759806AbbLCKno (ORCPT ); Thu, 3 Dec 2015 05:43:44 -0500 X-AuditID: cbfec7f5-f79b16d000005389-b2-56601cdd77cc Message-id: <56601CDD.70806@samsung.com> Date: Thu, 03 Dec 2015 11:43:41 +0100 From: Jacek Anaszewski User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130804 Thunderbird/17.0.8 MIME-version: 1.0 To: Thierry Reding Cc: linux-leds@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] leds: sunfire: Use platform_register/unregister_drivers() References: <1449073621-12049-1-git-send-email-thierry.reding@gmail.com> In-reply-to: <1449073621-12049-1-git-send-email-thierry.reding@gmail.com> Content-type: text/plain; charset=ISO-8859-1; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrJLMWRmVeSWpSXmKPExsVy+t/xK7p3ZRLCDPZdMLW4vGsOm8XWN+sY LX7umsfiwOyxc9Zddo/Pm+QCmKK4bFJSczLLUov07RK4MqbO+cRY8J634t2ShawNjPu5uxg5 OSQETCR2Xn3DBGGLSVy4t56ti5GLQ0hgKaPE+4PHmSGcZ4wSs29CVPEKaEh8vncHzGYRUJV4 9aKRGcRmEzCU+PniNVhcVCBC4s/pfawQ9YISPybfYwGxRQR0Jf6ffgNmMwvYSPxeeZgRxBYW 8JP48+k22BwhAQ+JM52L2UBsTgFPiYdvj0HVW0usnLSNEcKWl9i85i3zBEaBWUhWzEJSNgtJ 2QJG5lWMoqmlyQXFSem5RnrFibnFpXnpesn5uZsYIQH6dQfj0mNWhxgFOBiVeHgFPOPDhFgT y4orcw8xSnAwK4nwflsLFOJNSaysSi3Kjy8qzUktPsQozcGiJM47c9f7ECGB9MSS1OzU1ILU IpgsEwenVAPjnkMRV2/9bPx46eRxJpNjworBDkXqP6TenY66cbb3qt7Wp9EOyenvjCoyvlTJ 3Pv+7un0hXFHgj0uS1poG/Wd3HLxZ7tagzDnhMg7l+bNVop/9O71uVZ/U2OtS3UvD/bJ+Br6 GtWfc/33xqS4/8L6bpmFm/hvXF2Utbs0cakxz9um/7mzgxzmKbEUZyQaajEXFScCAH/L72pM AgAA Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 12/02/2015 05:27 PM, Thierry Reding wrote: > From: Thierry Reding > > These new helpers simplify implementing multi-driver modules and > properly handle failure to register one driver by unregistering all > previously registered drivers. > > Signed-off-by: Thierry Reding > --- > drivers/leds/leds-sunfire.c | 23 +++++++---------------- > 1 file changed, 7 insertions(+), 16 deletions(-) > > diff --git a/drivers/leds/leds-sunfire.c b/drivers/leds/leds-sunfire.c > index c2553c54f2cf..7c09db8bd4e8 100644 > --- a/drivers/leds/leds-sunfire.c > +++ b/drivers/leds/leds-sunfire.c > @@ -234,28 +234,19 @@ static struct platform_driver sunfire_fhc_led_driver = { > }, > }; > > +static struct platform_driver * const drivers[] = { > + &sunfire_clockboard_led_driver, > + &sunfire_fhc_led_driver, > +}; > + > static int __init sunfire_leds_init(void) > { > - int err = platform_driver_register(&sunfire_clockboard_led_driver); > - > - if (err) { > - pr_err("Could not register clock board LED driver\n"); > - return err; > - } > - > - err = platform_driver_register(&sunfire_fhc_led_driver); > - if (err) { > - pr_err("Could not register FHC LED driver\n"); > - platform_driver_unregister(&sunfire_clockboard_led_driver); > - } > - > - return err; > + return platform_register_drivers(drivers, ARRAY_SIZE(drivers)); > } > > static void __exit sunfire_leds_exit(void) > { > - platform_driver_unregister(&sunfire_clockboard_led_driver); > - platform_driver_unregister(&sunfire_fhc_led_driver); > + platform_unregister_drivers(drivers, ARRAY_SIZE(drivers)); > } > > module_init(sunfire_leds_init); > Applied, thanks. -- Best Regards, Jacek Anaszewski