[PATCH v2 3/5] PCI: st: Provide support for the sti PCIe controller
fabrice.gasnier at st.com
Wed Mar 18 01:49:22 PDT 2015
On 03/16/2015 04:11 PM, Paul Bolle wrote:
>> +config PCI_ST
>> + bool "ST PCIe controller"
> You add a bool Kconfig symbol. A week or two ago I saw some patches fly
> by that - I think - allowed PCIe controllers to be built modular.
Thanks for your review.
Are you talking about "PCI: Export symbols of PCI functions" patch, that
is part of a series
named "pci: iproc: Add Broadcom iProc PCIe support" ?
This controller doesn't look like to be based on pcie-designware core
Other vendors that are using "pcie-designware" core driver are also make
The current core driver doesn't support module loading/unloading as I
If this is required, I also think this should be part of another patchset.
What do you think ?
>> + depends on ARCH_STI || (ARM && COMPILE_TEST)
>> + select PCIE_DW
>> + help
>> + Enable PCIe controller support on ST Socs. This controller is based
>> + on Designware hardware and therefore the driver re-uses the
>> + Designware core functions to implement the driver.
>> --- a/drivers/pci/host/Makefile
>> +++ b/drivers/pci/host/Makefile
>> +obj-$(CONFIG_PCI_ST) += pci-st.o
> If you keep that symbol bool this objectfile will never be part of a
>> diff --git a/drivers/pci/host/pci-st.c b/drivers/pci/host/pci-st.c
>> new file mode 100644
>> index 0000000..470000d
>> --- /dev/null
>> +++ b/drivers/pci/host/pci-st.c
>> +#include <linux/module.h>
> For built-in code this include is, probably, not needed.
>> +MODULE_DEVICE_TABLE(of, st_pcie_of_match);
> For built-in code that macro will always be preprocessed away.
>> +/* ST PCIe driver does not allow module unload */
>> +static int __init pcie_init(void)
>> + return platform_driver_probe(&st_pcie_driver, st_pcie_probe);
> I think the module unload comment is a bit odd for built-in only code.
>> +MODULE_AUTHOR("Fabrice Gasnier <fabrice.gasnier at st.com>");
>> +MODULE_DESCRIPTION("PCI express Driver for ST SoCs");
>> +MODULE_LICENSE("GPL v2");
> These three macros will be, basically, always preprocessed away as long
> as this code can't be built to be modular.
> Paul Bolle
More information about the linux-arm-kernel