Changeset c610a1f3 in rtems
- Timestamp:
- 09/21/98 00:24:51 (25 years ago)
- Branches:
- 4.10, 4.11, 4.8, 4.9, 5, master
- Children:
- 3f929757
- Parents:
- 04bc5d9
- Location:
- c/src/lib/libbsp/i386
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
c/src/lib/libbsp/i386/pc386/start/start16.s
r04bc5d9 rc610a1f3 93 93 ljmp $PROT_CODE_SEG, $1f # flush prefetch queue, and reload %cs 94 94 #endif 95 .code32 95 96 1: 96 97 .code3298 99 97 /*---------------------------------------------------------------------+ 100 98 | load the other segment registers -
c/src/lib/libbsp/i386/pc386/startup/bspstart.c
r04bc5d9 rc610a1f3 1 1 /*-------------------------------------------------------------------------+ 2 | bspstart.c v1.1 - PC386 BSP - 1997/08/073 +--------------------------------------------------------------------------+4 2 | This file contains the PC386 BSP startup package. It includes application, 5 3 | board, and monitor specific initialization and configuration. The generic CPU … … 39 37 #include <rtems/libio.h> 40 38 #include <libcpu/cpuModel.h> 39 #include <pc386uart.h> 41 40 42 41 /*-------------------------------------------------------------------------+ … … 44 43 +--------------------------------------------------------------------------*/ 45 44 extern rtems_unsigned32 _end; /* End of BSS. Defined in 'linkcmds'. */ 46 47 45 /* 48 46 * Size of heap if it is 0 it will be dynamically defined by memory size, … … 76 74 void bsp_postdriver_hook(void); 77 75 extern void rtems_irq_mngt_init(); 76 extern void _IBMPC_initVideo(void); 78 77 79 78 /*-------------------------------------------------------------------------+ … … 152 151 */ 153 152 Calibrate_loop_1ms(); 153 /* 154 * Initialize printk channel 155 */ 156 _IBMPC_initVideo(); 154 157 155 158 rtemsFreeMemStart = (rtems_unsigned32)&_end + _stack_size; -
c/src/lib/libbsp/i386/shared/io/bspIo.h
r04bc5d9 rc610a1f3 27 27 extern BSP_output_char_function_type BSP_output_char; 28 28 extern BSP_polling_getchar_function_type BSP_poll_char; 29 extern void BSP_emergency_output_init(void);30 29 /* 31 30 * All the function declared as extern after this comment -
c/src/lib/libbsp/i386/shared/irq/irq_init.c
r04bc5d9 rc610a1f3 120 120 unsigned int level; 121 121 122 123 122 i386_get_info_from_IDTR (&idt_entry_tbl, &limit); 124 123 /* Convert limit into number of entries */ 124 limit = (limit + 1) / sizeof(interrupt_gate_descriptor); 125 125 126 _CPU_ISR_Disable(level); 126 127 … … 128 129 * Init the complete IDT vector table with defaultRawIrq value 129 130 */ 130 for (i = 0; i < IDT_SIZE; i++) { 131 idtHdl[i] = defaultRawIrq; 131 for (i = 0; i < limit; i++) { 132 idtHdl[i] = defaultRawIrq; 133 idtHdl[i].idtIndex = i; 132 134 } 133 135 raw_initial_config.idtSize = IDT_SIZE; … … 139 141 * put something here that will show the failure... 140 142 */ 141 BSP_emergency_output_init();142 143 printk("Unable to initialize IDT!!! System locked\n"); 143 144 while (1); … … 160 161 */ 161 162 for (i = 0; i < PC_386_IRQ_LINES_NUMBER; i++) { 162 rtemsIrq[i] = defaultIrq; 163 rtemsIrq[i] = defaultIrq; 164 rtemsIrq[i].name = i; 163 165 } 164 166 /* … … 170 172 initial_config.irqBase = PC386_ASM_IRQ_VECTOR_BASE; 171 173 initial_config.irqPrioTbl = irqPrioTable; 174 172 175 if (!pc386_rtems_irq_mngt_set(&initial_config)) { 173 176 /* 174 177 * put something here that will show the failure... 175 178 */ 176 BSP_emergency_output_init();177 179 printk("Unable to initialize RTEMS interrupt Management!!! System locked\n"); 178 180 while (1); … … 189 191 unsigned tmp; 190 192 191 BSP_emergency_output_init();192 193 193 printk("idt_entry_tbl = %x Interrupt_descriptor_table addr = %x\n", 194 194 idt_entry_tbl, &Interrupt_descriptor_table);
Note: See TracChangeset
for help on using the changeset viewer.