海思ldci原理

author author     2023-04-15     408

关键词:

参考技术A HIFB层的简介(我们主要处理的是图形层数据)

1:Hisilicon Framebuffer是海思平台用于管理叠加图形层的模块,增加层间colorkey,层间colorkey mask,层间alpha,原点偏移等功能。HIFB一个子设备号对应一个叠加层,HIFB可以管理多个图形叠加层(意思就是说。HIFB可以支持多个子设备,支持多路输出)。

2:HIFB支持的标准功能:

a:将物理显存映射到虚拟内存中。

b:像操作普通文件一样操作物理显存。

c:设置像素分辨率,和像素格式,,每个叠加图形层的支持的最大分辨率和像素格式可以通过支持能力接口获取。

d:从物理显存的任何位置进行读写,显示等操作

e:在叠加图形层支持索引格式的情况下,支持设置和获取256色的调色板

增加的功能:

f:设置获取ALPHa和colorkey值

g:设置当前叠加图形层的其实位置(相对于屏幕原点的偏移)。以及叠加图形层的显示,隐藏状态。

5:

h:通过模块参数配置Hifb的物理显存大小和管理叠加图形层的数目。

I:添加抗闪烁功能,获取预乘模式的状态,压缩模式,获取内存检测状态,图形层刷新类型(2buffer类型)。

:::2buffer图形刷新类型是分配两个buffer,一个用来显示,一个用来绘制。

3:模块加载:默写linux framebuffer不支持运行期间更改分辨率,颜色深度,时序等显示属性,,因此linux在内核启动或者模块加载时,通过参数将相应选项传递给linux framebuffer,可以在内核加载器中配置内核启动参数,

HIFB驱动在加载时只能设置物理显存大小。(物理显存大小一经设置就不能改变)video=“hifb:vram0_size:xxx, vram1_size:xxx,…”其中,vramn_size:xxx 表示对叠加图形层n配置xxx K 字节的物理显存。

先加载fb.ko,然后加载hifb.ko参数。

对于标准Fb模式来说:

Vramn_size * 1024 >= xres_virtual * yres_virtual * bpp;

其中:xres_virtual * yres_virtual是虚拟分辨率,bpp是每个像素所占字节数。

******vramn_size 必须是PAGE_SIZE(4K byte)的倍数,否则HiFB 驱动强制将其设为PAGE_SIZE的
倍数,向上取整

默认参数值配置Hi3536
video="hifb:vram0_size:32400,

vram1_size:8100,vram2_size:1620,vram3_size:32,vram4_size:32" softcursor="off"

4:HIFB开发步奏:

a:调用open打开指定设备Hifb设备。

b:调用ioctl,函数设置hifb的像素格式以及屏幕高宽等参数。

c:调用ioctl函数获取Hifb所分配的物理显存大小,跨度等固定信息。可以使用层间colorkey(把一副图片的颜色扣掉叠加到另一张图片上),层间Alpha点(透明度参数),原点便宜等

d:物理显存映射到虚拟内存

e:完成具体的绘制任务。

海思hi35xxuboot启动分析总结(代码片段)

...动的第一阶段和第二阶段。(一)start.S第一阶段启动总结在海思hi3251a官方的《Hi3521A_PINOUT_CN》手册上有上电锁存管脚BOOTROM_SEL,这个是引脚用来定义是从BOOTROM启动还是从spiflash启动 。(1)BOOTROM启动当启动模式为从BOOTROM启动时,... 查看详情

海思3519av100开发:海思sample代码测试之tde

海思文档+nfsAxe+SecureCRT8.1破解版资源网盘链接提取码:pzxg3.海思sample代码测试tde用例目录Hi3519AV100_SDK_V2.0.1.0\\smp\\a53_linux\\mpp\\sample,该文件下每个子文件都是一个例子。我们以最简单(没有输入)的例子tde作... 查看详情

从零开始在海思芯片上部署ubootkernelrootfsmpp

前言本文介绍的是拿到海思芯片的开发板和海思的SDK开发包,在裸机上部署uboot、kernel、rootfs、mpp的过程,其中不涉及uboot、kernel、rootfs、mpp的细节,主要是介绍如何使用开发包快速的将海思芯片跑起来。(这里的裸机... 查看详情

海思烧录工具hitool的使用方法以及烧录uboot

1.什么是HiToolHiTool是海思公司提供的用于海思芯片的烧录工具,可用于烧录uboot、kernel、rootfs等。这里只是简单的介绍用HiTool通过串口去烧写uboot,更加仔细的使用方法可以参考海思SDK开发包里的两篇文档《HiBurn工具使用... 查看详情

海思ubootspinor无法启动

参考技术A设置里面,关闭消息通知。因为你的Q使用了消息模式。点击聊天窗口的“消息模式”把前面的勾去掉聊天窗口发送后就不会自动关闭了。(10版本显示的是“发送消息后关闭窗口”)群聊天不会,是因为群没有消息模式... 查看详情

海思hifb层

...主要处理的是图形层数据)1:HisiliconFramebuffer是海思平台用于管理叠加图形层的模块,增加层间colorkey,层间colorkeymask,层间alpha,原点偏移等功能。HIFB一个子设备号对应一个叠加层,HIFB可以管理多个... 查看详情

