Panthor, เป„เบ”เป€เบงเบตเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบชเปเบฒเบฅเบฑเบš GPU Mali เบฎเบธเปˆเบ™เบ—เบต 10, เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบเบฒเบ”เปเบฅเป‰เบง

ะšะพะผะฟะฐะฝะธั Collabora ะพะฑัŠัะฒะธะปะฐ ะพ ะณะพั‚ะพะฒะฝะพัั‚ะธ ะพั‚ะบั€ั‹ั‚ะพะณะพ ะดั€ะฐะนะฒะตั€ะฐ panthor, ั€ะฐะทะฒะธะฒะฐะตะผะพะณะพ ะดะปั ะดะตััั‚ะพะณะพ ะฟะพะบะพะปะตะฝะธั GPU Mali (G310, G510, G710), ะฒ ะบะพั‚ะพั€ะพะผ ะฟั€ะธะผะตะฝัะตั‚ัั ั‚ะตั…ะฝะพะปะพะณะธั CSF (ะกommand Stream Frontend), ะฒั‹ะฝะพััั‰ะฐั ะฝะฐ ัั‚ะพั€ะพะฝัƒ ะฟั€ะพัˆะธะฒะบะธ ะฝะตะบะพั‚ะพั€ั‹ะต ั„ัƒะฝะบั†ะธะธ ะดั€ะฐะนะฒะตั€ะฐ ะดะปั ัะฝะธะถะตะฝะธั ะฝะฐะณั€ัƒะทะบะธ ะฝะฐ CPU ะธ ะฟั€ะตะดะปะฐะณะฐัŽั‰ะฐั ะฝะพะฒัƒัŽ ะผะพะดะตะปัŒ ะพั€ะณะฐะฝะธะทะฐั†ะธะธ ะฒั‹ะฟะพะปะฝะตะฝะธั ั€ะฐะฑะพั‚ ะฝะฐ GPU. DRM-ะดั€ะฐะนะฒะตั€ (Direct Rendering Manager) panthor ะฟั€ะธะฝัั‚ ะฒ ะฒะตั‚ะบัƒ drm-misc ะธ ะฟั€ะตะดะฟะพะปะพะถะธั‚ะตะปัŒะฝะพ ะฒะพะนะดั‘ั‚ ะฒ ัะพัั‚ะฐะฒ ัะดั€ะฐ Linux 6.10. ะ˜ะทะผะตะฝะตะฝะธั ะดะปั ะฟะพะดะดะตั€ะถะบะธ ะฝะพะฒะพะณะพ ะดั€ะฐะนะฒะตั€ะฐ ั‚ะฐะบะถะต ะฟั€ะธะฝัั‚ั‹ ะฒ Mesa ะธ ะฒะบะปัŽั‡ะตะฝั‹ ะฒ ัะพัั‚ะฐะฒ Gallium-ะดั€ะฐะนะฒะตั€ะฐ panfrost ะดะปั GPU Mali.

ะ’ ะฝะพะฒะพะผ ะฟะพะบะพะปะตะฝะธะธ GPU Mali ะฟะปะฐะฝะธั€ะพะฒั‰ะธะบ Job Manager ะทะฐะผะตะฝั‘ะฝ ะฝะฐ ะธะฝั‚ะตั€ั„ะตะนั CSF (Command Stream Frontend), ะฒ ะบะพั‚ะพั€ะพะผ ะฒะผะตัั‚ะพ ะผะพะดะตะปะธ ะฝะฐ ะพัะฝะพะฒะต ะพั‚ะฟั€ะฐะฒะบะธ ั†ะตะฟะพั‡ะบะธ ั€ะฐะฑะพั‚ ะฟั€ะธะผะตะฝัะตั‚ัั ะผะพะดะตะปัŒ ะฝะฐ ะพัะฝะพะฒะต ะฟะพั‚ะพะบะฐ ะบะพะผะฐะฝะด ั ะฟะปะฐะฝะธั€ะพะฒะฐะฝะธะตะผ ะพั‡ะตั€ะตะดะธ ะฟะพั‚ะพะบะฐ ะบะพะผะฐะฝะด ะฝะฐ ัั‚ะพั€ะพะฝะต ะฟั€ะพัˆะธะฒะบะธ. ะ”ะปั ะพั€ะณะฐะฝะธะทะฐั†ะธะธ ั€ะฐะฑะพั‚ั‹ ะฟะปะฐะฝะธั€ะพะฒั‰ะธะบะฐ ะฒ GPU ะฒัั‚ั€ะพะตะฝ ะพั‚ะดะตะปัŒะฝั‹ะน ะผะธะบั€ะพะบะพะฝั‚ั€ะพะปะปะตั€ Cortex-M7, ะฐ ะดะปั ะฒั‹ะฟะพะปะฝะตะฝะธั ะธะฝัั‚ั€ัƒะบั†ะธะน CSF ะฟั€ะตะดัƒัะผะพั‚ั€ะตะฝ ัะฟะตั†ะธะฐะปัŒะฝั‹ะน ะฑะปะพะบ ะฒั‹ะฟะพะปะฝะตะฝะธั ะบะพะผะฐะฝะด (Command Execution Unit). ะŸะพะดะพะฑะฝั‹ะต ะพัะพะฑะตะฝะฝะพัั‚ะธ ั‚ั€ะตะฑัƒัŽั‚ ะฟั€ะธะฝั†ะธะฟะธะฐะปัŒะฝะพ ะดั€ัƒะณะพะน ะพั€ะณะฐะฝะธะทะฐั†ะธะธ ะฟะตั€ะตะดะฐั‡ะธ ั€ะฐะฑะพั‚ ะฒ GPU ะธะท ะฟั€ะพัั‚ั€ะฐะฝัั‚ะฒะฐ ะฟะพะปัŒะทะพะฒะฐั‚ะตะปั.

