1、开源图形驱动在OpenHarmony社区开发板上的成功实践1.基于SOC厂商闭源代码进行适配优点:驱动代码为芯片量身定制能充分发挥硬件能力困难点:不同的GPU架构对应不同的实现,需要多次适配 驱动代码闭源,开发者无法进行二次开发 设备厂商可能无法获取SOC厂商技术支持 适配成本高,需要熟悉图形框架和GPU驱动引入开源GPU驱动2.基于开源GPU驱动适配GPU开源图形驱动mesa3D使能开源GPU图形驱动的背景内核mesa3D图形框架Graphic APIcoreOpenGL ESVulkanEGLDispatcherDRIGalliumAPI State TrackerInterfaceSpe
2、cific Device DriverWinSysloaderDRM COREPanfrostv3dRadeonlimaComposerDrawingSurfaceNativeWindow驱动代码完全开源遵循友好的MIT开源许可协议,内核驱动随Linux内核发布支持多种图形接口已实现多种图形接口包括OpenGl ES,OpenClVulkan,OpenMax等常用的图形API性能优异可充分发挥GPU硬件能力,大幅提升图形性能glmark跑分和闭源驱动基本持平,可达到闭源驱动的80%120%的性能支持多种GPU架构通过gallium架构支持多个架构ARM Mali Utgard.ARM Mali
3、 MidgardBroadcom VideoCoreAMD RadeonMesa3D简介目标运作方式成立SIG小组,以SIG小组的方式,充分整合华为和社区的力量,快速将开源驱动适配到OH上1.在OpenHarmony上适配开源GPU驱动,解决当前社区部分开发板缺失图形驱动的困境,减少芯片平台的依赖2.基于开源驱动持续创新3.拓展OpenHarmony的开源生态华为深开鸿原子基金会博泰软通软件所润和赛昉科技九联科技华为三方厂商外部开发者图形驱动组织分布开源图形驱动SIG成立Broadcom bcm28374*A531.2GHzVideoCore IV1GBTF-CardSOCCPU内核GPU内核
4、内存存储开发板小熊树莓派 Rpi-3bRockchip rk35684*A552GHzMali-G522GB32GB eMMC大禹200 DAYU200GPU使能后GPU使能前当前SIG适配成果如何使能GPU开源驱动适配工作主要分两阶段进行修改Kernel源码等开启panfrost验证内核panfrost驱动和用户态panfrost驱动可以正常工作适配OpenHarmony图形框架开源GPU驱动适配OpenHarmony(RenderService)mesa3DlibDRMEGLOpenGLESlibGL-mesa-DRIKernelDRM&Render nodeKMShardwareGPUG
5、raphicmemory开启panfrost修改dtsi适配开源驱动修改Kernel源码等开启panfrost1.修改Kernel源码,并重新进行编译Target options-Target Architecture Variantarget options-Target ABIToolchain-C libraryToolchain-Kernel HeaderToolchain-Enable C+support配置项配置值ARMcortex-A53EABImuslLinux 5.10.xSystem configuration-/dev managementTarget packages-
6、Graphic libraries and applications-mesa3dTarget packages-Graphic libraries and applications-mesa3d-Gallium panfrost driverTarget packages-Graphic libraries and applications-mesa3d-OpenGL ESTarget options-Target ArchitectureTarget packages-Graphic libraries and