forked from Imagelibrary/rtems
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
This was tracked as PR91. * rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which is used to specify if the port uses the standard macro for this (FALSE). A TRUE setting indicates the port provides its own implementation. * rtems/score/c_isr.inl: Deleted and contents merged into cpu.c. * cpu.c: Received contents of c_isr.inl. * Makefile.am: Deleted reference to c_isr.inl.
This commit is contained in:
@@ -570,6 +570,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
@@ -652,6 +652,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
@@ -1,3 +1,13 @@
|
||||
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
|
||||
|
||||
This was tracked as PR91.
|
||||
* rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which
|
||||
is used to specify if the port uses the standard macro for this (FALSE).
|
||||
A TRUE setting indicates the port provides its own implementation.
|
||||
* rtems/score/c_isr.inl: Deleted and contents merged into cpu.c.
|
||||
* cpu.c: Received contents of c_isr.inl.
|
||||
* Makefile.am: Deleted reference to c_isr.inl.
|
||||
|
||||
2001-11-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
|
||||
|
||||
@@ -11,7 +11,7 @@ C_O_FILES = $(C_FILES:%.c=${ARCH}/%.o)
|
||||
|
||||
include_rtems_scoredir = $(includedir)/rtems/score
|
||||
|
||||
include_rtems_score_HEADERS = rtems/score/cpu.h rtems/score/c_isr.inl
|
||||
include_rtems_score_HEADERS = rtems/score/cpu.h
|
||||
|
||||
S_FILES = cpu_asm.S
|
||||
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
|
||||
@@ -28,8 +28,7 @@ TMPINSTALL_FILES += $(PROJECT_INCLUDE) $(PROJECT_INCLUDE)/rtems/score \
|
||||
$(include_rtems_score_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
# FIXME: This should not be here.
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/score/cpu.h \
|
||||
$(PROJECT_INCLUDE)/rtems/score/c_isr.inl
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/score/cpu.h
|
||||
|
||||
$(PROJECT_INCLUDE):
|
||||
$(mkinstalldirs) $@
|
||||
|
||||
@@ -110,6 +110,19 @@ void _CPU_Install_interrupt_stack( void )
|
||||
{
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* This is the PowerPC specific implementation of the routine which
|
||||
* returns TRUE if an interrupt is in progress.
|
||||
*/
|
||||
|
||||
|
||||
boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
register unsigned int isr_nesting_level;
|
||||
/*
|
||||
* Move from special purpose register 0 (mfspr SPRG0, r3)
|
||||
*/
|
||||
asm volatile ("mfspr %0, 272" : "=r" (isr_nesting_level));
|
||||
return isr_nesting_level;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
RTEMS_INLINE_ROUTINE boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
register unsigned int isr_nesting_level;
|
||||
/*
|
||||
* Move from special purpose register 0 (mfspr SPRG0, r3)
|
||||
*/
|
||||
asm volatile ("mfspr %0, 272" : "=r" (isr_nesting_level));
|
||||
return isr_nesting_level;
|
||||
}
|
||||
@@ -570,6 +570,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
@@ -1,3 +1,13 @@
|
||||
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
|
||||
|
||||
This was tracked as PR91.
|
||||
* rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which
|
||||
is used to specify if the port uses the standard macro for this (FALSE).
|
||||
A TRUE setting indicates the port provides its own implementation.
|
||||
* rtems/score/c_isr.inl: Deleted and contents merged into cpu.c.
|
||||
* cpu.c: Received contents of c_isr.inl.
|
||||
* Makefile.am: Deleted reference to c_isr.inl.
|
||||
|
||||
2001-11-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
|
||||
|
||||
@@ -13,8 +13,7 @@ C_FILES = cpu.c
|
||||
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.o)
|
||||
|
||||
include_rtems_scoredir = $(includedir)/rtems/score
|
||||
include_rtems_score_HEADERS = rtems/score/cpu.h \
|
||||
rtems/score/c_isr.inl rtems/score/ppc_offs.h
|
||||
include_rtems_score_HEADERS = rtems/score/cpu.h rtems/score/ppc_offs.h
|
||||
|
||||
# Assembly source names
|
||||
S_FILES = cpu_asm.S
|
||||
@@ -28,8 +27,7 @@ TMPINSTALL_FILES += $(PROJECT_INCLUDE) $(PROJECT_INCLUDE)/rtems/score \
|
||||
$(include_rtems_score_HEADERS:%=$(PROJECT_INCLUDE)/%)
|
||||
|
||||
# FIXME: This should not be here.
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/score/cpu.h \
|
||||
$(PROJECT_INCLUDE)/rtems/score/c_isr.inl
|
||||
PREINSTALL_FILES = $(PROJECT_INCLUDE)/rtems/score/cpu.h
|
||||
|
||||
TMPINSTALL_FILES += $(PROJECT_RELEASE)/lib/rtems$(LIB_VARIANT).o
|
||||
|
||||
|
||||
@@ -873,3 +873,19 @@ unsigned32 ppc_exception_vector_addr(
|
||||
return Top;
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* This is the PowerPC specific implementation of the routine which
|
||||
* returns TRUE if an interrupt is in progress.
|
||||
*
|
||||
* NOTE: This is the same as the generic version. But since the
|
||||
* PowerPC is still supporting old and new exception processing
|
||||
* models and the new exception processing model has a hardware
|
||||
* way of doing this, we have to provide this capability here
|
||||
* for symmetry.
|
||||
*/
|
||||
|
||||
boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
return (_ISR_Nest_level != 0);
|
||||
}
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
RTEMS_INLINE_ROUTINE boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
return (_ISR_Nest_level != 0);
|
||||
}
|
||||
@@ -652,6 +652,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
@@ -1,3 +1,13 @@
|
||||
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
|
||||
|
||||
This was tracked as PR91.
|
||||
* rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which
|
||||
is used to specify if the port uses the standard macro for this (FALSE).
|
||||
A TRUE setting indicates the port provides its own implementation.
|
||||
* rtems/score/c_isr.inl: Deleted and contents merged into cpu.c.
|
||||
* cpu.c: Received contents of c_isr.inl.
|
||||
* Makefile.am: Deleted reference to c_isr.inl.
|
||||
|
||||
2001-11-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
|
||||
|
||||
@@ -110,6 +110,19 @@ void _CPU_Install_interrupt_stack( void )
|
||||
{
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* This is the PowerPC specific implementation of the routine which
|
||||
* returns TRUE if an interrupt is in progress.
|
||||
*/
|
||||
|
||||
|
||||
boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
register unsigned int isr_nesting_level;
|
||||
/*
|
||||
* Move from special purpose register 0 (mfspr SPRG0, r3)
|
||||
*/
|
||||
asm volatile ("mfspr %0, 272" : "=r" (isr_nesting_level));
|
||||
return isr_nesting_level;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,13 @@
|
||||
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
|
||||
|
||||
This was tracked as PR91.
|
||||
* rtems/score/cpu.h: Added CPU_PROVIDES_ISR_IS_IN_PROGRESS macro which
|
||||
is used to specify if the port uses the standard macro for this (FALSE).
|
||||
A TRUE setting indicates the port provides its own implementation.
|
||||
* rtems/score/c_isr.inl: Deleted and contents merged into cpu.c.
|
||||
* cpu.c: Received contents of c_isr.inl.
|
||||
* Makefile.am: Deleted reference to c_isr.inl.
|
||||
|
||||
2001-11-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add aclocal.m4, autom4te.*, config.*, configure.
|
||||
|
||||
@@ -873,3 +873,19 @@ unsigned32 ppc_exception_vector_addr(
|
||||
return Top;
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* This is the PowerPC specific implementation of the routine which
|
||||
* returns TRUE if an interrupt is in progress.
|
||||
*
|
||||
* NOTE: This is the same as the generic version. But since the
|
||||
* PowerPC is still supporting old and new exception processing
|
||||
* models and the new exception processing model has a hardware
|
||||
* way of doing this, we have to provide this capability here
|
||||
* for symmetry.
|
||||
*/
|
||||
|
||||
boolean _ISR_Is_in_progress( void )
|
||||
{
|
||||
return (_ISR_Nest_level != 0);
|
||||
}
|
||||
|
||||
@@ -570,6 +570,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
@@ -652,6 +652,13 @@ SCORE_EXTERN struct {
|
||||
#define CPU_INTERRUPT_NUMBER_OF_VECTORS (PPC_INTERRUPT_MAX)
|
||||
#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER (PPC_INTERRUPT_MAX - 1)
|
||||
|
||||
/*
|
||||
* This is defined if the port has a special way to report the ISR nesting
|
||||
* level. Most ports maintain the variable _ISR_Nest_level.
|
||||
*/
|
||||
|
||||
#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
|
||||
|
||||
/*
|
||||
* Should be large enough to run all RTEMS tests. This insures
|
||||
* that a "reasonable" small application should not have any problems.
|
||||
|
||||
Reference in New Issue
Block a user