Re: [PATCH]"drm: change DRM_MIPI_DSI module type from "bool" to "tristate".
From: Jani Nikula
Date: Thu Oct 20 2016 - 09:44:59 EST
On Thu, 20 Oct 2016, Andrzej Hajda <a.hajda@xxxxxxxxxxx> wrote:
> Hi Jani,
>
> Forgive me late response.
>
> On 12.10.2016 16:28, Jani Nikula wrote:
>> On Wed, 12 Oct 2016, Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote:
>>> On 11 October 2016 at 10:33, Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> wrote:
>>>> On Tue, 11 Oct 2016, "Sun, Jing A" <jing.a.sun@xxxxxxxxx> wrote:
>>>>> It's needed that DRM Driver module could be removed and reloaded after
>>>>> kernel booting on the projects that I have been working on, and I hope
>>>>> such module type change could be accepted. Looks like Iwai has similar
>>>>> change request as well. Would you please review it and let us know if
>>>>> any concerns?
>>>> Looking at the Kconfig, selecting CONFIG_DRM_MIPI_DSI is against the
>>>> recommendations of Documentation/kbuild/kconfig-language.txt:
>>>>
>>>> select should be used with care. select will force
>>>> a symbol to a value without visiting the dependencies.
>>>> By abusing select you are able to select a symbol FOO even
>>>> if FOO depends on BAR that is not set.
>>>> In general use select only for non-visible symbols
>>>> (no prompts anywhere) and for symbols with no dependencies.
>>>> That will limit the usefulness but on the other hand avoid
>>>> the illegal configurations all over.
>>>>
>>>> Indeed, you may end up with CONFIG_DRM_MIPI_DSI=y and CONFIG_DRM=m,
>>>> which violates DRM_MIPI_DSI dependency on CONFIG_DRM. This is broken and
>>>> should be fixed. The suggested patch does *not* fix this issue.
>>>>
>>> Jani, git log suggests you as the unfortunate author of the select
>>> DRM_MIPI_DSI/select DRM_PANEL hunks in i915 ;-)
>> /o\
>>
>> As much as my present self would like to scold my past self for all his
>> mistakes, I have to remind myself that it is the mistakes that have
>> given me invaluable experience that my past self didn't have. I can only
>> hope my future self will have time to fix even a fraction of the
>> mistakes.
>>
>> Anyway, as Andrzej pointed out, all configs that select DRM_MIPI_DSI
>> also depend on DRM, so this problem can't currently occur. Once dsi bus
>> un-registration gets addressed, we can turn DRM_MIPI_DSI into a tristate
>> config (i.e. a loadable module).
>
> There is already patch adding bus unregistration [1]. It was published
> together
> with 'tristate' patch [2], both were created by Takashi few months ago.
Right. So make that "Once dis bus un-registration gets merged
upstream". ;)
BR,
Jani.
>
> [1]:
> https://lists.freedesktop.org/archives/dri-devel/2016-August/114870.html
> [2]:
> https://lists.freedesktop.org/archives/dri-devel/2016-August/114497.html
>
> Regards
> Andrzej
>
>>
>> BR,
>> Jani.
>>
>
--
Jani Nikula, Intel Open Source Technology Center