Re: [PATCH v1 2/2] drm/tegra: Use drm_dp_aux_register_ddc/chardev() helpers

From: Dmitry Osipenko
Date: Tue Nov 09 2021 - 09:39:08 EST


09.11.2021 17:17, Dmitry Osipenko пишет:
> 09.11.2021 17:08, Dmitry Osipenko пишет:
>>> +static void host1x_drm_dev_deinit(struct host1x_device *dev)
>>> +{
>>> + struct drm_device *drm = dev_get_drvdata(&dev->dev);
>> And platform_unregister_drivers() should be moved here.
>>
>
> Nah, that should cause deadlock. This ad-hoc is too lame.

Actually, there is no problem here as I see now. The host1x driver
populates DT nodes after host1x_register() [1], meaning that Host1x DRM
will be always inited first.

[1]
https://elixir.bootlin.com/linux/v5.15/source/drivers/gpu/host1x/dev.c#L475

Still I'm not a fan of the ad-hoc solution.

> Another solution is to defer probing of DP AUX driver while
> tegra_drm_device() returns NULL, but it's icky.
>
> Reverting the original DP AUX DDC registration order is the best option
> so far, IMO.
>