On Wed, Mar 29, 2023 at 08:56:29PM +0530, Jagan Teki wrote: > On Wed, Mar 29, 2023 at 8:33 PM Maxime Ripard <max...@cerno.tech> wrote: > > > > On Wed, Mar 29, 2023 at 06:46:08PM +0530, Jagan Teki wrote: > > > Implement a DRM-managed action helper that returns the next DSI bridge > > > in the chain. > > > > > > Unlike general bridge return helper drmm_of_get_bridge, this helper > > > uses the dsi specific panel_or_bridge helper to find the next DSI > > > device in the pipeline. > > > > > > Helper lookup a given downstream DSI device that has been added via > > > child or OF-graph port or ports node. > > > > > > Upstream DSI looks for downstream devices using drm pointer, port and > > > endpoint number. Downstream devices added via child node don't affect > > > the port and endpoint number arguments. > > > > > > Signed-off-by: Jagan Teki <ja...@amarulasolutions.com> > > > > If you intend to use it with the sun4i driver, then don't. The sun4i > > driver is barely using drm-managed resources, so chances are all its > > resources will be freed by the time this action will run. > > Any idea how to check all resources will be freed before this > DRM-managed action helper runs? I did test the panel insertion and > removal at runtime and I can see that the action helper > (drmm_drm_panel_bridge_release) is triggered at removal time. > > Here is the log for it. > # insmod panel-bananapi-s070wv20-icn6211.ko > [ 11.411894] sun4i-drm display-engine: bound > 1e00000.display-frontend (ops 0xc0951eb4) > [ 11.420253] sun4i-drm display-engine: bound 1e60000.display-backend > (ops 0xc0951620) > [ 11.428128] sun4i-drm display-engine: bound 1e70000.drc (ops 0xc0951150) > [ 11.435574] sun4i-drm display-engine: No panel or bridge found... > RGB output disabled > [ 11.443484] sun4i-drm display-engine: bound 1c0c000.lcd-controller > (ops 0xc094fdb0) > [ 11.451264] sun4i-drm display-engine: bound 1ca0000.dsi (ops 0xc0952f04) > [ 11.462479] [drm] Initialized sun4i-drm 1.0.0 20150629 for > display-engine on minor 1 > [ 11.963246] Console: switching to colour frame buffer device 100x30 > [ 12.046329] sun4i-drm display-engine: [drm] fb0: sun4i-drmdrmfb > frame buffer device > [ 12.082641] sun6i-mipi-dsi 1ca0000.dsi: Attached device s070wv20-ct16-icn62 > # rmmod panel-bananapi-s070wv20-icn6211.ko > [ 16.306388] Console: switching to colour dummy device 80x30 > [ 16.466963] drmm_drm_panel_bridge_release: In
Enable KASAN, unload the DSI controller module or unbind its device, and watch things go boom :) Maxime
signature.asc
Description: PGP signature