[PATCH v5 00/12] drm/vc4: Allow for more boot-time configuration
Maxime Ripard
maxime.ripard at bootlin.com
Mon Jun 17 14:51:27 UTC 2019
Hi,
The proprietary stack for the RaspberryPi allows for a number of video
parameters widely used by their users, but yet don't have any equivalents
in the mainline kernel.
Those options are detailed here:
https://www.raspberrypi.org/documentation/configuration/config-txt/video.md
While not all of them are desirable to have in the mainline kernel, some of
them still have value, such as properties to initialise the overscan or
rotation parameters.
This series is an attempt to support those, and is based on a rewrite of
the command line parser I did a couple of years ago that never reached
upstream (due to a lack of time on my side). While this parser was
initially made to deal with named modes (in order to support TV modes), it
also allowed to extend it more easily, which is why it's resurrected.
It relies on the series "drm/fb-helper: Move modesetting code to
drm_client" by Noralf Trønnes found here:
https://patchwork.freedesktop.org/series/58598/
Let me know what you think,
Maxime
Changes from v4:
- Change the name of the variable to make it clear it's about reflection
and rotation.
- Fix the reflection case in drm_client_rotation
- Fix the documentation accordingly
- Added missing modedb.rst documentation
- Fix a chunk not in the proper commit
- Fix a few typos
- Rebased on top of current next
Changes from v3:
- Add documentation for drm_cmdline_mode and the new variables
- Move the TV properties reset to a helper
- Fix a missing X resolution or a missing Y resolution
- Add more tests
- Add the rotation to the orientation
- Fix the reflection
- Change the name of the drm_client_panel_rotation function
- Rebased on top of current next
Changes from v2:
- Fixed some sparse warnings
- Rebased on top of next and Noralf series
- Moved the property initialisation to vc4 reset hook
- Added documentation for the new drm_cmdline_mode
- Renamed overscan to tv_margins to be consistent with the APIs
Changes from v1:
- Dropped the patches to deal with EDID
- Added the unit test as selftest
- Rebased on next
Maxime Ripard (12):
drm/connector: Add documentation for drm_cmdline_mode
drm/client: Restrict the plane_state scope
drm/client: Restrict the rotation check to the rotation itself
drm/client: Change drm_client_panel_rotation name
drm/modes: Rewrite the command line parser
drm/modes: Support modes names on the command line
drm/modes: Allow to specify rotation and reflection on the commandline
drm/connector: Introduce a TV margins structure
drm/modes: Parse overscan properties
drm/atomic: Add a function to reset connector TV properties
drm/selftests: Add command line parser selftests
drm/vc4: hdmi: Set default state margin at reset
Documentation/fb/modedb.rst | 13 +-
drivers/gpu/drm/drm_atomic_state_helper.c | 18 +-
drivers/gpu/drm/drm_client_modeset.c | 54 +-
drivers/gpu/drm/drm_connector.c | 3 +-
drivers/gpu/drm/drm_fb_helper.c | 2 +-
drivers/gpu/drm/drm_modes.c | 473 +++++--
drivers/gpu/drm/selftests/Makefile | 2 +-
drivers/gpu/drm/selftests/drm_cmdline_selftests.h | 55 +-
drivers/gpu/drm/selftests/test-drm_cmdline_parser.c | 918 +++++++++++++-
drivers/gpu/drm/vc4/vc4_hdmi.c | 8 +-
include/drm/drm_atomic_state_helper.h | 1 +-
include/drm/drm_client.h | 2 +-
include/drm/drm_connector.h | 149 +-
13 files changed, 1557 insertions(+), 141 deletions(-)
create mode 100644 drivers/gpu/drm/selftests/drm_cmdline_selftests.h
create mode 100644 drivers/gpu/drm/selftests/test-drm_cmdline_parser.c
base-commit: a125097c841039deef9dd589b86467f7d20f4b3d
--
git-series 0.9.1
More information about the dri-devel
mailing list