On 25.04.2017 08:28, Michel Dänzer wrote: > On 22/04/17 02:05 AM, Felix Kuehling wrote: >> __setup doesn't work in modules. > > Right. We could build something like > drivers/video/fbdev/core/fb_cmdline.c:video_setup() into the kernel to > handle this, but it's a bit ugly, which is one reason why I was leaning > towards: > > >> s8250_options is only compiled if the driver is not a module. > > That doesn't prevent us from using __module_param_call directly, does it? > > Although, that still doesn't work as I envision if only one driver's > option is set e.g. in /etc/modprobe.d/*.conf . > > > So, I'm starting to think we need a shared module for this, which > provides one or multiple module parameters to choose which driver to use > for CIK/SI[0], and provides the result to the amdgpu/radeon drivers. > That might make things easier for amdgpu-pro / other standalone amdgpu > versions in the long run as well, as they could add files to > /etc/modprobe.d/ choosing themselves by default, without having to > blacklist radeon. > > What do you guys think? I suspect that adding an entire module just to select between two other modules is the kind of thing that should be discussed in a wider audience first. It is probably the cleanest solution that doesn't require teaching the general modprobe architecture about having multiple modules for the same PCI ID... Cheers, Nicolai > > > [0] or possibly even more fine-grained in the future > -- Lerne, wie die Welt wirklich ist, Aber vergiss niemals, wie sie sein sollte.