返回信息流内核2.6.24
错误一: error: `gpio_devices_queue' undeclared (first use in this function)
可是我明明在前面定义了:
static DECLARE_WAIT_QUEUE_HEAD(gpio_devices_queue);
甚至把这个宏的定义也拷贝过来还是不行:
static wait_queue_head_t name = __WAIT_QUEUE_HEAD_INITIALIZER(name);
原来遇到过这个问题,忘了怎么解决的了,真晕
警告二: warning: `restore_flags' is deprecated (declared at include/linux/interrupt.h:233)
网上搜到类似错误在编译内核时出现很多,但是没有人能说明白是怎么回事
代码很普通
unsigned long flags;
save_flags(flags);
..............
restore_flags(flags);
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #1977同步于 2008/10/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
编译模块遇到点问题,帮忙看一下啊
lester98
2008/10/28镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
第一个问题没太看明白
static DECLARE_WAIT_QUEUE_HEAD(gpio_devices_queue);
这是什么东东?
第二个问题,这种Warning好像看到过很多回,好像也没太大关系?
【 在 lester98 (奶瓶|单车旋风族之太阳风) 的大作中提到: 】
: 内核2.6.24
: 错误一: error: `gpio_devices_queue' undeclared (first use in this function)
: 可是我明明在前面定义了:
: static DECLARE_WAIT_QUEUE_HEAD(gpio_devices_queue);
: 甚至把这个宏的定义也拷贝过来还是不行:
: static wait_queue_head_t name = __WAIT_QUEUE_HEAD_INITIALIZER(name);
: 原来遇到过这个问题,忘了怎么解决的了,真晕
: 警告二: warning: `restore_flags' is deprecated (declared at include/linux/interrupt.h:233)
这里都说了deprecate了。。。
换local_irq_restore
: 网上搜到类似错误在编译内核时出现很多,但是没有人能说明白是怎么回事
: 代码很普通
: unsigned long flags;
: save_flags(flags);
: ..............
: restore_flags(flags);
【 在 Bergwolf 的大作中提到: 】
: 这里都说了deprecate了。。。
: 换local_irq_restore
deprecate放在这里是啥意思?能解释一下吗?
restore_flags被标记为不推荐使用了
可能的结果是以后从某个版本的内核开始再也找不到这个函数
【 在 lester98 (奶瓶|单车旋风族之太阳风) 的大作中提到: 】
: deprecate放在这里是啥意思?能解释一下吗?
【 在 Bergwolf 的大作中提到: 】
: restore_flags被标记为不推荐使用了
: 可能的结果是以后从某个版本的内核开始再也找不到这个函数
嗯,多谢!
老兄对内核很了解啊,希望以后多来版上指点一下^^
我是新手,来向大家学习的:)
【 在 lester98 (奶瓶|单车旋风族之太阳风) 的大作中提到: 】
: 嗯,多谢!
: 老兄对内核很了解啊,希望以后多来版上指点一下^^
【 在 Bergwolf 的大作中提到: 】
: restore_flags被标记为不推荐使用了
: 可能的结果是以后从某个版本的内核开始再也找不到这个函数
哇,原来是这样啊
我说为啥我加的代码总报这个Warning呢,原来是用的函数不合适
领教了,谢谢大牛!
【 在 Bergwolf 的大作中提到: 】
: 我是新手,来向大家学习的:)
好低调啊
再问个问题
static irqreturn_t gpio_devices_irq(int irq, void *dev_id, struct pt_regs *reg)
{}
。。。。。。
request_irq(j,&gpio_devices_irq,SA_INTERRUPT,GPIO_DEVICE_NAME,&gpio_devices_irq)
这样的代码为啥提示warning:
warning: `deprecated_irq_flag' is deprecated (declared at include/linux/interrupt.h:64)
warning: passing arg 2 of `request_irq' from incompatible pointer type