IPMUX1IPMUX2IPMUX3: function-description(opl_cpuif.c)

RTL96xx (RTL9607,...)

function-description(opl_cpuif.c)
[cpuif module]


local variable declaration and definition

void host_dma0_isr (int irq, void *dev_id, struct pt_regs *regs)
 description: the host dma0 interrupt handler, when the interrupt generated, it will wake up the process,which is waiting for the host dma0 interrupt.
int opl_host_ioctl (struct inode *inode, struct file *filp, unsigned int cmd, u32 arg)
 description: it is used for api to do something associated with ioctl command.

函数

int __init opl_host_dma_init (void)
 description: the module's entry.
void __exit opl_host_dma_exit (void)
 description:the module's exit.
 module_init (opl_host_dma_init)
 module_exit (opl_host_dma_exit)
 MODULE_LICENSE ("GPL2")
 MODULE_AUTHOR ("opulan Inc")
 MODULE_DESCRIPTION ("opulan IPMUX-e switch chip driver module")

函数文档

void host_dma0_isr int  irq,
void *  dev_id,
struct pt_regs *  regs
[static]
 

description: the host dma0 interrupt handler, when the interrupt generated, it will wake up the process,which is waiting for the host dma0 interrupt.

参数:
int irq:
void *dev_id:
struct pt_regs *regs:
返回:
NULL
参见:
Deprecated:

在文件opl_cpuif.c134行定义。

参考 opl_host_dma0_irq_eventopl_host_dma0_waitq.

参考自 opl_host_dma_init().

MODULE_AUTHOR "opulan Inc"   ) 
 

MODULE_DESCRIPTION "opulan IPMUX-e switch chip driver module"   ) 
 

module_exit opl_host_dma_exit   ) 
 

module_init opl_host_dma_init   ) 
 

MODULE_LICENSE "GPL2"   ) 
 

void __exit opl_host_dma_exit void   )  [static]
 

description:the module's exit.

it is used for free resouces:irq,memory and unregister the device.

参数:
void 
返回:
void
参见:
Deprecated:

在文件opl_cpuif.c333行定义。

参考 dma0_rx_bufOPL_HOST_MAJOROPL_HOST_NAMEOPL_HOSTDMA0_IRQorderu32.

int __init opl_host_dma_init void   )  [static]
 

description: the module's entry.

register the char device,request irq for host dma0 and malloc memory for dma0's buffer.

参数:
void 
返回值:
0 is success.
!0 is fail
参见:
Deprecated:

在文件opl_cpuif.c289行定义。

参考 dma0_rx_bufdma0_tx_bufhost_dma0_isr()opl_host_dma0_waitqopl_host_fopsOPL_HOST_MAJOROPL_HOST_NAMEOPL_HOSTDMA0_IRQorderrx_phys_addrtx_phys_addru32.

int opl_host_ioctl struct inode *  inode,
struct file *  filp,
unsigned int  cmd,
u32  arg
[static]
 

description: it is used for api to do something associated with ioctl command.

参数:
struct inode *inode:
struct file *filp:
unsigned int cmd: $:GET_IPMUX_DMA_RX_PHYS_ADDR:return the dma buffer physical address to user(set in dma's base address register) $:GET_IPMUX_DMA_TX_PHYS_ADDR:now,it is not used.all merge in rx buffer. $:GET_IPMUX_DMA_RX_BUF_DATA: receive the data to user,by dma_request_data_t struct. $:SET_IPMUX_DMA_TX_BUF_DATA: send the data to tx buffer, by dma_request_data_t struct. $:ENABLE_IPMUX_HOST_DMA0_INTERRUPT: enable the dma0 interrupt. $:DISABLE_IPMUX_HOST_DMA0_INTERRUPT: disable the dma0 interrupt. $:WAIT_FOR_IPMUX_HOST_DMA0_INTERRUPT: wait for dma0 interrupt generated.
u32 arg: $for PHY_ADDR: it is dma_request_phys_addr_t $for BUF_DATA: it is dma_request_data_t $for INTERRUPT: NULL
返回值:
0 is success
!0 is fail
参见:
Deprecated:

在文件opl_cpuif.c194行定义。

参考 dma_request_data_s::bddma_request_data_s::bufDISABLE_IPMUX_HOST_DMA0_INTERRUPTdma_request_data_tdma_request_phys_addr_tdma_request_data_s::dmasdma_request_phys_addr_s::dmasENABLE_IPMUX_HOST_DMA0_INTERRUPTGET_IPMUX_DMA_RX_BUF_DATAGET_IPMUX_DMA_RX_PHYS_ADDRGET_IPMUX_DMA_TX_PHYS_ADDRipmux_irq_disable()ipmux_irq_enable()dma_request_data_s::lenOPL_DMA_VAL_MAXopl_host_dma0_irq_eventopl_host_dma0_waitqopl_host_is_openOPL_HOSTDMA0_IRQdma_request_phys_addr_s::phys_addrrx_phys_addrSET_IPMUX_DMA_TX_BUF_DATAtx_phys_addrWAIT_FOR_IPMUX_HOST_DMA0_INTERRUPT.


Generated at Mon Jul 30 16:43:48 2007 for IPMUX1IPMUX2IPMUX3 by  doxygen 1.3.9.1