Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create driver for Waveshare DSI screens #5433

Merged
merged 4 commits into from
Apr 24, 2023

Conversation

6by9
Copy link
Contributor

@6by9 6by9 commented Apr 14, 2023

No description provided.

@belliash
Copy link

I don't want to make trash here. Just wanted to mention, that this does not seem to work with my 7" C. You can find details here: https://github.com/waveshare/Waveshare-DSI-LCD/issues/4

Waveshare sell a range of DSI panels of varying sizes, all
using a common MCU to control the panel and backlight.

Add a panel driver that supports these panels.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
The interrupt line from the touch controller is not necessarily
connected to the SoC, so add the option to poll for touch info.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
Adds support for the Waveshare DSI touchscreens.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
@6by9 6by9 force-pushed the rpi-6.1.y-waveshare-dsi branch 2 times, most recently from 2563644 to 53e8cfb Compare April 24, 2023 08:44
@6by9 6by9 changed the title WIP: Create driver for Waveshare DSI screens Create driver for Waveshare DSI screens Apr 24, 2023
@6by9
Copy link
Contributor Author

6by9 commented Apr 24, 2023

Dropping WIP tag as this has been confirmed to work on a the majority of the panels supported.
I know I haven't done a DT binding or MAINTAINERS entry, but I have limited motivation in trying to upstream them.

I can't work out what is upsetting the dtoverlaycheck. It complains of

2023-04-24T08:48:23.5159425Z Can't use an undefined value as an ARRAY reference at /home/runner/work/linux/linux/utils/overlaycheck/overlaycheck line 376, <$fh> line 4523.
2023-04-24T08:48:23.5162505Z * Missing params for overlay vc4-kms-dsi-waveshare-panel (4523)

but I've been staring at the two files and can't see what I've missed.

@pelwell
Copy link
Contributor

pelwell commented Apr 24, 2023

It's not a great error/message, but you've dropped the "Params:" section heading.

They come in varying sizes, but all have the same MCU for
power control and touch controller.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
@6by9
Copy link
Contributor Author

6by9 commented Apr 24, 2023

It's not a great error/message, but you've dropped the "Params:" section heading.

Doh, thanks!
Updated so hopefully it'll be happy now.

@pelwell pelwell merged commit 1a6b218 into raspberrypi:rpi-6.1.y Apr 24, 2023
popcornmix added a commit to raspberrypi/firmware that referenced this pull request Apr 25, 2023
kernel: media: i2c: imx219: Scale the pixel clock rate for the 640x480 mode
See: raspberrypi/linux#5439

kernel: hwmon: emc2305: Add calls to initialise of cooling maps
See: raspberrypi/linux#5440

kernel: Create driver for Waveshare DSI screens
See: raspberrypi/linux#5433

kernel: arm/boot/dts/overlays/mipi-dbi-spi: fix default brightness
See: raspberrypi/linux#5442

kernel: i2c-mux and i2c-pwm overlay updates for alternate i2c buses
See: raspberrypi/linux#5443

kernel: Further EMC2305 tweaks
See: raspberrypi/linux#5441

kernel: drm/vc4: Limit max_bpc to 8 on Pi0-3
See: raspberrypi/linux#5444

kernel: Revert: amba_pl011: Round input clock up

firmware: arm_loader: Set local-bd-address if 6 zeroes found
firmware: arm_loader: Really check for a zero local-bd-address
See: raspberrypi/linux#5437

firmware: arm_dt: Don't overwrite existing i2c aliases
See: raspberrypi/linux#5428

firmware: arm_loader: Reduce CMA warning severity
See: #1807

userland: dtoverlay: Use os_prefix if set
popcornmix added a commit to raspberrypi/rpi-firmware that referenced this pull request Apr 25, 2023
kernel: media: i2c: imx219: Scale the pixel clock rate for the 640x480 mode
See: raspberrypi/linux#5439

kernel: hwmon: emc2305: Add calls to initialise of cooling maps
See: raspberrypi/linux#5440

kernel: Create driver for Waveshare DSI screens
See: raspberrypi/linux#5433

kernel: arm/boot/dts/overlays/mipi-dbi-spi: fix default brightness
See: raspberrypi/linux#5442

kernel: i2c-mux and i2c-pwm overlay updates for alternate i2c buses
See: raspberrypi/linux#5443

kernel: Further EMC2305 tweaks
See: raspberrypi/linux#5441

kernel: drm/vc4: Limit max_bpc to 8 on Pi0-3
See: raspberrypi/linux#5444

kernel: Revert: amba_pl011: Round input clock up

firmware: arm_loader: Set local-bd-address if 6 zeroes found
firmware: arm_loader: Really check for a zero local-bd-address
See: raspberrypi/linux#5437

firmware: arm_dt: Don't overwrite existing i2c aliases
See: raspberrypi/linux#5428

firmware: arm_loader: Reduce CMA warning severity
See: raspberrypi/firmware#1807

userland: dtoverlay: Use os_prefix if set
@beletruz
Copy link

The latest 6.1.20 doesn't work with the latest raspberry pi os with this display https://www.waveshare.com/wiki/7.9inch_DSI_LCD#Overview by adding dtoverlay=vc4-kms-dsi-waveshare-panel,7_9_inch the display stays off and the led blinks but it does work (it lights up, it displays as it should) except for the touchscreen with android running on the pi (this android https://konstakang.com/devices/rpi4/LineageOS20 )
Using the "dtoverlay=vc4-kms-dsi-waveshare-panel,7_9_inch" and "goodix" for touch this is what it reports about the touchscreen
[ 3.486535] Goodix-TS 1-0014: supply AVDD28 not found, using dummy regulator
[ 3.493801] Goodix-TS 1-0014: supply VDDIO not found, using dummy regulator
[ 3.597518] Goodix-TS 1-0014: Error reading 1 bytes from 0x8140: -5
[ 3.629484] Goodix-TS 1-0014: Error reading 1 bytes from 0x8140: -5
[ 3.661185] Goodix-TS 1-0014: I2C communication failure: -5
[ 3.667235] Goodix-TS: probe of 1-0014 failed with error -5
[ 3.674567] i2c i2c-22: Added multiplexed i2c bus 0
[ 3.679906] Goodix-TS 10-0014: supply AVDD28 not found, using dummy regulator
[ 3.687263] Goodix-TS 10-0014: supply VDDIO not found, using dummy regulator
[ 3.695975] Goodix-TS 10-0014: ID 9271, version: 1070
[ 3.718404] input: Goodix Capacitive TouchScreen as /devices/platform/soc/fe205000.i2c/i2c-22/i2c-10/10-0014/input/input0

I would like to run the display with that android img on the pi and now the only problem is the touch part

Thanks

@6by9
Copy link
Contributor Author

6by9 commented Jul 25, 2023

Please open a new issue. following the template offered. Commenting on a merged PR is the way that issues will get lost.

@beletruz
Copy link

Ok, I'll do that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants