RE: [PATCH v7 0/9] Add support for Wave6 video codec driver

From: Nas Chung

Date: Fri Sep 11 2026 - 03:10:52 EST


Hi, Frank.

>-----Original Message-----
>From: Frank Li <Frank.li@xxxxxxxxxxx>
>Sent: Friday, September 11, 2026 5:01 AM
>To: Nas Chung <nas.chung@xxxxxxxxxxxxxxx>
>Cc: mchehab@xxxxxxxxxx; hverkuil@xxxxxxxxx; robh@xxxxxxxxxx;
>krzk+dt@xxxxxxxxxx; conor+dt@xxxxxxxxxx; shawnguo@xxxxxxxxxx;
>s.hauer@xxxxxxxxxxxxxx; linux-media@xxxxxxxxxxxxxxx;
>devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-imx@xxxxxxx;
>linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; jackson.lee
><jackson.lee@xxxxxxxxxxxxxxx>; lafley.kim <lafley.kim@xxxxxxxxxxxxxxx>;
>marek.vasut@xxxxxxxxxxx
>Subject: Re: [PATCH v7 0/9] Add support for Wave6 video codec driver
>
>On Fri, Sep 04, 2026 at 03:46:26PM +0900, Nas Chung wrote:
>> This patch series introduces support for the Chips&Media Wave6 video
>> codec IP, a completely different hardware architecture compared to Wave5.
>>
>> The wave6 driver is a M2M stateful encoder/decoder driver.
>> It supports various video formats, including H.264 and H.265, for both
>encoding
>> and decoding.
>> While other versions of the Wave6 IP may support VP9 decoding and AV1
>decoding
>> and encoding those formats are not implemented or validated in this
>driver at
>> this time.

...

>> Nas Chung (9):
>> media: v4l2-common: Fix P010 format info
>> dt-bindings: media: nxp: Add Wave6 video codec device
>> media: chips-media: wave6: Add Wave6 VPU interface
>> media: chips-media: wave6: Add v4l2 m2m driver support
>> media: chips-media: wave6: Add Wave6 core driver
>> media: chips-media: wave6: Improve debugging capabilities
>> media: chips-media: wave6: Add Wave6 thermal cooling device
>> media: chips-media: wave6: Add Wave6 control driver
>
>This is quite big drivers. You enable build at finial patches, it is not
>good. Each patch expect built-able.
>
>I suggest split
>
>1. core part with simplest decode driver. "You use git add -p to choose
>which trunk to add"
>2. Add encode part
>3. Add m2m part
>4. add debug and tracing
>5. add performance profile
>6. add thermal cooling device
>
>Maintainer may pick subset.
>
>binding + simplest decode + dts can be merged firstly.
>
>Then gradulately add encode, m2m and other advance features.

Thanks for your suggestion.

I agree, except that m2m cannot be a step of its own. wave6-vpu-core.c calls
wave6_vpu_init_m2m_dev() from probe and wave6-vpu-dec.c needs
v4l2_m2m_ctx_init() to open, so it lands with the decoder.

So, your steps 1-3 become:

1. core + m2m decoder
2. m2m encoder

4-6 are unchanged.

Thanks.
Nas.

>
>Frank
>