[PATCH] score: Define _CPU_Start_multitasking only for LEON SPARC, not SPARC in general
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue Aug 26 08:11:42 UTC 2014
On 25/08/14 19:29, Joel Sherrill wrote:
>
> On 8/25/2014 11:44 AM, Sebastian Huber wrote:
>> On 08/25/2014 05:04 PM, Joel Sherrill wrote:
>>> On 8/25/2014 5:10 AM, Sebastian Huber wrote:
>>>> On 25/08/14 11:45, Daniel Cederman wrote:
>>>>> ---
>>>>> cpukit/score/cpu/sparc/rtems/score/cpu.h | 2 ++
>>>>> 1 file changed, 2 insertions(+)
>>>>>
>>>>> diff --git a/cpukit/score/cpu/sparc/rtems/score/cpu.h b/cpukit/score/cpu/sparc/rtems/score/cpu.h
>>>>> index 9c38b55..d4c2ef0 100644
>>>>> --- a/cpukit/score/cpu/sparc/rtems/score/cpu.h
>>>>> +++ b/cpukit/score/cpu/sparc/rtems/score/cpu.h
>>>>> @@ -1203,9 +1203,11 @@ register struct Per_CPU_Control *_SPARC_Per_CPU_current __asm__( "g6" );
>>>>>
>>>>> void _CPU_SMP_Send_interrupt( uint32_t target_processor_index );
>>>>>
>>>>> + #if defined(__leon__)
>>>>> void _BSP_Start_multitasking( Context_Control *heir )
>>>>> RTEMS_COMPILER_NO_RETURN_ATTRIBUTE;
>>>>> #define _CPU_Start_multitasking _BSP_Start_multitasking
>>>>> + #endif
>>>> In case it is LEON specific, then it should have a LEON specific name.
>>>>
>>> What's the overall rationale?
>> If its mandated by the CPU port, e.g. all the stuff defined by
>> no_cpu/cpu.h, then it should be _CPU_*. In case all BSPs of a CPU port
>> must implement a CPU port function, then it is _BSP_*. In case only
>> certain multilib variants implement it specifically, then they should
>> have an appropriate multilib specific prefix, e.g. _LEON3_* or
>> _ARMV7M_*. Does this make sense? Maybe we should add this stuff to the
>> CPU supplement.
>>
> Yeah. I get this part and we do need better rules but what's the issue
> with this
> one method? The ifdef made it look like only the leon flavor of RTEMS and no
> others even had this method.
>
Actually after one night of sleep I think it makes no sense. Now I think its
better that all the CPU port functions should start with _CPU_*, so it is
easier to find them and set breakpoints.
I also think that this
#define _CPU_Start_multitasking
should be changed to something like
#define CPU_HAS_DEDICATED_START_MULTITASKING (TRUE | FALSE)
to be in line with all the other CPU port variants, e.g.
CPU_HAS_SOFTWARE_INTERRUPT_STACK etc.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the devel
mailing list