⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pxa-regs.h

📁 u-boot 源代码
💻 H
📖 第 1 页 / 共 5 页
字号:
#define DDADR13		__REG(0x400002d0)  /* DMA Descriptor Address Register Channel 13 */#define DSADR13		__REG(0x400002d4)  /* DMA Source Address Register Channel 13 */#define DTADR13		__REG(0x400002d8)  /* DMA Target Address Register Channel 13 */#define DCMD13		__REG(0x400002dc)  /* DMA Command Address Register Channel 13 */#define DDADR14		__REG(0x400002e0)  /* DMA Descriptor Address Register Channel 14 */#define DSADR14		__REG(0x400002e4)  /* DMA Source Address Register Channel 14 */#define DTADR14		__REG(0x400002e8)  /* DMA Target Address Register Channel 14 */#define DCMD14		__REG(0x400002ec)  /* DMA Command Address Register Channel 14 */#define DDADR15		__REG(0x400002f0)  /* DMA Descriptor Address Register Channel 15 */#define DSADR15		__REG(0x400002f4)  /* DMA Source Address Register Channel 15 */#define DTADR15		__REG(0x400002f8)  /* DMA Target Address Register Channel 15 */#define DCMD15		__REG(0x400002fc)  /* DMA Command Address Register Channel 15 */#define DDADR(x)	__REG2(0x40000200, (x) << 4)#define DSADR(x)	__REG2(0x40000204, (x) << 4)#define DTADR(x)	__REG2(0x40000208, (x) << 4)#define DCMD(x)		__REG2(0x4000020c, (x) << 4)#define DDADR_DESCADDR	0xfffffff0	/* Address of next descriptor (mask) */#define DDADR_STOP	(1 << 0)	/* Stop (read / write) */#define DCMD_INCSRCADDR (1 << 31)	/* Source Address Increment Setting. */#define DCMD_INCTRGADDR (1 << 30)	/* Target Address Increment Setting. */#define DCMD_FLOWSRC	(1 << 29)	/* Flow Control by the source. */#define DCMD_FLOWTRG	(1 << 28)	/* Flow Control by the target. */#define DCMD_STARTIRQEN (1 << 22)	/* Start Interrupt Enable */#define DCMD_ENDIRQEN	(1 << 21)	/* End Interrupt Enable */#define DCMD_ENDIAN	(1 << 18)	/* Device Endian-ness. */#define DCMD_BURST8	(1 << 16)	/* 8 byte burst */#define DCMD_BURST16	(2 << 16)	/* 16 byte burst */#define DCMD_BURST32	(3 << 16)	/* 32 byte burst */#define DCMD_WIDTH1	(1 << 14)	/* 1 byte width */#define DCMD_WIDTH2	(2 << 14)	/* 2 byte width (HalfWord) */#define DCMD_WIDTH4	(3 << 14)	/* 4 byte width (Word) */#define DCMD_LENGTH	0x01fff		/* length mask (max = 8K - 1) *//* default combinations */#define DCMD_RXPCDR	(DCMD_INCTRGADDR|DCMD_FLOWSRC|DCMD_BURST32|DCMD_WIDTH4)#define DCMD_RXMCDR	(DCMD_INCTRGADDR|DCMD_FLOWSRC|DCMD_BURST32|DCMD_WIDTH4)#define DCMD_TXPCDR	(DCMD_INCSRCADDR|DCMD_FLOWTRG|DCMD_BURST32|DCMD_WIDTH4)/* * UARTs *//* Full Function UART (FFUART) */#define FFUART		FFRBR#define FFRBR		__REG(0x40100000)  /* Receive Buffer Register (read only) */#define FFTHR		__REG(0x40100000)  /* Transmit Holding Register (write only) */#define FFIER		__REG(0x40100004)  /* Interrupt Enable Register (read/write) */#define FFIIR		__REG(0x40100008)  /* Interrupt ID Register (read only) */#define FFFCR		__REG(0x40100008)  /* FIFO Control Register (write only) */#define FFLCR		__REG(0x4010000C)  /* Line Control Register (read/write) */#define FFMCR		__REG(0x40100010)  /* Modem Control Register (read/write) */#define FFLSR		__REG(0x40100014)  /* Line Status Register (read only) */#define FFMSR		__REG(0x40100018)  /* Modem Status Register (read only) */#define FFSPR		__REG(0x4010001C)  /* Scratch Pad Register (read/write) */#define FFISR		__REG(0x40100020)  /* Infrared Selection Register (read/write) */#define FFDLL		__REG(0x40100000)  /* Divisor Latch Low Register (DLAB = 1) (read/write) */#define FFDLH		__REG(0x40100004)  /* Divisor Latch High Register (DLAB = 1) (read/write) *//* Bluetooth UART (BTUART) */#define BTUART		BTRBR#define BTRBR		__REG(0x40200000)  /* Receive Buffer Register (read only) */#define BTTHR		__REG(0x40200000)  /* Transmit Holding Register (write only) */#define BTIER		__REG(0x40200004)  /* Interrupt Enable Register (read/write) */#define BTIIR		__REG(0x40200008)  /* Interrupt ID Register (read only) */#define BTFCR		__REG(0x40200008)  /* FIFO Control Register (write only) */#define BTLCR		__REG(0x4020000C)  /* Line Control Register (read/write) */#define BTMCR		__REG(0x40200010)  /* Modem Control Register (read/write) */#define BTLSR		__REG(0x40200014)  /* Line Status Register (read only) */#define BTMSR		__REG(0x40200018)  /* Modem Status Register (read only) */#define BTSPR		__REG(0x4020001C)  /* Scratch Pad Register (read/write) */#define BTISR		__REG(0x40200020)  /* Infrared Selection Register (read/write) */#define BTDLL		__REG(0x40200000)  /* Divisor Latch Low Register (DLAB = 1) (read/write) */#define BTDLH		__REG(0x40200004)  /* Divisor Latch High Register (DLAB = 1) (read/write) *//* Standard UART (STUART) */#define STUART		STRBR#define STRBR		__REG(0x40700000)  /* Receive Buffer Register (read only) */#define STTHR		__REG(0x40700000)  /* Transmit Holding Register (write only) */#define STIER		__REG(0x40700004)  /* Interrupt Enable Register (read/write) */#define STIIR		__REG(0x40700008)  /* Interrupt ID Register (read only) */#define STFCR		__REG(0x40700008)  /* FIFO Control Register (write only) */#define STLCR		__REG(0x4070000C)  /* Line Control Register (read/write) */#define STMCR		__REG(0x40700010)  /* Modem Control Register (read/write) */#define STLSR		__REG(0x40700014)  /* Line Status Register (read only) */#define STMSR		__REG(0x40700018)  /* Reserved */#define STSPR		__REG(0x4070001C)  /* Scratch Pad Register (read/write) */#define STISR		__REG(0x40700020)  /* Infrared Selection Register (read/write) */#define STDLL		__REG(0x40700000)  /* Divisor Latch Low Register (DLAB = 1) (read/write) */#define STDLH		__REG(0x40700004)  /* Divisor Latch High Register (DLAB = 1) (read/write) */#define IER_DMAE	(1 << 7)	/* DMA Requests Enable */#define IER_UUE		(1 << 6)	/* UART Unit Enable */#define IER_NRZE	(1 << 5)	/* NRZ coding Enable */#define IER_RTIOE	(1 << 4)	/* Receiver Time Out Interrupt Enable */#define IER_MIE		(1 << 3)	/* Modem Interrupt Enable */#define IER_RLSE	(1 << 2)	/* Receiver Line Status Interrupt Enable */#define IER_TIE		(1 << 1)	/* Transmit Data request Interrupt Enable */#define IER_RAVIE	(1 << 0)	/* Receiver Data Available Interrupt Enable */#define IIR_FIFOES1	(1 << 7)	/* FIFO Mode Enable Status */#define IIR_FIFOES0	(1 << 6)	/* FIFO Mode Enable Status */#define IIR_TOD		(1 << 3)	/* Time Out Detected */#define IIR_IID2	(1 << 2)	/* Interrupt Source Encoded */#define IIR_IID1	(1 << 1)	/* Interrupt Source Encoded */#define IIR_IP		(1 << 0)	/* Interrupt Pending (active low) */#define FCR_ITL2	(1 << 7)	/* Interrupt Trigger Level */#define FCR_ITL1	(1 << 6)	/* Interrupt Trigger Level */#define FCR_RESETTF	(1 << 2)	/* Reset Transmitter FIFO */#define FCR_RESETRF	(1 << 1)	/* Reset Receiver FIFO */#define FCR_TRFIFOE	(1 << 0)	/* Transmit and Receive FIFO Enable */#define FCR_ITL_1	(0)#define FCR_ITL_8	(FCR_ITL1)#define FCR_ITL_16	(FCR_ITL2)#define FCR_ITL_32	(FCR_ITL2|FCR_ITL1)#define LCR_DLAB	(1 << 7)	/* Divisor Latch Access Bit */#define LCR_SB		(1 << 6)	/* Set Break */#define LCR_STKYP	(1 << 5)	/* Sticky Parity */#define LCR_EPS		(1 << 4)	/* Even Parity Select */#define LCR_PEN		(1 << 3)	/* Parity Enable */#define LCR_STB		(1 << 2)	/* Stop Bit */#define LCR_WLS1	(1 << 1)	/* Word Length Select */#define LCR_WLS0	(1 << 0)	/* Word Length Select */#define LSR_FIFOE	(1 << 7)	/* FIFO Error Status */#define LSR_TEMT	(1 << 6)	/* Transmitter Empty */#define LSR_TDRQ	(1 << 5)	/* Transmit Data Request */#define LSR_BI		(1 << 4)	/* Break Interrupt */#define LSR_FE		(1 << 3)	/* Framing Error */#define LSR_PE		(1 << 2)	/* Parity Error */#define LSR_OE		(1 << 1)	/* Overrun Error */#define LSR_DR		(1 << 0)	/* Data Ready */#define MCR_LOOP	(1 << 4)	*/#define MCR_OUT2	(1 << 3)	/* force MSR_DCD in loopback mode */#define MCR_OUT1	(1 << 2)	/* force MSR_RI in loopback mode */#define MCR_RTS		(1 << 1)	/* Request to Send */#define MCR_DTR		(1 << 0)	/* Data Terminal Ready */#define MSR_DCD		(1 << 7)	/* Data Carrier Detect */#define MSR_RI		(1 << 6)	/* Ring Indicator */#define MSR_DSR		(1 << 5)	/* Data Set Ready */#define MSR_CTS		(1 << 4)	/* Clear To Send */#define MSR_DDCD	(1 << 3)	/* Delta Data Carrier Detect */#define MSR_TERI	(1 << 2)	/* Trailing Edge Ring Indicator */#define MSR_DDSR	(1 << 1)	/* Delta Data Set Ready */#define MSR_DCTS	(1 << 0)	/* Delta Clear To Send *//* * IrSR (Infrared Selection Register) */#define IrSR_OFFSET 0x20#define IrSR_RXPL_NEG_IS_ZERO (1<<4)#define IrSR_RXPL_POS_IS_ZERO 0x0#define IrSR_TXPL_NEG_IS_ZERO (1<<3)#define IrSR_TXPL_POS_IS_ZERO 0x0#define IrSR_XMODE_PULSE_1_6  (1<<2)#define IrSR_XMODE_PULSE_3_16 0x0#define IrSR_RCVEIR_IR_MODE   (1<<1)#define IrSR_RCVEIR_UART_MODE 0x0#define IrSR_XMITIR_IR_MODE   (1<<0)#define IrSR_XMITIR_UART_MODE 0x0#define IrSR_IR_RECEIVE_ON (\		IrSR_RXPL_NEG_IS_ZERO | \		IrSR_TXPL_POS_IS_ZERO | \		IrSR_XMODE_PULSE_3_16 | \		IrSR_RCVEIR_IR_MODE   | \		IrSR_XMITIR_UART_MODE)#define IrSR_IR_TRANSMIT_ON (\		IrSR_RXPL_NEG_IS_ZERO | \		IrSR_TXPL_POS_IS_ZERO | \		IrSR_XMODE_PULSE_3_16 | \		IrSR_RCVEIR_UART_MODE | \		IrSR_XMITIR_IR_MODE)/* * I2C registers */#define IBMR		__REG(0x40301680)  /* I2C Bus Monitor Register - IBMR */#define IDBR		__REG(0x40301688)  /* I2C Data Buffer Register - IDBR */#define ICR		__REG(0x40301690)  /* I2C Control Register - ICR */#define ISR		__REG(0x40301698)  /* I2C Status Register - ISR */#define ISAR		__REG(0x403016A0)  /* I2C Slave Address Register - ISAR */#define PWRIBMR		__REG(0x40f00180)  /* Power I2C Bus Monitor Register-IBMR */#define PWRIDBR		__REG(0x40f00188)  /* Power I2C Data Buffer Register-IDBR */#define PWRICR		__REG(0x40f00190)  /* Power I2C Control Register - ICR */#define PWRISR		__REG(0x40f00198)  /* Power I2C Status Register - ISR */#define PWRISAR		__REG(0x40f001A0)  /* Power I2C Slave Address Register-ISAR *//* ----- Control register bits ---------------------------------------- */#define ICR_START	0x1		/* start bit */#define ICR_STOP	0x2		/* stop bit */#define ICR_ACKNAK	0x4		/* send ACK(0) or NAK(1) */#define ICR_TB		0x8		/* transfer byte bit */#define ICR_MA		0x10		/* master abort */#define ICR_SCLE	0x20		/* master clock enable, mona SCLEA */#define ICR_IUE		0x40		/* unit enable */#define ICR_GCD		0x80		/* general call disable */#define ICR_ITEIE	0x100		/* enable tx interrupts */#define ICR_IRFIE	0x200		/* enable rx interrupts, mona: DRFIE */#define ICR_BEIE	0x400		/* enable bus error ints */#define ICR_SSDIE	0x800		/* slave STOP detected int enable */#define ICR_ALDIE	0x1000		/* enable arbitration interrupt */#define ICR_SADIE	0x2000		/* slave address detected int enable */#define ICR_UR		0x4000		/* unit reset */#define ICR_FM		0x8000		/* Fast Mode *//* ----- Status register bits ----------------------------------------- */#define ISR_RWM		0x1		/* read/write mode */#define ISR_ACKNAK	0x2		/* ack/nak status */#define ISR_UB		0x4		/* unit busy */#define ISR_IBB		0x8		/* bus busy */#define ISR_SSD		0x10		/* slave stop detected */#define ISR_ALD		0x20		/* arbitration loss detected */#define ISR_ITE		0x40		/* tx buffer empty */#define ISR_IRF		0x80		/* rx buffer full */#define ISR_GCAD	0x100		/* general call address detected */#define ISR_SAD		0x200		/* slave address detected */#define ISR_BED		0x400		/* bus error no ACK/NAK *//* * Serial Audio Controller *//* FIXME the audio defines collide w/ the SA1111 defines.  I don't like these * short defines because there is too much chance of namespace collision *//*#define SACR0		__REG(0x40400000)  /  Global Control Register *//*#define SACR1		__REG(0x40400004)  /  Serial Audio I 2 S/MSB-Justified Control Register *//*#define SASR0		__REG(0x4040000C)  /  Serial Audio I 2 S/MSB-Justified Interface and FIFO Status Register *//*#define SAIMR		__REG(0x40400014)  /  Serial Audio Interrupt Mask Register *//*#define SAICR		__REG(0x40400018)  /  Serial Audio Interrupt Clear Register *//*#define SADIV		__REG(0x40400060)  /  Audio Clock Divider Register. *//*#define SADR		__REG(0x40400080)  /  Serial Audio Data Register (TX and RX FIFO access Register). *//* * AC97 Controller registers */#define POCR		__REG(0x40500000)  /* PCM Out Control Register */#define POCR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */#define PICR		__REG(0x40500004)  /* PCM In Control Register */#define PICR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */#define MCCR		__REG(0x40500008)  /* Mic In Control Register */#define MCCR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */#define GCR		__REG(0x4050000C)  /* Global Control Register */#define GCR_CDONE_IE	(1 << 19)	/* Command Done Interrupt Enable */#define GCR_SDONE_IE	(1 << 18)	/* Status Done Interrupt Enable */#define GCR_SECRDY_IEN	(1 << 9)	/* Secondary Ready Interrupt Enable */#define GCR_PRIRDY_IEN	(1 << 8)	/* Primary Ready Interrupt Enable */#define GCR_SECRES_IEN	(1 << 5)	/* Secondary Resume Interrupt Enable */#define GCR_PRIRES_IEN	(1 << 4)	/* Primary Resume Interrupt Enable */#define GCR_ACLINK_OFF	(1 << 3)	/* AC-link Shut Off */#define GCR_WARM_RST	(1 << 2)	/* AC97 Warm Reset */#define GCR_COLD_RST	(1 << 1)	/* AC'97 Cold Reset (0 = active) */#define GCR_GIE		(1 << 0)	/* Codec GPI Interrupt Enable */#define POSR		__REG(0x40500010)  /* PCM Out Status Register */#define POSR_FIFOE	(1 << 4)	/* FIFO error */#define PISR		__REG(0x40500014)  /* PCM In Status Register */#define PISR_FIFOE	(1 << 4)	/* FIFO error */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -