OpenCores
URL https://opencores.org/ocsvn/pcie_ds_dma/pcie_ds_dma/trunk

Subversion Repositories pcie_ds_dma

[/] [pcie_ds_dma/] [trunk/] [soft/] [linux/] [driver/] [pexdrv/] [hardware.h] - Blame information for rev 6

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 dsmv
 
2
#ifndef _HARDWARE_H_
3
#define _HARDWARE_H_
4
 
5
//-----------------------------------------------------------------------------
6
 
7
#define INSYS_VENDOR_ID         0x4953
8
#define AMBPEX8_DEVID           0x5503
9
#define ADP201X1AMB_DEVID       0x5504
10
#define ADP201X1DSP_DEVID       0x5505
11
#define AMBPEX5_DEVID           0x5507
12
#define AMBPEXARM_DEVID         0x5702
13
#define AMBFMC106P_DEVID        0x550A
14 6 v.karak
#define AMBFMC114V_DEVID        0x550C
15
#define AMBKU_SSCOS_DEVID       0x5703
16 2 dsmv
 
17
//-----------------------------------------------------------------------------
18
 
19
#define MAX_PEXDEVICE_SUPPORT   4
20
 
21
//-----------------------------------------------------------------------------
22
struct pex_device;
23
//-----------------------------------------------------------------------------
24
 
25
int set_device_name(struct pex_device *brd, u16 dev_id, int index);
26
int InitializeBoard(struct pex_device *brd);
27
u32 ReadOperationReg(struct pex_device *brd, u32 RelativePort);
28
void WriteOperationReg(struct pex_device *brd, u32 RelativePort, u32 Value);
29
u16 ReadOperationWordReg(struct pex_device *brd, u32 RelativePort);
30
void WriteOperationWordReg(struct pex_device *brd, u32 RelativePort, u16 Value);
31
u32 ReadAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort);
32
u32 ReadAmbMainReg(struct pex_device *brd, u32 RelativePort);
33
void WriteAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort, u32 Value);
34
void WriteAmbMainReg(struct pex_device *brd, u32 RelativePort, u32 Value);
35
void ReadBufAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort, u32* VirtualAddress, u32 DwordsCount);
36
void WriteBufAmbReg(struct pex_device *brd, u32 AdmNumber, u32 RelativePort, u32* VirtualAddress, u32 DwordsCount);
37
void WriteBufAmbMainReg(struct pex_device *brd, u32 RelativePort, u32* VirtualAddress, u32 DwordsCount);
38
void TimeoutTimerCallback(unsigned long arg );
39
void SetRelativeTimer ( struct timer_list *timer, int timeout, void *data );
40
void CancelTimer ( struct timer_list *timer );
41
int WaitCmdReady(struct pex_device *brd, u32 AdmNumber, u32 StatusAddress);
42
int WriteRegData(struct pex_device *brd, u32 AdmNumber, u32 TetrNumber, u32 RegNumber, u32 Value);
43
void ToPause(int time_out);
44
void ToTimeOut(int mctime_out);
45
int ReadRegData(struct pex_device *brd, u32 AdmNumber, u32 TetrNumber, u32 RegNumber, u32 *Value);
46
int SetDmaMode(struct pex_device *brd, u32 NumberOfChannel, u32 AdmNumber, u32 TetrNumber);
47
int SetDrqFlag(struct pex_device *brd, u32 AdmNumber, u32 TetrNumber, u32 DrqFlag);
48
int DmaEnable(struct pex_device *brd, u32 AdmNumber, u32 TetrNumber);
49
int DmaDisable(struct pex_device *brd, u32 AdmNumber, u32 TetrNumber);
50
int ResetFifo(struct pex_device *brd, u32 NumberOfChannel);
51
int Done(struct pex_device *brd, u32 NumberOfChannel);
52
int HwStartDmaTransfer(struct pex_device *brd, u32 NumberOfChannel);
53
int HwCompleteDmaTransfer(struct pex_device *brd, u32 NumberOfChannel);
54
 
55
//-----------------------------------------------------------------------------
56
 
57
int lock_pages( void *va, u32 size );
58
int unlock_pages( void *va, u32 size );
59
 
60
//-----------------------------------------------------------------------------
61
 
62
#endif //_HARDWARE_H_

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.