惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
D
Docker
J
Java Code Geeks
L
LangChain Blog
Microsoft Security Blog
Microsoft Security Blog
The GitHub Blog
The GitHub Blog
I
InfoQ
Stack Overflow Blog
Stack Overflow Blog
云风的 BLOG
云风的 BLOG
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
月光博客
月光博客
T
Tailwind CSS Blog
M
MIT News - Artificial intelligence
Blog — PlanetScale
Blog — PlanetScale
Google DeepMind News
Google DeepMind News
腾讯CDC
罗磊的独立博客
U
Unit 42
爱范儿
爱范儿
Vercel News
Vercel News
MyScale Blog
MyScale Blog

博客园 - sheldon_blogs

RK3588 Android12 rknpu驱动升级及通过fastboot更新 Android设备搭建本地RTSP服务器(基于live555) Android上玩转TUN设备及rtsp传输 Android14 RK3588平台内核异常中断占用CPU问题排查 Android平台移植stress-ng工具及使用 Android OTA的两种方式:Non-A/B(recovery)和A/B系统升级 Android设备之间UVC Gadget bulk模式无法正常打开问题 Android的USB网络共享功能 Linux修改Swap分区大小及使用优先级 Android开放配件 (AOA) 协议 Android(S)系统属性服务详解 Android12 双屏异显/异触流程分析 Android Webview 调试总结 RK3588 Android12 编译打包私有ext4格式vendor.img并挂载到新增vendor_private分区 C++提取字符串中的整数 Android UVC Camera H.265帧序错乱问题 RK3588 Android12 一个固件兼容多个板型方案 全志A133 Android10 Display框架实践 UAC实例分析-USB音响 Android USB之复合设备(gadget)详解
Android编译脚本添加kernel编译选项传入宏定义
sheldon_blogs · 2022-12-22 · via 博客园 - sheldon_blogs

Android系统开发时针对不同产品(硬件)差异,驱动层需要做逻辑区分,需要获取当前产品平台信息做客制化处理,其中一种方式是编译时通过编译选项KCFLAGS=-DXXXX传入宏定义给kernel使用,驱动代码中可以直接通过宏开关走不同逻辑:

#ifdef XXXX
//......
#endif

例如:编译shell脚本中将TARGET_PRODUCT变量的值作为宏定义传入kernel使用(^^代表全部转大写):

make  ARCH=$KERNEL_ARCH KCFLAGS=-D${TARGET_PRODUCT^^}