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

📄 at91rm9200_regs.h

📁 ecos在9200上redboot实现
💻 H
字号:
//==========================================================================////      ks5000_regs.h////      ////==========================================================================//####ECOSGPLCOPYRIGHTBEGIN####// -------------------------------------------// This file is part of eCos, the Embedded Configurable Operating System.// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.//// eCos 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 or (at your option) any later version.//// eCos 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 eCos; if not, write to the Free Software Foundation, Inc.,// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.//// As a special exception, if other files instantiate templates or use macros// or inline functions from this file, or you compile this file and link it// with other works to produce a work based on this file, this file does not// by itself cause the resulting work to be covered by the GNU General Public// License. However the source code for this file must still be made available// in accordance with section (3) of the GNU General Public License.//// This exception does not invalidate any other reasons why a work based on// this file might be covered by the GNU General Public License.//// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.// at http://sources.redhat.com/ecos/ecos-license/// -------------------------------------------//####ECOSGPLCOPYRIGHTEND####//==========================================================================//#####DESCRIPTIONBEGIN####//// Author(s):    gthomas// Contributors: gthomas, jskov//               Grant Edwards <grante@visi.com>// Date:         2001-07-31// Purpose:      // Description:  ////####DESCRIPTIONEND####////========================================================================*//*------------------------------------------------------------------------   name		: ks5000.h   purpose	: This is the header file that will define all the                  registers for the ks5000 processor.  It will contain		  the addresses for the registers and some values for		  those registers.========================================================================*/#ifndef _KS5000_REGS_H_#define _KS5000_REGS_H_#include "std.h"#define BD_LAN_STOP     {}#define DEBUG   0             /* DEBUG mode */#define VPint(a) (*((volatile unsigned int*)(a)))#define VPshort(a) (*((volatile unsigned short int*)(a)))#define VPchar(a) (*((volatile unsigned char*)(a)))#define Base_Addr       0x7ff0000#define INTADDR         (Reset_Addr+0x20)#define SPSTR           (VPint(Base_Addr))// System Manager Register#define SYSCFG          (VPint(Base_Addr+0x0000))#define CLKCON          (VPint(Base_Addr+0x3000))#define EXTACON0        (VPint(Base_Addr+0x3008))#define EXTACON1        (VPint(Base_Addr+0x300c))#define EXTDBWTH        (VPint(Base_Addr+0x3010))#define ROMCON0         (VPint(Base_Addr+0x3014))#define ROMCON1         (VPint(Base_Addr+0x3018))#define ROMCON2         (VPint(Base_Addr+0x301c))#define ROMCON3         (VPint(Base_Addr+0x3020))#define ROMCON4         (VPint(Base_Addr+0x3024))#define ROMCON5         (VPint(Base_Addr+0x3028))#define DRAMCON0        (VPint(Base_Addr+0x302c))#define DRAMCON1        (VPint(Base_Addr+0x3030))#define DRAMCON2        (VPint(Base_Addr+0x3034))#define DRAMCON3        (VPint(Base_Addr+0x3038))#define REFEXTCON       (VPint(Base_Addr+0x303c))// Ethernet BDMA Register#define BDMATXCON       (VPint(Base_Addr+0x9000))#define BDMARXCON       (VPint(Base_Addr+0x9004))#define BDMATXPTR       (VPint(Base_Addr+0x9008))#define BDMARXPTR       (VPint(Base_Addr+0x900c))#define BDMARXLSZ       (VPint(Base_Addr+0x9010))#define BDMASTAT        (VPint(Base_Addr+0x9014))#define CAM_BASE        (VPint(Base_Addr+0x9100))#define BDMATXBUF       (VPint(Base_Addr+0x9200))#define BDMARXBUF       (VPint(Base_Addr+0x9800))#define CAM_BaseAddr	(Base_Addr+0x9100)// Ethernet MAC Register#define MACCON          (VPint(Base_Addr+0xa000))#define CAMCON          (VPint(Base_Addr+0xa004))#define MACTXCON        (VPint(Base_Addr+0xa008))#define MACTXSTAT       (VPint(Base_Addr+0xa00c))#define MACRXCON        (VPint(Base_Addr+0xa010))#define MACRXSTAT       (VPint(Base_Addr+0xa014))#define STADATA         (VPint(Base_Addr+0xa018))#define STACON          (VPint(Base_Addr+0xa01c))#define CAMEN           (VPint(Base_Addr+0xa028))#define EMISSCNT        (VPint(Base_Addr+0xa03c))#define EPZCNT          (VPint(Base_Addr+0xa040))#define ERMPZCNT        (VPint(Base_Addr+0xa044))#define ETXSTAT         (VPint(Base_Addr+0xa048))#define MACRXDESTR      (VPint(Base_Addr+0xa064))#define MACRXSTATEM     (VPint(Base_Addr+0xa090))// HDLC Channel A#define HCON0A          (VPint(Base_Addr+0x7000))#define HCON1A          (VPint(Base_Addr+0x7004))#define HSTATA          (VPint(Base_Addr+0x7008))#define HINTENA         (VPint(Base_Addr+0x700c))#define HTXFIFOCA       (VPint(Base_Addr+0x7010))#define HTXFIFOTA       (VPint(Base_Addr+0x7014))#define HRXFIFOA        (VPint(Base_Addr+0x7018))#define HSADRA          (VPint(Base_Addr+0x701c))#define HBRGTCA         (VPint(Base_Addr+0x7020))#define HPRMBA          (VPint(Base_Addr+0x7024))#define HDMATXMAA       (VPint(Base_Addr+0x7028))#define HDMARXMAA       (VPint(Base_Addr+0x702c))#define HDMATXCNTA      (VPint(Base_Addr+0x7030))#define HDMARXCNTA      (VPint(Base_Addr+0x7034))#define HDMARXBCNTA     (VPint(Base_Addr+0x7038))// HDLC Channel B#define HCON0B          (VPint(Base_Addr+0x8000))#define HCON1B          (VPint(Base_Addr+0x8004))#define HSTATB          (VPint(Base_Addr+0x8008))#define HINTENB         (VPint(Base_Addr+0x800c))#define HTXFIFOCB       (VPint(Base_Addr+0x8010))#define HTXFIFOTB       (VPint(Base_Addr+0x8014))#define HRXFIFOB        (VPint(Base_Addr+0x8018))#define HSADRB          (VPint(Base_Addr+0x801c))#define HBRGTCB         (VPint(Base_Addr+0x8020))#define HPRMBB          (VPint(Base_Addr+0x8024))#define HDMATXMAB       (VPint(Base_Addr+0x8028))#define HDMARXMAB       (VPint(Base_Addr+0x802c))#define HDMATXCNTB      (VPint(Base_Addr+0x8030))#define HDMARXCNTB      (VPint(Base_Addr+0x8034))#define HDMARXBCNTB 	(VPint(Base_Addr+0x8038))// I2C Bus Register#define IICCON          (VPint(Base_Addr+0xf000))#define IICBUF          (VPint(Base_Addr+0xf004))#define IICPS           (VPint(Base_Addr+0xf008))#define IICCOUNT        (VPint(Base_Addr+0xf00c))// GDMA 0#define GDMACON0        (VPint(Base_Addr+0xb000))#define GDMASRC0        (VPint(Base_Addr+0xb004))#define GDMADST0        (VPint(Base_Addr+0xb008))#define GDMACNT0        (VPint(Base_Addr+0xb00c))// GDMA 1#define GDMACON1        (VPint(Base_Addr+0xc000))#define GDMASRC1        (VPint(Base_Addr+0xc004))#define GDMADST1        (VPint(Base_Addr+0xc008))#define GDMACNT1        (VPint(Base_Addr+0xc00c))// UART 0#define UART0_LCR       (VPint(Base_Addr+0xd000))   // line control register#define UART0_CTRL      (VPint(Base_Addr+0xd004))   // uart control register#define UART0_LST       (VPint(Base_Addr+0xd008))   // line status register#define UART0_THR       (VPint(Base_Addr+0xd00c))   // transmit holding reg.#define UART0_RDR       (VPint(Base_Addr+0xd010))   // receive data register#define UART0_BRD       (VPint(Base_Addr+0xd014))   // baud rate divisor// UART 1#define UART1_LCR       (VPint(Base_Addr+0xe000))   // line control register#define UART1_CTRL      (VPint(Base_Addr+0xe004))   // uart control register#define UART1_LST       (VPint(Base_Addr+0xe008))   // line status register#define UART1_THR       (VPint(Base_Addr+0xe00c))   // transmit holding reg.#define UART1_RDR       (VPint(Base_Addr+0xe010))   // receive data register#define UART1_BRD       (VPint(Base_Addr+0xe014))   // baud rate divisor// Timer Register#define TMOD            (VPint(Base_Addr+0x6000))#define TDATA0          (VPint(Base_Addr+0x6004))#define TDATA1          (VPint(Base_Addr+0x6008))#define TCNT0           (VPint(Base_Addr+0x600c))#define TCNT1           (VPint(Base_Addr+0x6010))// Timer Mode Register#define  TM0_RUN      0x01  /* Timer 0 enable */#define  TM0_TOGGLE   0x02  /* 0, interval mode */#define  TM0_OUT_1    0x04  /* Timer 0 Initial TOUT0 value */#define  TM1_RUN      0x08  /* Timer 1 enable */#define  TM1_TOGGLE   0x10  /* 0, interval mode */#define  TM1_OUT_1    0x20  /* Timer 0 Initial TOUT0 value */// I/O Port Interface#define IOPMOD          (VPint(Base_Addr+0x5000))#define IOPCON          (VPint(Base_Addr+0x5004))#define IOPDATA         (VPint(Base_Addr+0x5008))// Interrupt Controller Register#define INTMODE         (VPint(Base_Addr+0x4000))#define INTPEND         (VPint(Base_Addr+0x4004))#define INTMASK         (VPint(Base_Addr+0x4008))#define INTPRI0         (VPint(Base_Addr+0x400c))#define INTPRI1         (VPint(Base_Addr+0x4010))#define INTPRI2         (VPint(Base_Addr+0x4014))#define INTPRI3         (VPint(Base_Addr+0x4018))#define INTPRI4         (VPint(Base_Addr+0x401c))#define INTPRI5         (VPint(Base_Addr+0x4020))#define INTOFFSET       (VPint(Base_Addr+0x4024))#endif

⌨️ 快捷键说明

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