| Message ID | 20260626120041.627376-3-naush@raspberrypi.com |
|---|---|
| State | Superseded |
| Headers | show |
| Series |
|
| Related | show |
Hi Naush, Thank you for the patch. On Fri, Jun 26, 2026 at 12:54:02PM +0100, Naushir Patuck wrote: > Add the V4L2_PIX_FMT_NV12MT_COL128 and V4L2_PIX_FMT_NV12MT_10_COL128 > 4CCs. These formats are available from the PiSP Backend hardware. What's the status of upstreaming those formats ? I see them being added by the HEVC decoder patch series, but I don't see support for them being added to the PiSP backend driver. > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > --- > include/linux/videodev2.h | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h > index 8bccad84ff83..0c6c4c6831d9 100644 > --- a/include/linux/videodev2.h > +++ b/include/linux/videodev2.h > @@ -670,6 +670,9 @@ struct v4l2_pix_format { > #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 tiles */ > #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */ > #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x128 tiles */ > +#define V4L2_PIX_FMT_NV12MT_COL128 v4l2_fourcc('N', 'c', '1', '2') /* 12 Y/CbCr 4:2:0 128 pixel wide column */ > +#define V4L2_PIX_FMT_NV12MT_10_COL128 v4l2_fourcc('N', 'c', '3', '0') > + /* Y/CbCr 4:2:0 10bpc, 3x10 packed as 4 bytes in a 128 bytes / 96 pixel wide column */ > > /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ > #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */
Adding Dave S. On Fri, 26 Jun 2026 at 13:07, Laurent Pinchart <laurent.pinchart@ideasonboard.com> wrote: > > Hi Naush, > > Thank you for the patch. > > On Fri, Jun 26, 2026 at 12:54:02PM +0100, Naushir Patuck wrote: > > Add the V4L2_PIX_FMT_NV12MT_COL128 and V4L2_PIX_FMT_NV12MT_10_COL128 > > 4CCs. These formats are available from the PiSP Backend hardware. > > What's the status of upstreaming those formats ? I see them being added > by the HEVC decoder patch series, but I don't see support for them being > added to the PiSP backend driver. Oh, good point. I thought Dave might have sent the patch for that as well, but it's only downstream right now. We will push the pisp driver upstream as well. Naush > > > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > > --- > > include/linux/videodev2.h | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h > > index 8bccad84ff83..0c6c4c6831d9 100644 > > --- a/include/linux/videodev2.h > > +++ b/include/linux/videodev2.h > > @@ -670,6 +670,9 @@ struct v4l2_pix_format { > > #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 tiles */ > > #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */ > > #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x128 tiles */ > > +#define V4L2_PIX_FMT_NV12MT_COL128 v4l2_fourcc('N', 'c', '1', '2') /* 12 Y/CbCr 4:2:0 128 pixel wide column */ > > +#define V4L2_PIX_FMT_NV12MT_10_COL128 v4l2_fourcc('N', 'c', '3', '0') > > + /* Y/CbCr 4:2:0 10bpc, 3x10 packed as 4 bytes in a 128 bytes / 96 pixel wide column */ > > > > /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ > > #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ > > -- > Regards, > > Laurent Pinchart
On Fri, 26 Jun 2026 at 13:12, Naushir Patuck <naush@raspberrypi.com> wrote: > > Adding Dave S. > > On Fri, 26 Jun 2026 at 13:07, Laurent Pinchart > <laurent.pinchart@ideasonboard.com> wrote: > > > > Hi Naush, > > > > Thank you for the patch. > > > > On Fri, Jun 26, 2026 at 12:54:02PM +0100, Naushir Patuck wrote: > > > Add the V4L2_PIX_FMT_NV12MT_COL128 and V4L2_PIX_FMT_NV12MT_10_COL128 > > > 4CCs. These formats are available from the PiSP Backend hardware. > > > > What's the status of upstreaming those formats ? I see them being added > > by the HEVC decoder patch series, but I don't see support for them being > > added to the PiSP backend driver. > > > Oh, good point. I thought Dave might have sent the patch for that as > well, but it's only downstream right now. We will push the pisp > driver upstream as well. I'm chasing a number of different threads at the moment, and the next version of the HEVC decoder is a good few weeks away. Adding a patch to ISPBE to that series feels a little odd as it's partly unrelated, but the ISPBE patch will have a hard dependency on the HEVC decoder series that add the format. I'll add it to the series with a comment that (a) you've requested it, and (b) that it's there to avoid weird dependency quirks. The other option would be to submit the format definition and ISPBE patches as a new series that should be mergeable fairly rapidly, and then the HEVC decoder gains that as a dependency. Dave > Naush > > > > > > > > > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > > > --- > > > include/linux/videodev2.h | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h > > > index 8bccad84ff83..0c6c4c6831d9 100644 > > > --- a/include/linux/videodev2.h > > > +++ b/include/linux/videodev2.h > > > @@ -670,6 +670,9 @@ struct v4l2_pix_format { > > > #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 tiles */ > > > #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */ > > > #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x128 tiles */ > > > +#define V4L2_PIX_FMT_NV12MT_COL128 v4l2_fourcc('N', 'c', '1', '2') /* 12 Y/CbCr 4:2:0 128 pixel wide column */ > > > +#define V4L2_PIX_FMT_NV12MT_10_COL128 v4l2_fourcc('N', 'c', '3', '0') > > > + /* Y/CbCr 4:2:0 10bpc, 3x10 packed as 4 bytes in a 128 bytes / 96 pixel wide column */ > > > > > > /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ > > > #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ > > > > -- > > Regards, > > > > Laurent Pinchart
On Mon, Jun 29, 2026 at 06:07:42PM +0100, Dave Stevenson wrote: > On Fri, 26 Jun 2026 at 13:12, Naushir Patuck wrote: > > On Fri, 26 Jun 2026 at 13:07, Laurent Pinchart wrote: > > > On Fri, Jun 26, 2026 at 12:54:02PM +0100, Naushir Patuck wrote: > > > > Add the V4L2_PIX_FMT_NV12MT_COL128 and V4L2_PIX_FMT_NV12MT_10_COL128 > > > > 4CCs. These formats are available from the PiSP Backend hardware. > > > > > > What's the status of upstreaming those formats ? I see them being added > > > by the HEVC decoder patch series, but I don't see support for them being > > > added to the PiSP backend driver. > > > > > > Oh, good point. I thought Dave might have sent the patch for that as > > well, but it's only downstream right now. We will push the pisp > > driver upstream as well. > > I'm chasing a number of different threads at the moment, and the next > version of the HEVC decoder is a good few weeks away. > > Adding a patch to ISPBE to that series feels a little odd as it's > partly unrelated, but the ISPBE patch will have a hard dependency on > the HEVC decoder series that add the format. > I'll add it to the series with a comment that (a) you've requested it, > and (b) that it's there to avoid weird dependency quirks. > > The other option would be to submit the format definition and ISPBE > patches as a new series that should be mergeable fairly rapidly, and > then the HEVC decoder gains that as a dependency. I think you can keep the format addition in the HEVC series, maybe with a small change in the commit message to mention the format is using by the ISPBE (right now the commit message mentiones the HEVC decoder only). In the ISPBE series that adds support for the format, you can simply mention the dependency in the cover letter. The first series that will be ready for merging can then include the format. > > > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > > > > --- > > > > include/linux/videodev2.h | 3 +++ > > > > 1 file changed, 3 insertions(+) > > > > > > > > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h > > > > index 8bccad84ff83..0c6c4c6831d9 100644 > > > > --- a/include/linux/videodev2.h > > > > +++ b/include/linux/videodev2.h > > > > @@ -670,6 +670,9 @@ struct v4l2_pix_format { > > > > #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 tiles */ > > > > #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */ > > > > #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x128 tiles */ > > > > +#define V4L2_PIX_FMT_NV12MT_COL128 v4l2_fourcc('N', 'c', '1', '2') /* 12 Y/CbCr 4:2:0 128 pixel wide column */ > > > > +#define V4L2_PIX_FMT_NV12MT_10_COL128 v4l2_fourcc('N', 'c', '3', '0') > > > > + /* Y/CbCr 4:2:0 10bpc, 3x10 packed as 4 bytes in a 128 bytes / 96 pixel wide column */ > > > > > > > > /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ > > > > #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index 8bccad84ff83..0c6c4c6831d9 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h @@ -670,6 +670,9 @@ struct v4l2_pix_format { #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 tiles */ #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */ #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x128 tiles */ +#define V4L2_PIX_FMT_NV12MT_COL128 v4l2_fourcc('N', 'c', '1', '2') /* 12 Y/CbCr 4:2:0 128 pixel wide column */ +#define V4L2_PIX_FMT_NV12MT_10_COL128 v4l2_fourcc('N', 'c', '3', '0') + /* Y/CbCr 4:2:0 10bpc, 3x10 packed as 4 bytes in a 128 bytes / 96 pixel wide column */ /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */
Add the V4L2_PIX_FMT_NV12MT_COL128 and V4L2_PIX_FMT_NV12MT_10_COL128 4CCs. These formats are available from the PiSP Backend hardware. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> --- include/linux/videodev2.h | 3 +++ 1 file changed, 3 insertions(+)