当前位置:   article > 正文

TEE OS 开发基于OP-Tee,MTK平台的移植方法_optee移植

optee移植

最近一直在研究TEE  OS,经过一断时间,终于把自己的OS移植到MTK平台!

现在把主要的方法记录一下,

1. 下载代码

https://github.com/OP-TEE/optee_os

  1. $ mkdir open-tee        //创建目录  
  2. $ cd open-tee           //切换到创建的目录  
  3. $ repo init -u https://github.com/OP-TEE/manifest.git -m default.xml --repo-url=git://codeaurora.org/tools/repo.git       
  4. //初始化repo,  
  5. $repo sync      //开始获取OP-TEE源代码  

则需要切换到.repo目录中,将manifest.xml文件中的所有的.git都删除


2. 编译

1.  $ cd build      //切换到build目录  

2 $ make -f mediatek.mk  optee-os       //编译工程


3.平台修改

参考optee_os\documentation\porting_guidelines.md

仔细研读里面的关键说明,根据实际修改

#ifndef PLATFORM_CONFIG_H
#define PLATFORM_CONFIG_H


/* Make stacks aligned to data cache line length */
#define STACK_ALIGNMENT 64


/* 8250 UART */
#define CONSOLE_UART_BASE 0xcafebabe /* UART0 */
#define CONSOLE_BAUDRATE 115200
#define CONSOLE_UART_CLK_IN_HZ 19200000


#define DRAM0_BASE 0x00000000
#define DRAM0_SIZE 0x40000000


/* Below ARM-TF */
#define CFG_SHMEM_START 0x08000000

#define CFG_SHMEM_SIZE (4 * 1024 * 1024)


4, ATF 代码下载optee

https://github.com/ARM-software/arm-trusted-firmware 

仔细研究相关平台的ATF启动流程,并加log打印


5. 移植kernel驱动部分

linux内核代码,在./driver/tee目录下存放的是tee对应的驱动程序

已经关键的数据结构文件./include/linux/tee_drv.h;


6. Android tee守护进程tee-supplicant

编译android版本


7. 理解整个代码架构





8. 解决问题方法和途径

有好几个不错的提问网站,而且有好多问题和源码参考。

特别是那些老外,真心不错,你给他发邮件,问题必回,我想这大概就是老外的开源精神!

提问

https://community.arm.com/cn/f/discussions/7317/op-tee

英文问题查找:https://github.com/OP-TEE/optee_os/pull/93


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/711689
推荐阅读
相关标签
  

闽ICP备14008679号