




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Copybit HAL模块分析报告Rockie C1、copybit模块的继承关系图2、copybit模块支持的图像格式注意,并不是所有硬件都支持这么多格式 COPYBIT_FORMAT_RGBA_8888 = HAL_PIXEL_FORMAT_RGBA_8888, COPYBIT_FORMAT_RGBX_8888 = HAL_PIXEL_FORMAT_RGBX_8888, COPYBIT_FORMAT_RGB_888 = HAL_PIXEL_FORMAT_RGB_888, COPYBIT_FORMAT_RGB_565 = HAL_PIXEL_FORMAT_RGB_565, COPYBIT_FORMAT_BGRA_8888 = HAL_PIXEL_FORMAT_BGRA_8888, COPYBIT_FORMAT_RGBA_5551 = HAL_PIXEL_FORMAT_RGBA_5551, COPYBIT_FORMAT_RGBA_4444 = HAL_PIXEL_FORMAT_RGBA_4444, COPYBIT_FORMAT_YCbCr_422_SP = HAL_PIXEL_FORMAT_YCbCr_422_SP,COPYBIT_FORMAT_YCbCr_420_SP = HAL_PIXEL_FORMAT_YCbCr_420_SP,3、copybit支持的功能* 图像旋转 90、180、270、水平翻转、垂直翻转* Alpha Blending 数值范围0-255* 抖动* 透明* 模糊* 剪裁* Stretch(缩放)* Bit Blit(块拷贝,支持xy坐标)4、图像结构体struct copybit_image_t /* width 宽度*/ uint32_t w; /* height 高度 */ uint32_t h; /* format COPYBIT_FORMAT_xxx格式 */ int32_t format; /* base of buffer with image 基址*/ void *base; /* handle to the image 图像句柄,Native_handle.h (systemcoreincludecutils)中定义*/ native_handle_t* handle;5、copybit模块支持的函数接口(1)设置参数int (*set_parameter)(struct copybit_device_t *dev, int name, int value);(2)获取信息int (*get)(struct copybit_device_t *dev, int name);(3)Blit操作int (*blit)(struct copybit_device_t *dev,struct copybit_image_t const *dst,struct copybit_image_t const *src,struct copybit_region_t const *region);(4)Stretch操作int (*stretch)(struct copybit_device_t *dev,struct copybit_image_t const *dst,struct copybit_image_t const *src,struct copybit_rect_t const *dst_rect,struct copybit_rect_t const *src_rect,struct copybit_region_t const *region);高通Copybit 模块 HAL分析1、Copybit Module写法struct copybit_module_t HAL_MODULE_INFO_SYM = common: tag: HARDWARE_MODULE_TAG, version_major: 1, version_minor: 0, id: COPYBIT_HARDWARE_MODULE_ID, name: QCT MSM7K COPYBIT Module, author: Google, Inc., methods: ©bit_module_methods ;2、私有函数(1)min(int a, int b)(2)max(int a, int b)(3)void MULDIV(uint32_t *a, uint32_t *b, int mul, int div)(4)void intersect(struct copybit_rect_t *out, const struct copybit_rect_t *lhs, const struct copybit_rect_t *rhs)作用:Clip函数(5)get_format(int format)作用:获取图形格式(6)void set_image(struct mdp_img *img, const struct copybit_image_t *rhs)作用:将Copybitimage结构体转换为mdp image结构(7)void set_rects(struct copybit_context_t *dev, struct mdp_blit_req *e, const struct copybit_rect_t *dst, const struct copybit_rect_t *src, const struct copybit_rect_t *scissor)作用:设置矩形框(8)void set_infos(struct copybit_context_t *dev, struct mdp_blit_req *req)作用:设置mdp请求(9)int msm_copybit(struct copybit_context_t *dev, void const *list)作用:执行copybit操作3、共有函数(1)int set_parameter_copybit( struct copybit_device_t *dev, int name, int value)作用:设置参数参数类型: 旋转 0 90 180 270 Alpha 0-255 抖动 使能/禁止 模糊 使能/禁止 透明 0-7(2) int get(struct copybit_device_t *dev, int name)作用:获取固定参数参数:最小缩放小数位4-msm7k 8-msm8k最大缩放小数位4-msm7k 8-msm8kCopybit缩放小数位32Copybit旋转步进角度(90)(3)int stretch_copybit( struct copybit_device_t *dev, struct copybit_image_t const *dst, struct copybit_image_t const *src, struct copybit_rect_t const *dst_rect, struct copybit_rect_t const *src_rect, struct copybit_region_t const *region)作用,做stretch 和blit操作通过一个while循环,积攒12个region,一次调用硬件驱动ioctl函数,将数据传入驱动,进行stretch操作。(4)int blit_copybit( struct copybit_device_t *dev, struct copybit_image_t const *dst, struct copybit_image_t const *src, struct copybit_region_t const *region)作用:该操作没有stretch操作4、高通驱动中的不足之处:查看内核2D驱动可知,MSM7k的做法是将buffer数据通过copy from user函数复制到内核态,再
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版石油及化学品运输合同全球供应链优化范本
- 2025年度城市综合体土建施工合同范本
- 2025年度跨境电商担保支付合同
- 2025年度厨师长职务竞聘与厨艺传承保护协议
- 2025版金融资产证券化委托代理合同
- 2025版园林景观土方施工简易合同范本
- 2025年床架定制设计及生产制造合同
- 2025常用商铺装修工程合同样本
- 2025年新型第三方机构房屋贷款担保服务合同
- 2025版双方教育科技合作协议
- 康复科护理金点子
- 工地油库安全管理办法
- 全球治理转型-洞察及研究
- 高等数学课程教学中遇到的问题及解决对策
- (高清版)DB32∕T 4001-2025 公共机构能耗定额及计算方法
- 电力物资打包方案(3篇)
- 2025至2030中国味精行业发展趋势分析与未来投资战略咨询研究报告
- 你的样子就是教育的样子-一位校长对教师行为规范的深度思考建议收藏
- 中医治疗泌尿系结石课件
- 屠宰场入股合同协议书
- 台球合同保密协议书
评论
0/150
提交评论