On 7/15/22 19:56, Bjorn Helgaas wrote: > On Thu, Jul 14, 2022 at 04:05:41PM +0300, Dmitry Baryshkov wrote: >> On 14/07/2022 15:19, Stanimir Varbanov wrote: >>> Please take a look why we made it built-in first [1]. >>> >>> If arguments there are still valid I don't see why to make it a module >>> again. >>> >>> [1] https://lkml.org/lkml/2016/8/24/694 >> >> It looks like there is a move to make all non-essential drivers buildable as >> modules. For example, the Kirin, dra7xx, Meson PCI controllers are now >> buildable as modules. So I think we can follow that and allow building the >> pcie-qcom as a module. > > IIUC the arguments in [1] are that: > > - Kconfig is bool, so it can't be built as a module > - there's no sensible use case for unbind > > Those described the situation at the time, and there's no point in > having .remove() and using module_platform_driver() if Kconfig is > bool. > > But they don't seem like arguments for why the driver couldn't be > *made* modular. I guess the core of the problem was lack of dw_pcie_host_deinit() at that time. > > I think drivers *should* be modular unless there's a technical reason > they can't be. I agree. > > Bjorn -- regards, Stan