📄 asmoff.c
字号:
/* * $QNXLicenseC: * Copyright 2008, 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. * $ */#include <arm/sa1100.h>#include <arm/sa1111.h>#include <arm/primecell.h>#include <arm/pxa250.h>#include <arm/hy7201.h>#include <arm/ixp1200.h>#include <arm/ixp2400.h>#include <arm/ixc1100.h>/* This source file isn't included in the startup library. It's only used to build the asmoff.def file. CPU specific definitions*/#include "asmoff.h"/* * SA-1100 specific registers etc. */VALUE(SA1100_INTR_BASE, SA1100_INTR_BASE);VALUE(SA1100_INTR_SIZE, SA1100_INTR_SIZE);VALUE(SA1100_ICIP, SA1100_ICIP);VALUE(SA1100_ICMR, SA1100_ICMR);VALUE(SA1100_TIMER_BASE, SA1100_TIMER_BASE);VALUE(SA1100_TIMER_SIZE, SA1100_TIMER_SIZE);VALUE(SA1100_OSMR0, SA1100_OSMR0);VALUE(SA1100_OSCR, SA1100_OSCR);VALUE(SA1100_OSSR, SA1100_OSSR);VALUE(SA1100_OSSR_M0, SA1100_OSSR_M0);VALUE(SA1100_OIER, SA1100_OIER);VALUE(SA1100_OIER_E0, SA1100_OIER_E0);VALUE(SA1100_GPIO_BASE, SA1100_GPIO_BASE);VALUE(SA1100_GPIO_SIZE, SA1100_GPIO_SIZE);VALUE(SA1100_GRER, SA1100_GRER);VALUE(SA1100_GFER, SA1100_GFER);VALUE(SA1100_GEDR, SA1100_GEDR);VALUE(SA1100_UART3_BASE, SA1100_UART3_BASE);VALUE(SA1100_UART1_BASE, SA1100_UART1_BASE);VALUE(SA1100_UART_SIZE, SA1100_UART_SIZE);VALUE(SA1100_UTDR, SA1100_UTDR);VALUE(SA1100_UTSR0, SA1100_UTSR0);VALUE(SA1100_UTSR0_RBB, SA1100_UTSR0_RBB);VALUE(SA1100_UTSR0_REB, SA1100_UTSR0_REB);VALUE(SA1100_UTSR1, SA1100_UTSR1);VALUE(SA1100_UTSR1_TNF, SA1100_UTSR1_TNF);VALUE(SA1100_UTSR1_RNE, SA1100_UTSR1_RNE);VALUE(SA1100_UTSR1_TBY, SA1100_UTSR1_TBY);VALUE(SA1100_RESET_BASE, SA1100_RESET_BASE);VALUE(SA1100_RESET_SIZE, SA1100_RESET_SIZE);VALUE(SA1100_RSRR, SA1100_RSRR);VALUE(SA1100_RSRR_SWR, SA1100_RSRR_SWR);/* * SA-1111 specific registers */VALUE(SA1111_INTR, SA1111_INTR);VALUE(SA1111_INTR_SIZE, SA1111_INTR_SIZE);VALUE(SA1111_INTEN0, SA1111_INTEN0);VALUE(SA1111_INTEN1, SA1111_INTEN1);VALUE(SA1111_INTSTATCLR0, SA1111_INTSTATCLR0);VALUE(SA1111_INTSTATCLR1, SA1111_INTSTATCLR1);/* * PrimeCell UART specific registers etc. */VALUE(PRIMECELL_UART_SIZE, PRIMECELL_UART_SIZE);VALUE(PRIMECELL_UART_DR, PRIMECELL_UART_DR);VALUE(PRIMECELL_UART_FR, PRIMECELL_UART_FR);VALUE(PRIMECELL_UART_FR_RXFE, PRIMECELL_UART_FR_RXFE);VALUE(PRIMECELL_UART_FR_TXFF, PRIMECELL_UART_FR_TXFF);/* * PXA250 specific registers etc. */VALUE(PXA250_UART_SIZE, PRIMECELL_UART_SIZE);VALUE(PXA250_THR, PXA250_THR);VALUE(PXA250_RBR, PXA250_RBR);VALUE(PXA250_LSR, PXA250_LSR);VALUE(PXA250_LSR_TDRQ, PXA250_LSR_TDRQ);VALUE(PXA250_LSR_DR, PXA250_LSR_DR);VALUE(PXA250_TIMER_BASE, PXA250_TIMER_BASE);VALUE(PXA250_TIMER_SIZE, PXA250_TIMER_SIZE);VALUE(PXA250_OSMR0, PXA250_OSMR0);VALUE(PXA250_OSCR, PXA250_OSCR);VALUE(PXA250_OSSR, PXA250_OSSR);VALUE(PXA250_OSSR_M0, PXA250_OSSR_M0);VALUE(PXA250_OIER, PXA250_OIER);VALUE(PXA250_OIER_E0, PXA250_OIER_E0);VALUE(PXA250_INTR_BASE, PXA250_INTR_BASE);VALUE(PXA250_INTR_SIZE, PXA250_INTR_SIZE);VALUE(PXA250_ICIP, PXA250_ICIP);VALUE(PXA250_ICMR, PXA250_ICMR);VALUE(PXA250_GPIO_BASE, PXA250_GPIO_BASE);VALUE(PXA250_GPIO_SIZE, PXA250_GPIO_SIZE);VALUE(PXA250_GRER0, PXA250_GRER0);VALUE(PXA250_GFER0, PXA250_GFER0);VALUE(PXA250_GEDR0, PXA250_GEDR0);VALUE(PXA250_GEDR1, PXA250_GEDR1);VALUE(PXA250_GEDR2, PXA250_GEDR2);/* * HY7201 specific registers etc. */VALUE(HY7201_PMU_BASE, HY7201_PMU_BASE);VALUE(HY7201_PMU_SIZE, HY7201_PMU_SIZE);VALUE(HY7201_PMU_RESET, HY7201_PMU_RESET);VALUE(HY7201_PMU_RESET_WARM_RESET, HY7201_PMU_RESET_WARM_RESET);VALUE(HY7201_PMU_PMUMODE, HY7201_PMU_PMUMODE);VALUE(HY7201_PMU_PMUMODE_IDLE, HY7201_PMU_PMUMODE_IDLE);VALUE(HY7201_PMU_PMUMODE_RUN, HY7201_PMU_PMUMODE_RUN);VALUE(HY7201_TIMER_BASE, HY7201_TIMER_BASE);VALUE(HY7201_TIMER_BASE0, HY7201_TIMER_BASE0);VALUE(HY7201_TIMER_CNT0, HY7201_TIMER_CNT0);VALUE(HY7201_TIMER_CTL0, HY7201_TIMER_CTL0);VALUE(HY7201_TIMER_CTL_START, HY7201_TIMER_CTL_START);VALUE(HY7201_TIMER_CTL_RESET, HY7201_TIMER_CTL_RESET);VALUE(HY7201_TIMER_CTL_REPEAT, HY7201_TIMER_CTL_REPEAT);VALUE(HY7201_TIMER_TOPCTL, HY7201_TIMER_TOPCTL);VALUE(HY7201_TIMER_TOPCTL_T0INT, HY7201_TIMER_TOPCTL_T0INT);VALUE(HY7201_TIMER_STATUS, HY7201_TIMER_STATUS);VALUE(HY7201_INTC_BASE, HY7201_INTC_BASE);VALUE(HY7201_INTC_ENABLE, HY7201_INTC_ENABLE);VALUE(HY7201_INTC_STATUS, HY7201_INTC_STATUS);VALUE(HY7201_GPIO_BASE, HY7201_GPIO_BASE);VALUE(HY7201_GPIO_PAIS, HY7201_GPIO_PAIS);VALUE(HY7201_GPIO_PAIM, HY7201_GPIO_PAIM);VALUE(HY7201_GPIO_PAIE, HY7201_GPIO_PAIE);VALUE(HY7201_GPIO_PAIC, HY7201_GPIO_PAIC);VALUE(HY7201_GPIO_PBIS, HY7201_GPIO_PBIS);VALUE(HY7201_GPIO_PBIM, HY7201_GPIO_PBIM);VALUE(HY7201_GPIO_PBIE, HY7201_GPIO_PBIE);VALUE(HY7201_GPIO_PBIC, HY7201_GPIO_PBIC);VALUE(HY7201_GPIO_PCIS, HY7201_GPIO_PCIS);VALUE(HY7201_GPIO_PCIM, HY7201_GPIO_PCIM);VALUE(HY7201_GPIO_PCIE, HY7201_GPIO_PCIE);VALUE(HY7201_GPIO_PCIC, HY7201_GPIO_PCIC);VALUE(HY7201_GPIO_PDIS, HY7201_GPIO_PDIS);VALUE(HY7201_GPIO_PDIM, HY7201_GPIO_PDIM);VALUE(HY7201_GPIO_PDIE, HY7201_GPIO_PDIE);VALUE(HY7201_GPIO_PDIC, HY7201_GPIO_PCIC);/* * IXP1200 specific registers etc. */VALUE(IXP1200_UART_BASE, IXP1200_UART_BASE);VALUE(IXP1200_UART_SIZE, IXP1200_UART_SIZE);VALUE(IXP1200_UART_SR, IXP1200_UART_SR);VALUE(IXP1200_UART_SR_RXR, IXP1200_UART_SR_RXR);VALUE(IXP1200_UART_SR_TXR, IXP1200_UART_SR_TXR);VALUE(IXP1200_UART_DR, IXP1200_UART_DR);VALUE(IXP1200_UART_CR, IXP1200_UART_CR);VALUE(IXP1200_UART_CR_RIE, IXP1200_UART_CR_RIE);VALUE(IXP1200_UART_CR_XIE, IXP1200_UART_CR_XIE);VALUE(IXP1200_TIMER_BASE, IXP1200_TIMER_BASE);VALUE(IXP1200_TIMER_SIZE, IXP1200_TIMER_SIZE);VALUE(IXP1200_TIMER_1_LOAD, IXP1200_TIMER_1_LOAD);VALUE(IXP1200_TIMER_1_VALUE, IXP1200_TIMER_1_VALUE);VALUE(IXP1200_TIMER_1_CLEAR, IXP1200_TIMER_1_CLEAR);VALUE(IXP1200_TIMER_1_CONTROL, IXP1200_TIMER_1_CONTROL);VALUE(IXP1200_TIMER_CONTROL_PERIODIC, IXP1200_TIMER_CONTROL_PERIODIC);VALUE(IXP1200_IRQ_BASE, IXP1200_IRQ_BASE);VALUE(IXP1200_IRQ_SIZE, IXP1200_IRQ_SIZE);VALUE(IXP1200_PCI_CFG_BASE, IXP1200_PCI_CFG_BASE);VALUE(IXP1200_PCI_CFG_SIZE, IXP1200_PCI_CFG_SIZE);VALUE(IXP1200_IRQ_STATUS, IXP1200_IRQ_STATUS);VALUE(IXP1200_IRQ_ENABLE_SET, IXP1200_IRQ_ENABLE_SET);VALUE(IXP1200_IRQ_ENABLE_CLEAR, IXP1200_IRQ_ENABLE_CLEAR);VALUE(IXP1200_FBI_BASE, IXP1200_FBI_BASE);VALUE(IXP1200_FBI_SIZE, IXP1200_FBI_SIZE);VALUE(IXP1200_IREG, IXP1200_IREG);VALUE(IXP1200_IREG_CINTIRQ, IXP1200_IREG_CINTIRQ);VALUE(IXP1200_IREG_UEIRQ, IXP1200_IREG_UEIRQ);VALUE(IXP1200_IXP1200_RESET, IXP1200_IXP1200_RESET);/* * IXP2400 specific registers etc. */VALUE(IXP2400_UART_BASE, IXP2400_UART_BASE);VALUE(IXP2400_UART_SIZE, IXP2400_UART_SIZE);VALUE(IXP2400_TIMER_BASE, IXP2400_TIMER_BASE);VALUE(IXP2400_TIMER_SIZE, IXP2400_TIMER_SIZE);VALUE(IXP2400_TIMER1_LOAD, IXP2400_TIMER1_LOAD);VALUE(IXP2400_TIMER1_STATUS, IXP2400_TIMER1_STATUS);VALUE(IXP2400_TIMER1_CLEAR, IXP2400_TIMER1_CLEAR);VALUE(IXP2400_TIMER1_CONTROL, IXP2400_TIMER1_CONTROL);VALUE(IXP2400_TIMER_CONTROL_ACT, IXP2400_TIMER_CONTROL_ACT);VALUE(IXP2400_IRQ_BASE, IXP2400_IRQ_BASE);VALUE(IXP2400_IRQ_SIZE, IXP2400_IRQ_SIZE);VALUE(IXP2400_GCAP_BASE, IXP2400_GCAP_BASE);VALUE(IXP2400_GCAP_SIZE, IXP2400_GCAP_SIZE);VALUE(IXP2400_GCAP_RESET0, IXP2400_GCAP_RESET0);VALUE(IXP2400_GCAP_RESET0_RSTALL, IXP2400_GCAP_RESET0_RSTALL);VALUE(IXP2400_IRQ_STATUS, IXP2400_IRQ_STATUS);VALUE(IXP2400_IRQ_ENABLE_SET, IXP2400_IRQ_ENABLE_SET);VALUE(IXP2400_IRQ_ENABLE, IXP2400_IRQ_ENABLE);VALUE(IXP2400_IRQ_ENABLE_CLR, IXP2400_IRQ_ENABLE_CLR);VALUE(IXP2400_PCI_CSR_BASE, IXP2400_PCI_CSR_BASE);VALUE(IXP2400_PCI_CSR_SIZE, IXP2400_PCI_CSR_SIZE);VALUE(IXP2400_XSCALE_INT_STATUS, IXP2400_XSCALE_INT_STATUS);VALUE(IXP2400_XSCALE_INT_ENABLE, IXP2400_XSCALE_INT_ENABLE);/* * IXP425 (IXC1100) specific registers etc. */VALUE(IXP425_TIMER_BASE, IXP425_TIMER_BASE);VALUE(IXP425_TIMER_SIZE, IXP425_TIMER_SIZE);VALUE(IXP425_TIMER_STATUS_OST_BITS, IXP425_TIMER_STATUS_OST_BITS);VALUE(IXP425_TIMER_STATUS_OST_TIMER0, IXP425_TIMER_STATUS_OST_TIMER0);VALUE(IXP425_TIMER_STATUS, IXP425_TIMER_STATUS);VALUE(IXP425_TIMER0_RELOAD, IXP425_TIMER0_RELOAD);VALUE(IXP425_TIMER0_RELOAD_EN, IXP425_TIMER0_RELOAD_EN);VALUE(IXP425_TIMER0_VAL, IXP425_TIMER0_VAL);VALUE(IXP425_IRQ_SIZE, IXP425_IRQ_SIZE);VALUE(IXP425_IRQ_BASE, IXP425_IRQ_BASE);VALUE(IXP425_IRQ_ENABLE, IXP425_IRQ_ENABLE);VALUE(IXP425_IRQ_STATUS, IXP425_IRQ_STATUS);VALUE(IXP425_IRQ_HIPRIO, IXP425_IRQ_HIPRIO);VALUE(IXP425_IRQ_GPIO8, IXP425_IRQ_GPIO8);VALUE(IXP425_IRQ_GPIO11, IXP425_IRQ_GPIO11);VALUE(IXP425_IRQ_ENABLE, IXP425_IRQ_ENABLE);VALUE(IXP425_IRQ_STATUS, IXP425_IRQ_STATUS);VALUE(IXP425_IRQ_HIPRIO, IXP425_IRQ_HIPRIO);VALUE(IXP425_GPIO_SIZE, IXP425_GPIO_SIZE);VALUE(IXP425_GPIO_BASE, IXP425_GPIO_BASE);VALUE(IXP425_GPIO_GPISR, IXP425_GPIO_GPISR);/* * IXP465 (IXC1100) specific registers etc. */VALUE(IXP465_IRQ_SIZE, IXP465_IRQ_SIZE);VALUE(IXP465_IRQ_ENABLE2, IXP465_IRQ_ENABLE2);VALUE(IXP465_IRQ_STATUS2, IXP465_IRQ_STATUS2);__SRCVERSION("asmoff.c $Rev: 206932 $");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -