devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Heiko Stübner" <heiko@sntech.de>
To: andrzej.hajda@intel.com, neil.armstrong@linaro.org,
	rfoss@kernel.org, Laurent.pinchart@ideasonboard.com,
	jonas@kwiboo.se, jernej.skrabec@gmail.com,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	tzimmermann@suse.de, airlied@gmail.com, daniel@ffwll.ch,
	robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
	hjc@rock-chips.com, andy.yan@rock-chips.com,
	xingyu.wu@starfivetech.com, p.zabel@pengutronix.de,
	jack.zhu@starfivetech.com, shengyang.chen@starfivetech.com,
	keith <keith.zhao@starfivetech.com>,
	Alex Bee <knaerzche@gmail.com>
Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	keith.zhao@starfivetech.com
Subject: Re: [PATCH v4 00/10] drm/verisilicon : support DC8200 and inno hdmi
Date: Tue, 21 May 2024 10:03:24 +0200	[thread overview]
Message-ID: <3222561.5fSG56mABF@diego> (raw)
In-Reply-To: <20240521105817.3301-1-keith.zhao@starfivetech.com>

Hi Alex,

Am Dienstag, 21. Mai 2024, 12:58:07 CEST schrieb keith:
> Verisilicon/DC8200 display controller IP has 2 display pipes and each 
> pipe support a primary plane and a cursor plane . 
> In addition, there are four overlay planes as two display pipes common resources.
> 
> The first display pipe is bound to the inno HDMI encoder.
> The second display pipe is bound to a simple encoder, which is used to
> find dsi bridge by dts node. 
> 
> Patch 1 adds YAML schema for JH7110 display pipeline.
> 
> Patches 2 to 3 add inno common api and match the ROCKCHIP inno hdmi driver 
> by calling the common api. 
> The collating public interface is based on ROCKCHIP inno hdmi, 
> and it can be resused by JH7110 inno hdmi.
> Those common api are tested on rk-3128 SDK, which kernel version is 4.x. 

as you were working on the rk3128-inno-hdmi variant recently
and I don't really have a rk3036 or rk3128 in working condition
right now, could you give this series a try.

For reference, the full series is at lore:
https://lore.kernel.org/dri-devel/20240521105817.3301-1-keith.zhao@starfivetech.com/

and generalizes the inno-hdmi driver into the bridge model we
have in a number of other places already.


Thanks
Heiko



