Changeset 43f67aa4 in rtems


Ignore:
Timestamp:
Apr 12, 2002, 3:10:42 PM (18 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, master
Children:
231fccb
Parents:
a324355
Message:

2002-03-29 Ralf Corsepius <corsepiu@…>

  • cache.c: Include <rtems/score/registers.h> instead of <libcpu/registers.h>.
  • cpu.h: Ditto. Remove parts moved to score/cpu/i386.
  • registers.h: Add BIG-FAT warning.
Location:
c/src/lib/libcpu/i386
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libcpu/i386/ChangeLog

    ra324355 r43f67aa4  
     12002-03-29      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
     2
     3        * cache.c: Include <rtems/score/registers.h> instead of
     4        <libcpu/registers.h>.
     5        * cpu.h: Ditto. Remove parts moved to score/cpu/i386.
     6        * registers.h: Add BIG-FAT warning.
     7
    182002-03-27      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
    29
  • c/src/lib/libcpu/i386/cache.c

    ra324355 r43f67aa4  
    66
    77#include <rtems.h>
    8 #include <libcpu/registers.h>
     8#include <rtems/score/registers.h>
    99#include "cache_.h"
    1010
  • c/src/lib/libcpu/i386/cpu.h

    ra324355 r43f67aa4  
    2222#define _LIBCPU_i386_CPU_H
    2323
    24 #include <libcpu/registers.h>
    25 
     24#include <rtems/score/registers.h>
    2625
    2726#ifndef ASM
     
    3029 *  Interrupt Level Macros
    3130 */
    32 
    33 #define i386_disable_interrupts( _level ) \
    34   { \
    35     asm volatile ( "pushf ; \
    36                     cli ; \
    37                     pop %0" \
    38                    : "=rm" ((_level)) \
    39     ); \
    40   }
    41 
    42 #define i386_enable_interrupts( _level )  \
    43   { \
    44     asm volatile ( "push %0 ; \
    45                     popf" \
    46                     : : "rm" ((_level)) : "cc" \
    47     ); \
    48   }
    49 
    50 #define i386_flash_interrupts( _level ) \
    51   { \
    52     asm volatile ( "push %0 ; \
    53                     popf ; \
    54                     cli" \
    55                     : : "rm" ((_level)) : "cc" \
    56     ); \
    57   }
    58 
    59 #define i386_get_interrupt_level( _level ) \
    60   do { \
    61     register unsigned32 _eflags; \
    62     \
    63     asm volatile ( "pushf ; \
    64                     pop %0" \
    65                     : "=rm" ((_eflags)) \
    66     ); \
    67     \
    68     _level = (_eflags & EFLAGS_INTR_ENABLE) ? 0 : 1; \
    69   } while (0)
    70 
    71 #define _CPU_ISR_Disable( _level ) i386_disable_interrupts( _level )
    72 #define _CPU_ISR_Enable( _level ) i386_enable_interrupts( _level )
    73      
     31#include <rtems/score/interrupts.h>
     32
    7433/*
    7534 *  Segment Access Routines
     
    193152
    194153typedef unsigned char  rtems_vector_offset;
    195 
    196 struct  __rtems_raw_irq_connect_data__;
    197 
    198 typedef void (*rtems_raw_irq_hdl)               (void);
    199 typedef void (*rtems_raw_irq_enable)            (const struct __rtems_raw_irq_connect_data__*);
    200 typedef void (*rtems_raw_irq_disable)           (const struct __rtems_raw_irq_connect_data__*);
    201 typedef int  (*rtems_raw_irq_is_enabled)        (const struct __rtems_raw_irq_connect_data__*);
    202154
    203155typedef struct __rtems_raw_irq_connect_data__{
     
    249201}rtems_raw_irq_global_settings;
    250202
    251 /*
    252  * See page 14.9 Figure 14-2.
    253  *
    254  */
    255 typedef struct {
    256   unsigned int low_offsets_bits : 16;
    257   unsigned int segment_selector : 16;
    258   unsigned int fixed_value_bits : 8;
    259   unsigned int gate_type        : 5;
    260   unsigned int privilege        : 2;
    261   unsigned int present          : 1;
    262   unsigned int high_offsets_bits: 16;
    263 }interrupt_gate_descriptor;
    264 
    265 
    266 /*
    267  * C callable function enabling to create a interrupt_gate_descriptor
    268  */
    269 void create_interrupt_gate_descriptor (interrupt_gate_descriptor*, rtems_raw_irq_hdl);
     203#include <rtems/score/idtr.h>
    270204
    271205/*
     
    274208 */
    275209rtems_raw_irq_hdl get_hdl_from_vector(rtems_vector_offset);
    276 
    277 /*
    278  * C callable function enabling to get easilly usable info from
    279  * the actual value of IDT register.
    280  */
    281 extern void i386_get_info_from_IDTR (interrupt_gate_descriptor** table,
    282                                 unsigned* limit);
    283 /*
    284  * C callable function enabling to change the value of IDT register. Must be called
    285  * with interrupts masked at processor level!!!.
    286  */
    287 extern void i386_set_IDTR (interrupt_gate_descriptor* table,
    288                       unsigned limit);
    289210
    290211/*
  • c/src/lib/libcpu/i386/registers.h

    ra324355 r43f67aa4  
    1111 *  $Id$
    1212 */
     13
     14#warning "This file is obsolete, use rtems/score/registers.h instead."
    1315
    1416#ifndef _LIBCPU_i386_REGISTERS_H
Note: See TracChangeset for help on using the changeset viewer.