<div dir="ltr">Thanks for the reply. Yes, I got it from your previous mail(<a href="https://git.rtems.org/rtems/tree/cpukit/include/rtems/score/scheduler.h#n286">https://git.rtems.org/rtems/tree/cpukit/include/rtems/score/scheduler.h#n286</a>).</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Aug 11, 2020 at 6:39 PM Gedare Bloom <<a href="mailto:gedare@rtems.org">gedare@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue, Aug 11, 2020 at 12:42 AM Richi Dubey <<a href="mailto:richidubey@gmail.com" target="_blank">richidubey@gmail.com</a>> wrote:<br>
><br>
> This really helped. Thank you.<br>
><br>
>> There is not really anything to change about it. You specialize the<br>
>> scheduler by the Scheduler_Context and Scheduler_Operations<br>
>> structures. You still just pass through the context base to the<br>
>> scheduler table.<br>
><br>
> I understand. The Ready queue per priority that was used earlier (link) has to be removed. Hence the question.<br>
><br>
Hopefully, you have got to know that is just to find the maximum<br>
priority in setting up the table entry.<br>
<br>
> Thank you.<br>
><br>
> On Mon, Aug 10, 2020 at 9:04 PM Gedare Bloom <<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>> wrote:<br>
>><br>
>> On Mon, Aug 10, 2020 at 9:10 AM Richi Dubey <<a href="mailto:richidubey@gmail.com" target="_blank">richidubey@gmail.com</a>> wrote:<br>
>> ><br>
>> > Hi,<br>
>> ><br>
>> > I want your help to figure out how the table entries for a scheduler work.<br>
>> ><br>
>> > For STRONG_APA scheduler, the flow is :<br>
>> > link<br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> >   #define RTEMS_SCHEDULER_TABLE_STRONG_APA( name, obj_name ) \<br>
>> >     { \<br>
>> >       &SCHEDULER_STRONG_APA_CONTEXT_NAME( name ).Base.Base.Base, \<br>
>> >       SCHEDULER_STRONG_APA_ENTRY_POINTS, \<br>
>> >       RTEMS_ARRAY_SIZE( \<br>
>> >         SCHEDULER_STRONG_APA_CONTEXT_NAME( name ).Ready \<br>
>> >       ) - 1, \<br>
>> >       ( obj_name ) \<br>
>> >       SCHEDULER_CONTROL_IS_NON_PREEMPT_MODE_SUPPORTED( false ) \<br>
>> >     }<br>
>> ><br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> > which is used for:<br>
>> > link<br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> ><br>
>> > #ifdef CONFIGURE_SCHEDULER_STRONG_APA<br>
>> >   #ifndef CONFIGURE_SCHEDULER_NAME<br>
>> >     #define CONFIGURE_SCHEDULER_NAME rtems_build_name( 'M', 'A', 'P', 'A' )<br>
>> >   #endif<br>
>> ><br>
>> >   #ifndef CONFIGURE_SCHEDULER_TABLE_ENTRIES<br>
>> >     #define CONFIGURE_SCHEDULER \<br>
>> >       RTEMS_SCHEDULER_STRONG_APA( \<br>
>> >         dflt, \<br>
>> >         CONFIGURE_MAXIMUM_PRIORITY + 1 \<br>
>> >       )<br>
>> ><br>
>> >     #define CONFIGURE_SCHEDULER_TABLE_ENTRIES \<br>
>> >       RTEMS_SCHEDULER_TABLE_STRONG_APA( dflt, CONFIGURE_SCHEDULER_NAME )<br>
>> >   #endif<br>
>> > #endif<br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> ><br>
>> > which is eventually used for:<br>
>> ><br>
>> > link<br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> > const Scheduler_Control _Scheduler_Table[] = {<br>
>> >   CONFIGURE_SCHEDULER_TABLE_ENTRIES<br>
>> > };<br>
>> ><br>
>> > -------------------------------------------------------------------------------------------------------<br>
>> ><br>
>> > I do not understand what the Scheduler_Table[] or the SCHEDULER_TABLE_ENTRIES should contain.<br>
>><br>
>> The type definition of the _Scheduler_Table[] is Scheduler_Control.<br>
>> This structure is defined in<br>
>> cpukit/include/rtems/score/scheduler.h:269<br>
>><br>
>> > I need help with this because I have to change the RTEMS_SCHEDULER_TABLE_STRONG_APA since I am changing some of the variables in the Scheduler_strong_APA_Context.<br>
>> ><br>
>> There is not really anything to change about it. You specialize the<br>
>> scheduler by the Scheduler_Context and Scheduler_Operations<br>
>> structures. You still just pass through the context base to the<br>
>> scheduler table.<br>
>><br>
>> > Thank you,<br>
>> > Richi.<br>
>> > _______________________________________________<br>
>> > devel mailing list<br>
>> > <a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>
>> > <a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a><br>
</blockquote></div>