Re: [PATCH v9 20/23] drm/rockchip: Make VOP driver optional

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 31, 2022 at 03:20:37PM +0800, Andy Yan wrote:
> Hi Sascha:
> 
> On 3/31/22 15:06, Sascha Hauer wrote:
> > On Wed, Mar 30, 2022 at 08:50:09PM +0800, Andy Yan wrote:
> > > Hi Sascha:
> > > 
> > > On 3/30/22 14:39, Sascha Hauer wrote:
> > > > Hi Andy,
> > > > 
> > > > On Tue, Mar 29, 2022 at 07:56:27PM +0800, Andy Yan wrote:
> > > > > Hi Sascha:
> > > > > 
> > > > > On 3/28/22 23:11, Sascha Hauer wrote:
> > > > > > With upcoming VOP2 support VOP won't be the only choice anymore, so make
> > > > > > the VOP driver optional.
> > > > > > 
> > > > > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
> > > > > > ---
> > > > > >     drivers/gpu/drm/rockchip/Kconfig            | 8 ++++++++
> > > > > >     drivers/gpu/drm/rockchip/Makefile           | 3 ++-
> > > > > >     drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +-
> > > > > >     3 files changed, 11 insertions(+), 2 deletions(-)
> > > > > > 
> > > > > > diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig
> > > > > > index fa5cfda4e90e3..7d22e2997a571 100644
> > > > > > --- a/drivers/gpu/drm/rockchip/Kconfig
> > > > > > +++ b/drivers/gpu/drm/rockchip/Kconfig
> > > > > > @@ -23,8 +23,16 @@ config DRM_ROCKCHIP
> > > > > >     if DRM_ROCKCHIP
> > > > > > +config ROCKCHIP_VOP
> > > > > > +	bool "Rockchip VOP driver"
> > > > > > +	default y
> > > > > > +	help
> > > > > > +	  This selects support for the VOP driver. You should enable it
> > > > > > +	  on all older SoCs up to RK3399.
> > > > That reminds me that I wanted to rephrase this. Will change in next
> > > > round.
> > > > 
> > > > > > +
> > > > > >     config ROCKCHIP_ANALOGIX_DP
> > > > > >     	bool "Rockchip specific extensions for Analogix DP driver"
> > > > > > +	depends on ROCKCHIP_VOP
> > > > > Aanlogix dp is also on vop2 base soc such as  rk356x and rk3588.
> > BTW I just looked at the downstream driver. Here we have the same
> > situation that the analogix dp driver calls rockchip_drm_wait_vact_end()
> > which is implemented in the VOP driver, so when the analogix dp driver
> > is actually used on a VOP2 SoC then it is either used in a way that
> > rockchip_drm_wait_vact_end() will never be called or it explodes in all
> > colours.
> > 
> > > > I added the dependency because analogix_dp-rockchip.c calls
> > > > rockchip_drm_wait_vact_end() which is implemented in the VOP driver,
> > > > so this driver currenty can't work with the VOP2 driver and can't
> > > > be linked without the VOP driver being present.
> > > > I'll add a few words to the commit message.
> > > 
> > > Maybe a better direction is move rockchip_drm_wait_vact_end from the VOP
> > > driver to rockchip_drm_drv.c
> > I am not sure if that's really worth it. Yes, the direction might be the
> > right one, but I would really prefer when somebody does the change who
> > can test and confirm that the analogix dp really works with VOP2 in the
> > end.
> 
> If follow this point, the current DW_MIPI also has not been tested for
> confirm that it
> 
> can really work with VOP2, so you should also make it depends on
> ROCKCHIP_VOP.

Well at least I have patches here which make DW_MIPI work with VOP2 ;)

What about the others, like LVDS and RGB?
> 
> I think the current solution is just a workaround to make your patch pass
> the kernel compile

Indeed.

I agree that it would be good to add a note somewhere which outputs
work with the VOP2 driver (currently only HDMI), but I wonder if Kconfig
dependencies is the right place for it, because only people who deliberately
disable VOP support will see this information.
Maybe we should rather add it to the Kconfig help text?

Sascha

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux