#include "beepdrv.h"
#define DEV_NAME "beep"
#define GPIO_IOBASE io_p2v(GPIO_BASE)
static struct semaphore beep_sem;
static int tp_beep_open(struct inode *inode, struct file *filp)
{
__raw_writel(_BIT(7), GPIO_P3_OUTP_SET(GPIO_IOBASE));//SET GPIO_07
try_module_get(THIS_MODULE);
printk( KERN_INFO DEV_NAME " opened!\n");
return 0;
}
static int tp_beep_release(struct inode *inode, struct file *filp)
{
__raw_writel(_BIT(7), GPIO_P3_OUTP_SET(GPIO_IOBASE));//SET GPIO_07
module_put(THIS_MODULE);
printk(KERN_INFO DEV_NAME " released!\n");
return 0;
}
这是开发板驱动编程的部分代码,其中,__raw_writel,io_p2v,try_module_get,module_put等这些函数的原型在哪可以找到,还是像XP系统
那样只要会用这些函数,不需要理解? |