ppc440.h
来自「uboot详细解读可用启动引导LINUX2.6内核」· C头文件 代码 · 共 1,185 行 · 第 1/5 页
H
1,185 行
/*----------------------------------------------------------------------------+|| 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+----------------------------------------------------------------------------*//* * (C) Copyright 2006 * Sylvie Gohl, AMCC/IBM, gohl.sylvie@fr.ibm.com * Jacqueline Pira-Ferriol, AMCC/IBM, jpira-ferriol@fr.ibm.com * Thierry Roman, AMCC/IBM, thierry_roman@fr.ibm.com * Alain Saurel, AMCC/IBM, alain.saurel@fr.ibm.com * Robert Snyder, AMCC/IBM, rob.snyder@fr.ibm.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA */#ifndef __PPC440_H__#define __PPC440_H__#define CFG_DCACHE_SIZE (32 << 10) /* For AMCC 440 CPUs *//*--------------------------------------------------------------------- *//* Special Purpose Registers *//*--------------------------------------------------------------------- */#define xer_reg 0x001#define lr_reg 0x008#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 tblr 0x10c /* time base lower, read only */#define tbur 0x10d /* time base upper, read only */#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)#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 ccr1 0x378 /* core configuration for 440x5 only */#define icdbdr 0x3d3 /* instruction cache debug data register */#define dbdr 0x3f3 /* debug data register *//****************************************************************************** * DCRs & Related ******************************************************************************//*----------------------------------------------------------------------------- | Clocking Controller +----------------------------------------------------------------------------*//* 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_spcid 0x0120#define clk_icfg 0x0140/* 440gx sdr register definations */#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#if !defined(CONFIG_440EPX) && !defined(CONFIG_440GRX)#define sdr_ddrdl 0x00e0#else#define sdr_cfg 0x00e0#define SDR_CFG_LT2_MASK 0x01000000 /* Leakage test 2*/#define SDR_CFG_64_32BITS_MASK 0x01000000 /* Switch DDR 64 bits or 32 bits */#define SDR_CFG_32BITS 0x00000000 /* 32 bits */#define SDR_CFG_64BITS 0x01000000 /* 64 bits */#define SDR_CFG_MC_V2518_MASK 0x02000000 /* Low VDD2518 (2.5 or 1.8V) */#define SDR_CFG_MC_V25 0x00000000 /* 2.5 V */#define SDR_CFG_MC_V18 0x02000000 /* 1.8 V */#endif /* !defined(CONFIG_440EPX) && !defined(CONFIG_440GRX) */#define sdr_ebc 0x0100#define sdr_uart0 0x0120 /* UART0 Config */#define sdr_uart1 0x0121 /* UART1 Config */#define sdr_uart2 0x0122 /* UART2 Config */#define sdr_uart3 0x0123 /* UART3 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_amp0 0x0240 /* Override PLB4 prioritiy for up to 8 masters */#define sdr_amp1 0x0241 /* Override PLB3 prioritiy for up to 8 masters */#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_pci0 0x0300#define sdr_usb0 0x0320#define sdr_cust0 0x4000#define sdr_cust1 0x4002#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 */#ifdef CONFIG_440GX#define sdr_amp 0x0240#define sdr_xpllc 0x01c1#define sdr_xplld 0x01c2#define sdr_xcr 0x01c0#define sdr_sdstp2 0x4001#define sdr_sdstp3 0x4003#endif /* CONFIG_440GX *//*----------------------------------------------------------------------------+| Core Configuration/MMU configuration for 440 (CCR1 for 440x5 only).+----------------------------------------------------------------------------*/#define CCR0_PRE 0x40000000#define CCR0_CRPE 0x08000000#define CCR0_DSTG 0x00200000#define CCR0_DAPUIB 0x00100000#define CCR0_DTB 0x00008000#define CCR0_GICBT 0x00004000#define CCR0_GDCBT 0x00002000#define CCR0_FLSTA 0x00000100#define CCR0_ICSLC_MASK 0x0000000C#define CCR0_ICSLT_MASK 0x00000003#define CCR1_TCS_MASK 0x00000080#define CCR1_TCS_INTCLK 0x00000000#define CCR1_TCS_EXTCLK 0x00000080
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?