[PATCH v3 0/4] Add pixel formats used in Synatpics SoC

From: Hsia-Jun Li
Date: Tue Nov 01 2022 - 06:05:46 EST


From: "Hsia-Jun(Randy) Li" <randy.li@xxxxxxxxxxxxx>

Those pixel formats are used in Synaptics's VideoSmart series SoCs,
likes VS640, VS680. I just disclose the pixel formats used in the video
codecs and display pipeline this time. Actually any device connected to
the MTR module could support those tiled and compressed pixel formats.

We may not be able to post any drivers here in a short time, the most of
work in this platform is done in the Trusted Execution Environment and
we didn't use the optee event its client framework.

Please notice that, the memory planes needed for video codecs could be
one more than display case. That extra planes in the video codecs is
for the decoding internal usage, it can't append to the luma or chroma
buffer as many other drivers do, because this buffer could be only
accessed by the video codecs itself, it requests a different memory
security attributes. There is not a proper place in v4l2 m2m to allocate
a large size buffer, we don't know when the users won't allocate more
graphics buffers. Although we could allocate it in a step likes
STREAMON, it would lead unusual delaying in starting of video playbacl.

https://synaptics.com/products/multimedia-solutions

Changlog
v3:
There was a mistake in format macro.
Correcting the description of 64L4 variant modifiers.
v2:
The DRM modifiers in the first draft is too simple, it can't tell
the tiles in group attribute in memory layout.
Removing the v4l2 fourcc. Adding a document for the future v4l2 extended
fmt.
v1:
first draft of DRM modifiers
Try to put basic tile formats into v4l2 fourcc

Hsia-Jun(Randy) Li (3):
drm/fourcc: Add Synaptics VideoSmart tiled modifiers
media: videodev2.h: add pixel format modifiers
media: videodev2.h: add Synaptics tiled modifiers

Randy Li (1):
media: docs: Add Synpatics tile modifiers

.../media/v4l/pixfmt-synaptics.rst | 80 +++++++++++++++++++
.../userspace-api/media/v4l/pixfmt.rst | 1 +
include/uapi/drm/drm_fourcc.h | 75 +++++++++++++++++
include/uapi/linux/videodev2.h | 50 ++++++++++++
4 files changed, 206 insertions(+)
create mode 100644 Documentation/userspace-api/media/v4l/pixfmt-synaptics.rst

--
2.17.1