Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions arch/arm/boot/dts/overlays/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -343,6 +343,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
vc4-kms-dsi-ili9881-7inch.dtbo \
vc4-kms-dsi-lt070me05000.dtbo \
vc4-kms-dsi-lt070me05000-v2.dtbo \
vc4-kms-dsi-tdo-panel.dtbo \
vc4-kms-dsi-waveshare-800x480.dtbo \
vc4-kms-dsi-waveshare-panel.dtbo \
vc4-kms-dsi-waveshare-panel-v2.dtbo \
Expand Down
12 changes: 12 additions & 0 deletions arch/arm/boot/dts/overlays/README
Original file line number Diff line number Diff line change
Expand Up @@ -5865,6 +5865,18 @@ Load: dtoverlay=vc4-kms-dsi-lt070me05000-v2
Params: <None>


Name: vc4-kms-dsi-tdo-panel
Info: Enable the Tdo DSI screen,keep adding.
Requires vc4-kms-v3d to be loaded.
Load: dtoverlay=vc4-kms-dsi-tdo-panel,<param>=<val>
Params: tl034wvs03 4.0" 480x480 2lane
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tl040wvs17 4.0" 480x480 2lane
tl040hds31 4.0" 720x720 2lane
rotate Display rotation {0,90,180,270}
dsi0 Use DSI0 and i2c_csi_dsi0 (rather than
the default DSI1 and i2c_csi_dsi).


Name: vc4-kms-dsi-waveshare-800x480
Info: Enable the Waveshare 4.3" 800x480 DSI screen.
It tries to look like the Pi 7" display, but won't accept some of the
Expand Down
69 changes: 69 additions & 0 deletions arch/arm/boot/dts/overlays/vc4-kms-dsi-tdo-panel-overlay.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/*
* Device Tree overlay for Waveshare DSI Touchscreens
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm confused as to whether this is a Waveshare product using the TDO display, or TDO submitting this.

*
*/

/dts-v1/;
/plugin/;

/ {
compatible = "brcm,bcm2835";

dsi_frag: fragment@0 {
target = <&dsi1>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
port {
dsi_out: endpoint {
remote-endpoint = <&panel_in>;
};
};

panel: panel_dsi1@0 {
compatible = "tdo,4.0-dsi-tl040wvs17";
status = "okay";
reg = <0>;
reset-gpios = <&gpio 47 1>; // Dummy GPIO , Unused or change
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The driver uses devm_gpiod_get_optional, so there's no need for a reset-gpio at all.

port {
panel_in: endpoint {
remote-endpoint = <&dsi_out>;
};
};
};
};
};

i2c_frag: fragment@1 {
target = <&i2c_csi_dsi>;
i2cbus: __overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
};
};

fragment@2 {
target = <&i2c0if>;
__overlay__ {
status = "okay";
};
};

fragment@3 {
target = <&i2c0mux>;
__overlay__ {
status = "okay";
};
};

__overrides__ {
tl034wvs03 = <&panel>, "compatible=tdo,4.0-dsi-tl034wvs03";
tl040wvs17 = <&panel>, "compatible=tdo,4.0-dsi-tl040wvs17";
tl040hds31 = <&panel>, "compatible=tdo,4.0-dsi-tl040hds31";
rotation = <&panel>, "rotation:0";
dsi0 = <&dsi_frag>, "target:0=",<&dsi0>,
<&i2c_frag>, "target:0=",<&i2c_csi_dsi0>;
};
};
1 change: 1 addition & 0 deletions arch/arm64/configs/bcm2711_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1086,6 +1086,7 @@ CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SITRONIX_ST7701=m
CONFIG_DRM_PANEL_SIMPLE=m
CONFIG_DRM_PANEL_TPO_Y17P=m
CONFIG_DRM_PANEL_TDO_DSI_V1=m
CONFIG_DRM_PANEL_WAVESHARE_TOUCHSCREEN=m
CONFIG_DRM_PANEL_WAVESHARE_TOUCHSCREEN_V2=m
CONFIG_DRM_DISPLAY_CONNECTOR=m
Expand Down
14 changes: 14 additions & 0 deletions drivers/gpu/drm/panel/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -940,6 +940,20 @@ config DRM_PANEL_TPO_Y17P
Say Y if you want to enable support for panels based on the
TDO Y17P controller.

config DRM_PANEL_TDO_DSI_V1
tristate "TDO touchscreen panels V1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does a V1 display mean in this terminology? Is there a better family name for these panels?

depends on DRM_MIPI_DSI
depends on I2C
depends on BACKLIGHT_CLASS_DEVICE
help
Say Y here if you want to enable support for TDO DSI
touchscreen panels, e.g. tl034wvs03, tl040hds31, etc.
This driver provides MIPI DSI display interface.
It also handles backlight control via the backlight
class device.
To compile this driver as a module, choose M here; the
module will be called panel-tdo-dsi-v1.

config DRM_PANEL_TPO_TD028TTEC1
tristate "Toppoly (TPO) TD028TTEC1 panel driver"
depends on OF && SPI
Expand Down
1 change: 1 addition & 0 deletions drivers/gpu/drm/panel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt355
obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
obj-$(CONFIG_DRM_PANEL_TPO_Y17P) += panel-tdo-y17p.o
obj-$(CONFIG_DRM_PANEL_TDO_DSI_V1) += panel-tdo-dsi-v1.o
obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
obj-$(CONFIG_DRM_PANEL_TPO_TPG110) += panel-tpo-tpg110.o
Expand Down
Loading
Loading