pxa27x_registers.h
来自「tinyos-2.x.rar」· C头文件 代码 · 共 981 行 · 第 1/5 页
H
981 行
// $Id: pxa27x_registers.h,v 1.5 2008/06/11 00:46:23 razvanm Exp $
/*
* IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
* downloading, copying, installing or using the software you agree to
* this license. If you do not agree to this license, do not download,
* install, copy or use the software.
*
* Intel Open Source License
*
* Copyright (c) 2002 Intel Corporation
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the Intel Corporation nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR ITS
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
*/
/*
*
* Authors: Phil Buonadonna
*
* Edits: Josh Herbach, Konrad Lorincz
* Revised: 09/19/2005
*/
#ifndef _PXA27X_REGISTER_H
#define _PXA27X_REGISTER_H
#define _PXAREG(_addr) (*((volatile uint32_t *)(_addr)))
#define _PXAREG_OFFSET(_addr,_off) (_PXAREG((uint32_t)(_addr) + (uint32_t)(_off)))
/******************************************************************************/
/* Memory Controller */
/******************************************************************************/
#define MDCNFG _PXAREG(0x48000000) /* SDRAM Configuration register 6-43 */
#define MDREFR _PXAREG(0x48000004) /* SDRAM Refresh Control register 6-53 */
#define MSC0 _PXAREG(0x48000008) /* Static Memory Control register 0 6-63 */
#define MSC1 _PXAREG(0x4800000C) /* Static Memory Control register 1 6-63 */
#define MSC2 _PXAREG(0x48000010) /* Static Memory Control register 2 6-63 */
#define MECR _PXAREG(0x48000014) /* Expansion Memory (PC Card/CompactFlash) Bus Configuration register 6-79 */
#define SXCNFG _PXAREG(0x4800001C) /* Synchronous Static Memory Configuration register 6-58 */
#define FLYCNFG _PXAREG(0x48000020) /* Fly-by DMA DVAL<1:0> polarities 5-39 */
#define MCMEM0 _PXAREG(0x48000028) /* PC Card Interface Common Memory Space Socket 0 Timing Configuration register 6-77 */
#define MCMEM1 _PXAREG(0x4800002C) /* PC Card Interface Common Memory Space Socket 1 Timing Configuration register 6-77 */
#define MCATT0 _PXAREG(0x48000030) /* PC Card Interface Attribute Space Socket 0 Timing Configuration register 6-77 */
#define MCATT1 _PXAREG(0x48000034) /* PC Card Interface Attribute Space Socket 1 Timing Configuration register 6-77 */
#define MCIO0 _PXAREG(0x48000038) /* PC Card Interface I/o Space Socket 0 Timing Configuration register 6-78 */
#define MCIO1 _PXAREG(0x4800003C) /* PC Card Interface I/o Space Socket 1 Timing Configuration register 6-78 */
#define MDMRS _PXAREG(0x48000040) /* SDRAM Mode Register Set Configuration register 6-49 */
#define BOOT_DEF _PXAREG(0x48000044) /* Boot Time Default Configuration register 6-75 */
#define ARB_CNTL _PXAREG(0x48000048) /* Arbiter Control register 29-2 */
#define BSCNTR0 _PXAREG(0x4800004C) /* System Memory Buffer Strength Control register 0 6-81 */
#define BSCNTR1 _PXAREG(0x48000050) /* System Memory Buffer Strength Control register 1 6-82 */
#define LCDBSCNTR _PXAREG(0x48000054) /* LCD Buffer Strength Control register 7-102 */
#define MDMRSLP _PXAREG(0x48000058) /* Special Low Power SDRAM Mode Register Set Configuration register 6-51 */
#define BSCNTR2 _PXAREG(0x4800005C) /* System Memory Buffer Strength Control register 2 6-83 */
#define BSCNTR3 _PXAREG(0x48000060) /* System Memory Buffer Strength Control register 3 6-84 */
#define SA1110 _PXAREG(0x48000064) /* SA-1110 Compatibility Mode for Static Memory register 6-70 */
/* MDCNFG Bit Defs */
#define MDCNFG_MDENX (1 << 31)
#define MDCNFG_DCACX2 (1 << 30)
#define MDCNFG_DSA1110_2 (1 << 28)
#define MDCNFG_DADDR2 (1 << 26)
#define MDCNFG_DTC2(_x) (((_x) & 0x3) << 24)
#define MDCNFG_DNB2 (1 << 23)
#define MDCNFG_DRAC2(_x) (((_x) & 0x3) << 21)
#define MDCNFG_DCAC2(_x) (((_x) & 0x3) << 19)
#define MDCNFG_DWID2 (1 << 18)
#define MDCNFG_DE3 (1 << 17)
#define MDCNFG_DE2 (1 << 16)
#define MDCNFG_STACK1 (1 << 15)
#define MDCNFG_DCACX0 (1 << 14)
#define MDCNFG_STACK0 (1 << 13)
#define MDCNFG_DSA1110_0 (1 << 12)
#define MDCNFG_DADDR0 (1 << 10)
#define MDCNFG_DTC0(_x) (((_x) & 0x3) << 8)
#define MDCNFG_DNB0 (1 << 7)
#define MDCNFG_DRAC0(_x) (((_x) & 0x3) << 5)
#define MDCNFG_DCAC0(_x) (((_x) & 0x3) << 3)
#define MDCNFG_DWID0 (1 << 2)
#define MDCNFG_DE1 (1 << 1)
#define MDCNFG_DE0 (1 << 0)
#define MDCNFG_SETALWAYS ((1 << 27) | (1 << 11))
/* MDREFR Bit Defs */
#define MDREFR_ALTREFA (1 << 31) /* */
#define MDREFR_ALTREFB (1 << 30) /* */
#define MDREFR_K0DB4 (1 << 29) /* */
#define MDREFR_K2FREE (1 << 25) /* */
#define MDREFR_K1FREE (1 << 24) /* */
#define MDREFR_K0FREE (1 << 23) /* */
#define MDREFR_SLFRSH (1 << 22) /* */
#define MDREFR_APD (1 << 20) /* */
#define MDREFR_K2DB2 (1 << 19) /* */
#define MDREFR_K2RUN (1 << 18) /* */
#define MDREFR_K1DB2 (1 << 17) /* */
#define MDREFR_K1RUN (1 << 16) /* */
#define MDREFR_E1PIN (1 << 15) /* */
#define MDREFR_K0DB2 (1 << 14) /* */
#define MDREFR_K0RUN (1 << 13) /* */
#define MDREFR_DRI(_x) ((_x) & 0xfff) /* */
/* MSCx Bit Defs */
#define MSC_RBUFF135 (1 << 31) /* Return Data Buff vs. Streaming nCS 1,3 or 5 */
#define MSC_RRR135(_x) (((_x) & (0x7)) << 28) /* ROM/SRAM Recovery Time nCS 1,3 or 5 */
#define MSC_RDN135(_x) (((_x) & (0x7)) << 24) /* ROM Delay Next Access nCS 1,3 or 5 */
#define MSC_RDF135(_x) (((_x) & (0x7)) << 20) /* ROM Delay First Access nCS 1,3 or 5 */
#define MSC_RBW135 (1 << 19) /* ROM Bus Width nCS 1,3 or 5 */
#define MSC_RT135(_x) (((_x) & (0x7)) << 16) /* ROM Type nCS 1,3 or 5 */
#define MSC_RBUFF024 (1 << 15) /* Return Data Buff vs. Streaming nCS 0,2 or 4 */
#define MSC_RRR024(_x) (((_x) & (0x7)) << 12) /* ROM/SRAM Recover Time nCS 0,2 or 4 */
#define MSC_RDN024(_x) (((_x) & (0x7)) << 8) /* ROM Delay Next Access nCS 0,2 or 4 */
#define MSC_RDF024(_x) (((_x) & (0x7)) << 4) /* ROM Delay First Access nCS 0,2 or 4 */
#define MSC_RBW024 (1 << 3) /* ROM Bus Width nCS 0,2 or 4 */
#define MSC_RT024(_x) (((_x) & (0x7)) << 0) /* ROM Type nCS 0,2 or 4 */
/* SXCNFG Bit defs */
#define SXCNFG_SXEN0 (1)
#define SXCNFG_SXEN1 (1<<1)
#define SXCNFG_SXCL0(_x) (((_x) & 0x7) << 2)
#define SXCNFG_SXTP0(_x) (((_x) & 0x3) << 12)
#define SXCNFG_SXCLEXT0 (1<<15)
/* ARB_CNTL Bit defs */
#define ARB_CNTL_DMA_SLV_PARK (1 << 31)
#define ARB_CNTL_CI_PARK (1 << 30)
#define ARB_CNTL_EX_MEM_PARK (1 << 29)
#define ARB_CNTL_INT_MEM_PARK (1 << 28)
#define ARB_CNTL_USB_PARK (1 << 27)
#define ARB_CNTL_LCD_PARK (1 << 26)
#define ARB_CNTL_DMA_PARK (1 << 25)
#define ARB_CNTL_CORE_PARK (1 << 24)
#define ARB_CNTL_LOCK_FLAG (1 << 23)
#define ARB_CNTL_LCD_WT(_wt) (((_wt) & 0xF) << 8)
#define ARB_CNTL_DMA_WT(_wt) (((_wt) & 0xF) << 4)
#define ARB_CNTL_CORE_WT(_wt) (((_wt) & 0xF) << 0)
/* SA1110 Bit defs */
#define SA1110_SXSTACK(_x) (((_x) & 0x3) << 12)
/******************************************************************************/
/* LCD Controller */
/******************************************************************************/
#define LCCR0 _PXAREG(0x44000000) /* LCD Controller Control register 0 7-56 */
#define LCCR1 _PXAREG(0x44000004) /* LCD Controller Control register 1 7-64 */
#define LCCR2 _PXAREG(0x44000008) /* LCD Controller Control register 2 7-66 */
#define LCCR3 _PXAREG(0x4400000C) /* LCD Controller Control register 3 7-69 */
#define LCCR4 _PXAREG(0x44000010) /* LCD Controller Control register 4 7-74 */
#define LCCR5 _PXAREG(0x44000014) /* LCD Controller Control register 5 7-77 */
#define FBR0 _PXAREG(0x44000020) /* DMA Channel 0 Frame Branch register 7-101 */
#define FBR1 _PXAREG(0x44000024) /* DMA Channel 1 Frame Branch register 7-101 */
#define FBR2 _PXAREG(0x44000028) /* DMA Channel 2 Frame Branch register 7-101 */
#define FBR3 _PXAREG(0x4400002C) /* DMA Channel 3 Frame Branch register 7-101 */
#define FBR4 _PXAREG(0x44000030) /* DMA Channel 4 Frame Branch register 7-101 */
#define LCSR1 _PXAREG(0x44000034) /* LCD Controller Status register 1 7-109 */
#define LCSR0 _PXAREG(0x44000038) /* LCD Controller Status register 0 7-104 */
#define LIIDR _PXAREG(0x4400003C) /* LCD Controller Interrupt ID register 7-116 */
#define TRGBR _PXAREG(0x44000040) /* TMED RGB Seed register 7-97 */
#define TCR _PXAREG(0x44000044) /* TMED Control register 7-98 */
#define OVL1C1 _PXAREG(0x44000050) /* Overlay 1 Control register 1 7-90 */
#define OVL1C2 _PXAREG(0x44000060) /* Overlay 1 Control register 2 7-91 */
#define OVL2C1 _PXAREG(0x44000070) /* Overlay 2 Control register 1 7-92 */
#define OVL2C2 _PXAREG(0x44000080) /* Overlay 2 Control register 2 7-94 */
#define CCR _PXAREG(0x44000090) /* Cursor Control register 7-95 */
#define CMDCR _PXAREG(0x44000100) /* Command Control register 7-96 */
#define PRSR _PXAREG(0x44000104) /* Panel Read Status register 7-103 */
#define FBR5 _PXAREG(0x44000110) /* DMA Channel 5 Frame Branch register 7-101 */
#define FBR6 _PXAREG(0x44000114) /* DMA Channel 6 Frame Branch register 7-101 */
#define FDADR0 _PXAREG(0x44000200) /* DMA Channel 0 Frame Descriptor Address register 7-100 */
#define FSADR0 _PXAREG(0x44000204) /* DMA Channel 0 Frame Source Address register 7-117 */
#define FIDR0 _PXAREG(0x44000208) /* DMA Channel 0 Frame ID register 7-117 */
#define LDCMD0 _PXAREG(0x4400020C) /* LCD DMA Channel 0 Command register 7-118 */
#define FDADR1 _PXAREG(0x44000210) /* DMA Channel 1 Frame Descriptor Address register 7-100 */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?