Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2)  * 440SPe's DMA engines support header file
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4)  * 2006-2009 (C) DENX Software Engineering.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6)  * Author: Yuri Tikhonov <yur@emcraft.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8)  * This file is licensed under the term of  the GNU General Public License
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9)  * version 2. The program licensed "as is" without any warranty of any
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10)  * kind, whether express or implied.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) #ifndef	_PPC440SPE_DMA_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) #define _PPC440SPE_DMA_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) #include <linux/types.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) /* Number of elements in the array with statical CDBs */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) #define	MAX_STAT_DMA_CDBS	16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) /* Number of DMA engines available on the contoller */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) #define DMA_ENGINES_NUM		2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) /* Maximum h/w supported number of destinations */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) #define DMA_DEST_MAX_NUM	2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) /* FIFO's params */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) #define DMA0_FIFO_SIZE		0x1000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) #define DMA1_FIFO_SIZE		0x1000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) #define DMA_FIFO_ENABLE		(1<<12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) /* DMA Configuration Register. Data Transfer Engine PLB Priority: */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) #define DMA_CFG_DXEPR_LP	(0<<26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) #define DMA_CFG_DXEPR_HP	(3<<26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) #define DMA_CFG_DXEPR_HHP	(2<<26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) #define DMA_CFG_DXEPR_HHHP	(1<<26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) /* DMA Configuration Register. DMA FIFO Manager PLB Priority: */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) #define DMA_CFG_DFMPP_LP	(0<<23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) #define DMA_CFG_DFMPP_HP	(3<<23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) #define DMA_CFG_DFMPP_HHP	(2<<23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) #define DMA_CFG_DFMPP_HHHP	(1<<23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) /* DMA Configuration Register. Force 64-byte Alignment */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) #define DMA_CFG_FALGN		(1 << 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) /*UIC0:*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) #define D0CPF_INT		(1<<12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) #define D0CSF_INT		(1<<11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) #define D1CPF_INT		(1<<10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) #define D1CSF_INT		(1<<9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) /*UIC1:*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) #define DMAE_INT		(1<<9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) /* I2O IOP Interrupt Mask Register */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) #define I2O_IOPIM_P0SNE		(1<<3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) #define I2O_IOPIM_P0EM		(1<<5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) #define I2O_IOPIM_P1SNE		(1<<6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) #define I2O_IOPIM_P1EM		(1<<8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) /* DMA CDB fields */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) #define DMA_CDB_MSK		(0xF)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) #define DMA_CDB_64B_ADDR	(1<<2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) #define DMA_CDB_NO_INT		(1<<3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) #define DMA_CDB_STATUS_MSK	(0x3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) #define DMA_CDB_ADDR_MSK	(0xFFFFFFF0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) /* DMA CDB OpCodes */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) #define DMA_CDB_OPC_NO_OP	(0x00)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) #define DMA_CDB_OPC_MV_SG1_SG2	(0x01)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) #define DMA_CDB_OPC_MULTICAST	(0x05)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) #define DMA_CDB_OPC_DFILL128	(0x24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) #define DMA_CDB_OPC_DCHECK128	(0x23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) #define DMA_CUED_XOR_BASE	(0x10000000)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) #define DMA_CUED_XOR_HB		(0x00000008)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) #ifdef CONFIG_440SP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) #define DMA_CUED_MULT1_OFF	0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) #define DMA_CUED_MULT2_OFF	8
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) #define DMA_CUED_MULT3_OFF	16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) #define DMA_CUED_REGION_OFF	24
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) #define DMA_CUED_XOR_WIN_MSK	(0xFC000000)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) #define DMA_CUED_MULT1_OFF	2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) #define DMA_CUED_MULT2_OFF	10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) #define DMA_CUED_MULT3_OFF	18
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) #define DMA_CUED_REGION_OFF	26
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) #define DMA_CUED_XOR_WIN_MSK	(0xF0000000)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) #define DMA_CUED_REGION_MSK	0x3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) #define DMA_RXOR123		0x0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) #define DMA_RXOR124		0x1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) #define DMA_RXOR125		0x2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) #define DMA_RXOR12		0x3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) /* S/G addresses */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) #define DMA_CDB_SG_SRC		1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) #define DMA_CDB_SG_DST1		2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) #define DMA_CDB_SG_DST2		3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103)  * DMAx engines Command Descriptor Block Type
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) struct dma_cdb {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 	/*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	 * Basic CDB structure (Table 20-17, p.499, 440spe_um_1_22.pdf)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 	 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	u8	pad0[2];        /* reserved */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 	u8	attr;		/* attributes */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	u8	opc;		/* opcode */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 	u32	sg1u;		/* upper SG1 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 	u32	sg1l;		/* lower SG1 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 	u32	cnt;		/* SG count, 3B used */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	u32	sg2u;		/* upper SG2 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	u32	sg2l;		/* lower SG2 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	u32	sg3u;		/* upper SG3 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	u32	sg3l;		/* lower SG3 address */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122)  * DMAx hardware registers (p.515 in 440SPe UM 1.22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) struct dma_regs {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	u32	cpfpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	u32	cpfph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	u32	csfpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 	u32	csfph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 	u32	dsts;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 	u32	cfg;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 	u8	pad0[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	u16	cpfhp;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	u16	cpftp;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	u16	csfhp;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	u16	csftp;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 	u8	pad1[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 	u32	acpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 	u32	acph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	u32	s1bpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 	u32	s1bph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 	u32	s2bpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 	u32	s2bph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 	u32	s3bpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 	u32	s3bph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	u8	pad2[0x10];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 	u32	earl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	u32	earh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 	u8	pad3[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	u32	seat;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	u32	sead;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	u32	op;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	u32	fsiz;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156)  * I2O hardware registers (p.528 in 440SPe UM 1.22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) struct i2o_regs {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	u32	ists;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	u32	iseat;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	u32	isead;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	u8	pad0[0x14];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	u32	idbel;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	u8	pad1[0xc];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	u32	ihis;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	u32	ihim;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 	u8	pad2[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 	u32	ihiq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	u32	ihoq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	u8	pad3[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	u32	iopis;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	u32	iopim;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	u32	iopiq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	u8	iopoq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	u8	pad4[3];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	u16	iiflh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 	u16	iiflt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	u16	iiplh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 	u16	iiplt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	u16	ioflh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	u16	ioflt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	u16	ioplh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 	u16	ioplt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	u32	iidc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	u32	ictl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	u32	ifcpp;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 	u8	pad5[0x4];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	u16	mfac0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	u16	mfac1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	u16	mfac2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 	u16	mfac3;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	u16	mfac4;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	u16	mfac5;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	u16	mfac6;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	u16	mfac7;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	u16	ifcfh;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 	u16	ifcht;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	u8	pad6[0x4];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 	u32	iifmc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	u32	iodb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	u32	iodbc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	u32	ifbal;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	u32	ifbah;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	u32	ifsiz;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	u32	ispd0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 	u32	ispd1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 	u32	ispd2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 	u32	ispd3;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	u32	ihipl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	u32	ihiph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 	u32	ihopl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	u32	ihoph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 	u32	iiipl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	u32	iiiph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	u32	iiopl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	u32	iioph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 	u32	ifcpl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	u32	ifcph;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 	u8	pad7[0x8];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 	u32	iopt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) #endif /* _PPC440SPE_DMA_H */