海思hi3516amipi

...接收端,发送端为smartsens的360万像素的SC3035-M,接收端为海思的Hi3516A。MIPI(MobileIdustryProcessorInterface)是MIPI联盟发起的移动应用处理器制定的标准,广泛应用于摄像头接口、显示屏接口等。2.MIPI发送端MIPI发送端为smartsens的SC3035-M摄... 查看详情

海思高校合作——qa培训资料

目录1.标准的文件头2.标准的module格式(module整体结构)3.一致的排版4.一致的信号命名风格 查看详情

海思3519av100开发:开发板环境搭建

海思文档+nfsAxe+SecureCRT8.1破解版资源网盘链接提取码:pzxg2开发板环境设置本文省去kernel、uboot、文件系统烧写步骤,详见海思文档。工具:开发板、usb转串口(dp9)、usb转网卡、网线、windows10系统+nfsAxe+SecureC... 查看详情

海思3519av100开发:开发板环境搭建

海思文档+nfsAxe+SecureCRT8.1破解版资源网盘链接提取码:pzxg2开发板环境设置本文省去kernel、uboot、文件系统烧写步骤,详见海思文档。工具:开发板、usb转串口(dp9)、usb转网卡、网线、windows10系统+nfsAxe+SecureC... 查看详情

海思himix200交叉编译openssl

编译环境Ubuntu16.04x86_64himix2000编译工具链下载openssl源码wgethttps://www.openssl.org/source/openssl-1.1.1d.tar.gz解压源码tarxvfopenssl-1.1.1d.tar.gz执行Configure脚本./Configurelinux-generic32\ no-shared\ no-asm\ --pr 查看详情

海思芯片介绍

...像处理单元ISP等为了减少用户对于硬件的直接操作,海思为用户封装了许多对于硬件的操作接口,能够控制芯片完成相应的媒体处理功能,对上屏蔽了硬件的处理细节 查看详情

海思hi3751v510怎么样

海思Hi3516A最高支持500万像素实时视频编码,采用海思先进的网络传输技术,可实现低于100ms的网传延迟。500万像素机型分辨率达到2560×1920,这相比200万像素的1920×1080,其水平清晰度从1050线提升到了1450线以上,使得视频观感满... 查看详情

海思3861环境搭建(代码片段)

开发环境ubuntu18.04DOPI3861开发板  Q群:735884031一.安装编译工具1.按照官方文档下载编译工具并添加到环境变量中https://device.harmonyos.com/cn/docs/start/introduce/quickstart-lite-env-setup-linux-00000011054074982.切换本地python/python3环 查看详情

海思3861环境搭建(代码片段)

开发环境ubuntu18.04DOPI3861开发板  Q群:735884031一.安装编译工具1.按照官方文档下载编译工具并添加到环境变量中https://device.harmonyos.com/cn/docs/start/introduce/quickstart-lite-env-setup-linux-00000011054074982.切换本地python/python3环 查看详情

海思3519av100开发:海思sample代码测试之tde

海思文档+nfsAxe+SecureCRT8.1破解版资源网盘链接提取码:pzxg3.海思sample代码测试tde用例目录Hi3519AV100_SDK_V2.0.1.0\\smp\\a53_linux\\mpp\\sample,该文件下每个子文件都是一个例子。我们以最简单(没有输入)的例子tde作... 查看详情

海思官方makefile源码的学习3(代码片段)

下面是一段海思官方的makefile的代码,VSS_CFLAGS:=-fno-aggressive-loop-optimizationsVSS_CFLAGS+=-ffunction-sections-fdata-sectionsVSS_CFLAGS+=-Wall-g-Wno-date-timeVSS_CFLAGS+=-fstac 查看详情

海思板卡sata最佳读写块大小测试

1   引言应需求,在海思板子上测试SATA读写速度,用dd指令,每次分别读/写不同大小的块   (bs),同时检测运行dd命令CPU占比,记录读/写速度和CPU占比。2   实验过程2.1    用dd指令对... 查看详情