From: Keith Zhao <keith.zhao@starfivetech.com>
To: Keith Zhao <keith.zhao@starfivetech.com>,
<devicetree@vger.kernel.org>, <dri-devel@lists.freedesktop.org>,
<linux-kernel@vger.kernel.org>, <linux-riscv@lists.infradead.org>
Cc: <mripard@kernel.org>, <tzimmermann@suse.de>, <airlied@gmail.com>,
<krzysztof.kozlowski+dt@linaro.org>,
<william.qiu@starfivetech.com>, <xingyu.wu@starfivetech.com>,
<paul.walmsley@sifive.com>, <aou@eecs.berkeley.edu>,
<palmer@dabbelt.com>, <p.zabel@pengutronix.de>,
<shengyang.chen@starfivetech.com>, <jack.zhu@starfivetech.com>,
<changhuang.liang@starfivetech.com>,
<maarten.lankhorst@linux.intel.com>, <suijingfeng@loongson.cn>
Subject: [v3 0/6] DRM driver for verisilicon
Date: Mon, 4 Dec 2023 20:33:09 +0800 [thread overview]
Message-ID: <20231204123315.28456-1-keith.zhao@starfivetech.com> (raw)
This patch is a drm driver for Starfive Soc JH7110,
I am sending Drm driver part and HDMI driver part.
We used GEM framework for buffer management,
and for buffer allocation,we use DMA APIs.
the Starfive HDMI servers as interface between a LCD Controller
and a HDMI bus.
A HDMI TX consists of one HDMI transmitter controller
and one HDMI transmitter PHY.
(Sound support is not include in this patch)
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.
Keith Zhao (6):
dt-bindings: display: Add yamls for JH7110 display system
riscv: dts: starfive: jh7110: display subsystem
drm/vs: Register DRM device
drm/vs: Add KMS crtc&plane
drm/vs: Add hdmi driver
drm/vs: simple encoder
.../starfive/starfive,display-subsystem.yaml | 104 ++
.../starfive/starfive,dsi-encoder.yaml | 92 ++
.../starfive/starfive,jh7110-dc8200.yaml | 113 ++
.../starfive/starfive,jh7110-inno-hdmi.yaml | 82 ++
.../soc/starfive/starfive,jh7110-syscon.yaml | 1 +
MAINTAINERS | 8 +
.../jh7110-starfive-visionfive-2.dtsi | 134 ++
arch/riscv/boot/dts/starfive/jh7110.dtsi | 49 +
drivers/gpu/drm/Kconfig | 2 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/verisilicon/Kconfig | 21 +
drivers/gpu/drm/verisilicon/Makefile | 12 +
drivers/gpu/drm/verisilicon/starfive_hdmi.c | 849 ++++++++++++
drivers/gpu/drm/verisilicon/starfive_hdmi.h | 304 +++++
drivers/gpu/drm/verisilicon/vs_crtc.c | 208 +++
drivers/gpu/drm/verisilicon/vs_crtc.h | 42 +
drivers/gpu/drm/verisilicon/vs_dc.c | 1192 +++++++++++++++++
drivers/gpu/drm/verisilicon/vs_dc.h | 67 +
drivers/gpu/drm/verisilicon/vs_dc_hw.c | 1022 ++++++++++++++
drivers/gpu/drm/verisilicon/vs_dc_hw.h | 580 ++++++++
drivers/gpu/drm/verisilicon/vs_drv.c | 323 +++++
drivers/gpu/drm/verisilicon/vs_drv.h | 46 +
drivers/gpu/drm/verisilicon/vs_modeset.c | 39 +
drivers/gpu/drm/verisilicon/vs_modeset.h | 10 +
drivers/gpu/drm/verisilicon/vs_plane.c | 301 +++++
drivers/gpu/drm/verisilicon/vs_plane.h | 39 +
drivers/gpu/drm/verisilicon/vs_simple_enc.c | 195 +++
drivers/gpu/drm/verisilicon/vs_simple_enc.h | 23 +
drivers/gpu/drm/verisilicon/vs_type.h | 69 +
29 files changed, 5928 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/starfive/starfive,display-subsystem.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/verisilicon/Kconfig
create mode 100644 drivers/gpu/drm/verisilicon/Makefile
create mode 100644 drivers/gpu/drm/verisilicon/starfive_hdmi.c
create mode 100644 drivers/gpu/drm/verisilicon/starfive_hdmi.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.c
create mode 100644 drivers/gpu/drm/verisilicon/vs_dc.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
--
2.34.1
next reply other threads:[~2023-12-04 12:33 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-04 12:33 Keith Zhao [this message]
2023-12-04 12:33 ` [v3 1/6] dt-bindings: display: Add yamls for JH7110 display system Keith Zhao
2023-12-05 6:59 ` Krzysztof Kozlowski
2023-12-06 12:50 ` Sui Jingfeng
2023-12-08 16:33 ` Rob Herring
2023-12-08 16:31 ` Rob Herring
2023-12-04 12:33 ` [v3 2/6] riscv: dts: starfive: jh7110: display subsystem Keith Zhao
2023-12-04 12:33 ` [v3 3/6] drm/vs: Register DRM device Keith Zhao
2023-12-04 13:30 ` Philipp Zabel
2023-12-11 9:00 ` Keith Zhao
2023-12-11 9:17 ` mripard
2023-12-05 11:33 ` Dmitry Baryshkov
2023-12-04 12:33 ` [v3 4/6] drm/vs: Add KMS crtc&plane Keith Zhao
2023-12-05 12:48 ` Dmitry Baryshkov
2023-12-06 8:55 ` Maxime Ripard
2023-12-06 12:53 ` Keith Zhao
2024-01-31 8:57 ` 回复: " Keith Zhao
2024-01-31 16:30 ` Maxime Ripard
2024-01-31 9:33 ` Keith Zhao
2024-01-31 13:23 ` Maxime Ripard
[not found] ` <NTZPR01MB1050C500508E29152E845511EE43A@NTZPR01MB1050.CHNPR01.prod.partner.outlook.cn>
2024-02-09 15:37 ` Maxime Ripard
2023-12-07 8:41 ` Icenowy Zheng
2023-12-07 11:31 ` Keith Zhao
2023-12-07 15:29 ` Icenowy Zheng
2023-12-27 3:57 ` Icenowy Zheng
2023-12-04 12:33 ` [v3 5/6] drm/vs: Add hdmi driver Keith Zhao
2023-12-05 13:02 ` Dmitry Baryshkov
2023-12-06 9:04 ` Maxime Ripard
2023-12-06 12:02 ` Keith Zhao
2023-12-06 12:56 ` Maxime Ripard
2023-12-06 14:11 ` Keith Zhao
2023-12-07 9:02 ` Andy Yan
2023-12-07 10:48 ` Keith Zhao
2023-12-08 0:37 ` Andy Yan
2023-12-08 3:00 ` Keith Zhao
2023-12-08 3:23 ` Andy Yan
2023-12-08 9:14 ` Maxime Ripard
2023-12-11 10:24 ` Keith Zhao
2023-12-11 12:13 ` Andy Yan
2023-12-13 1:40 ` Keith Zhao
2023-12-14 2:51 ` Andy Yan
2023-12-11 17:34 ` Rob Herring
2023-12-04 12:33 ` [v3 6/6] drm/vs: simple encoder Keith Zhao
2023-12-05 13:14 ` Dmitry Baryshkov
2023-12-05 13:18 ` Dmitry Baryshkov
2024-05-15 10:07 ` Keith Zhao
2024-05-15 15:17 ` Dmitry Baryshkov
2024-05-16 2:57 ` Keith Zhao
2023-12-05 6:55 ` [v3 0/6] DRM driver for verisilicon Krzysztof Kozlowski
2023-12-05 10:27 ` Sui Jingfeng
2023-12-05 11:59 ` Sui Jingfeng
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=20231204123315.28456-1-keith.zhao@starfivetech.com \
--to=keith.zhao@starfivetech.com \
--cc=airlied@gmail.com \
--cc=aou@eecs.berkeley.edu \
--cc=changhuang.liang@starfivetech.com \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jack.zhu@starfivetech.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=shengyang.chen@starfivetech.com \
--cc=suijingfeng@loongson.cn \
--cc=tzimmermann@suse.de \
--cc=william.qiu@starfivetech.com \
--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).