> 文档中心 > OpenHarmony HDF 驱动编译流程分析

OpenHarmony HDF 驱动编译流程分析

  • uhdf 部分是编译framework部署在用户空间的代码
  • khdf 部分是编译framework部署在内核空间的代码

小型系统liteos(L1)

通过kernel模块的mk去include这里的 ./khdf/liteos/目录下的mk,从而编译到对应hdf driver

标准系统standard(L2)

标准系统继承了Linux 系统内核编译方法,在内核目录下执行make menuconfig 即可选择HDF层想要编译的driver

以下是我在hdf_core/adapter 下创建的一个新的编译项,在内核执行make menuconfig后可直接选择是否编译该项

 而内核态的HDF driver的路径是在SDK/drivers/hdf_core/adapter/khdf/linux下,而基于kernel基础包打过patch后的路径是在SDK/out/kernel/src_tmp/linux-5.10下,那么单独编译内核情况下是如何做到也同时编译了HDF driver呢?

 原来OpenHarmony 在SDK/out/kernel/src_tmp/linux-5.10/drivers下创建了hdf一级目录,在此目录下通过地址软链接的方式将khdf链接到了SDK/drivers/hdf_core/adapter/khdf/linux下,从而实现了在kernel下make menuconfig 也可直接选择hdf driver的编译。