Linux 内核使用 headers 来自不同的 driver 树

Linux kernel make with headers from different driver tree

我正在尝试将来自 mali driver 目录树的 gpu_ipa header 包含在我的 cpufreq 模块中的 3.10.9 android 内核中。我一直在查看 make 文件,但无法理解我是如何将 mali 目录包含在我模块的 make 配置中的 cpufreq driver 目录中。

如果不是很清楚,请详细说明。

在我的模块中(optigame_governor.c/h)我有

#include "gpu_ipa.h"

在我的 cpufreq 生成文件中

obj-$(CONFIG_CPU_FREQ_GOV_OPTIGAME) += optigame_governor.o

不包括:(

我的模块和目标之间的文件结构header看起来像

kernel---drivers---cpufreq---optigame_governor.c/h
                \--gpu---arm---midgard---platform---gpu_ipa.h

我不是 100% 确定这是否是我需要的确切文件,但我需要另一个 driver 分支中的一些东西,所以我正在寻找一个有点通用的解决方案。

干杯

我能够使用评论中提到的 ccflags 解决我的问题。

添加

ccflags-$(CONFIG_CPU_FREQ_GOV_OPTIGAME) += -Idrivers/gpu/arm/midgard

到我的 cpufreq Makefile 并添加

#include <platform/gpu_ipa.h>

我的c文件解决了这个问题。问题是由于没有使用绝对路径。