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

📄 405cpu.h

📁 qnx powerpc MPC8245的 BSP源文件
💻 H
📖 第 1 页 / 共 3 页
字号:
/* * $QNXLicenseC:  * Copyright 2007, QNX Software Systems.   *   * Licensed under the Apache License, Version 2.0 (the "License"). You   * may not reproduce, modify or distribute this software except in   * compliance with the License. You may obtain a copy of the License   * at: http://www.apache.org/licenses/LICENSE-2.0   *   * Unless required by applicable law or agreed to in writing, software   * distributed under the License is distributed on an "AS IS" basis,   * WITHOUT WARRANTIES OF ANY KIND, either express or implied.  *  * This file may contain contributions from others, either as   * contributors under the License or as licensors under other terms.    * Please review this entire file for other proprietary rights or license   * notices, as well as the QNX Development Suite License Guide at   * http://licensing.qnx.com/license-guide/ for other information.  * $  *//* *  ppc/405cpu.h * * Registers specific to the 405 chip * */#ifndef __PPC_405CPU_H_INCLUDED#define __PPC_405CPU_H_INCLUDED#ifndef __PLATFORM_H_INCLUDED#include <sys/platform.h>#endif#ifndef __PPC_400CPU_H_INCLUDED#include _NTO_HDR_(ppc/400cpu.h)#endif#ifndef __PPC_IBMUIC_H_INCLUDED#include _NTO_HDR_(ppc/ibmuic.h)#endif/* * Bus Error Syndrome Register 0 Bits */#define PPC405_BESR0_M0ET_MASK		_BITFIELD32B(2, 7)#define PPC405_BESR0_M0ET_NOERR		_BITFIELD32B(2, 0)#define PPC405_BESR0_M0ET_RSVD1		_BITFIELD32B(2, 1)#define PPC405_BESR0_M0ET_ECCUE1	_BITFIELD32B(2, 2)#define PPC405_BESR0_M0ET_ECCUE2	_BITFIELD32B(2, 3)#define PPC405_BESR0_M0ET_RSVD2		_BITFIELD32B(2, 4)#define PPC405_BESR0_M0ET_RSVD3		_BITFIELD32B(2, 5)#define PPC405_BESR0_M0ET_RSVD4		_BITFIELD32B(2, 6)#define PPC405_BESR0_M0ET_RSVD5		_BITFIELD32B(2, 7)#define PPC405_BESR0_M0RWS			_ONEBIT32B(3)#define PPC405_BESR0_M0FL			_ONEBIT32B(4)#define PPC405_BESR0_M0AL			_ONEBIT32B(5)#define PPC405_BESR0_M1ET_MASK		_BITFIELD32B(8, 7)#define PPC405_BESR0_M1ET_NOERR		_BITFIELD32B(8, 0)#define PPC405_BESR0_M1ET_RSVD1		_BITFIELD32B(8, 1)#define PPC405_BESR0_M1ET_ECCUE1	_BITFIELD32B(8, 2)#define PPC405_BESR0_M1ET_ECCUE2	_BITFIELD32B(8, 3)#define PPC405_BESR0_M1ET_RSVD2		_BITFIELD32B(8, 4)#define PPC405_BESR0_M1ET_RSVD3		_BITFIELD32B(8, 5)#define PPC405_BESR0_M1ET_RSVD4		_BITFIELD32B(8, 6)#define PPC405_BESR0_M1ET_RSVD5		_BITFIELD32B(8, 7)#define PPC405_BESR0_M1RWS			_ONEBIT32B(9)#define PPC405_BESR0_M1FL			_ONEBIT32B(10)#define PPC405_BESR0_M1AL			_ONEBIT32B(11)#define PPC405_BESR0_M2ET_MASK		_BITFIELD32B(14, 7)#define PPC405_BESR0_M2ET_NOERR		_BITFIELD32B(14, 0)#define PPC405_BESR0_M2ET_RSVD1		_BITFIELD32B(14, 1)#define PPC405_BESR0_M2ET_ECCUE1	_BITFIELD32B(14, 2)#define PPC405_BESR0_M2ET_ECCUE2	_BITFIELD32B(14, 3)#define PPC405_BESR0_M2ET_RSVD2		_BITFIELD32B(14, 4)#define PPC405_BESR0_M2ET_RSVD3		_BITFIELD32B(14, 5)#define PPC405_BESR0_M2ET_RSVD4		_BITFIELD32B(14, 6)#define PPC405_BESR0_M2ET_RSVD5		_BITFIELD32B(14, 7)#define PPC405_BESR0_M2RWS			_ONEBIT32B(15)#define PPC405_BESR0_M2FL			_ONEBIT32B(16)#define PPC405_BESR0_M2AL			_ONEBIT32B(17)#define PPC405_BESR0_M3ET_MASK		_BITFIELD32B(20, 7)#define PPC405_BESR0_M3ET_NOERR		_BITFIELD32B(20, 0)#define PPC405_BESR0_M3ET_RSVD1		_BITFIELD32B(20, 1)#define PPC405_BESR0_M3ET_ECCUE1	_BITFIELD32B(20, 2)#define PPC405_BESR0_M3ET_ECCUE2	_BITFIELD32B(20, 3)#define PPC405_BESR0_M3ET_RSVD2		_BITFIELD32B(20, 4)#define PPC405_BESR0_M3ET_RSVD3		_BITFIELD32B(20, 5)#define PPC405_BESR0_M3ET_RSVD4		_BITFIELD32B(20, 6)#define PPC405_BESR0_M3ET_RSVD5		_BITFIELD32B(20, 7)#define PPC405_BESR0_M3RWS			_ONEBIT32B(21)#define PPC405_BESR0_M3FL			_ONEBIT32B(22)#define PPC405_BESR0_M3AL			_ONEBIT32B(23)/* * Bus Error Syndrome Register 1 Bits */#define PPC405_BESR0_M4ET_MASK		_BITFIELD32B(2, 7)#define PPC405_BESR0_M4ET_NOERR		_BITFIELD32B(2, 0)#define PPC405_BESR0_M4ET_RSVD1		_BITFIELD32B(2, 1)#define PPC405_BESR0_M4ET_ECCUE1	_BITFIELD32B(2, 2)#define PPC405_BESR0_M4ET_ECCUE2	_BITFIELD32B(2, 3)#define PPC405_BESR0_M4ET_RSVD2		_BITFIELD32B(2, 4)#define PPC405_BESR0_M4ET_RSVD3		_BITFIELD32B(2, 5)#define PPC405_BESR0_M4ET_RSVD4		_BITFIELD32B(2, 6)#define PPC405_BESR0_M4ET_RSVD5		_BITFIELD32B(2, 7)#define PPC405_BESR0_M4RWS			_ONEBIT32B(3)#define PPC405_BESR0_M4FL			_ONEBIT32B(4)#define PPC405_BESR0_M4AL			_ONEBIT32B(5)#define PPC405_BESR0_M5ET_MASK		_BITFIELD32B(8, 7)#define PPC405_BESR0_M5ET_NOERR		_BITFIELD32B(8, 0)#define PPC405_BESR0_M5ET_RSVD1		_BITFIELD32B(8, 1)#define PPC405_BESR0_M5ET_ECCUE1	_BITFIELD32B(8, 2)#define PPC405_BESR0_M5ET_ECCUE2	_BITFIELD32B(8, 3)#define PPC405_BESR0_M5ET_RSVD2		_BITFIELD32B(8, 4)#define PPC405_BESR0_M5ET_RSVD3		_BITFIELD32B(8, 5)#define PPC405_BESR0_M5ET_RSVD4		_BITFIELD32B(8, 6)#define PPC405_BESR0_M5ET_RSVD5		_BITFIELD32B(8, 7)#define PPC405_BESR0_M5RWS			_ONEBIT32B(9)#define PPC405_BESR0_M5FL			_ONEBIT32B(10)#define PPC405_BESR0_M5AL			_ONEBIT32B(11)#define PPC405_BESR0_M6ET_MASK		_BITFIELD32B(14, 7)#define PPC405_BESR0_M6ET_NOERR		_BITFIELD32B(14, 0)#define PPC405_BESR0_M6ET_RSVD1		_BITFIELD32B(14, 1)#define PPC405_BESR0_M6ET_ECCUE1	_BITFIELD32B(14, 2)#define PPC405_BESR0_M6ET_ECCUE2	_BITFIELD32B(14, 3)#define PPC405_BESR0_M6ET_RSVD2		_BITFIELD32B(14, 4)#define PPC405_BESR0_M6ET_RSVD3		_BITFIELD32B(14, 5)#define PPC405_BESR0_M6ET_RSVD4		_BITFIELD32B(14, 6)#define PPC405_BESR0_M6ET_RSVD5		_BITFIELD32B(14, 7)#define PPC405_BESR0_M6RWS			_ONEBIT32B(15)#define PPC405_BESR0_M6FL			_ONEBIT32B(16)#define PPC405_BESR0_M6AL			_ONEBIT32B(17)#define PPC405_BESR0_M7ET_MASK		_BITFIELD32B(20, 7)#define PPC405_BESR0_M7ET_NOERR		_BITFIELD32B(20, 0)#define PPC405_BESR0_M7ET_RSVD1		_BITFIELD32B(20, 1)#define PPC405_BESR0_M7ET_ECCUE1	_BITFIELD32B(20, 2)#define PPC405_BESR0_M7ET_ECCUE2	_BITFIELD32B(20, 3)#define PPC405_BESR0_M7ET_RSVD2		_BITFIELD32B(20, 4)#define PPC405_BESR0_M7ET_RSVD3		_BITFIELD32B(20, 5)#define PPC405_BESR0_M7ET_RSVD4		_BITFIELD32B(20, 6)#define PPC405_BESR0_M7ET_RSVD5		_BITFIELD32B(20, 7)#define PPC405_BESR0_M7RWS			_ONEBIT32B(21)#define PPC405_BESR0_M7FL			_ONEBIT32B(22)#define PPC405_BESR0_M7AL			_ONEBIT32B(23) /* * Core Configuration Register 0 */#define PPC405_CCR0_LWL				_ONEBIT32B(6)#define PPC405_CCR0_LWOA			_ONEBIT32B(7)#define PPC405_CCR0_SWOA			_ONEBIT32B(8)#define PPC405_CCR0_DPP1			_ONEBIT32B(9)#define PPC405_CCR0_IPP_MASK		_BITFIELD32B(11,3)#define PPC405_CCR0_IPP_LOWEST		_BITFIELD32B(11,0)#define PPC405_CCR0_IPP_NEXTLOWEST	_BITFIELD32B(11,1)#define PPC405_CCR0_IPP_NEXTHIGHEST	_BITFIELD32B(11,2)#define PPC405_CCR0_IPP_HIGHEST		_BITFIELD32B(11,3)#define PPC405_CCR0_DU0				_ONEBIT32B(14)#define PPC405_CCR0_LDBE			_ONEBIT32B(15)#define PPC405_CCR0_PFC				_ONEBIT32B(20)#define PPC405_CCR0_PFNC			_ONEBIT32B(21)#define PPC405_CCR0_NCRS			_ONEBIT32B(22)#define PPC405_CCR0_FWOA			_ONEBIT32B(23)#define PPC405_CCR0_CIS				_ONEBIT32B(27)#define PPC405_CCR0_CWS				_ONEBIT32B(31)/* * Chip Control Register 0 */#define PPC405_CPC0_CR0_PRE				_ONEBIT32B(0)#define PPC405_CPC0_CR0_GPIO_10_EN		_ONEBIT32B(5)#define PPC405_CPC0_CR0_GPIO_11_EN		_ONEBIT32B(6)#define PPC405_CPC0_CR0_GPIO_12_EN		_ONEBIT32B(7)#define PPC405_CPC0_CR0_GPIO_13_EN		_ONEBIT32B(8)#define PPC405_CPC0_CR0_GPIO_14_EN		_ONEBIT32B(9)#define PPC405_CPC0_CR0_GPIO_15_EN		_ONEBIT32B(10)#define PPC405_CPC0_CR0_GPIO_16_EN		_ONEBIT32B(11)#define PPC405_CPC0_CR0_GPIO_17_EN		_ONEBIT32B(12)#define PPC405_CPC0_CR0_GPIO_18_EN		_ONEBIT32B(13)#define PPC405_CPC0_CR0_GPIO_19_EN		_ONEBIT32B(14)#define PPC405_CPC0_CR0_GPIO_20_EN		_ONEBIT32B(15)#define PPC405_CPC0_CR0_GPIO_21_EN		_ONEBIT32B(16)#define PPC405_CPC0_CR0_GPIO_22_EN		_ONEBIT32B(17)#define PPC405_CPC0_CR0_GPIO_23_EN		_ONEBIT32B(18)#define PPC405_CPC0_CR0_DCS				_ONEBIT32B(19)#define PPC405_CPC0_CR0_RCS				_ONEBIT32B(20)#define PPC405_CPC0_CR0_DTE				_ONEBIT32B(21)#define PPC405_CPC0_CR0_DRE				_ONEBIT32B(22)#define PPC405_CPC0_CR0_DAEC			_ONEBIT32B(23)#define PPC405_CPC0_CR0_U0EC			_ONEBIT32B(24)#define PPC405_CPC0_CR0_U1EC			_ONEBIT32B(25)#define PPC405_CPC0_CR0_UDIV_MASK		_BITFIELD32B(30, 0x1f)#define PPC405_CPC0_CR0_UDIV_SHIFT		(31-30)/* * Chip Pin-Strapping Register */#define PPC405_CPC0_PSR_PFWD_MASK	_BITFIELD32B(1, 3)#define PPC405_CPC0_PSR_PFWD_BYPASS	_BITFIELD32B(1, 0)#define PPC405_CPC0_PSR_PFWD_DIV3	_BITFIELD32B(1, 1)#define PPC405_CPC0_PSR_PFWD_DIV4	_BITFIELD32B(1, 2)#define PPC405_CPC0_PSR_PFWD_DIV6	_BITFIELD32B(1, 3)#define PPC405_CPC0_PSR_PFBD_MASK	_BITFIELD32B(3, 3)#define PPC405_CPC0_PSR_PFBD_DIV1	_BITFIELD32B(3, 0)#define PPC405_CPC0_PSR_PFBD_DIV2	_BITFIELD32B(3, 1)#define PPC405_CPC0_PSR_PFBD_DIV3	_BITFIELD32B(3, 2)#define PPC405_CPC0_PSR_PFBD_DIV4	_BITFIELD32B(3, 3)#define PPC405_CPC0_PSR_PT_MASK		_BITFIELD32B(6, 7)#define PPC405_CPC0_PSR_PT_CHOICE1	_BITFIELD32B(6, 0)#define PPC405_CPC0_PSR_PT_CHOICE2	_BITFIELD32B(6, 1)#define PPC405_CPC0_PSR_PT_CHOICE3	_BITFIELD32B(6, 2)#define PPC405_CPC0_PSR_PT_CHOICE4	_BITFIELD32B(6, 3)#define PPC405_CPC0_PSR_PT_CHOICE5	_BITFIELD32B(6, 4)#define PPC405_CPC0_PSR_PT_CHOICE6	_BITFIELD32B(6, 5)#define PPC405_CPC0_PSR_PT_CHOICE7	_BITFIELD32B(6, 6)#define PPC405_CPC0_PSR_PT_CHOICE8	_BITFIELD32B(6, 7)#define PPC405_CPC0_PSR_PDC_MASK	_BITFIELD32B(8, 3)#define PPC405_CPC0_PSR_PDC_DIV1	_BITFIELD32B(8, 0)#define PPC405_CPC0_PSR_PDC_DIV2	_BITFIELD32B(8, 1)#define PPC405_CPC0_PSR_PDC_DIV3	_BITFIELD32B(8, 2)#define PPC405_CPC0_PSR_PDC_DIV4	_BITFIELD32B(8, 3)#define PPC405_CPC0_PSR_ODP_MASK	_BITFIELD32B(10, 3)#define PPC405_CPC0_PSR_ODP_DIV1	_BITFIELD32B(10, 0)#define PPC405_CPC0_PSR_ODP_DIV2	_BITFIELD32B(10, 1)#define PPC405_CPC0_PSR_ODP_DIV3	_BITFIELD32B(10, 2)#define PPC405_CPC0_PSR_ODP_DIV4	_BITFIELD32B(10, 3)#define PPC405_CPC0_PSR_PDP_MASK	_BITFIELD32B(12, 3)#define PPC405_CPC0_PSR_PDP_DIV1	_BITFIELD32B(12, 0)#define PPC405_CPC0_PSR_PDP_DIV2	_BITFIELD32B(12, 1)#define PPC405_CPC0_PSR_PDP_DIV3	_BITFIELD32B(12, 2)#define PPC405_CPC0_PSR_PDP_DIV4	_BITFIELD32B(12, 3)#define PPC405_CPC0_PSR_EBDP_MASK	_BITFIELD32B(12, 3)#define PPC405_CPC0_PSR_EBDP_DIV2	_BITFIELD32B(14, 0)#define PPC405_CPC0_PSR_EBDP_DIV3	_BITFIELD32B(14, 1)#define PPC405_CPC0_PSR_EBDP_DIV4	_BITFIELD32B(14, 2)#define PPC405_CPC0_PSR_EBDP_DIV5	_BITFIELD32B(14, 3)#define PPC405_CPC0_PSR_RW_MASK		_BITFIELD32B(16, 3)#define PPC405_CPC0_PSR_RW_8		_BITFIELD32B(16, 0)#define PPC405_CPC0_PSR_RW_16		_BITFIELD32B(16, 1)#define PPC405_CPC0_PSR_RW_32		_BITFIELD32B(16, 2)#define PPC405_CPC0_PSR_RW_RSVD		_BITFIELD32B(16, 3)#define PPC405_CPC0_PSR_RL			_ONEBIT32B(17)#define PPC405_CPC0_PSR_PAME		_ONEBIT32B(19)#define PPC405_CPC0_PSR_PAE			_ONEBIT32B(21)/* * CPM Enable RegisterNYI: *//* * CPM Force RegisterNYI: *//* * CPM Status RegisterNYI: *//* * Debug Control Register 0 */#define PPC405_DBCR0_EDM			_ONEBIT32B(0)#define PPC405_DBCR0_IDM			_ONEBIT32B(1)#define PPC405_DBCR0_RST_MASK		_BITFIELD32B(3, 3)#define PPC405_DBCR0_RST_NORESET	_BITFIELD32B(3, 0)#define PPC405_DBCR0_RST_CORE		_BITFIELD32B(3, 1)#define PPC405_DBCR0_RST_CHIP		_BITFIELD32B(3, 2)#define PPC405_DBCR0_RST_SYSTEM		_BITFIELD32B(3, 3)#define PPC405_DBCR0_IC				_ONEBIT32B(4)#define PPC405_DBCR0_BT				_ONEBIT32B(5)#define PPC405_DBCR0_EDE			_ONEBIT32B(6)#define PPC405_DBCR0_TDE			_ONEBIT32B(7)#define PPC405_DBCR0_IA1			_ONEBIT32B(8)#define PPC405_DBCR0_IA2			_ONEBIT32B(9)#define PPC405_DBCR0_IA12			_ONEBIT32B(10)#define PPC405_DBCR0_IA12X			_ONEBIT32B(11)#define PPC405_DBCR0_IA3			_ONEBIT32B(12)#define PPC405_DBCR0_IA4			_ONEBIT32B(13)#define PPC405_DBCR0_IA34			_ONEBIT32B(14)#define PPC405_DBCR0_IA34X			_ONEBIT32B(15)#define PPC405_DBCR0_IA12T			_ONEBIT32B(16)#define PPC405_DBCR0_IA34T			_ONEBIT32B(17)#define PPC405_DBCR0_FT				_ONEBIT32B(31)/* * Debug Control Register 1 */#define PPC405_DBCR1_D1R			_ONEBIT32B(0)#define PPC405_DBCR1_D2R			_ONEBIT32B(1)#define PPC405_DBCR1_D1W			_ONEBIT32B(2)#define PPC405_DBCR1_D2W			_ONEBIT32B(3)#define PPC405_DBCR1_D1S_MASK		_BITFIELD32B(5, 3)#define PPC405_DBCR1_D1S_ALL		_BITFIELD32B(5, 0)#define PPC405_DBCR1_D1S_IGN1LSB	_BITFIELD32B(5, 1)#define PPC405_DBCR1_D1S_IGN2LSB	_BITFIELD32B(5, 2)#define PPC405_DBCR1_D1S_IGN5LSB	_BITFIELD32B(5, 3)#define PPC405_DBCR1_D2S_MASK		_BITFIELD32B(7, 3)#define PPC405_DBCR1_D2S_ALL		_BITFIELD32B(7, 0)#define PPC405_DBCR1_D2S_IGN1LSB	_BITFIELD32B(7, 1)#define PPC405_DBCR1_D2S_IGN2LSB	_BITFIELD32B(7, 2)#define PPC405_DBCR1_D2S_IGN5LSB	_BITFIELD32B(7, 3)#define PPC405_DBCR1_DA12			_ONEBIT32B(8)#define PPC405_DBCR1_DA12X			_ONEBIT32B(9)#define PPC405_DBCR1_DV1M_MASK		_BITFIELD32B(13, 3)#define PPC405_DBCR1_DV1M_UNDEF		_BITFIELD32B(13, 0)#define PPC405_DBCR1_DV1M_AND		_BITFIELD32B(13, 1)#define PPC405_DBCR1_DV1M_OR		_BITFIELD32B(13, 2)#define PPC405_DBCR1_DV1M_ANDOR		_BITFIELD32B(13, 3)#define PPC405_DBCR1_DV2M_MASK		_BITFIELD32B(15, 3)#define PPC405_DBCR1_DV2M_UNDEF		_BITFIELD32B(15, 0)#define PPC405_DBCR1_DV2M_AND		_BITFIELD32B(15, 1)#define PPC405_DBCR1_DV2M_OR		_BITFIELD32B(15, 2)#define PPC405_DBCR1_DV2M_ANDOR		_BITFIELD32B(15, 3)#define PPC405_DBCR1_DV1BE_MASK		_BITFIELD32B(19, 0xf)#define PPC405_DBCR1_DV1BE_SHIFT	(31-19)#define PPC405_DBCR1_DV2BE_MASK		_BITFIELD32B(23, 0xf)#define PPC405_DBCR1_DV2BE_SHIFT	(31-23)/* * DMA Channel Control Registers 0-3NYI: *//* * DMA Polarity Configuration RegisterNYI: *//* * DMA Scatter/Gather Command RegisterNYI: *//* * DMA Sleep Mode RegisterNYI: *//* * DMA Status RegisterNYI: *//* * ECC Configuration RegisterNYI: *//* * ECC Error Status RegisterNYI: *//* * (Ethernet) Interrupt Status Enable RegisterNYI: *//* * (Ethernet) Interrupt Status RegisterNYI: *//* * (Ethernet) Mode Register 0NYI: *//* * (Ethernet) Mode Register 1NYI: *//* * (Ethernet) Receive Mode RegisterNYI: *//* * (Ethernet) Receive Low/High Water Mark RegisterNYI:

⌨️ 快捷键说明

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