📄 hal_platform_ints.h
字号:
#ifndef CYGONCE_HAL_PLATFORM_INTS_H#define CYGONCE_HAL_PLATFORM_INTS_H//==========================================================================//// hal_platform_ints.h//// HAL Interrupt and clock support////==========================================================================//####COPYRIGHTBEGIN####// // ------------------------------------------- // The contents of this file are subject to the Red Hat eCos Public License // Version 1.1 (the "License"); you may not use this file except in // compliance with the License. You may obtain a copy of the License at // http://www.redhat.com/ // // Software distributed under the License is distributed on an "AS IS" // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the // License for the specific language governing rights and limitations under // the License. // // The Original Code is eCos - Embedded Configurable Operating System, // released September 30, 1998. // // The Initial Developer of the Original Code is Red Hat. // Portions created by Red Hat are // Copyright (C) 1998, 1999, 2000 Red Hat, Inc. // All Rights Reserved. // ------------------------------------------- // //####COPYRIGHTEND####//==========================================================================//#####DESCRIPTIONBEGIN####//// Author(s): msalter// Contributors: // Date: 2000-10-10// Purpose: Define Interrupt support// Description: The interrupt details for the IQ80310 are defined here.// Usage:// #include <cyg/hal/hal_platform_ints.h>// ...// ////####DESCRIPTIONEND####////==========================================================================// *** 80200 CPU ***#define CYGNUM_HAL_INTERRUPT_reserved0 0#define CYGNUM_HAL_INTERRUPT_PMU_PMN0_OVFL 1 // See Ch.12 - Performance Mon.#define CYGNUM_HAL_INTERRUPT_PMU_PMN1_OVFL 2 // PMU counter 0/1 overflow#define CYGNUM_HAL_INTERRUPT_PMU_CCNT_OVFL 3 // PMU clock overflow#define CYGNUM_HAL_INTERRUPT_BCU_INTERRUPT 4 // See Ch.11 - Bus Control Unit#define CYGNUM_HAL_INTERRUPT_NIRQ 5 // external IRQ#define CYGNUM_HAL_INTERRUPT_NFIQ 6 // external FIQ// *** XINT6 interrupts ***#define CYGNUM_HAL_INTERRUPT_DMA_0 7#define CYGNUM_HAL_INTERRUPT_DMA_1 8#define CYGNUM_HAL_INTERRUPT_DMA_2 9#define CYGNUM_HAL_INTERRUPT_GTSC 10 // Global Time Stamp Counter#define CYGNUM_HAL_INTERRUPT_PEC 11 // Performance Event Counter#define CYGNUM_HAL_INTERRUPT_AAIP 12 // application accelerator unit// *** XINT7 interrupts ***// I2C interrupts#define CYGNUM_HAL_INTERRUPT_I2C_TX_EMPTY 13#define CYGNUM_HAL_INTERRUPT_I2C_RX_FULL 14#define CYGNUM_HAL_INTERRUPT_I2C_BUS_ERR 15#define CYGNUM_HAL_INTERRUPT_I2C_STOP 16#define CYGNUM_HAL_INTERRUPT_I2C_LOSS 17#define CYGNUM_HAL_INTERRUPT_I2C_ADDRESS 18// Messaging Unit interrupts#define CYGNUM_HAL_INTERRUPT_MESSAGE_0 19#define CYGNUM_HAL_INTERRUPT_MESSAGE_1 20#define CYGNUM_HAL_INTERRUPT_DOORBELL 21#define CYGNUM_HAL_INTERRUPT_NMI_DOORBELL 22 // FIQ#define CYGNUM_HAL_INTERRUPT_QUEUE_POST 23#define CYGNUM_HAL_INTERRUPT_OUTBOUND_QUEUE_FULL 24 // FIQ#define CYGNUM_HAL_INTERRUPT_INDEX_REGISTER 25// PCI Address Translation Unit#define CYGNUM_HAL_INTERRUPT_BIST 26// *** External board interrupts (XINT3) ***#define CYGNUM_HAL_INTERRUPT_TIMER 27 // external timer#define CYGNUM_HAL_INTERRUPT_ETHERNET 28 // onboard enet#define CYGNUM_HAL_INTERRUPT_SERIAL_A 29 // 16x50 uart A#define CYGNUM_HAL_INTERRUPT_SERIAL_B 30 // 16x50 uart B#define CYGNUM_HAL_INTERRUPT_PCI_S_INTD 31 // secondary PCI INTD// The hardware doesn't (yet?) provide masking or status for these// even though they can trigger cpu interrupts. ISRs will need to// poll the device to see if the device actually triggered the// interrupt.#define CYGNUM_HAL_INTERRUPT_PCI_S_INTC 32 // secondary PCI INTC#define CYGNUM_HAL_INTERRUPT_PCI_S_INTB 33 // secondary PCI INTB#define CYGNUM_HAL_INTERRUPT_PCI_S_INTA 34 // secondary PCI INTA// *** NMI Interrupts go to FIQ ***#define CYGNUM_HAL_INTERRUPT_MCU_ERR 35#define CYGNUM_HAL_INTERRUPT_PATU_ERR 36#define CYGNUM_HAL_INTERRUPT_SATU_ERR 37#define CYGNUM_HAL_INTERRUPT_PBDG_ERR 38#define CYGNUM_HAL_INTERRUPT_SBDG_ERR 39#define CYGNUM_HAL_INTERRUPT_DMA0_ERR 40#define CYGNUM_HAL_INTERRUPT_DMA1_ERR 41#define CYGNUM_HAL_INTERRUPT_DMA2_ERR 42#define CYGNUM_HAL_INTERRUPT_MU_ERR 43#define CYGNUM_HAL_INTERRUPT_reserved52 44#define CYGNUM_HAL_INTERRUPT_AAU_ERR 45#define CYGNUM_HAL_INTERRUPT_BIU_ERR 46// *** ATU FIQ sources ***#define CYGNUM_HAL_INTERRUPT_P_SERR 47#define CYGNUM_HAL_INTERRUPT_S_SERR 48#define CYGNUM_HAL_ISR_MIN 0#define CYGNUM_HAL_ISR_MAX 48#define CYGNUM_HAL_ISR_COUNT (CYGNUM_HAL_ISR_MAX+1)// The vector used by the Real time clock#define CYGNUM_HAL_INTERRUPT_RTC CYGNUM_HAL_INTERRUPT_TIMER//#define CYGNUM_HAL_INTERRUPT_RTC CYGNUM_HAL_INTERRUPT_PMU_CCNT_OVFLextern void hal_delay_us(cyg_uint32 usecs);#define HAL_DELAY_US(n) hal_delay_us(n);#endif // CYGONCE_HAL_PLATFORM_INTS_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -