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

📄 ppc440.h

📁 F:worksip2440a board可启动u-boot-like.tar.gz F:worksip2440a board可启动u-boot-like.tar.gz
💻 H
📖 第 1 页 / 共 4 页
字号:
/*----------------------------------------------------------------------------+||	This source code has been made available to you by IBM on an AS-IS|	basis.	Anyone receiving this source is licensed under IBM|	copyrights to use it in any way he or she deems fit, including|	copying it, modifying it, compiling it, and redistributing it either|	with or without modifications.	No license under IBM patents or|	patent applications is to be implied by the copyright license.||	Any user of this software should understand that IBM cannot provide|	technical support for this software and will not be responsible for|	any consequences resulting from the use of this software.||	Any person who transfers this source code or any derivative work|	must include the IBM copyright notice, this paragraph, and the|	preceding two paragraphs in the transferred software.||	COPYRIGHT   I B M   CORPORATION 1999|	LICENSED MATERIAL  -  PROGRAM PROPERTY OF I B M+----------------------------------------------------------------------------*/#ifndef __PPC440_H__#define __PPC440_H__/*--------------------------------------------------------------------- *//* Special Purpose Registers						*//*--------------------------------------------------------------------- */#define	 dec	0x016	/* decrementer */#define	 srr0	0x01a	/* save/restore register 0 */#define	 srr1	0x01b	/* save/restore register 1 */#define	 pid	0x030	/* process id */#define	 decar	0x036	/* decrementer auto-reload */#define	 csrr0	0x03a	/* critical save/restore register 0 */#define	 csrr1	0x03b	/* critical save/restore register 1 */#define	 dear	0x03d	/* data exception address register */#define	 esr	0x03e	/* exception syndrome register */#define	 ivpr	0x03f	/* interrupt prefix register */#define	 usprg0 0x100	/* user special purpose register general 0 */#define	 usprg1 0x110	/* user special purpose register general 1 */#define	 sprg1	0x111	/* special purpose register general 1 */#define	 sprg2	0x112	/* special purpose register general 2 */#define	 sprg3	0x113	/* special purpose register general 3 */#define	 sprg4	0x114	/* special purpose register general 4 */#define	 sprg5	0x115	/* special purpose register general 5 */#define	 sprg6	0x116	/* special purpose register general 6 */#define	 sprg7	0x117	/* special purpose register general 7 */#define	 tbl	0x11c	/* time base lower (supervisor)*/#define	 tbu	0x11d	/* time base upper (supervisor)*/#define	 pir	0x11e	/* processor id register *//*#define  pvr	0x11f	 processor version register */#define	 dbsr	0x130	/* debug status register */#define	 dbcr0	0x134	/* debug control register 0 */#define	 dbcr1	0x135	/* debug control register 1 */#define	 dbcr2	0x136	/* debug control register 2 */#define	 iac1	0x138	/* instruction address compare 1 */#define	 iac2	0x139	/* instruction address compare 2 */#define	 iac3	0x13a	/* instruction address compare 3 */#define	 iac4	0x13b	/* instruction address compare 4 */#define	 dac1	0x13c	/* data address compare 1 */#define	 dac2	0x13d	/* data address compare 2 */#define	 dvc1	0x13e	/* data value compare 1 */#define	 dvc2	0x13f	/* data value compare 2 */#define	 tsr	0x150	/* timer status register */#define	 tcr	0x154	/* timer control register */#define	 ivor0	0x190	/* interrupt vector offset register 0 */#define	 ivor1	0x191	/* interrupt vector offset register 1 */#define	 ivor2	0x192	/* interrupt vector offset register 2 */#define	 ivor3	0x193	/* interrupt vector offset register 3 */#define	 ivor4	0x194	/* interrupt vector offset register 4 */#define	 ivor5	0x195	/* interrupt vector offset register 5 */#define	 ivor6	0x196	/* interrupt vector offset register 6 */#define	 ivor7	0x197	/* interrupt vector offset register 7 */#define	 ivor8	0x198	/* interrupt vector offset register 8 */#define	 ivor9	0x199	/* interrupt vector offset register 9 */#define	 ivor10 0x19a	/* interrupt vector offset register 10 */#define	 ivor11 0x19b	/* interrupt vector offset register 11 */#define	 ivor12 0x19c	/* interrupt vector offset register 12 */#define	 ivor13 0x19d	/* interrupt vector offset register 13 */#define	 ivor14 0x19e	/* interrupt vector offset register 14 */#define	 ivor15 0x19f	/* interrupt vector offset register 15 */#if defined(CONFIG_440_GX)#define	 mcsrr0 0x23a	/* machine check save/restore register 0 */#define	 mcsrr1 0x23b	/* mahcine check save/restore register 1 */#define	 mcsr	0x23c	/* machine check status register */#endif#define	 inv0	0x370	/* instruction cache normal victim 0 */#define	 inv1	0x371	/* instruction cache normal victim 1 */#define	 inv2	0x372	/* instruction cache normal victim 2 */#define	 inv3	0x373	/* instruction cache normal victim 3 */#define	 itv0	0x374	/* instruction cache transient victim 0 */#define	 itv1	0x375	/* instruction cache transient victim 1 */#define	 itv2	0x376	/* instruction cache transient victim 2 */#define	 itv3	0x377	/* instruction cache transient victim 3 */#define	 dnv0	0x390	/* data cache normal victim 0 */#define	 dnv1	0x391	/* data cache normal victim 1 */#define	 dnv2	0x392	/* data cache normal victim 2 */#define	 dnv3	0x393	/* data cache normal victim 3 */#define	 dtv0	0x394	/* data cache transient victim 0 */#define	 dtv1	0x395	/* data cache transient victim 1 */#define	 dtv2	0x396	/* data cache transient victim 2 */#define	 dtv3	0x397	/* data cache transient victim 3 */#define	 dvlim	0x398	/* data cache victim limit */#define	 ivlim	0x399	/* instruction cache victim limit */#define	 rstcfg 0x39b	/* reset configuration */#define	 dcdbtrl 0x39c	/* data cache debug tag register low */#define	 dcdbtrh 0x39d	/* data cache debug tag register high */#define	 icdbtrl 0x39e	/* instruction cache debug tag register low */#define	 icdbtrh 0x39f	/* instruction cache debug tag register high */#define	 mmucr	0x3b2	/* mmu control register */#define	 ccr0	0x3b3	/* core configuration register 0 */#define	 icdbdr 0x3d3	/* instruction cache debug data register */#define	 dbdr	0x3f3	/* debug data register *//****************************************************************************** * DCRs & Related ******************************************************************************//*----------------------------------------------------------------------------- | Clocking Controller +----------------------------------------------------------------------------*/#define CLOCKING_DCR_BASE 0x0c#define clkcfga	 (CLOCKING_DCR_BASE+0x0)#define clkcfgd	 (CLOCKING_DCR_BASE+0x1)/* values for clkcfga register - indirect addressing of these regs */#define clk_clkukpd	0x0020#define clk_pllc	0x0040#define clk_plld	0x0060#define clk_primad	0x0080#define clk_primbd	0x00a0#define clk_opbd	0x00c0#define clk_perd	0x00e0#define clk_mald	0x0100#define clk_icfg	0x0140/* 440gx sdr register definations */#define SDR_DCR_BASE	0x0e#define sdrcfga		(SDR_DCR_BASE+0x0)#define sdrcfgd		(SDR_DCR_BASE+0x1)#define sdr_sdstp0	0x0020	    /* */#define sdr_sdstp1	0x0021	    /* */#define sdr_pinstp	0x0040#define sdr_sdcs	0x0060#define sdr_ecid0	0x0080#define sdr_ecid1	0x0081#define sdr_ecid2	0x0082#define sdr_jtag	0x00c0#define sdr_ddrdl	0x00e0#define sdr_ebc		0x0100#define sdr_uart0	0x0120	/* UART0 Config */#define sdr_uart1	0x0121	/* UART1 Config */#define sdr_cp440	0x0180#define sdr_xcr		0x01c0#define sdr_xpllc	0x01c1#define sdr_xplld	0x01c2#define sdr_srst	0x0200#define sdr_slpipe	0x0220#define sdr_amp		0x0240#define sdr_mirq0	0x0260#define sdr_mirq1	0x0261#define sdr_maltbl	0x0280#define sdr_malrbl	0x02a0#define sdr_maltbs	0x02c0#define sdr_malrbs	0x02e0#define sdr_cust0	0x4000#define sdr_sdstp2	0x4001#define sdr_cust1	0x4002#define sdr_sdstp3	0x4003#define sdr_pfc0	0x4100	/* Pin Function 0 */#define sdr_pfc1	0x4101	/* Pin Function 1 */#define sdr_plbtr	0x4200#define sdr_mfr		0x4300	/* SDR0_MFR reg *//*----------------------------------------------------------------------------- | SDRAM Controller +----------------------------------------------------------------------------*/#define SDRAM_DCR_BASE 0x10#define memcfga	 (SDRAM_DCR_BASE+0x0)	/* Memory configuration address reg */#define memcfgd	 (SDRAM_DCR_BASE+0x1)	/* Memory configuration data reg    *//* values for memcfga register - indirect addressing of these regs	    */#define mem_besr0_clr	0x0000	/* bus error status reg 0 (clr)		    */#define mem_besr0_set	0x0004	/* bus error status reg 0 (set)		    */#define mem_besr1_clr	0x0008	/* bus error status reg 1 (clr)		    */#define mem_besr1_set	0x000c	/* bus error status reg 1 (set)		    */#define mem_bear	0x0010	/* bus error address reg		    */#define mem_mirq_clr	0x0011	/* bus master interrupt (clr)		    */#define mem_mirq_set	0x0012	/* bus master interrupt (set)		    */#define mem_slio	0x0018	/* ddr sdram slave interface options	    */#define mem_cfg0	0x0020	/* ddr sdram options 0			    */#define mem_cfg1	0x0021	/* ddr sdram options 1			    */#define mem_devopt	0x0022	/* ddr sdram device options		    */#define mem_mcsts	0x0024	/* memory controller status		    */#define mem_rtr		0x0030	/* refresh timer register		    */#define mem_pmit	0x0034	/* power management idle timer		    */#define mem_uabba	0x0038	/* plb UABus base address		    */#define mem_b0cr	0x0040	/* ddr sdram bank 0 configuration	    */#define mem_b1cr	0x0044	/* ddr sdram bank 1 configuration	    */#define mem_b2cr	0x0048	/* ddr sdram bank 2 configuration	    */#define mem_b3cr	0x004c	/* ddr sdram bank 3 configuration	    */#define mem_tr0		0x0080	/* sdram timing register 0		    */#define mem_tr1		0x0081	/* sdram timing register 1		    */#define mem_clktr	0x0082	/* ddr clock timing register		    */#define mem_wddctr	0x0083	/* write data/dm/dqs clock timing reg	    */#define mem_dlycal	0x0084	/* delay line calibration register	    */#define mem_eccesr	0x0098	/* ECC error status			    *//*----------------------------------------------------------------------------- | Extrnal Bus Controller +----------------------------------------------------------------------------*/#define EBC_DCR_BASE 0x12#define ebccfga (EBC_DCR_BASE+0x0)   /* External bus controller addr reg     */#define ebccfgd (EBC_DCR_BASE+0x1)   /* External bus controller data reg     *//* values for ebccfga register - indirect addressing of these regs */#define pb0cr		0x00	/* periph bank 0 config reg		*/#define pb1cr		0x01	/* periph bank 1 config reg		*/#define pb2cr		0x02	/* periph bank 2 config reg		*/#define pb3cr		0x03	/* periph bank 3 config reg		*/#define pb4cr		0x04	/* periph bank 4 config reg		*/#define pb5cr		0x05	/* periph bank 5 config reg		*/#define pb6cr		0x06	/* periph bank 6 config reg		*/#define pb7cr		0x07	/* periph bank 7 config reg		*/#define pb0ap		0x10	/* periph bank 0 access parameters	*/#define pb1ap		0x11	/* periph bank 1 access parameters	*/#define pb2ap		0x12	/* periph bank 2 access parameters	*/#define pb3ap		0x13	/* periph bank 3 access parameters	*/#define pb4ap		0x14	/* periph bank 4 access parameters	*/#define pb5ap		0x15	/* periph bank 5 access parameters	*/#define pb6ap		0x16	/* periph bank 6 access parameters	*/#define pb7ap		0x17	/* periph bank 7 access parameters	*/#define pbear		0x20	/* periph bus error addr reg		*/#define pbesr		0x21	/* periph bus error status reg		*/#define xbcfg		0x23	/* external bus configuration reg	*/#define xbcid		0x23	/* external bus core id reg		*//*----------------------------------------------------------------------------- | Internal SRAM +----------------------------------------------------------------------------*/#define ISRAM0_DCR_BASE 0x020#define isram0_sb0cr	(ISRAM0_DCR_BASE+0x00)	/* SRAM bank config 0*/#define isram0_sb1cr	(ISRAM0_DCR_BASE+0x01)	/* SRAM bank config 1*/#define isram0_sb2cr	(ISRAM0_DCR_BASE+0x02)	/* SRAM bank config 2*/#define isram0_sb3cr	(ISRAM0_DCR_BASE+0x03)	/* SRAM bank config 3*/#define isram0_bear	(ISRAM0_DCR_BASE+0x04)	/* SRAM bus error addr reg */#define isram0_besr0	(ISRAM0_DCR_BASE+0x05)	/* SRAM bus error status reg 0 */#define isram0_besr1	(ISRAM0_DCR_BASE+0x06)	/* SRAM bus error status reg 1 */#define isram0_pmeg	(ISRAM0_DCR_BASE+0x07)	/* SRAM power management */#define isram0_cid	(ISRAM0_DCR_BASE+0x08)	/* SRAM bus core id reg */#define isram0_revid	(ISRAM0_DCR_BASE+0x09)	/* SRAM bus revision id reg */#define isram0_dpc	(ISRAM0_DCR_BASE+0x0a)	/* SRAM data parity check reg *//*----------------------------------------------------------------------------- | L2 Cache +----------------------------------------------------------------------------*/#if defined (CONFIG_440_GX)#define L2_CACHE_BASE	0x030#define l2_cache_cfg	(L2_CACHE_BASE+0x00)	/* L2 Cache Config	*/#define l2_cache_cmd	(L2_CACHE_BASE+0x01)	/* L2 Cache Command	*/#define l2_cache_addr	(L2_CACHE_BASE+0x02)	/* L2 Cache Address	*/#define l2_cache_data	(L2_CACHE_BASE+0x03)	/* L2 Cache Data	*/#define l2_cache_stat	(L2_CACHE_BASE+0x04)	/* L2 Cache Status	*/#define l2_cache_cver	(L2_CACHE_BASE+0x05)	/* L2 Cache Revision ID */#define l2_cache_snp0	(L2_CACHE_BASE+0x06)	/* L2 Cache Snoop reg 0 */#define l2_cache_snp1	(L2_CACHE_BASE+0x07)	/* L2 Cache Snoop reg 1 */#endif /* CONFIG_440_GX *//*----------------------------------------------------------------------------- | On-Chip Buses +----------------------------------------------------------------------------*//* TODO: as needed *//*----------------------------------------------------------------------------- | Clocking, Power Management and Chip Control

⌨️ 快捷键说明

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