ะ˜ะทะฝะฐั‡ะฐะปัŒะฝะพ ะฑั‹ะปะฐ ะฟั€ะตะดะฟั€ะธะฝัั‚ะฐ ะฟะพะฟั‹ั‚ะบะฐ ั€ะตะฐะปะธะทะฐั†ะธะธ ะฟะพะดะดะตั€ะถะบะธ GPU Mali ะฝะฐ ะฑะฐะทะต CSF ะฒ DRM-ะดั€ะฐะนะฒะตั€ะต Panfrost, ะฝะพ ั€ะฐะทั€ะฐะฑะพั‚ั‡ะธะบะธ ะฟั€ะธัˆะปะธ ะบ ะฒั‹ะฒะพะดัƒ, ั‡ั‚ะพ ัั‚ะพ ะฟั€ะธะฒะตะดั‘ั‚ ะบ ะฑะพะปัŒัˆะพะผัƒ ัƒัะปะพะถะฝะตะฝะธัŽ ััƒั‰ะตัั‚ะฒัƒัŽั‰ะตะณะพ ะดั€ะฐะนะฒะตั€ะฐ ะธ ะดะปั CSF ะฑะพะปะตะต ะพะฟั‚ะธะผะฐะปัŒะฝะพ ัะพะทะดะฐะฝะธะต ะฝะพะฒะพะณะพ ะดั€ะฐะนะฒะตั€ะฐ, ะฟะพัั‚ั€ะพะตะฝะฝะพะณะพ ั ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะตะผ ะธะฝะพะน ะฐั€ั…ะธั‚ะตะบั‚ัƒั€ั‹. ะ’ ะดั€ะฐะนะฒะตั€ะต panthor ั€ะตะฐะปะธะทะพะฒะฐะฝ ะฟะพะปะฝะพัั‚ัŒัŽ ะฝะพะฒั‹ะน uAPI, ะฝะพะฒะฐั ะปะพะณะธะบะฐ ะฟะปะฐะฝะธั€ะพะฒะฐะฝะธั ั€ะฐะฑะพั‚ ะธ ะฝะพะฒะฐั ะปะพะณะธะบะฐ ัƒะฟั€ะฐะฒะปะตะฝะธั MMU/GPU-VA. ะ’ ะบะฐั‡ะตัั‚ะฒะต ะพัะฝะพะฒั‹ ะดะปั ะฝะพะฒะพะณะพ ะดั€ะฐะนะฒะตั€ะฐ ะธัะฟะพะปัŒะทะพะฒะฐะฝ ััƒั‰ะตัั‚ะฒัƒัŽั‰ะธะน ะบะพะด DRM-ะดั€ะฐะนะฒะตั€ะฐ Panfrost, ะธะท ะบะพั‚ะพั€ะพะณะพ ะทะฐะธะผัั‚ะฒะพะฒะฐะฝั‹ ั‚ะธะฟะพะฒั‹ะต ัˆะฐะฑะปะพะฝั‹ ะธะฝะธั†ะธะฐะปะธะทะฐั†ะธะธ ะดั€ะฐะนะฒะตั€ะฐ, ัƒะฟั€ะฐะฒะปะตะฝะธั ั‡ะฐัั‚ะพั‚ะพะน ะธ ัƒะฟั€ะฐะฒะปะตะฝะธั ะฟะธั‚ะฐะฝะธะตะผ.

