[PATCH v3 0/8] media: iris: port support for Qualcomm SC7280

Dmitry Baryshkov posted 8 patches 2 months, 1 week ago
There is a newer version of this series
drivers/media/platform/qcom/iris/Makefile          |   2 +-
drivers/media/platform/qcom/iris/iris_core.h       |   4 +-
drivers/media/platform/qcom/iris/iris_ctrls.c      | 246 +++++-----
drivers/media/platform/qcom/iris/iris_instance.h   |   3 +-
.../platform/qcom/iris/iris_platform_common.h      |  26 +-
...iris_platform_sm8250.c => iris_platform_gen1.c} |  62 ++-
.../media/platform/qcom/iris/iris_platform_gen2.c  |  25 +-
.../platform/qcom/iris/iris_platform_qcs8300.h     | 534 +--------------------
.../platform/qcom/iris/iris_platform_sc7280.h      |  27 ++
drivers/media/platform/qcom/iris/iris_probe.c      |   4 +
drivers/media/platform/qcom/iris/iris_resources.c  |   2 +-
drivers/media/platform/qcom/iris/iris_vdec.c       |   5 +-
drivers/media/platform/qcom/iris/iris_venc.c       |   5 +-
drivers/media/platform/qcom/iris/iris_vpu2.c       |   6 +
drivers/media/platform/qcom/iris/iris_vpu3x.c      |  35 --
drivers/media/platform/qcom/iris/iris_vpu_common.c |  77 +--
.../platform/qcom/iris/iris_vpu_register_defines.h |  56 +++
17 files changed, 345 insertions(+), 774 deletions(-)
[PATCH v3 0/8] media: iris: port support for Qualcomm SC7280
Posted by Dmitry Baryshkov 2 months, 1 week ago
Port Support for the Qualcomm SC7280 aka QCM6490 aka QCS6490 platform
from the existing venus driver to the newer Iris driver. The firmware on
this platform uses the older, gen1 HFI, which puts it close to SM8250
from both the hardware and interface point of view.

Test results:

$ ./fluster.py r -d GStreamer-H.264-V4L2-Gst1.0 -ts JVT-AVC_V1
...
Ran 77/135 tests successfully               in 17.010 secs

$ ./fluster.py r -d GStreamer-H.265-V4L2-Gst1.0 -ts JCT-VC-HEVC_V1 -j 1

Only WPP_E_ericsson_MAIN_2 succeeds, this needs to be investigated later

After removing several test vectors and running single-threaded:
$ ./fluster.py r -d GStreamer-VP9-V4L2-Gst1.0 -ts VP9-TEST-VECTORS -j 1
Ran 219/292 tests successfully               in 134.749 secs

Disabled tests:

            "name": "vp90-2-18-resize.ivf",
            "name": "vp90-2-21-resize_inter_1920x1080_5_1-2.webm",
            "name": "vp90-2-21-resize_inter_1920x1080_5_3-4.webm",
            "name": "vp90-2-21-resize_inter_1920x1080_7_1-2.webm",
            "name": "vp90-2-21-resize_inter_1920x1080_7_3-4.webm",
            "name": "vp90-2-21-resize_inter_320x180_5_1-2.webm",
            "name": "vp90-2-21-resize_inter_320x180_5_3-4.webm",
            "name": "vp90-2-21-resize_inter_320x180_7_1-2.webm",
            "name": "vp90-2-21-resize_inter_320x180_7_3-4.webm",
            "name": "vp90-2-21-resize_inter_640x360_5_1-2.webm",
            "name": "vp90-2-21-resize_inter_640x360_5_3-4.webm",
            "name": "vp90-2-21-resize_inter_640x360_7_1-2.webm",
            "name": "vp90-2-21-resize_inter_640x360_7_3-4.webm",

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
Changes in v3:
- Included the header file for the SC7280 platform (LKP)
- Link to v2: https://lore.kernel.org/r/20251012-iris-sc7280-v2-0-d53a1a4056c3@oss.qualcomm.com

Changes in v2:
- Expanded commit messages to explain some of the changes (Konrad).
- Moved platform_inst_cap_qcs8300 back to the header (Dikshita) and
  added guarding ifdefs to the haders.
- Merged SC7280-specific ops into the common implementations (Konrad).
- Split SC7280-specific config bits to a separate header (following the
  Gen2 split).
- Link to v1: https://lore.kernel.org/r/20251008-iris-sc7280-v1-0-def050ba5e1f@oss.qualcomm.com

