Rockchip RK3588- och RK3576-videodekoder får mainline Linux-stöd

Collabora har meddelat mainline Linux-stöd för H.264- och H.265-hårdvaruavkodning på Rockchip RK3588- och RK3576-system-on-chip. Denna utveckling avslutar beroendet av leverantörsspecifika BSP-kärnor för dessa funktioner. Uppdateringen inkluderar nya API-kontroller och korrigeringar för hårdvaruproblem.

Rockchip RK3588- och RK3576 SoC:er, tillsammans med varianter som RK3588S och RK3576J, integrerar VDPU381- och VDPU383-videodekoder respektive. Fram till nu krävde hårdvaruavkodning av H.264 (AVC)- och H.265 (HEVC)-format Rockchip BSP-kärnan. Collaboras senaste arbete introducerar upstream Linux-stöd genom en 17-patchserie som lägger till dekoderfunktionalitet, device tree-bindningar och noder. Viktiga förbättringar inkluderar nya V4L2 HEVC-användarrum-API-kontroller för hantering av kort- och långsiktiga referensbildsset (RPS). Dessa kontroller är nödvändiga för VDPU381- och VDPU383-dekoderarna, till skillnad från vissa andra som kan kringgå dem. Användarrumsapplikationer måste nu tillhandahålla kompletta RPS-tabeller till kärnan. Stöd för dessa kontroller har lagts till i GStreamer 1.28, med preliminär integration i FFmpeg, och det underlättar kompatibilitet med Vulkan Video Decode. Den virtuella statlösa dekodern (visl)-drivrutinen har också uppdaterats för att spåra alla kontrollparametrar. En anmärkningsvärd korrigering hanterar ett IOMMU-återställningsproblem: eftersom IOMMU:n är inbäddad i dekoderarna rensar återställningar adressmappningar, men kärnan behandlade dem tidigare som giltiga. Patchningen återställer cachade mappningar efter återställning, vilket påverkar andra Rockchip IP-block som RGA 2D-grafikacceleratorn. För registerprogrammering antog ingenjörerna en modell baserad på C-strukturer istället för ad hoc-skrivningar för att säkerställa att alla register sätts i rätt ordning och förhindra inkonsekvenser även med standardvärden. Detta tillvägagångssätt främjar fullständighet och förbereder för flerkärnanvändning. Patcharna förväntas slås samman i Linux 7.1, ungefär tre månader efter Linux 6.19:s februarirelease. Collaboras framtida ansträngningar inkluderar flerkärnadekodning på RK3588, AV1-stöd för RK3576, VP9 för RK3588 och VDPU346-kompatibilitet för RK356X SoC:er. En detaljerad sammanfattning finns på Collaboras webbplats.

Relaterade artiklar

Developers have released Linux kernel 7.0, featuring improvements for Intel and AMD hardware, enhanced storage handling, and the removal of the experimental label from Rust support. Linus Torvalds announced the update, which is not a long-term support version. The release includes preparations for upcoming CPUs and GPUs, alongside self-healing filesystem capabilities.

Rapporterad av AI

Support for Russian Baikal CPUs is being pulled from the Linux kernel during the 7.1 development cycle. The first changes removed specific driver code merged by Linus Torvalds on April 15. Further patches are queued to eliminate remaining device tree bindings and drivers.

Denna webbplats använder cookies

Vi använder cookies för analys för att förbättra vår webbplats. Läs vår integritetspolicy för mer information.
Avböj