On Fri, Apr 23, 2021 at 12:11:06AM -0400, Lyude Paul wrote:
On Thu, 2021-04-22 at 18:33 -0400, Lyude Paul wrote:
OK - talked with Ville a bit on this and did some of my own research, I actually think that moving i2c to drm_dp_aux_init() is the right decision for the time being. The reasoning behind this being that as shown by my previous work of fixing drivers that call drm_dp_aux_register() too early - it seems like there's already been drivers that have been working just fine with setting up the i2c device before DRM registration.
In the future, it'd probably be better if we can split up i2c_add_adapter() into an init and register function - but we'll have to talk with the i2c maintainers to see if this is acceptable w/ them
Actually - I think adding the ability to refcount dp aux adapters might be a better solution so I'm going to try that!
I'm curious: how is a DP AUX adapter reference count going to solve the issue of potentially registering devices too early (i.e. before the DRM is registered)?
Is it because registering too early could cause a reference count problem if somebody get a hold of the DP AUX adapter before the parent DRM device is around?
Thierry