---
Dmitry Baryshkov (8):
      media: iris: turn platform caps into constants
      media: iris: turn platform data into constants
      media: iris: stop copying r/o data
      media: iris: stop encoding PIPE value into fw_caps
      media: iris: remove duplicateion between generic gen2 data and qcs8300
      media: iris: rename sm8250 platform file to gen1
      media: iris: move common register definitions to the header
      media: iris: enable support for SC7280 platform

 drivers/media/platform/qcom/iris/Makefile          |   2 +-
 drivers/media/platform/qcom/iris/iris_core.h       |   4 +-
 drivers/media/platform/qcom/iris/iris_ctrls.c      | 246 +++++-----
 drivers/media/platform/qcom/iris/iris_instance.h   |   3 +-
 .../platform/qcom/iris/iris_platform_common.h      |  26 +-
 ...iris_platform_sm8250.c => iris_platform_gen1.c} |  62 ++-
 .../media/platform/qcom/iris/iris_platform_gen2.c  |  25 +-
 .../platform/qcom/iris/iris_platform_qcs8300.h     | 534 +--------------------
 .../platform/qcom/iris/iris_platform_sc7280.h      |  27 ++
 drivers/media/platform/qcom/iris/iris_probe.c      |   4 +
 drivers/media/platform/qcom/iris/iris_resources.c  |   2 +-
 drivers/media/platform/qcom/iris/iris_vdec.c       |   5 +-
 drivers/media/platform/qcom/iris/iris_venc.c       |   5 +-
 drivers/media/platform/qcom/iris/iris_vpu2.c       |   6 +
 drivers/media/platform/qcom/iris/iris_vpu3x.c      |  35 --
 drivers/media/platform/qcom/iris/iris_vpu_common.c |  77 +--
 .../platform/qcom/iris/iris_vpu_register_defines.h |  56 +++
 17 files changed, 345 insertions(+), 774 deletions(-)
---
base-commit: 0b2f041c47acb45db82b4e847af6e17eb66cd32d
change-id: 20251006-iris-sc7280-fdb797f238d8

Best regards,
-- 
With best wishes
Dmitry
Re: [PATCH v3 0/8] media: iris: port support for Qualcomm SC7280
Posted by Vikash Garodia 2 months ago
On 10/13/2025 7:38 AM, Dmitry Baryshkov wrote:
> Port Support for the Qualcomm SC7280 aka QCM6490 aka QCS6490 platform
> from the existing venus driver to the newer Iris driver. The firmware on
> this platform uses the older, gen1 HFI, which puts it close to SM8250
> from both the hardware and interface point of view.
> 
> Test results:
> 
> $ ./fluster.py r -d GStreamer-H.264-V4L2-Gst1.0 -ts JVT-AVC_V1
> ...
> Ran 77/135 tests successfully               in 17.010 secs
> 
> $ ./fluster.py r -d GStreamer-H.265-V4L2-Gst1.0 -ts JCT-VC-HEVC_V1 -j 1
> 
> Only WPP_E_ericsson_MAIN_2 succeeds, this needs to be investigated later
> 
> After removing several test vectors and running single-threaded:
> $ ./fluster.py r -d GStreamer-VP9-V4L2-Gst1.0 -ts VP9-TEST-VECTORS -j 1
> Ran 219/292 tests successfully               in 134.749 secs
> 
> Disabled tests:
> 
>             "name": "vp90-2-18-resize.ivf",
>             "name": "vp90-2-21-resize_inter_1920x1080_5_1-2.webm",
>             "name": "vp90-2-21-resize_inter_1920x1080_5_3-4.webm",
>             "name": "vp90-2-21-resize_inter_1920x1080_7_1-2.webm",
>             "name": "vp90-2-21-resize_inter_1920x1080_7_3-4.webm",
>             "name": "vp90-2-21-resize_inter_320x180_5_1-2.webm",
>             "name": "vp90-2-21-resize_inter_320x180_5_3-4.webm",
>             "name": "vp90-2-21-resize_inter_320x180_7_1-2.webm",
>             "name": "vp90-2-21-resize_inter_320x180_7_3-4.webm",
>             "name": "vp90-2-21-resize_inter_640x360_5_1-2.webm",
>             "name": "vp90-2-21-resize_inter_640x360_5_3-4.webm",
>             "name": "vp90-2-21-resize_inter_640x360_7_1-2.webm",
>             "name": "vp90-2-21-resize_inter_640x360_7_3-4.webm",
> 

Encoder is failing with the changes, most probably due to #3 patchset. Look for
the comments in #3/8

Regards,
Vikash