minte module
详细描述
THE FORMAT is FOR DOXYGEN to Generate the document opulan.com.
- 版本:
- v0.2
- 日期:
- June-29-2007 date description
----------------------------------------------------------------- June-29-2007 mainly from the old version and rewrite the opulan_read function.
July-05-2007 distill the interrupt handle way from the old ipmux driver module.
July-09-2007 change transfer global g_opl_chip_irq_pending to get_irq_pending() and clear_irq_pending().
模块 | |
组 | function_description(opl_minte.c) |
#define | OPL_MINTE_MAJOR 120 |
#define | OPL_MINTE_DEVICE "opl_minte" |
Macro definition | |
#define | opl_minte_hw0_irqexit ipmux_hw0_irqexit |
#define | opl_minte_hw0_irqinit ipmux_hw0_irqinit |
int | ipmux_hw0_irqinit (void) |
description: request the ipmux irq and enable the its intr. | |
void | ipmux_hw0_irqexit (void) |
description: free irq,and disable ipmux interrupt. | |
the variable and function imported. | |
u32 | get_irq_pending (void) |
void | clear_irq_pending (void) |
void | ipmux_irq_enable (unsigned int irq) |
void | ipmux_irq_disable (unsigned int irq) |
local function declaration | |
int | opl_minte_open (struct inode *inode, struct file *filp) |
int | opl_minte_release (struct inode *inode, struct file *filp) |
ssize_t | opl_minte_read (struct file *filp, char *buffer, size_t length, loff_t *offset) |
description: copy the opl_chip_irq_pending(indicate which interrupt occured) to user App, which will handle its interrupt.if the no irq pending occured,the process will sleep until the isr wake up it. | |
ssize_t | opl_minte_write (struct file *filp, const char *buffer, size_t length, loff_t *offset) |
description: because the enable irq or disable irq will be in atomic mode,so it should be operated in kernel mode is correct. | |
the global variable declaration and definition. | |
u32 | g_opl_chip_irq_event = 0 |
wait_queue_head_t | g_opl_chip_waitq |
local variable declaration and definition | |
u32 | opl_minte_open_count = 0 |
u32 | opl_minte_is_open = 0 |
file_operations | opl_minte_fops |
宏定义文档
|
在文件opl_minte.c第36行定义。 |
|
在文件opl_minte.h第23行定义。 参考自 opl_minte_exit(). |
|
在文件opl_minte.h第24行定义。 参考自 opl_minte_init(). |
|
在文件opl_minte.c第35行定义。 |
函数文档
|
参考自 opl_minte_read(). |
|
参考自 opl_minte_read(). |
|
description: free irq,and disable ipmux interrupt.
在文件ipmux_interrupt.c第165行定义。 参考 OPL_IPMUX_IRQ、REG_INT_EN_ATB、REG_INT_EN_BRG、REG_INT_EN_DNTM、REG_INT_EN_IWF、REG_INT_EN_MC、REG_INT_EN_POS_UPT、REG_INT_EN_PPE、REG_INT_EN_UPTM及turn_off_level2_intr(). |
|
description: request the ipmux irq and enable the its intr.
在文件ipmux_interrupt.c第139行定义。 参考 intr_status、ipmux_interrupt_handler()、OPL_IPMUX_IRQ、REG_INT_EN_ATB、REG_INT_EN_BRG、REG_INT_EN_DNTM、REG_INT_EN_IWF、REG_INT_EN_MC、REG_INT_EN_POS_UPT、REG_INT_EN_PPE、REG_INT_EN_UPTM及turn_on_level2_intr(). |
|
|
|
|
|
在文件opl_minte.c第163行定义。 |
|
description: copy the opl_chip_irq_pending(indicate which interrupt occured) to user App, which will handle its interrupt.if the no irq pending occured,the process will sleep until the isr wake up it.
在文件opl_minte.c第109行定义。 参考 clear_irq_pending()、g_opl_chip_irq_event、g_opl_chip_waitq、get_irq_pending()、opl_minte_is_open及u32. |
|
在文件opl_minte.c第172行定义。 |
|
description: because the enable irq or disable irq will be in atomic mode,so it should be operated in kernel mode is correct. the value in user *buffer it is the enable or disable. 1. enable 0. disable if the value is enable, to enble the ipmux interrupt, call the function in malta_int.c
在文件opl_minte.c第146行定义。 参考 ipmux_irq_disable()、ipmux_irq_enable()、OPL_IPMUX_IRQ及opl_minte_is_open. |
变量文档
|
在文件opl_minte.c第61行定义。 |
|
在文件opl_minte.c第62行定义。 参考自 ipmux_interrupt_handler()、opl_minte_init()及opl_minte_read(). |
|
初始化序列: { .read = opl_minte_read, .write = opl_minte_write, .open = opl_minte_open, .release = opl_minte_release, } 在文件opl_minte.c第83行定义。 参考自 opl_minte_init(). |
|
在文件opl_minte.c第82行定义。 参考自 opl_minte_open()、opl_minte_read()、opl_minte_release()及opl_minte_write(). |
|
在文件opl_minte.c第81行定义。 |
Generated at Mon Jul 30 16:43:48 2007 for IPMUX1IPMUX2IPMUX3 by 1.3.9.1