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

最近一直在研究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


  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 22
    评论
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值