ะŸะตั€ะฒะพะต ะฒั€ะตะผั ั€ะฐะทั€ะฐะฑะพั‚ะบะฐ ะฝะพะฒะพะณะพ ะดั€ะฐะนะฒะตั€ะฐ ะฒะตะปะฐััŒ ั ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะตะผ ะพะฑั€ะฐั‚ะฝะพะณะพ ะธะฝะถะธะฝะธั€ะธะฝะณะฐ, ะฝะพ ะทะฐั‚ะตะผ ะบ ะฟั€ะพะตะบั‚ัƒ ะฟั€ะธัะพะตะดะธะฝะธะปะฐััŒ ะบะพะผะฟะฐะฝะธั ARM, ะฟั€ะตะดะพัั‚ะฐะฒะธะปะฐ ะดะพัั‚ัƒะฟ ะบ ะดะพะบัƒะผะตะฝั‚ะฐั†ะธะธ ะธ ะฟั€ะธะฝัะปะฐ ัƒั‡ะฐัั‚ะธะต ะฒ ั€ะตั†ะตะฝะทะธั€ะพะฒะฐะฝะธะธ ะบะพะดะฐ. ะ”ะฒะฐ ัะพั‚ั€ัƒะดะฝะธะบะฐ ARM ะฟะพะปัƒั‡ะธะปะธ ัั‚ะฐั‚ัƒั ะฟะพะผะพั‰ะฝะธะบะพะฒ ัะพะฟั€ะพะฒะพะถะดะฐัŽั‰ะตะณะพ (co-maintainer) ะดั€ะฐะนะฒะตั€ะฐ ะดะปั ัะดั€ะฐ Linux. ะ’ ะดะฐะปัŒะฝะตะนัˆะตะผ ะฟะพัะปะต ะณะพั‚ะพะฒะฝะพัั‚ะธ OpenGL-ะดั€ะฐะนะฒะตั€ะฐ ั€ะฐะฑะพั‚ะฐ ะฑัƒะดะตั‚ ัะพัั€ะตะดะพั‚ะพั‡ะตะฝะฐ ะฝะฐ ั€ะตะฐะปะธะทะฐั†ะธะธ Vulkan-ะดั€ะฐะนะฒะตั€ะฐ ะดะปั ะฝะพะฒั‹ั… GPU Mali ะธ ะผะพะดะตั€ะฝะธะทะฐั†ะธะธ ััƒั‰ะตัั‚ะฒัƒัŽั‰ะตะณะพ Vulkan-ะดั€ะฐะนะฒะตั€ะฐ ะดะปั ัั‚ะฐั€ั‹ั… GPU Mali.

ะžั‚ะผะตั‡ะฐะตั‚ัั, ั‡ั‚ะพ ะฟะพะดะณะพั‚ะพะฒะปะตะฝะฝั‹ะน ะดั€ะฐะนะฒะตั€ panthor ะฟะพะทะฒะพะปัะตั‚ ะพะฑะตัะฟะตั‡ะธั‚ัŒ ะฟะพะดะดะตั€ะถะบัƒ GPU ะฝะฐ ะฟะปะฐั‚ะฐั… c SoC Rockchip RK3588. ะšะพะผะฟะฐะฝะธะตะน Collabora ั‚ะฐะบะถะต ะฟั€ะพะดะตะปะฐะฝะฐ ั€ะฐะฑะพั‚ะฐ ะฟะพ ะพะฑะตัะฟะตั‡ะตะฝะธัŽ ะทะฐะณั€ัƒะทะบะธ ะฟะปะฐั‚ ะฝะฐ ะฑะฐะทะต Rockchip RK3588 ั ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะตะผ ะฟะพะปะฝะพัั‚ัŒัŽ ะพั‚ะบั€ั‹ั‚ะพะณะพ ะฟั€ะพะณั€ะฐะผะผะฝะพะณะพ ัั‚ะตะบะฐ. ะ”ะปั Rockchip RK3588 ะฟะพะดะณะพั‚ะพะฒะปะตะฝ ัะธัั‚ะตะผะฝั‹ะน ะพะฑั€ะฐะท ะฝะฐ ะฑะฐะทะต Debian ะธ ะพั‚ะบั€ั‹ั‚ั‹ะน ะทะฐะณั€ัƒะทั‡ะธะบ ะดะปั ะทะฐะผะตะฝั‹ ะฟั€ะพะฟั€ะธะตั‚ะฐั€ะฝั‹ั… ะบะพะผะฟะพะฝะตะฝั‚ะพะฒ BL31 (Boot Loader stage 3.1).

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™