天嵌 ARM开发社区

 找回密码
 注册
查看: 4313|回复: 6

__KERNEL__在哪有定义?

[复制链接]
874176706 发表于 2013-1-15 15:05:12 | 显示全部楼层 |阅读模式
nand_write_byte(struct mtd_info *mtd, u_char byte)中调用了writeb(byte, this->IO_ADDR_W),而这个writeb定义在linux/include/asm-arm/io.h,但是需要#ifdef __KERNEL__才有用,可是在source insight中没有找到 __KERNEL__的定义啊?


Hens007 发表于 2013-1-15 23:03:29 | 显示全部楼层
找这个的定义似乎没啥用处
回复

使用道具 举报

 楼主| 874176706 发表于 2013-1-18 23:23:48 | 显示全部楼层
Hens007 发表于 2013-1-15 23:03
找这个的定义似乎没啥用处

没有定义这个宏就无法使用writeb()函数啊。
回复

使用道具 举报

6403083 发表于 2013-1-19 08:45:58 | 显示全部楼层
在makefile文件中的config.mk中定义
CPPFLAGS := $(DBGFLAGS) $(OPTFLAGS) $(RELFLAGS)                \
        -D__KERNEL__ -DTEXT_BASE=$(TEXT_BASE)                \
-D__KERNEL__ 相当于C语言的 #define __KERNEL__
我的QQ640383,共同进步!
回复

使用道具 举报

 楼主| 874176706 发表于 2013-1-19 14:05:42 | 显示全部楼层
6403083 发表于 2013-1-19 08:45
在makefile文件中的config.mk中定义
CPPFLAGS := $(DBGFLAGS) $(OPTFLAGS) $(RELFLAGS)                \
        -D__KERNEL__ ...

额,谢谢,你懂得真多
回复

使用道具 举报

 楼主| 874176706 发表于 2013-1-19 14:06:51 | 显示全部楼层
874176706 发表于 2013-1-19 14:05
额,谢谢,你懂得真多


strcpy(cmd_buf, "tftp 0x30000000 root.bin; nand erase root; nand write.yaffs 0x30000000 root $(filesize)");
run_command(cmd_buf, 0);
上面的tftp命令代码找不到?
回复

使用道具 举报

 楼主| 874176706 发表于 2013-1-19 14:12:33 | 显示全部楼层
6403083 发表于 2013-1-19 08:45
在makefile文件中的config.mk中定义
CPPFLAGS := $(DBGFLAGS) $(OPTFLAGS) $(RELFLAGS)                \
        -D__KERNEL__ ...


strcpy(cmd_buf, "tftp 0x30000000 root.bin; nand erase root; nand write.yaffs 0x30000000 root $(filesize)");
run_command(cmd_buf, 0);
上面的tftp命令代码找不到?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-6-18 18:36 , Processed in 2.040069 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表