📄 gt64120.h
字号:
/* * Carsten Langgaard, carstenl@mips.com * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved. * * Copyright 2001 MontaVista Software Inc. * Author: Jun Sun, jsun@mvista.com or jsun@junsun.net * * This program is free software; you can distribute it and/or modify it * under the terms of the GNU General Public License (Version 2) as * published by the Free Software Foundation. * * This program is distributed in the hope 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 _ASM_GT64120_GT64120_H#define _ASM_GT64120_GT64120_H#include <linux/config.h>#include <asm/addrspace.h>#include <asm/byteorder.h>#define MSK(n) ((1 << (n)) - 1)/* * Register offset addresses */#define GT_CPU_OFS 0x000/* * Interrupt Registers */#define GT_SCS10LD_OFS 0x008#define GT_SCS10HD_OFS 0x010#define GT_SCS32LD_OFS 0x018#define GT_SCS32HD_OFS 0x020#define GT_CS20LD_OFS 0x028#define GT_CS20HD_OFS 0x030#define GT_CS3BOOTLD_OFS 0x038#define GT_CS3BOOTHD_OFS 0x040#define GT_PCI0IOLD_OFS 0x048#define GT_PCI0IOHD_OFS 0x050#define GT_PCI0M0LD_OFS 0x058#define GT_PCI0M0HD_OFS 0x060#define GT_ISD_OFS 0x068#define GT_PCI0M1LD_OFS 0x080#define GT_PCI0M1HD_OFS 0x088#define GT_PCI1IOLD_OFS 0x090#define GT_PCI1IOHD_OFS 0x098#define GT_PCI1M0LD_OFS 0x0a0#define GT_PCI1M0HD_OFS 0x0a8#define GT_PCI1M1LD_OFS 0x0b0#define GT_PCI1M1HD_OFS 0x0b8/* * GT64120A only */#define GT_PCI0IOREMAP_OFS 0x0f0#define GT_PCI0M0REMAP_OFS 0x0f8#define GT_PCI0M1REMAP_OFS 0x100#define GT_PCI1IOREMAP_OFS 0x108#define GT_PCI1M0REMAP_OFS 0x110#define GT_PCI1M1REMAP_OFS 0x118#define GT_SCS0LD_OFS 0x400#define GT_SCS0HD_OFS 0x404#define GT_SCS1LD_OFS 0x408#define GT_SCS1HD_OFS 0x40c#define GT_SCS2LD_OFS 0x410#define GT_SCS2HD_OFS 0x414#define GT_SCS3LD_OFS 0x418#define GT_SCS3HD_OFS 0x41c#define GT_CS0LD_OFS 0x420#define GT_CS0HD_OFS 0x424#define GT_CS1LD_OFS 0x428#define GT_CS1HD_OFS 0x42c#define GT_CS2LD_OFS 0x430#define GT_CS2HD_OFS 0x434#define GT_CS3LD_OFS 0x438#define GT_CS3HD_OFS 0x43c#define GT_BOOTLD_OFS 0x440#define GT_BOOTHD_OFS 0x444#define GT_SDRAM_B0_OFS 0x44c#define GT_SDRAM_CFG_OFS 0x448#define GT_SDRAM_B2_OFS 0x454#define GT_SDRAM_OPMODE_OFS 0x474#define GT_SDRAM_BM_OFS 0x478#define GT_SDRAM_ADDRDECODE_OFS 0x47c#define GT_PCI0_CMD_OFS 0xc00 /* GT64120A only */#define GT_PCI0_TOR_OFS 0xc04#define GT_PCI0_BS_SCS10_OFS 0xc08#define GT_PCI0_BS_SCS32_OFS 0xc0c#define GT_INTRCAUSE_OFS 0xc18#define GT_INTRMASK_OFS 0xc1c /* GT64120A only */#define GT_PCI0_IACK_OFS 0xc34#define GT_PCI0_BARE_OFS 0xc3c#define GT_HINTRCAUSE_OFS 0xc98 /* GT64120A only */#define GT_HINTRMASK_OFS 0xc9c /* GT64120A only */#define GT_PCI1_CFGADDR_OFS 0xcf0 /* GT64120A only */#define GT_PCI1_CFGDATA_OFS 0xcf4 /* GT64120A only */#define GT_PCI0_CFGADDR_OFS 0xcf8#define GT_PCI0_CFGDATA_OFS 0xcfc/* * Timer/Counter. GT64120A only. */#define GT_TC0_OFS 0x850#define GT_TC1_OFS 0x854#define GT_TC2_OFS 0x858#define GT_TC3_OFS 0x85C#define GT_TC_CONTROL_OFS 0x864/* * I2O Support Registers */#define INBOUND_MESSAGE_REGISTER0_PCI_SIDE 0x010#define INBOUND_MESSAGE_REGISTER1_PCI_SIDE 0x014#define OUTBOUND_MESSAGE_REGISTER0_PCI_SIDE 0x018#define OUTBOUND_MESSAGE_REGISTER1_PCI_SIDE 0x01c#define INBOUND_DOORBELL_REGISTER_PCI_SIDE 0x020#define INBOUND_INTERRUPT_CAUSE_REGISTER_PCI_SIDE 0x024#define INBOUND_INTERRUPT_MASK_REGISTER_PCI_SIDE 0x028#define OUTBOUND_DOORBELL_REGISTER_PCI_SIDE 0x02c#define OUTBOUND_INTERRUPT_CAUSE_REGISTER_PCI_SIDE 0x030#define OUTBOUND_INTERRUPT_MASK_REGISTER_PCI_SIDE 0x034#define INBOUND_QUEUE_PORT_VIRTUAL_REGISTER_PCI_SIDE 0x040#define OUTBOUND_QUEUE_PORT_VIRTUAL_REGISTER_PCI_SIDE 0x044#define QUEUE_CONTROL_REGISTER_PCI_SIDE 0x050#define QUEUE_BASE_ADDRESS_REGISTER_PCI_SIDE 0x054#define INBOUND_FREE_HEAD_POINTER_REGISTER_PCI_SIDE 0x060#define INBOUND_FREE_TAIL_POINTER_REGISTER_PCI_SIDE 0x064#define INBOUND_POST_HEAD_POINTER_REGISTER_PCI_SIDE 0x068#define INBOUND_POST_TAIL_POINTER_REGISTER_PCI_SIDE 0x06c#define OUTBOUND_FREE_HEAD_POINTER_REGISTER_PCI_SIDE 0x070#define OUTBOUND_FREE_TAIL_POINTER_REGISTER_PCI_SIDE 0x074#define OUTBOUND_POST_HEAD_POINTER_REGISTER_PCI_SIDE 0x078#define OUTBOUND_POST_TAIL_POINTER_REGISTER_PCI_SIDE 0x07c#define INBOUND_MESSAGE_REGISTER0_CPU_SIDE 0x1c10#define INBOUND_MESSAGE_REGISTER1_CPU_SIDE 0x1c14#define OUTBOUND_MESSAGE_REGISTER0_CPU_SIDE 0x1c18#define OUTBOUND_MESSAGE_REGISTER1_CPU_SIDE 0x1c1c#define INBOUND_DOORBELL_REGISTER_CPU_SIDE 0x1c20#define INBOUND_INTERRUPT_CAUSE_REGISTER_CPU_SIDE 0x1c24#define INBOUND_INTERRUPT_MASK_REGISTER_CPU_SIDE 0x1c28#define OUTBOUND_DOORBELL_REGISTER_CPU_SIDE 0x1c2c#define OUTBOUND_INTERRUPT_CAUSE_REGISTER_CPU_SIDE 0x1c30#define OUTBOUND_INTERRUPT_MASK_REGISTER_CPU_SIDE 0x1c34#define INBOUND_QUEUE_PORT_VIRTUAL_REGISTER_CPU_SIDE 0x1c40#define OUTBOUND_QUEUE_PORT_VIRTUAL_REGISTER_CPU_SIDE 0x1c44#define QUEUE_CONTROL_REGISTER_CPU_SIDE 0x1c50#define QUEUE_BASE_ADDRESS_REGISTER_CPU_SIDE 0x1c54#define INBOUND_FREE_HEAD_POINTER_REGISTER_CPU_SIDE 0x1c60#define INBOUND_FREE_TAIL_POINTER_REGISTER_CPU_SIDE 0x1c64#define INBOUND_POST_HEAD_POINTER_REGISTER_CPU_SIDE 0x1c68#define INBOUND_POST_TAIL_POINTER_REGISTER_CPU_SIDE 0x1c6c#define OUTBOUND_FREE_HEAD_POINTER_REGISTER_CPU_SIDE 0x1c70#define OUTBOUND_FREE_TAIL_POINTER_REGISTER_CPU_SIDE 0x1c74#define OUTBOUND_POST_HEAD_POINTER_REGISTER_CPU_SIDE 0x1c78#define OUTBOUND_POST_TAIL_POINTER_REGISTER_CPU_SIDE 0x1c7c/* * Register encodings */#define GT_CPU_ENDIAN_SHF 12#define GT_CPU_ENDIAN_MSK (MSK(1) << GT_CPU_ENDIAN_SHF)#define GT_CPU_ENDIAN_BIT GT_CPU_ENDIAN_MSK#define GT_CPU_WR_SHF 16#define GT_CPU_WR_MSK (MSK(1) << GT_CPU_WR_SHF)#define GT_CPU_WR_BIT GT_CPU_WR_MSK#define GT_CPU_WR_DXDXDXDX 0#define GT_CPU_WR_DDDD 1#define GT_CFGADDR_CFGEN_SHF 31#define GT_CFGADDR_CFGEN_MSK (MSK(1) << GT_CFGADDR_CFGEN_SHF)#define GT_CFGADDR_CFGEN_BIT GT_CFGADDR_CFGEN_MSK#define GT_CFGADDR_BUSNUM_SHF 16#define GT_CFGADDR_BUSNUM_MSK (MSK(8) << GT_CFGADDR_BUSNUM_SHF)#define GT_CFGADDR_DEVNUM_SHF 11#define GT_CFGADDR_DEVNUM_MSK (MSK(5) << GT_CFGADDR_DEVNUM_SHF)#define GT_CFGADDR_FUNCNUM_SHF 8#define GT_CFGADDR_FUNCNUM_MSK (MSK(3) << GT_CFGADDR_FUNCNUM_SHF)#define GT_CFGADDR_REGNUM_SHF 2#define GT_CFGADDR_REGNUM_MSK (MSK(6) << GT_CFGADDR_REGNUM_SHF)#define GT_SDRAM_BM_ORDER_SHF 2#define GT_SDRAM_BM_ORDER_MSK (MSK(1) << GT_SDRAM_BM_ORDER_SHF)#define GT_SDRAM_BM_ORDER_BIT GT_SDRAM_BM_ORDER_MSK#define GT_SDRAM_BM_ORDER_SUB 1#define GT_SDRAM_BM_ORDER_LIN 0#define GT_SDRAM_BM_RSVD_ALL1 0xffb#define GT_SDRAM_ADDRDECODE_ADDR_SHF 0#define GT_SDRAM_ADDRDECODE_ADDR_MSK (MSK(3) << GT_SDRAM_ADDRDECODE_ADDR_SHF)#define GT_SDRAM_ADDRDECODE_ADDR_0 0#define GT_SDRAM_ADDRDECODE_ADDR_1 1#define GT_SDRAM_ADDRDECODE_ADDR_2 2#define GT_SDRAM_ADDRDECODE_ADDR_3 3#define GT_SDRAM_ADDRDECODE_ADDR_4 4#define GT_SDRAM_ADDRDECODE_ADDR_5 5#define GT_SDRAM_ADDRDECODE_ADDR_6 6#define GT_SDRAM_ADDRDECODE_ADDR_7 7#define GT_SDRAM_B0_CASLAT_SHF 0#define GT_SDRAM_B0_CASLAT_MSK (MSK(2) << GT_SDRAM_B0__SHF)#define GT_SDRAM_B0_CASLAT_2 1#define GT_SDRAM_B0_CASLAT_3 2#define GT_SDRAM_B0_FTDIS_SHF 2#define GT_SDRAM_B0_FTDIS_MSK (MSK(1) << GT_SDRAM_B0_FTDIS_SHF)#define GT_SDRAM_B0_FTDIS_BIT GT_SDRAM_B0_FTDIS_MSK#define GT_SDRAM_B0_SRASPRCHG_SHF 3#define GT_SDRAM_B0_SRASPRCHG_MSK (MSK(1) << GT_SDRAM_B0_SRASPRCHG_SHF)#define GT_SDRAM_B0_SRASPRCHG_BIT GT_SDRAM_B0_SRASPRCHG_MSK#define GT_SDRAM_B0_SRASPRCHG_2 0#define GT_SDRAM_B0_SRASPRCHG_3 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -