Changeset 8b2ecf85 in rtems
- Timestamp:
- 05/23/96 15:37:38 (27 years ago)
- Branches:
- 4.10, 4.11, 4.8, 4.9, 5, master
- Children:
- 9854e336
- Parents:
- 64b976a
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
c/src/exec/libcsupport/src/libio.c
r64b976a r8b2ecf85 16 16 #if defined(solaris2) 17 17 #define O_NDELAY O_NONBLOCK 18 #elif 18 #elif defined(RTEMS_NEWLIB) 19 19 #define O_NDELAY _FNBIO 20 20 #endif -
c/src/exec/libcsupport/src/malloc.c
r64b976a r8b2ecf85 253 253 254 254 new_area = malloc( size ); 255 256 MSBUMP(malloc_calls, -1); /* subtract off the malloc */ 257 255 258 if ( !new_area ) { 256 259 free( ptr ); -
c/src/exec/libcsupport/src/newlibc.c
r64b976a r8b2ecf85 132 132 */ 133 133 134 #ifdef RTEMS_UNIX134 #ifdef NEED_SETVBUF 135 135 rtems_extension 136 136 libc_begin_hook(rtems_tcb *current_task) … … 275 275 libc_extension.thread_create = libc_create_hook; 276 276 libc_extension.thread_start = libc_start_hook; 277 #ifdef RTEMS_UNIX277 #ifdef NEED_SETVBUF 278 278 libc_extension.thread_begin = libc_begin_hook; 279 279 #endif -
c/src/exec/score/cpu/hppa1.1/cpu.h
r64b976a r8b2ecf85 268 268 269 269 /* 270 * HPPA has 32 interrupts, then 32 external interrupts270 * HPPA has 32 traps, then 32 external interrupts 271 271 * Rtems (_ISR_Vector_Table) is aware ONLY of the first 32 272 272 * The BSP is aware of the external interrupts and possibly more. … … 274 274 */ 275 275 276 #define CPU_INTERRUPT_NUMBER_OF_VECTORS (HPPA_INTERNAL_ INTERRUPTS)276 #define CPU_INTERRUPT_NUMBER_OF_VECTORS (HPPA_INTERNAL_TRAPS) 277 277 #define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (CPU_INTERRUPT_NUMBER_OF_VECTORS - 1) 278 278 … … 319 319 */ 320 320 321 /* Disable interrupts; returning previous level in_level */322 #define _CPU_ISR_Disable( _isr_ cookie) \321 /* Disable interrupts; returning previous psw bits in _isr_level */ 322 #define _CPU_ISR_Disable( _isr_level ) \ 323 323 do { \ 324 HPPA_ASM_RSM(HPPA_PSW_I, _isr_cookie); \ 324 HPPA_ASM_RSM(HPPA_PSW_I, _isr_level); \ 325 if (_isr_level & HPPA_PSW_I) _isr_level = 0; \ 326 else _isr_level = 1; \ 325 327 } while(0) 326 328 327 329 /* Enable interrupts to previous level from _CPU_ISR_Disable 328 330 * does not change 'level' */ 329 #define _CPU_ISR_Enable( _isr_ cookie) \331 #define _CPU_ISR_Enable( _isr_level ) \ 330 332 { \ 331 HPPA_ASM_MTSM( _isr_cookie ); \ 333 register int _ignore; \ 334 if (_isr_level == 0) HPPA_ASM_SSM(HPPA_PSW_I, _ignore); \ 335 else HPPA_ASM_RSM(HPPA_PSW_I, _ignore); \ 332 336 } 333 337 334 338 /* restore, then disable interrupts; does not change level */ 335 #define _CPU_ISR_Flash( _isr_ cookie) \339 #define _CPU_ISR_Flash( _isr_level ) \ 336 340 { \ 337 register int _ignore; \ 338 _CPU_ISR_Enable( _isr_cookie ); \ 339 _CPU_ISR_Disable( _ignore ); \ 341 if (_isr_level == 0) \ 342 { \ 343 register int _ignore; \ 344 HPPA_ASM_SSM(HPPA_PSW_I, _ignore); \ 345 HPPA_ASM_RSM(HPPA_PSW_I, _ignore); \ 346 } \ 340 347 } 341 348 … … 569 576 570 577 578 /* 579 * The raw interrupt handler for external interrupts 580 */ 581 582 extern void _Generic_ISR_Handler( 583 void 584 ); 585 586 571 587 /* The following routine swaps the endian format of an unsigned int. 572 588 * It must be static so it can be referenced indirectly. … … 583 599 } 584 600 585 /*586 * Unused; I think it should go away587 */588 589 #if 0590 #define enable_tracing()591 #endif592 593 601 #endif /* ! ASM */ 594 602 -
c/src/exec/score/cpu/hppa1.1/cpu_asm.s
r64b976a r8b2ecf85 425 425 ldw R28_OFFSET(arg0),%r28 426 426 ldw R29_OFFSET(arg0),%r29 427 # skipping r30 (sp) until we turn off interrupts 428 ldw R31_OFFSET(arg0),%r31 429 430 # Turn off Q & R & I so we can write r30 and interrupt control registers 431 rsm HPPA_PSW_Q + HPPA_PSW_R + HPPA_PSW_I, %r0 432 433 # now safe to restore r30 427 434 ldw R30_OFFSET(arg0),%r30 428 ldw R31_OFFSET(arg0),%r31429 430 # Turn off Q & R & I so we can write interrupt control registers431 rsm HPPA_PSW_Q + HPPA_PSW_R + HPPA_PSW_I, %r0432 435 433 436 ldw IPSW_OFFSET(arg0), %r25 -
c/src/exec/score/cpu/hppa1.1/hppa.h
r64b976a r8b2ecf85 125 125 * 126 126 * 0-31 basic traps and interrupts defined by HPPA architecture 127 * 32-6332 external interrupts128 * 64-... bsp defined129 */ 130 131 #define HPPA_ INTERRUPT_NON_EXISTENT 0127 * 0-31 32 external interrupts 128 * 32-... bsp defined 129 */ 130 131 #define HPPA_TRAP_NON_EXISTENT 0 132 132 /* group 1 */ 133 #define HPPA_ INTERRUPT_HIGH_PRIORITY_MACHINE_CHECK 1133 #define HPPA_TRAP_HIGH_PRIORITY_MACHINE_CHECK 1 134 134 /* group 2 */ 135 #define HPPA_ INTERRUPT_POWER_FAIL 2136 #define HPPA_ INTERRUPT_RECOVERY_COUNTER 3137 #define HPPA_ INTERRUPT_EXTERNAL_INTERRUPT 4138 #define HPPA_ INTERRUPT_LOW_PRIORITY_MACHINE_CHECK 5139 #define HPPA_ INTERRUPT_PERFORMANCE_MONITOR 29135 #define HPPA_TRAP_POWER_FAIL 2 136 #define HPPA_TRAP_RECOVERY_COUNTER 3 137 #define HPPA_TRAP_EXTERNAL_INTERRUPT 4 138 #define HPPA_TRAP_LOW_PRIORITY_MACHINE_CHECK 5 139 #define HPPA_TRAP_PERFORMANCE_MONITOR 29 140 140 /* group 3 */ 141 #define HPPA_ INTERRUPT_INSTRUCTION_TLB_MISS 6142 #define HPPA_ INTERRUPT_INSTRUCTION_MEMORY_PROTECTION 7143 #define HPPA_ INTERRUPT_INSTRUCTION_DEBUG 30144 #define HPPA_ INTERRUPT_ILLEGAL_INSTRUCTION 8145 #define HPPA_ INTERRUPT_BREAK_INSTRUCTION 9146 #define HPPA_ INTERRUPT_PRIVILEGED_OPERATION 10147 #define HPPA_ INTERRUPT_PRIVILEGED_REGISTER 11148 #define HPPA_ INTERRUPT_OVERFLOW 12149 #define HPPA_ INTERRUPT_CONDITIONAL 13150 #define HPPA_ INTERRUPT_ASSIST_EXCEPTION 14151 #define HPPA_ INTERRUPT_DATA_TLB_MISS 15152 #define HPPA_ INTERRUPT_NON_ACCESS_INSTRUCTION_TLB_MISS 16153 #define HPPA_ INTERRUPT_NON_ACCESS_DATA_TLB_MISS 17154 #define HPPA_ INTERRUPT_DATA_MEMORY_ACCESS_RIGHTS 26155 #define HPPA_ INTERRUPT_DATA_MEMORY_PROTECTION_ID 27156 #define HPPA_ INTERRUPT_UNALIGNED_DATA_REFERENCE 28157 #define HPPA_ INTERRUPT_DATA_MEMORY_PROTECTION 18158 #define HPPA_ INTERRUPT_DATA_MEMORY_BREAK 19159 #define HPPA_ INTERRUPT_TLB_DIRTY_BIT 20160 #define HPPA_ INTERRUPT_PAGE_REFERENCE 21161 #define HPPA_ INTERRUPT_DATA_DEBUG 31162 #define HPPA_ INTERRUPT_ASSIST_EMULATION 22141 #define HPPA_TRAP_INSTRUCTION_TLB_MISS 6 142 #define HPPA_TRAP_INSTRUCTION_MEMORY_PROTECTION 7 143 #define HPPA_TRAP_INSTRUCTION_DEBUG 30 144 #define HPPA_TRAP_ILLEGAL_INSTRUCTION 8 145 #define HPPA_TRAP_BREAK_INSTRUCTION 9 146 #define HPPA_TRAP_PRIVILEGED_OPERATION 10 147 #define HPPA_TRAP_PRIVILEGED_REGISTER 11 148 #define HPPA_TRAP_OVERFLOW 12 149 #define HPPA_TRAP_CONDITIONAL 13 150 #define HPPA_TRAP_ASSIST_EXCEPTION 14 151 #define HPPA_TRAP_DATA_TLB_MISS 15 152 #define HPPA_TRAP_NON_ACCESS_INSTRUCTION_TLB_MISS 16 153 #define HPPA_TRAP_NON_ACCESS_DATA_TLB_MISS 17 154 #define HPPA_TRAP_DATA_MEMORY_ACCESS_RIGHTS 26 155 #define HPPA_TRAP_DATA_MEMORY_PROTECTION_ID 27 156 #define HPPA_TRAP_UNALIGNED_DATA_REFERENCE 28 157 #define HPPA_TRAP_DATA_MEMORY_PROTECTION 18 158 #define HPPA_TRAP_DATA_MEMORY_BREAK 19 159 #define HPPA_TRAP_TLB_DIRTY_BIT 20 160 #define HPPA_TRAP_PAGE_REFERENCE 21 161 #define HPPA_TRAP_DATA_DEBUG 31 162 #define HPPA_TRAP_ASSIST_EMULATION 22 163 163 /* group 4 */ 164 #define HPPA_ INTERRUPT_HIGHER_PRIVILEGE_TRANSFER 23165 #define HPPA_ INTERRUPT_LOWER_PRIVILEGE_TRANSFER 24166 #define HPPA_ INTERRUPT_TAKEN_BRANCH 25167 168 #define HPPA_INTER RUPT_ON_CHIP_MAX 31164 #define HPPA_TRAP_HIGHER_PRIVILEGE_TRANSFER 23 165 #define HPPA_TRAP_LOWER_PRIVILEGE_TRANSFER 24 166 #define HPPA_TRAP_TAKEN_BRANCH 25 167 168 #define HPPA_INTERNAL_TRAPS 32 169 169 170 170 /* External Interrupts via interrupt 4 */ 171 171 172 #define HPPA_INTERRUPT_EXTERNAL_BASE 32 173 174 #define HPPA_INTERRUPT_EXTERNAL_0 32 175 #define HPPA_INTERRUPT_EXTERNAL_1 33 176 #define HPPA_INTERRUPT_EXTERNAL_2 34 177 #define HPPA_INTERRUPT_EXTERNAL_3 35 178 #define HPPA_INTERRUPT_EXTERNAL_4 36 179 #define HPPA_INTERRUPT_EXTERNAL_5 37 180 #define HPPA_INTERRUPT_EXTERNAL_6 38 181 #define HPPA_INTERRUPT_EXTERNAL_7 39 182 #define HPPA_INTERRUPT_EXTERNAL_8 40 183 #define HPPA_INTERRUPT_EXTERNAL_9 41 184 #define HPPA_INTERRUPT_EXTERNAL_10 42 185 #define HPPA_INTERRUPT_EXTERNAL_11 43 186 #define HPPA_INTERRUPT_EXTERNAL_12 44 187 #define HPPA_INTERRUPT_EXTERNAL_13 45 188 #define HPPA_INTERRUPT_EXTERNAL_14 46 189 #define HPPA_INTERRUPT_EXTERNAL_15 47 190 #define HPPA_INTERRUPT_EXTERNAL_16 48 191 #define HPPA_INTERRUPT_EXTERNAL_17 49 192 #define HPPA_INTERRUPT_EXTERNAL_18 50 193 #define HPPA_INTERRUPT_EXTERNAL_19 51 194 #define HPPA_INTERRUPT_EXTERNAL_20 52 195 #define HPPA_INTERRUPT_EXTERNAL_21 53 196 #define HPPA_INTERRUPT_EXTERNAL_22 54 197 #define HPPA_INTERRUPT_EXTERNAL_23 55 198 #define HPPA_INTERRUPT_EXTERNAL_24 56 199 #define HPPA_INTERRUPT_EXTERNAL_25 57 200 #define HPPA_INTERRUPT_EXTERNAL_26 58 201 #define HPPA_INTERRUPT_EXTERNAL_27 59 202 #define HPPA_INTERRUPT_EXTERNAL_28 60 203 #define HPPA_INTERRUPT_EXTERNAL_29 61 204 #define HPPA_INTERRUPT_EXTERNAL_30 62 205 #define HPPA_INTERRUPT_EXTERNAL_31 63 206 207 #define HPPA_INTERRUPT_EXTERNAL_INTERVAL_TIMER HPPA_INTERRUPT_EXTERNAL_0 208 #define HPPA_EXTERNAL_INTERRUPTS 32 209 #define HPPA_INTERNAL_INTERRUPTS 32 172 #define HPPA_INTERRUPT_EXTERNAL_0 0 173 #define HPPA_INTERRUPT_EXTERNAL_1 1 174 #define HPPA_INTERRUPT_EXTERNAL_2 2 175 #define HPPA_INTERRUPT_EXTERNAL_3 3 176 #define HPPA_INTERRUPT_EXTERNAL_4 4 177 #define HPPA_INTERRUPT_EXTERNAL_5 5 178 #define HPPA_INTERRUPT_EXTERNAL_6 6 179 #define HPPA_INTERRUPT_EXTERNAL_7 7 180 #define HPPA_INTERRUPT_EXTERNAL_8 8 181 #define HPPA_INTERRUPT_EXTERNAL_9 9 182 #define HPPA_INTERRUPT_EXTERNAL_10 10 183 #define HPPA_INTERRUPT_EXTERNAL_11 11 184 #define HPPA_INTERRUPT_EXTERNAL_12 12 185 #define HPPA_INTERRUPT_EXTERNAL_13 13 186 #define HPPA_INTERRUPT_EXTERNAL_14 14 187 #define HPPA_INTERRUPT_EXTERNAL_15 15 188 #define HPPA_INTERRUPT_EXTERNAL_16 16 189 #define HPPA_INTERRUPT_EXTERNAL_17 17 190 #define HPPA_INTERRUPT_EXTERNAL_18 18 191 #define HPPA_INTERRUPT_EXTERNAL_19 19 192 #define HPPA_INTERRUPT_EXTERNAL_20 20 193 #define HPPA_INTERRUPT_EXTERNAL_21 21 194 #define HPPA_INTERRUPT_EXTERNAL_22 22 195 #define HPPA_INTERRUPT_EXTERNAL_23 23 196 #define HPPA_INTERRUPT_EXTERNAL_24 24 197 #define HPPA_INTERRUPT_EXTERNAL_25 25 198 #define HPPA_INTERRUPT_EXTERNAL_26 26 199 #define HPPA_INTERRUPT_EXTERNAL_27 27 200 #define HPPA_INTERRUPT_EXTERNAL_28 28 201 #define HPPA_INTERRUPT_EXTERNAL_29 29 202 #define HPPA_INTERRUPT_EXTERNAL_30 30 203 #define HPPA_INTERRUPT_EXTERNAL_31 31 204 205 #define HPPA_INTERRUPT_EXTERNAL_INTERVAL_TIMER HPPA_INTERRUPT_EXTERNAL_0 206 #define HPPA_EXTERNAL_INTERRUPTS 32 210 207 211 208 /* BSP defined interrupts begin here */ 212 209 213 #define HPPA_INTERRUPT_MAX 64210 #define HPPA_INTERRUPT_MAX 32 214 211 215 212 /* … … 219 216 #define HPPA_CACHELINE_SIZE 32 220 217 #define HPPA_CACHELINE_MASK (HPPA_CACHELINE_SIZE - 1) 218 219 /* 220 * page size characteristics 221 */ 222 223 #define HPPA_PAGE_SIZE 4096 224 #define HPPA_PAGE_MASK (0xfffff000) 221 225 222 226 -
c/src/lib/libc/libio.c
r64b976a r8b2ecf85 16 16 #if defined(solaris2) 17 17 #define O_NDELAY O_NONBLOCK 18 #elif 18 #elif defined(RTEMS_NEWLIB) 19 19 #define O_NDELAY _FNBIO 20 20 #endif -
c/src/lib/libc/malloc.c
r64b976a r8b2ecf85 253 253 254 254 new_area = malloc( size ); 255 256 MSBUMP(malloc_calls, -1); /* subtract off the malloc */ 257 255 258 if ( !new_area ) { 256 259 free( ptr ); -
c/src/lib/libc/newlibc.c
r64b976a r8b2ecf85 132 132 */ 133 133 134 #ifdef RTEMS_UNIX134 #ifdef NEED_SETVBUF 135 135 rtems_extension 136 136 libc_begin_hook(rtems_tcb *current_task) … … 275 275 libc_extension.thread_create = libc_create_hook; 276 276 libc_extension.thread_start = libc_start_hook; 277 #ifdef RTEMS_UNIX277 #ifdef NEED_SETVBUF 278 278 libc_extension.thread_begin = libc_begin_hook; 279 279 #endif -
c/src/lib/libcpu/hppa1.1/timer/timer.c
r64b976a r8b2ecf85 25 25 { 26 26 Timer_starting = get_itimer(); 27 set_eiem(0x80000000); 27 28 } 28 29 -
c/src/tests/mptests/mp07/task1.c
r64b976a r8b2ecf85 73 73 74 74 while ( Stop_Test == FALSE ) { 75 for ( count=DOT_COUNT ; count ; count-- ) {75 for ( count=DOT_COUNT ; count && (Stop_Test == FALSE) ; count-- ) { 76 76 status = rtems_event_receive( 77 77 RTEMS_EVENT_16, … … 91 91 put_dot('.'); 92 92 } 93 94 /* 95 * Wait a bit before shutting down so we don't screw up the other node 96 * when our MPCI shuts down 97 */ 98 99 rtems_task_wake_after(10); 100 93 101 puts( "\n*** END OF TEST 7 ***" ); 94 102 exit( 0 ); -
c/src/tests/mptests/mp14/exit.c
r64b976a r8b2ecf85 25 25 rtems_mode old_mode; 26 26 27 /* 28 * Wait a bit before shutting down so we don't screw up the other node 29 * when our MPCI shuts down 30 */ 31 32 rtems_task_wake_after(20); 33 27 34 status = rtems_task_mode( RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &old_mode ); 28 35 directive_failed( status, "rtems_task_mode" ); -
cpukit/libcsupport/src/libio.c
r64b976a r8b2ecf85 16 16 #if defined(solaris2) 17 17 #define O_NDELAY O_NONBLOCK 18 #elif 18 #elif defined(RTEMS_NEWLIB) 19 19 #define O_NDELAY _FNBIO 20 20 #endif -
cpukit/libcsupport/src/malloc.c
r64b976a r8b2ecf85 253 253 254 254 new_area = malloc( size ); 255 256 MSBUMP(malloc_calls, -1); /* subtract off the malloc */ 257 255 258 if ( !new_area ) { 256 259 free( ptr ); -
cpukit/libcsupport/src/newlibc.c
r64b976a r8b2ecf85 132 132 */ 133 133 134 #ifdef RTEMS_UNIX134 #ifdef NEED_SETVBUF 135 135 rtems_extension 136 136 libc_begin_hook(rtems_tcb *current_task) … … 275 275 libc_extension.thread_create = libc_create_hook; 276 276 libc_extension.thread_start = libc_start_hook; 277 #ifdef RTEMS_UNIX277 #ifdef NEED_SETVBUF 278 278 libc_extension.thread_begin = libc_begin_hook; 279 279 #endif -
testsuites/mptests/mp07/task1.c
r64b976a r8b2ecf85 73 73 74 74 while ( Stop_Test == FALSE ) { 75 for ( count=DOT_COUNT ; count ; count-- ) {75 for ( count=DOT_COUNT ; count && (Stop_Test == FALSE) ; count-- ) { 76 76 status = rtems_event_receive( 77 77 RTEMS_EVENT_16, … … 91 91 put_dot('.'); 92 92 } 93 94 /* 95 * Wait a bit before shutting down so we don't screw up the other node 96 * when our MPCI shuts down 97 */ 98 99 rtems_task_wake_after(10); 100 93 101 puts( "\n*** END OF TEST 7 ***" ); 94 102 exit( 0 ); -
testsuites/mptests/mp14/exit.c
r64b976a r8b2ecf85 25 25 rtems_mode old_mode; 26 26 27 /* 28 * Wait a bit before shutting down so we don't screw up the other node 29 * when our MPCI shuts down 30 */ 31 32 rtems_task_wake_after(20); 33 27 34 status = rtems_task_mode( RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &old_mode ); 28 35 directive_failed( status, "rtems_task_mode" );
Note: See TracChangeset
for help on using the changeset viewer.