Re: [PATCH v7 drm-dp 5/9] drm/hisilicon/hibmc: Getting connector info and EDID by using AUX channel

From: Dmitry Baryshkov
Date: Sun Mar 30 2025 - 12:56:41 EST


On Sat, Mar 29, 2025 at 02:12:56PM +0800, Yongbang Shi wrote:
> > On Fri, Mar 28, 2025 at 12:28:14PM +0200, Jani Nikula wrote:
> > > On Fri, 28 Mar 2025, Yongbang Shi <shiyongbang@xxxxxxxxxx> wrote:
> > > > > On Thu, 27 Mar 2025, Yongbang Shi <shiyongbang@xxxxxxxxxx> wrote:
> > > > > > 在 2025/3/26 17:32, Jani Nikula 写道:
> > > > > > > On Tue, 25 Mar 2025, Yongbang Shi <shiyongbang@xxxxxxxxxx> wrote:
> > > > > > > > > On Mon, 24 Mar 2025, Yongbang Shi <shiyongbang@xxxxxxxxxx> wrote:
> > > > > > > > > > > On Wed, 19 Mar 2025, Yongbang Shi <shiyongbang@xxxxxxxxxx> wrote:
> > > > > > > > > > > > From: Baihan Li <libaihan@xxxxxxxxxx>
> > > > > > > > > > > >
> > > > > > > > > > > > Add registering drm_aux and use it to get connector edid with drm
> > > > > > > > > > > > functions. Add ddc channel in connector initialization to put drm_aux
> > > > > > > > > > > > in drm_connector.
> > > > > > > > > > > >
> > > > > > > > > > > > Signed-off-by: Baihan Li <libaihan@xxxxxxxxxx>
> > > > > > > > > > > > Signed-off-by: Yongbang Shi <shiyongbang@xxxxxxxxxx>
> > > > > > > > > > > > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> > > > > > > > > > > > ---
> > > > > > > > > > > > ChangeLog:
> > > > > > > > > > > > v6 -> v7:
> > > > > > > > > > > > - add if statement about drm aux in hibmc_dp_connector_get_modes(), suggested by Jani Nikula
> > > > > > > > > > > I don't understand this, and I did not suggest such a thing.
> > > > > > > > > > >
> > > > > > > > > > > BR,
> > > > > > > > > > > Jani.
> > > > > > > > > > >
> > > > > > > > > > Hi Jani,
> > > > > > > > > >
> > > > > > > > > > Is the modification of v8 correct?
> > > > > > > > > I never received that for whatever reason.
> > > > > > > > Here's the link: https://lore.kernel.org/all/20250320101455.2538835-1-shiyongbang@xxxxxxxxxx/
> > > > > > > Thanks.
> > > > > > >
> > > > > > > The EDID handling looks fine.
> > > > > > >
> > > > > > > AFAICT you leak dp->aux.name though.
> > > > > > >
> > > > > > >
> > > > > > > BR,
> > > > > > > Jani.
> > > > > > Thanks for for reminding me, actually the dp->aux.name was written because I misunderstood what you meant in V7,
> > > > > > and I deleted it in V8.
> > > > > This is in the link you posted:
> > > > >
> > > > > + dp->aux.name = kasprintf(GFP_KERNEL, "HIBMC DRM dp aux");
> > > > >
> > > > Hi Jani,
> > > >
> > > > I got it. I think I can change it to devm_kasprintf() in next bug fix patch, is that ok?
> > > Maybe. I don't have the time to look into hibmc details.
> > I don't either, but it looks suspicious to me. devm_kasprintf will be
> > freed when the device will be removed, but the DP Aux bus is probably
> > staying for a bit longer?
> >
> > Maxime
>
> Hi Ripard,
>
> I will bind it to my hibmc device, and aux_unregister is in early_unregister callback of dp's connector_funcs,
> which is before the hibmc_pci_remove(), so I think it work good.

No, DRM connectors are a part of the DRM framework and can potentially
outlive the underlying device.

--
With best wishes
Dmitry