On 4/28/22 09:45, Thomas Zimmermann wrote: [snip] >>> You cannot select DISPLAY_DP_HELPER without DISPLAY_HELPER. >>> >> >> That was my original thought as well and what did in v1, but then I noticed >> that doing that it would force DRM_DISPLAY_HELPER to be set as built-in and >> not allow to be built as a module. > > It was a rhetorical only. I didn't mean to actually set DISPLAY_HELPER. > Ah, sorry for misunderstanding. >> >>> Can't you simply make it depend on DISPLAY_DP_HELPER. The menu entry >>> will show up as soon as there's a driver that selcets DISPLAY_DP_HELPER. >>> >> >> I could but then that means that once won't be able to select these two config >> options unless some enable symbol selects DRM_DISPLAY_DP_HELPER. >> >> In my opinion, DRM_DP_AUX_CHARDEV and DRM_DP_CEC are different than all other >> options that select DRM_DISPLAY_DP_HELPER, since those are drivers and want to >> have both DRM_DISPLAY_DP_HELPER and DRM_DISPLAY_HELPER set. >> >> But DRM_DP_AUX_CHARDEV and DRM_DP_CEC are just included in drm_display_helper.o >> if enabled, and depend on symbols that are present if CONFIG_DRM_DISPLAY_DP_HELPER >> is enabled. So just need the latter, if DRM_DISPLAY_HELPER is not enabled then it >> will just be a no-op. >> >> Having written that though I noticed that a "depends on DRM_DISPLAY_HELPER" makes >> sense. If you agree I can add it and post a v3. > > Yes please. These options enable features of the DP code. If there's no > driver with DP, it doesn't make sense to allow them. > > I know that there could be an odd situation where userspace might not > have DP, but still wants the chardev file of aux bus. But that > situation existed already when the code was located within KMS helpers. > Agreed. >> >> Now, pondering more about this issue, probably the most correct thing to do is for >> the drivers that make use of the symbols exported by DRM_DP_{AUX_CHARDEV,CEC} to >> select these. What do you think ? > > That's not considered good style. Select should not be used for anything > that is user-configurable. [1] > Right. So giving even more thought to this, now I think that we should just include drm_dp_aux_dev.o, drm_dp_cec.o (and probably drm_dp_aux_bus.o?) unconditionally to drm_display_helper-$(CONFIG_DRM_DISPLAY_DP_HELPER). After all, these are not big objects and drm_display_helper can now be built as module. I don't see that much value to have separate user-configurable config options... -- Best regards, Javier Martinez Canillas Linux Engineering Red Hat