mbox series

[00/12] Add PX30 LVDS support

Message ID 20191213181051.25983-1-miquel.raynal@bootlin.com (mailing list archive)
Headers show
Series Add PX30 LVDS support | expand

Message

Miquel Raynal Dec. 13, 2019, 6:10 p.m. UTC
Hello,

This series aims at supporting LVDS on PX30.

A first couple of patches update the documentation with the new
compatible and the presence of a PHY. Then, the existing Rockchip
driver is cleaned and extended to support PX30 specificities. Finally,
the PX30 DTSI is updated with CRTC routes, the DSI DPHY and the LVDS
IP itself.

Cheers,
Miquèl

Miquel Raynal (12):
  dt-bindings: display: rockchip-lvds: Declare PX30 compatible
  dt-bindings: display: rockchip-lvds: Document PX30 PHY
  drm/rockchip: lvds: Fix indentation of a #define
  drm/rockchip: lvds: Harmonize function names
  drm/rockchip: lvds: Change platform data
  drm/rockchip: lvds: Create an RK3288 specific probe function
  drm/rockchip: lvds: Helpers should return decent values
  drm/rockchip: lvds: Pack functions together
  drm/rockchip: lvds: Add PX30 support
  arm64: dts: rockchip: Add PX30 CRTCs graph LVDS endpoints
  arm64: dts: rockchip: Add PX30 DSI DPHY
  arm64: dts: rockchip: Add PX30 LVDS

 .../display/rockchip/rockchip-lvds.txt        |   4 +
 arch/arm64/boot/dts/rockchip/px30.dtsi        |  58 ++
 drivers/gpu/drm/rockchip/rockchip_lvds.c      | 516 ++++++++++++------
 drivers/gpu/drm/rockchip/rockchip_lvds.h      |  19 +-
 4 files changed, 441 insertions(+), 156 deletions(-)

Comments

Miquel Raynal Dec. 13, 2019, 6:38 p.m. UTC | #1
Hi Heiko,

Heiko Stübner <heiko@sntech.de> wrote on Fri, 13 Dec 2019 19:28:21
+0100:

> Hi Miquel,
> 
> Am Freitag, 13. Dezember 2019, 19:10:49 CET schrieb Miquel Raynal:
> > Add the display subsystem routes with the two available CRTCs: vopb
> > and vopl (big and little). For each CRTC, add the LVDS endpoints. MIPI
> > DSI endpoints will come later.
> > 
> > Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> > ---
> >  arch/arm64/boot/dts/rockchip/px30.dtsi | 20 ++++++++++++++++++++
> >  1 file changed, 20 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/rockchip/px30.dtsi b/arch/arm64/boot/dts/rockchip/px30.dtsi
> > index b2af0f02ecbe..1c96ba556daf 100644
> > --- a/arch/arm64/boot/dts/rockchip/px30.dtsi
> > +++ b/arch/arm64/boot/dts/rockchip/px30.dtsi
> > @@ -190,6 +190,16 @@
> >  		compatible = "rockchip,display-subsystem";
> >  		ports = <&vopb_out>, <&vopl_out>;
> >  		status = "disabled";
> > +
> > +		route {
> > +			route_vopb_lvds: route-vopb-lvds {
> > +				connect = <&vopb_out_lvds>;
> > +			};
> > +
> > +			route_vopl_lvds: route-vopl-lvds {
> > +				connect = <&vopl_out_lvds>;
> > +			};
> > +		};  
> 
> where does this route-stuff come from?
> The vendor tree? Because so far I've not seen this in mainline-drm
> in general nor the Rockchip drm driver itself.

Yes it comes from the vendor tree, I added a few things from the vendor
tree in the "I really want this panel to work" phase and I forgot to
check if it could be removed, I'll probably drop this.
 
> 
> 
> >  	};
> >  
> >  	gmac_clkin: external-gmac-clock {
> > @@ -976,6 +986,11 @@
> >  		vopb_out: port {
> >  			#address-cells = <1>;
> >  			#size-cells = <0>;
> > +
> > +			vopb_out_lvds: endpoint@0 {
> > +				reg = <0>;
> > +				remote-endpoint = <&lvds_vopb_in>;
> > +			};  
> 
> This (and the one below) would create dangling phandle references
> and compile errors, because the referenced phandles only get introduced
> in patch12. So ideally merge this into the last patch.

Actually patch 12 also references these nodes so I should merge them.

> 
> 
> Heiko
> 
> >  		};
> >  	};
> >  
> > @@ -1008,6 +1023,11 @@
> >  		vopl_out: port {
> >  			#address-cells = <1>;
> >  			#size-cells = <0>;
> > +
> > +			vopl_out_lvds: endpoint@0 {
> > +				reg = <0>;
> > +				remote-endpoint = <&lvds_vopl_in>;
> > +			};
> >  		};
> >  	};
> >  
> >   
> 
> 
> 
> 

Thanks for the review!
Miquèl