Mercurial > flash_v2
comparison packages/hal/sh/arch/current/include/hal_intr.h @ 80:2085233a121a ecos-sw-2000-04-07
Merge from eCos master repository on 2000-04-07-07:52:29-BST
| author | jlarmour |
|---|---|
| date | Fri, 07 Apr 2000 07:45:04 +0000 |
| parents | 435cced73e2f |
| children | 6736c52df507 |
comparison
equal
deleted
inserted
replaced
| 79:5b39a5a40ccd | 80:2085233a121a |
|---|---|
| 49 //####DESCRIPTIONEND#### | 49 //####DESCRIPTIONEND#### |
| 50 // | 50 // |
| 51 //========================================================================== | 51 //========================================================================== |
| 52 | 52 |
| 53 #include <pkgconf/hal.h> | 53 #include <pkgconf/hal.h> |
| 54 #include CYGBLD_HAL_CPU_MODULES_H // INTC module selection | |
| 54 | 55 |
| 55 // More include statements below. First part of this file must be | 56 // More include statements below. First part of this file must be |
| 56 // usable for both assembly and C files, so only use defines here. | 57 // usable for both assembly and C files, so only use defines here. |
| 57 | 58 |
| 58 //-------------------------------------------------------------------------- | 59 //-------------------------------------------------------------------------- |
| 125 #define CYGNUM_HAL_INTERRUPT_SCI_TEI 28 | 126 #define CYGNUM_HAL_INTERRUPT_SCI_TEI 28 |
| 126 #define CYGNUM_HAL_INTERRUPT_WDT_ITI 29 | 127 #define CYGNUM_HAL_INTERRUPT_WDT_ITI 29 |
| 127 #define CYGNUM_HAL_INTERRUPT_REF_RCMI 30 | 128 #define CYGNUM_HAL_INTERRUPT_REF_RCMI 30 |
| 128 #define CYGNUM_HAL_INTERRUPT_REF_ROVI 31 | 129 #define CYGNUM_HAL_INTERRUPT_REF_ROVI 31 |
| 129 | 130 |
| 131 #define CYGNUM_HAL_ISR_MAX CYGNUM_HAL_INTERRUPT_REF_ROVI | |
| 132 | |
| 130 | 133 |
| 131 // CYGNUM_HAL_ISR_COUNT must match CYG_ISR_TABLE_SIZE defined in vectors.S. | 134 // CYGNUM_HAL_ISR_COUNT must match CYG_ISR_TABLE_SIZE defined in vectors.S. |
| 132 #define CYGNUM_HAL_ISR_MIN CYGNUM_HAL_INTERRUPT_NMI | 135 #define CYGNUM_HAL_ISR_MIN CYGNUM_HAL_INTERRUPT_NMI |
| 133 #define CYGNUM_HAL_ISR_MAX CYGNUM_HAL_INTERRUPT_REF_ROVI | |
| 134 #define CYGNUM_HAL_ISR_COUNT ( CYGNUM_HAL_ISR_MAX + 1 ) | 136 #define CYGNUM_HAL_ISR_COUNT ( CYGNUM_HAL_ISR_MAX + 1 ) |
| 135 | 137 |
| 136 // Exception vectors. These are the values used when passed out to an | 138 // Exception vectors. These are the values used when passed out to an |
| 137 // external exception handler using cyg_hal_deliver_exception() | 139 // external exception handler using cyg_hal_deliver_exception() |
| 138 | 140 |
| 414 iprX |= (_level_)*CYGARC_REG_IPRA_RTC_PRI1; \ | 416 iprX |= (_level_)*CYGARC_REG_IPRA_RTC_PRI1; \ |
| 415 HAL_WRITE_UINT16(CYGARC_REG_IPRA, iprX); \ | 417 HAL_WRITE_UINT16(CYGARC_REG_IPRA, iprX); \ |
| 416 break; \ | 418 break; \ |
| 417 \ | 419 \ |
| 418 /* IPRB */ \ | 420 /* IPRB */ \ |
| 419 case CYGNUM_HAL_INTERRUPT_WDT_ITI: \ | |
| 420 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 421 iprX &= ~CYGARC_REG_IPRB_WDT_MASK; \ | |
| 422 iprX |= (_level_)*CYGARC_REG_IPRB_WDT_PRI1; \ | |
| 423 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 424 break; \ | |
| 425 case CYGNUM_HAL_INTERRUPT_REF_RCMI: \ | |
| 426 case CYGNUM_HAL_INTERRUPT_REF_ROVI: \ | |
| 427 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 428 iprX &= ~CYGARC_REG_IPRB_REF_MASK; \ | |
| 429 iprX |= (_level_)*CYGARC_REG_IPRB_REF_PRI1; \ | |
| 430 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 431 break; \ | |
| 432 case CYGNUM_HAL_INTERRUPT_SCI_ERI: \ | 421 case CYGNUM_HAL_INTERRUPT_SCI_ERI: \ |
| 433 case CYGNUM_HAL_INTERRUPT_SCI_RXI: \ | 422 case CYGNUM_HAL_INTERRUPT_SCI_RXI: \ |
| 434 case CYGNUM_HAL_INTERRUPT_SCI_TXI: \ | 423 case CYGNUM_HAL_INTERRUPT_SCI_TXI: \ |
| 435 case CYGNUM_HAL_INTERRUPT_SCI_TEI: \ | 424 case CYGNUM_HAL_INTERRUPT_SCI_TEI: \ |
| 436 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ | 425 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ |
| 437 iprX &= ~CYGARC_REG_IPRB_SCI_MASK; \ | 426 iprX &= ~CYGARC_REG_IPRB_SCI_MASK; \ |
| 438 iprX |= (_level_)*CYGARC_REG_IPRB_SCI_PRI1; \ | 427 iprX |= (_level_)*CYGARC_REG_IPRB_SCI_PRI1; \ |
| 428 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 429 break; \ | |
| 430 case CYGNUM_HAL_INTERRUPT_WDT_ITI: \ | |
| 431 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 432 iprX &= ~CYGARC_REG_IPRB_WDT_MASK; \ | |
| 433 iprX |= (_level_)*CYGARC_REG_IPRB_WDT_PRI1; \ | |
| 434 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 435 break; \ | |
| 436 case CYGNUM_HAL_INTERRUPT_REF_RCMI: \ | |
| 437 case CYGNUM_HAL_INTERRUPT_REF_ROVI: \ | |
| 438 HAL_READ_UINT16(CYGARC_REG_IPRB, iprX); \ | |
| 439 iprX &= ~CYGARC_REG_IPRB_REF_MASK; \ | |
| 440 iprX |= (_level_)*CYGARC_REG_IPRB_REF_PRI1; \ | |
| 439 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ | 441 HAL_WRITE_UINT16(CYGARC_REG_IPRB, iprX); \ |
| 440 break; \ | 442 break; \ |
| 441 \ | 443 \ |
| 442 case CYGNUM_HAL_INTERRUPT_RESERVED_1E0: \ | 444 case CYGNUM_HAL_INTERRUPT_RESERVED_1E0: \ |
| 443 case CYGNUM_HAL_INTERRUPT_RESERVED_3E0: \ | 445 case CYGNUM_HAL_INTERRUPT_RESERVED_3E0: \ |