> step1, make sure the process is consistent with the latest kernel version.
> step2, just remove the interface and add a common interface. 
> 
> Patches 4 to 8 add kms driver for dc8200 display controller.
> 
> Patch 9 adds inno hdmi support for JH7110 display pipeline.
> 
> Patch 10 adds a simple encoder.
> 
> This patchset should be applied on next branch.
> 
> V1:
> Changes since v1:
> - Further standardize the yaml file.
> - Dts naming convention improved.
> - Fix the problem of compiling and loading ko files.
> - Use drm new api to automatically manage resources.
> - Drop vs_crtc_funcs&vs_plane_funcs, subdivide the plane's help interface.
> - Reduce the modifiers unused.
> - Optimize the hdmi driver code
> 
> V2:
> Changes since v2:
> - fix the error about checking the yaml file.
> - match drm driver GEM DMA API.
> - Delete the custom crtc property .
> - hdmi use drmm_ new api to automatically manage resources.
> - update the modifiers comments.
> - enabling KASAN, fix the error during removing module 
> 
> V3:
> Changes since v3:
> - Delete the custom plane property.
> - Delete the custom fourcc modifiers.
> - Adjust the calculation mode of hdmi pixclock.
> - Add match data for dc8200 driver.
> - Adjust some magic values.
> - Add a simple encoder for dsi output.
> 
> V4:
> Changes since v4:
> - Delete the display subsystem module as all crtcs and planes are a driver.
> - Delete the custom struct, directly use the drm struct data.
> - Tidy up the inno hdmi public interface.
> - Add a simple encoder for dsi output.
> 
> keith (10):
>   dt-bindings: display: Add YAML schema for JH7110 display pipeline
>   drm/bridge: add common api for inno hdmi
>   drm/rockchip:hdmi: migrate to use inno-hdmi bridge driver
>   drm/vs: Add hardware funcs for vs.
>   drm/vs: add vs mode config init
>   drm/vs: add vs plane api
>   drm/vs: add ctrc fun
>   drm/vs: add vs drm master driver
>   drm/vs: Innosilicon HDMI support
>   drm/vs: add simple dsi encoder
> 
>  .../display/bridge/innosilicon,inno-hdmi.yaml |   49 +
>  .../display/rockchip/rockchip,inno-hdmi.yaml  |   27 +-
>  .../starfive/starfive,dsi-encoder.yaml        |   92 ++
>  .../starfive/starfive,jh7110-dc8200.yaml      |  169 +++
>  .../starfive/starfive,jh7110-inno-hdmi.yaml   |   75 ++
>  .../soc/starfive/starfive,jh7110-syscon.yaml  |    1 +
>  MAINTAINERS                                   |   11 +
>  drivers/gpu/drm/Kconfig                       |    2 +
>  drivers/gpu/drm/Makefile                      |    1 +
>  drivers/gpu/drm/bridge/Kconfig                |    2 +
>  drivers/gpu/drm/bridge/Makefile               |    1 +
>  drivers/gpu/drm/bridge/innosilicon/Kconfig    |    6 +
>  drivers/gpu/drm/bridge/innosilicon/Makefile   |    2 +
>  .../gpu/drm/bridge/innosilicon/inno-hdmi.c    |  587 +++++++++
>  .../gpu/drm/bridge/innosilicon/inno-hdmi.h    |   97 ++
>  drivers/gpu/drm/rockchip/Kconfig              |    1 +
>  drivers/gpu/drm/rockchip/Makefile             |    2 +-
>  drivers/gpu/drm/rockchip/inno_hdmi-rockchip.c |  517 ++++++++
>  .../{inno_hdmi.h => inno_hdmi-rockchip.h}     |   45 -
>  drivers/gpu/drm/rockchip/inno_hdmi.c          | 1073 -----------------
>  drivers/gpu/drm/verisilicon/Kconfig           |   23 +
>  drivers/gpu/drm/verisilicon/Makefile          |   11 +
>  .../gpu/drm/verisilicon/inno_hdmi-starfive.c  |  481 ++++++++
>  .../gpu/drm/verisilicon/inno_hdmi-starfive.h  |  152 +++
>  drivers/gpu/drm/verisilicon/vs_crtc.c         |  241 ++++
>  drivers/gpu/drm/verisilicon/vs_crtc.h         |   17 +
>  drivers/gpu/drm/verisilicon/vs_dc_hw.c        | 1060 ++++++++++++++++
>  drivers/gpu/drm/verisilicon/vs_dc_hw.h        |  493 ++++++++
>  drivers/gpu/drm/verisilicon/vs_drv.c          |  721 +++++++++++
>  drivers/gpu/drm/verisilicon/vs_drv.h          |   98 ++
>  drivers/gpu/drm/verisilicon/vs_modeset.c      |   36 +
>  drivers/gpu/drm/verisilicon/vs_modeset.h      |   10 +
>  drivers/gpu/drm/verisilicon/vs_plane.c        |  487 ++++++++
>  drivers/gpu/drm/verisilicon/vs_plane.h        |   26 +
>  drivers/gpu/drm/verisilicon/vs_simple_enc.c   |  190 +++
>  drivers/gpu/drm/verisilicon/vs_simple_enc.h   |   25 +
>  drivers/gpu/drm/verisilicon/vs_type.h         |   84 ++
>  include/drm/bridge/inno_hdmi.h                |   69 ++
>  38 files changed, 5840 insertions(+), 1144 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/display/bridge/innosilicon,inno-hdmi.yaml
>  create mode 100644 Documentation/devicetree/bindings/display/starfive/starfive,dsi-encoder.yaml
>  create mode 100644 Documentation/devicetree/bindings/display/starfive/starfive,jh7110-dc8200.yaml
>  create mode 100644 Documentation/devicetree/bindings/display/starfive/starfive,jh7110-inno-hdmi.yaml
>  create mode 100644 drivers/gpu/drm/bridge/innosilicon/Kconfig
>  create mode 100644 drivers/gpu/drm/bridge/innosilicon/Makefile
>  create mode 100644 drivers/gpu/drm/bridge/innosilicon/inno-hdmi.c
>  create mode 100644 drivers/gpu/drm/bridge/innosilicon/inno-hdmi.h
>  create mode 100644 drivers/gpu/drm/rockchip/inno_hdmi-rockchip.c
>  rename drivers/gpu/drm/rockchip/{inno_hdmi.h => inno_hdmi-rockchip.h} (85%)
>  delete mode 100644 drivers/gpu/drm/rockchip/inno_hdmi.c
>  create mode 100644 drivers/gpu/drm/verisilicon/Kconfig
>  create mode 100644 drivers/gpu/drm/verisilicon/Makefile
>  create mode 100644 drivers/gpu/drm/verisilicon/inno_hdmi-starfive.c
>  create mode 100644 drivers/gpu/drm/verisilicon/inno_hdmi-starfive.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_crtc.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_crtc.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_dc_hw.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_dc_hw.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_drv.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_drv.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_modeset.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_modeset.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_plane.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_plane.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_simple_enc.c
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_simple_enc.h
>  create mode 100644 drivers/gpu/drm/verisilicon/vs_type.h
>  create mode 100644 include/drm/bridge/inno_hdmi.h
> 
> 





  parent reply	other threads:[~2024-05-21  8:04 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-21 10:58 [PATCH v4 00/10] drm/verisilicon : support DC8200 and inno hdmi keith
2024-05-21  7:18 ` Krzysztof Kozlowski
2024-05-21  8:03 ` Heiko Stübner [this message]
2024-05-21 14:55   ` Alex Bee
2024-05-21 10:58 ` [PATCH v4 01/10] dt-bindings: display: Add YAML schema for JH7110 display pipeline keith
2024-05-21  7:30   ` Krzysztof Kozlowski
2024-05-21  9:50     ` Keith Zhao
2024-05-21 10:58 ` [PATCH v4 02/10] drm/bridge: add common api for inno hdmi keith
2024-05-21  9:30   ` Krzysztof Kozlowski
2024-05-21 15:36   ` Alex Bee
2024-05-21 15:42     ` Laurent Pinchart
2024-05-22  5:58       ` Keith Zhao
2024-05-22  7:32         ` Laurent Pinchart
2024-06-23 18:42   ` Markus Elfring
2024-05-21 10:58 ` [PATCH v4 03/10] drm/rockchip:hdmi: migrate to use inno-hdmi bridge driver keith
2024-05-22  7:24   ` Maxime Ripard
2024-06-23  7:17     ` Keith Zhao
2024-06-24  9:25       ` Maxime Ripard
2024-05-21 10:58 ` [PATCH v4 04/10] drm/vs: Add hardware funcs for vs keith
2024-05-21 20:50   ` kernel test robot
2024-05-21 20:50   ` Dmitry Baryshkov
2024-06-23  7:16     ` Keith Zhao
2024-06-23 20:51       ` Dmitry Baryshkov
2024-06-25  8:32         ` Keith Zhao
2024-05-21 21:01   ` kernel test robot
2024-05-22  1:34   ` kernel test robot
2024-05-21 10:58 ` [PATCH v4 05/10] drm/vs: add vs mode config init keith
2024-05-21 20:52   ` Dmitry Baryshkov
2024-06-23  7:17     ` Keith Zhao
2024-06-23 20:52       ` Dmitry Baryshkov
2024-05-21 10:58 ` [PATCH v4 06/10] drm/vs: add vs plane api keith
2024-05-21 20:39   ` kernel test robot
2024-05-21 21:06   ` Dmitry Baryshkov
2024-06-23  7:17     ` Keith Zhao
2024-06-23 20:54       ` Dmitry Baryshkov
2024-05-21 10:58 ` [PATCH v4 07/10] drm/vs: add ctrc fun keith
2024-05-21 21:08   ` Dmitry Baryshkov
2024-06-23  7:17     ` Keith Zhao
2024-06-23 20:56       ` Dmitry Baryshkov
2024-05-21 10:58 ` [PATCH v4 08/10] drm/vs: add vs drm master driver keith
2024-05-21 21:14   ` Dmitry Baryshkov
2024-06-23  7:16     ` Keith Zhao
2024-06-23 21:07       ` Dmitry Baryshkov
2024-06-25  8:34         ` Keith Zhao
2024-05-21 10:58 ` [PATCH v4 09/10] drm/vs: Innosilicon HDMI support keith
2024-05-21  9:31   ` Krzysztof Kozlowski
2024-05-21 10:58 ` [PATCH v4 10/10] drm/vs: add simple dsi encoder keith
2024-05-21 15:25   ` Dmitry Baryshkov
2024-06-23  7:17     ` Keith Zhao
2024-06-23 21:11       ` Dmitry Baryshkov
2024-06-25  8:33         ` Keith Zhao
2024-06-25 10:59           ` Dmitry Baryshkov
2024-05-22  7:29   ` Maxime Ripard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3222561.5fSG56mABF@diego \
    --to=heiko@sntech.de \
    --cc=Laurent.pinchart@ideasonboard.com \
    --cc=airlied@gmail.com \
    --cc=andrzej.hajda@intel.com \
    --cc=andy.yan@rock-chips.com \
    --cc=conor+dt@kernel.org \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hjc@rock-chips.com \
    --cc=jack.zhu@starfivetech.com \
    --cc=jernej.skrabec@gmail.com \
    --cc=jonas@kwiboo.se \
    --cc=keith.zhao@starfivetech.com \
    --cc=knaerzche@gmail.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=neil.armstrong@linaro.org \
    --cc=p.zabel@pengutronix.de \
    --cc=rfoss@kernel.org \
    --cc=robh@kernel.org \
    --cc=shengyang.chen@starfivetech.com \
    --cc=tzimmermann@suse.de \
    --cc=xingyu.wu@starfivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).