Messages in this thread | | | Date | Fri, 24 Nov 2023 15:54:32 +0100 | Subject | Re: [PATCH v1 0/2] Add waveshare 7inch touchscreen panel support | From | Stefan Wahren <> |
| |
Hi Shengyang,
[fix address of Emma]
Am 24.11.23 um 11:44 schrieb Shengyang Chen: > This patchset adds waveshare 7inch touchscreen panel support > for the StarFive JH7110 SoC. > > Patch 1 add new compatible for the raspberrypi panel driver and its dt-binding. > Patch 2 add new display mode and new probing process for raspberrypi panel driver. > > Waveshare 7inch touchscreen panel is a kind of raspberrypi panel > which can be drived by raspberrypi panel driver. > > The series has been tested on the VisionFive 2 board. surprisingly i was recently working on the official Raspberry Pi touchscreen and was able to get it running the new way.
What do i mean with the new way. There is almost nothing special to the Raspberry Pi touchscreen, so we should try to use/extend existing components like:
CONFIG_DRM_PANEL_SIMPLE CONFIG_TOUCHSCREEN_EDT_FT5X06 CONFIG_DRM_TOSHIBA_TC358762
The only special part is the Attiny on the connector PCB which requires:
CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY
So the whole point is to avoid writing monolitic drivers for simple panel like that.
There is a WIP branch based on top of Linux 6.7-rcX, which should demonstrate this approach [1]. Unfortunately it is not ready for upstreaming, but it has been tested on a Raspberry Pi 3 B Plus. Maybe this is helpful for your case.
Actually i consider panel-raspberrypi-touchscreen.c as a dead end, which shouldn't be extended.
Btw there are already DT overlays in mainline which seems to use the Raspberry Pi 7inch panel (without touch function yet) [2].
[1] - https://github.com/lategoodbye/rpi-zero/commits/v6.7-7inch-ts [2] - https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x-rpidsi.dtso?h=v6.6.2&id=6b4da1354fd81adace0cda448c77d8f2a47d8474
> > Shengyang Chen (2): > dt-bindings: display: panel: raspberrypi: Add compatible property for > waveshare 7inch touchscreen panel > gpu: drm: panel: raspberrypi: add new display mode and new probing > process > > .../panel/raspberrypi,7inch-touchscreen.yaml | 4 +- > .../drm/panel/panel-raspberrypi-touchscreen.c | 99 ++++++++++++++++--- > 2 files changed, 91 insertions(+), 12 deletions(-) >
| |