immap_83xx.h

来自「最新版的u-boot,2008-10-18发布」· C头文件 代码 · 共 835 行 · 第 1/2 页

H
835
字号
	u32 dmamr1;		/* 0x180 DMA 1 mode register */	u32 dmasr1;		/* 0x184 DMA 1 status register */	u32 dmacdar1;		/* 0x188 DMA 1 current descriptor address register */	u32 res9;		/* 0x18C reserved */	u32 dmasar1;		/* 0x190 DMA 1 source address register */	u32 res10;		/* 0x194 reserved */	u32 dmadar1;		/* 0x198 DMA 1 destination address register */	u32 res11;		/* 0x19C reserved */	u32 dmabcr1;		/* 0x1A0 DMA 1 byte count register */	u32 dmandar1;		/* 0x1A4 DMA 1 next descriptor address register */	u32 res12[0x16];	/* 0x1A8-0x199 reserved */	u32 dmamr2;		/* 0x200 DMA 2 mode register */	u32 dmasr2;		/* 0x204 DMA 2 status register */	u32 dmacdar2;		/* 0x208 DMA 2 current descriptor address register */	u32 res13;		/* 0x20C reserved */	u32 dmasar2;		/* 0x210 DMA 2 source address register */	u32 res14;		/* 0x214 reserved */	u32 dmadar2;		/* 0x218 DMA 2 destination address register */	u32 res15;		/* 0x21C reserved */	u32 dmabcr2;		/* 0x220 DMA 2 byte count register */	u32 dmandar2;		/* 0x224 DMA 2 next descriptor address register */	u32 res16[0x16];	/* 0x228-0x279 reserved */	u32 dmamr3;		/* 0x280 DMA 3 mode register */	u32 dmasr3;		/* 0x284 DMA 3 status register */	u32 dmacdar3;		/* 0x288 DMA 3 current descriptor address register */	u32 res17;		/* 0x28C reserved */	u32 dmasar3;		/* 0x290 DMA 3 source address register */	u32 res18;		/* 0x294 reserved */	u32 dmadar3;		/* 0x298 DMA 3 destination address register */	u32 res19;		/* 0x29C reserved */	u32 dmabcr3;		/* 0x2A0 DMA 3 byte count register */	u32 dmandar3;		/* 0x2A4 DMA 3 next descriptor address register */	u32 dmagsr;		/* 0x2A8 DMA general status register */	u32 res20[0x15];	/* 0x2AC-0x2FF reserved */} dma83xx_t;/* * PCI Software Configuration Registers */typedef struct pciconf83xx {	u32 config_address;	u32 config_data;	u32 int_ack;	u8 res[116];} pciconf83xx_t;/* * PCI Outbound Translation Register */typedef struct pci_outbound_window {	u32 potar;	u8 res0[4];	u32 pobar;	u8 res1[4];	u32 pocmr;	u8 res2[4];} pot83xx_t;/* * Sequencer */typedef struct ios83xx {	pot83xx_t pot[6];	u8 res0[0x60];	u32 pmcr;	u8 res1[4];	u32 dtcr;	u8 res2[4];} ios83xx_t;/* * PCI Controller Control and Status Registers */typedef struct pcictrl83xx {	u32 esr;	u32 ecdr;	u32 eer;	u32 eatcr;	u32 eacr;	u32 eeacr;	u32 edlcr;	u32 edhcr;	u32 gcr;	u32 ecr;	u32 gsr;	u8 res0[12];	u32 pitar2;	u8 res1[4];	u32 pibar2;	u32 piebar2;	u32 piwar2;	u8 res2[4];	u32 pitar1;	u8 res3[4];	u32 pibar1;	u32 piebar1;	u32 piwar1;	u8 res4[4];	u32 pitar0;	u8 res5[4];	u32 pibar0;	u8 res6[4];	u32 piwar0;	u8 res7[132];} pcictrl83xx_t;/* * USB */typedef struct usb83xx {	u8 fixme[0x1000];} usb83xx_t;/* * TSEC */typedef struct tsec83xx {	u8 fixme[0x1000];} tsec83xx_t;/* * Security */typedef struct security83xx {	u8 fixme[0x10000];} security83xx_t;/* *  PCI Express */typedef struct pex83xx {	u8 fixme[0x1000];} pex83xx_t;/* * SATA */typedef struct sata83xx {	u8 fixme[0x1000];} sata83xx_t;/* * eSDHC */typedef struct sdhc83xx {	u8 fixme[0x1000];} sdhc83xx_t;/* * SerDes */typedef struct serdes83xx {	u8 fixme[0x100];} serdes83xx_t;/* * On Chip ROM */typedef struct rom83xx {	u8 mem[0x10000];} rom83xx_t;/* * TDM */typedef struct tdm83xx {	u8 fixme[0x200];} tdm83xx_t;/* * TDM DMAC */typedef struct tdmdmac83xx {	u8 fixme[0x2000];} tdmdmac83xx_t;#if defined(CONFIG_MPC834X)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	gtm83xx_t		gtm[2];		/* Global Timers Module */	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	gpio83xx_t		gpio[2];	/* General purpose I/O module */	u8			res0[0x200];	u8			dll_ddr[0x100];	u8			dll_lbc[0x100];	u8			res1[0xE00];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res2[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res3[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res4[0x1000];	spi8xxx_t		spi;		/* Serial Peripheral Interface */	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[2];	/* PCI Software Configuration Registers */	ios83xx_t		ios;		/* Sequencer */	pcictrl83xx_t		pci_ctrl[2];	/* PCI Controller Control and Status Registers */	u8			res5[0x19900];	usb83xx_t		usb[2];	tsec83xx_t		tsec[2];	u8			res6[0xA000];	security83xx_t		security;	u8			res7[0xC0000];} immap_t;#elif defined(CONFIG_MPC8313)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	gtm83xx_t		gtm[2];		/* Global Timers Module */	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	gpio83xx_t		gpio[1];	/* General purpose I/O module */	u8			res0[0x1300];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res1[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res2[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res3[0x1000];	spi8xxx_t		spi;		/* Serial Peripheral Interface */	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[1];	/* PCI Software Configuration Registers */	u8			res4[0x80];	ios83xx_t		ios;		/* Sequencer */	pcictrl83xx_t		pci_ctrl[1];	/* PCI Controller Control and Status Registers */	u8			res5[0x1aa00];	usb83xx_t		usb[1];	tsec83xx_t		tsec[2];	u8			res6[0xA000];	security83xx_t		security;	u8			res7[0xC0000];} immap_t;#elif defined(CONFIG_MPC8315)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	gtm83xx_t		gtm[2];		/* Global Timers Module */	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	gpio83xx_t		gpio[1];	/* General purpose I/O module */	u8			res0[0x1300];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res1[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res2[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res3[0x1000];	spi8xxx_t		spi;		/* Serial Peripheral Interface */	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[1];	/* PCI Software Configuration Registers */	u8			res4[0x80];	ios83xx_t		ios;		/* Sequencer */	pcictrl83xx_t		pci_ctrl[1];	/* PCI Controller Control and Status Registers */	u8			res5[0xa00];	pex83xx_t		pciexp[2];	/* PCI Express Controller */	u8			res6[0xb000];	tdm83xx_t		tdm;		/* TDM Controller */	u8			res7[0x1e00];	sata83xx_t		sata[2];	/* SATA Controller */	u8			res8[0x9000];	usb83xx_t		usb[1];		/* USB DR Controller */	tsec83xx_t		tsec[2];	u8			res9[0x6000];	tdmdmac83xx_t		tdmdmac;	/* TDM DMAC */	u8			res10[0x2000];	security83xx_t		security;	u8			res11[0xA3000];	serdes83xx_t		serdes[1];	/* SerDes Registers */	u8			res12[0x1CF00];} immap_t;#elif defined(CONFIG_MPC837X)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	gtm83xx_t		gtm[2];		/* Global Timers Module */	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	gpio83xx_t		gpio[2];	/* General purpose I/O module */	u8			res0[0x1200];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res1[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res2[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res3[0x1000];	spi8xxx_t		spi;		/* Serial Peripheral Interface */	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[1];	/* PCI Software Configuration Registers */	u8			res4[0x80];	ios83xx_t		ios;		/* Sequencer */	pcictrl83xx_t		pci_ctrl[1];	/* PCI Controller Control and Status Registers */	u8			res5[0xa00];	pex83xx_t		pciexp[2];	/* PCI Express Controller */	u8			res6[0xd000];	sata83xx_t		sata[4];	/* SATA Controller */	u8			res7[0x7000];	usb83xx_t		usb[1];		/* USB DR Controller */	tsec83xx_t		tsec[2];	u8			res8[0x8000];	sdhc83xx_t		sdhc;		/* SDHC Controller */	u8			res9[0x1000];	security83xx_t		security;	u8			res10[0xA3000];	serdes83xx_t		serdes[2];	/* SerDes Registers */	u8			res11[0xCE00];	rom83xx_t		rom;		/* On Chip ROM */} immap_t;#elif defined(CONFIG_MPC8360)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	u8			res0[0x200];	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	qepi83xx_t		qepi;		/* QE Ports Interrupts Registers */	u8			res1[0x300];	u8			dll_ddr[0x100];	u8			dll_lbc[0x100];	u8			res2[0x200];	qepio83xx_t		qepio;		/* QE Parallel I/O ports */	qesba83xx_t		qesba;		/* QE Secondary Bus Access Windows */	u8			res3[0x400];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res4[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res5[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res6[0x2000];	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[1];	/* PCI Software Configuration Registers */	u8			res7[128];	ios83xx_t		ios;		/* Sequencer (IOS) */	pcictrl83xx_t		pci_ctrl[1];	/* PCI Controller Control and Status Registers */	u8			res8[0x4A00];	ddr83xx_t		ddr_secondary;	/* Secondary DDR Memory Controller Memory Map */	u8			res9[0x22000];	security83xx_t		security;	u8			res10[0xC0000];	u8			qe[0x100000];	/* QE block */} immap_t;#elif defined(CONFIG_MPC832X)typedef struct immap {	sysconf83xx_t		sysconf;	/* System configuration */	wdt83xx_t		wdt;		/* Watch Dog Timer (WDT) Registers */	rtclk83xx_t		rtc;		/* Real Time Clock Module Registers */	rtclk83xx_t		pit;		/* Periodic Interval Timer */	gtm83xx_t		gtm[2];		/* Global Timers Module */	ipic83xx_t		ipic;		/* Integrated Programmable Interrupt Controller */	arbiter83xx_t		arbiter;	/* System Arbiter Registers */	reset83xx_t		reset;		/* Reset Module */	clk83xx_t		clk;		/* System Clock Module */	pmc83xx_t		pmc;		/* Power Management Control Module */	qepi83xx_t		qepi;		/* QE Ports Interrupts Registers */	u8			res0[0x300];	u8			dll_ddr[0x100];	u8			dll_lbc[0x100];	u8			res1[0x200];	qepio83xx_t		qepio;		/* QE Parallel I/O ports */	u8			res2[0x800];	ddr83xx_t		ddr;		/* DDR Memory Controller Memory */	fsl_i2c_t		i2c[2];		/* I2C Controllers */	u8			res3[0x1300];	duart83xx_t		duart[2];	/* DUART */	u8			res4[0x900];	lbus83xx_t		lbus;		/* Local Bus Controller Registers */	u8			res5[0x2000];	dma83xx_t		dma;		/* DMA */	pciconf83xx_t		pci_conf[1];	/* PCI Software Configuration Registers */	u8			res6[128];	ios83xx_t		ios;		/* Sequencer (IOS) */	pcictrl83xx_t		pci_ctrl[1];	/* PCI Controller Control and Status Registers */	u8			res7[0x27A00];	security83xx_t		security;	u8			res8[0xC0000];	u8			qe[0x100000];	/* QE block */} immap_t;#endif#endif				/* __IMMAP_83xx__ */

⌨️ 快捷键说明

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