Message ID | 20231023173718.188102-1-jonas@kwiboo.se (mailing list archive) |
---|---|
Headers | show |
Series | drm/rockchip: vop: Add NV15, NV20 and NV30 support | expand |
Hi Jonas, On Mon, 2023-10-23 at 17:37 +0000, Jonas Karlman wrote: > This series add support for displaying 10-bit 4:2:0 and 4:2:2 formats > produced > by the Rockchip Video Decoder on RK322X, RK3288, RK3328, RK3368 and RK3399. > Also include 10-bit 4:4:4 support since VOP can support that also. > > First patch adds new fourcc 10-bit YUV formats with 4:2:2/4:4:4 sub- > sampling. > Second patch adds support for displaying the new fourcc formats. > > These patches have been in use by LibreELEC and other distros for the > past 3+ years, hoping they can be merged this time around. > > A rough libdrm/modetest patch [2] have been used to validate use of > NV15, NV20 and NV30 formats on RK3288, RK3328 and RK3399 boards. > > modetest -s <connector_id>@<crtc_id>:<mode>-<vrefresh>@<format> > > Tinker Board R2.0 (rk3288w): > modetest -s 50:1920x1080-60@NV15 > > Rock Pi 4 (rk3399): > modetest -s 52@44:1920x1080-60@NV15 > > Rock64 (rk3328): > modetest -s 42:1920x1080-60@NV15 > > Changes in v5: > - Use drm_format_info_min_pitch() for correct bpp > - Add missing NV21, NV61 and NV42 formats > > Changes in v4: > - Rework RK3328/RK3399 win0/1 data to not affect RK3368 > > Changes in v3: > - No changes, rebased on next-20230616 > - R-B tags was collected > > Changes in v2: > - Add NV30 format > - R-B tags was not collected due to NV30 changes > > This series is also available at [1] and libdrm/modetest patch at [2]. > > [1] https://github.com/Kwiboo/linux-rockchip/commits/v6.6-rc7-vop-nv15 > [2] https://github.com/Kwiboo/libdrm/commits/nv15 Could you open a draft merge request for libdrm upstream at https://gitlab.freedesktop.org/mesa/drm pointing to this series? If there are subsequent revisions of this series, it'd be great to link that merge request in the cover letter. Cheers! Chris > > Jonas Karlman (2): > drm/fourcc: Add NV20 and NV30 YUV formats > drm/rockchip: vop: Add NV15, NV20 and NV30 support > > drivers/gpu/drm/drm_fourcc.c | 8 +++ > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 36 ++++++++--- > drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 1 + > drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 66 +++++++++++++++++---- > include/uapi/drm/drm_fourcc.h | 2 + > 5 files changed, 96 insertions(+), 17 deletions(-) >
Hi Chris, On 2023-10-23 19:52, Christopher Obbard wrote: > Hi Jonas, > > On Mon, 2023-10-23 at 17:37 +0000, Jonas Karlman wrote: >> This series add support for displaying 10-bit 4:2:0 and 4:2:2 formats >> produced >> by the Rockchip Video Decoder on RK322X, RK3288, RK3328, RK3368 and RK3399. >> Also include 10-bit 4:4:4 support since VOP can support that also. >> >> First patch adds new fourcc 10-bit YUV formats with 4:2:2/4:4:4 sub- >> sampling. >> Second patch adds support for displaying the new fourcc formats. >> >> These patches have been in use by LibreELEC and other distros for the >> past 3+ years, hoping they can be merged this time around. >> >> A rough libdrm/modetest patch [2] have been used to validate use of >> NV15, NV20 and NV30 formats on RK3288, RK3328 and RK3399 boards. >> >> modetest -s <connector_id>@<crtc_id>:<mode>-<vrefresh>@<format> >> >> Tinker Board R2.0 (rk3288w): >> modetest -s 50:1920x1080-60@NV15 >> >> Rock Pi 4 (rk3399): >> modetest -s 52@44:1920x1080-60@NV15 >> >> Rock64 (rk3328): >> modetest -s 42:1920x1080-60@NV15 >> >> Changes in v5: >> - Use drm_format_info_min_pitch() for correct bpp >> - Add missing NV21, NV61 and NV42 formats >> >> Changes in v4: >> - Rework RK3328/RK3399 win0/1 data to not affect RK3368 >> >> Changes in v3: >> - No changes, rebased on next-20230616 >> - R-B tags was collected >> >> Changes in v2: >> - Add NV30 format >> - R-B tags was not collected due to NV30 changes >> >> This series is also available at [1] and libdrm/modetest patch at [2]. >> >> [1] https://github.com/Kwiboo/linux-rockchip/commits/v6.6-rc7-vop-nv15 >> [2] https://github.com/Kwiboo/libdrm/commits/nv15 > > Could you open a draft merge request for libdrm upstream at > https://gitlab.freedesktop.org/mesa/drm pointing to this series? If there are > subsequent revisions of this series, it'd be great to link that merge request > in the cover letter. Have created a draft merge reguest for libdrm/modetest changes now. https://gitlab.freedesktop.org/mesa/drm/-/merge_requests/329 The pattern code could really need some improvements/refactoring, in current form it should at least be enough to create a test pattern to help test/validate this series :-) Regards, Jonas > > > Cheers! > > Chris > >> >> Jonas Karlman (2): >> drm/fourcc: Add NV20 and NV30 YUV formats >> drm/rockchip: vop: Add NV15, NV20 and NV30 support >> >> drivers/gpu/drm/drm_fourcc.c | 8 +++ >> drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 36 ++++++++--- >> drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 1 + >> drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 66 +++++++++++++++++---- >> include/uapi/drm/drm_fourcc.h | 2 + >> 5 files changed, 96 insertions(+), 17 deletions(-) >>
On Mon, 23 Oct 2023 17:37:13 +0000, Jonas Karlman wrote: > This series add support for displaying 10-bit 4:2:0 and 4:2:2 formats produced > by the Rockchip Video Decoder on RK322X, RK3288, RK3328, RK3368 and RK3399. > Also include 10-bit 4:4:4 support since VOP can support that also. > > First patch adds new fourcc 10-bit YUV formats with 4:2:2/4:4:4 sub-sampling. > Second patch adds support for displaying the new fourcc formats. > > [...] Applied, thanks! [1/2] drm/fourcc: Add NV20 and NV30 YUV formats commit: 728c15b4b5f3369cbde73d5e0f14701ab370f985 [2/2] drm/rockchip: vop: Add NV15, NV20 and NV30 support commit: d4b384228562848e4b76b608a5876c92160e993c Best regards,