Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752493AbbEFN3j (ORCPT ); Wed, 6 May 2015 09:29:39 -0400 Received: from mail-qc0-f182.google.com ([209.85.216.182]:34236 "EHLO mail-qc0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752151AbbEFN3f (ORCPT ); Wed, 6 May 2015 09:29:35 -0400 MIME-Version: 1.0 In-Reply-To: References: <1428657168-12495-1-git-send-email-gabriel.fernandez@linaro.org> <1428657168-12495-4-git-send-email-gabriel.fernandez@linaro.org> <20150505221646.GE24643@google.com> From: Bjorn Helgaas Date: Wed, 6 May 2015 08:29:14 -0500 Message-ID: Subject: Re: [PATCH v3 3/5] PCI: st: Provide support for the sti PCIe controller To: Gabriel Fernandez Cc: Gabriel FERNANDEZ , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Srinivas Kandagatla , Maxime Coquelin , Patrice Chotard , Russell King , Jingoo Han , Lucas Stach , Fabrice Gasnier , Kishon Vijay Abraham I , Andrew Morton , "David S. Miller" , Greg KH , Mauro Carvalho Chehab , Joe Perches , Tejun Heo , Arnd Bergmann , Viresh Kumar , Thierry Reding , Phil Edworthy , Minghuan Lian , Tanmay Inamdar , Muralidharan Karicheri , Sachin Kamat , Andrew Lunn , Liviu Dudau , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "kernel@stlinux.com" , "linux-pci@vger.kernel.org" , Lee Jones 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: 2157 Lines: 58 On Wed, May 6, 2015 at 4:14 AM, Gabriel Fernandez wrote: > Hi Bjorn, > > On 6 May 2015 at 00:16, Bjorn Helgaas wrote: >> On Fri, Apr 10, 2015 at 11:12:46AM +0200, Gabriel FERNANDEZ wrote: >>> sti pcie is built around a Synopsis Designware PCIe IP. >>> >>> Signed-off-by: Fabrice Gasnier >>> Signed-off-by: Gabriel Fernandez >> >>> +/* ST PCIe driver does not allow module unload */ >> >> Is there something that prevents module unload, or is it just untested? >> > Yes we haven't tested > >>> +static int __init pcie_init(void) >>> +{ >>> + return platform_driver_probe(&st_pcie_driver, st_pcie_probe); >>> +} >>> +device_initcall(pcie_init); >> >> Can you use module_platform_driver_probe() or module_init() here? >> > > Yes we can use module_init() here. > > By the way if figure out i removed __init attribute on st_pcie_probe() > in previous version to follow Arnd's remark. > But st_pcie_probe calls hook_fault_code() that has __init attribute. > So I think we need to keep __init for probe routine ? > Also, we have to restrict bind/unbind with "suppress_bind_attrs" in > platform_driver structure. > This is the main reason to not allow module unload/reload. I don't really care which solution you end up with here. But please do take a look at how the other drivers solve the same problem. Using "device_initcall()" is unique in drivers/pci/host, and I don't believe the problem is unique. If several drivers have the same issue, they should solve it the same way. > If you are ok i will send a v4 ? I think I'll have a few questions about the designware changes, too, so you might want to wait a day or two. >>> +MODULE_AUTHOR("Fabrice Gasnier "); >>> +MODULE_DESCRIPTION("PCI express Driver for ST SoCs"); >>> +MODULE_LICENSE("GPL v2"); >>> -- >>> 1.9.1 >>> -- 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/