git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@713 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
gdisirio 2009-02-02 21:07:27 +00:00
parent ec4178dd0f
commit 528e9fea35
5 changed files with 19 additions and 15 deletions

View File

@ -51,9 +51,9 @@
chSysUnlock(); chSysUnlock();
* @endcode * @endcode
* In general multiple I-Class and (non rescheduling) S-Class APIs can be * In general multiple @ref I-Class and (non rescheduling) @ref S-Class APIs
* included and the block is terminated by a rescheduling S-Class API. * can be included and the block is terminated by a rescheduling @ref S-Class
* An extra @p chSchRescheduleS() can be present at the very end of the block, * API. An extra @p chSchRescheduleS() can be present at the very end of the
* it only reschedules if a reschedulation is still required. * block, it only reschedules if a reschedulation is still required.
*/ */
/** @} */ /** @} */

View File

@ -33,10 +33,10 @@
* - <b>None</b>, APIs without any suffix can be invoked only from the user * - <b>None</b>, APIs without any suffix can be invoked only from the user
* code in the <b>Normal</b> state unless differently specified. See * code in the <b>Normal</b> state unless differently specified. See
* @ref system_states. * @ref system_states.
* - <b>"I"</b>, I-Class APIs are invokable only from the <b>I-Locked</b> or * - @anchor I-Class <b>"I"</b>, I-Class APIs are invokable only from the
* <b>S-Locked</b> states. See @ref system_states. * <b>I-Locked</b> or <b>S-Locked</b> states. See @ref system_states.
* - <b>"S"</b>, S-Class APIs are invokable only from the <b>S-Locked</b> * - @anchor S-Class <b>"S"</b>, S-Class APIs are invokable only from the
* state. See @ref system_states. * <b>S-Locked</b> state. See @ref system_states.
* Examples: @p chThdCreateStatic(), @p chSemSignalI(), @p chIQGetTimeout(). * Examples: @p chThdCreateStatic(), @p chSemSignalI(), @p chIQGetTimeout().
* *
* @section interrupt_classes Interrupt Classes * @section interrupt_classes Interrupt Classes
@ -83,14 +83,14 @@
* goes in this state and waits for interrupts, after servicing the interrupt * goes in this state and waits for interrupts, after servicing the interrupt
* the Normal state is restored and the scheduler has a chance to reschedule. * the Normal state is restored and the scheduler has a chance to reschedule.
* - <b>S-Locked</b>. Kernel locked and regular interrupt sources disabled. * - <b>S-Locked</b>. Kernel locked and regular interrupt sources disabled.
* Fast interrupt sources are enabled. S-Class and I-Class APIs are * Fast interrupt sources are enabled. @ref S-Class and @ref I-Class APIs are
* invokable in this state. * invokable in this state.
* - <b>I-Locked</b>. Kernel locked and regular interrupt sources disabled. * - <b>I-Locked</b>. Kernel locked and regular interrupt sources disabled.
* I-Class APIs are invokable from this state. * @ref I-Class APIs are invokable from this state.
* - <b>Serving Regular Interrupt</b>. No system APIs are accessible but it is * - <b>Serving Regular Interrupt</b>. No system APIs are accessible but it is
* possible to switch to the I-Locked state using @p chSysLockFromIsr() and * possible to switch to the I-Locked state using @p chSysLockFromIsr() and
* then invoke any I-Class API. Interrupt handlers can be preemptable on some * then invoke any @ref I-Class API. Interrupt handlers can be preemptable on
* architectures thus is important to switch to I-Locked state before * some architectures thus is important to switch to I-Locked state before
* invoking system APIs. * invoking system APIs.
* - <b>Serving Fast Interrupt</b>. System APIs are not accessible. * - <b>Serving Fast Interrupt</b>. System APIs are not accessible.
* - <b>Serving Non-Maskable Interrupt</b>. System APIs are not accessible. * - <b>Serving Non-Maskable Interrupt</b>. System APIs are not accessible.

View File

@ -39,8 +39,8 @@ CH_IRQ_HANDLER(myIRQ) {
CH_IRQ_EPILOGUE(); CH_IRQ_EPILOGUE();
} }
* @endcode * @endcode
* Note that only interrupt handlers that have to invoke system I-Class APIs * Note that only interrupt handlers that have to invoke system @ref I-Class
* must be written in this form, handlers unrelated to the OS activity can * APIs must be written in this form, handlers unrelated to the OS activity can
* omit the macros. * omit the macros.
* Another note about the handler name "myIRQ", in some ports it must be a * Another note about the handler name "myIRQ", in some ports it must be a
* vector number rather than a function name, it could also be a name from * vector number rather than a function name, it could also be a name from

View File

@ -36,6 +36,10 @@
* application without have to release your source code under certains * application without have to release your source code under certains
* conditions. See the exception text under "Approved Interfaces" for * conditions. See the exception text under "Approved Interfaces" for
* details. * details.
* - <b>Is the exception applicable to any ChibiOS/RT version ?</b><br>
* The exception is valid only for ChibiOS/RT releases marked as @e stable.
* Beta or unstable versions are covered by the GPL3 alone because are meant
* for testing only.
* - <b>I don't want to be bound by any of the above restriction, is this * - <b>I don't want to be bound by any of the above restriction, is this
* possible?</b><br> * possible?</b><br>
* You may contact us about a commercial license. * You may contact us about a commercial license.

View File

@ -36,7 +36,7 @@ msg_t my_thread(void *param) {
* well below the system tick period and that @p my_thread() is not preempted * well below the system tick period and that @p my_thread() is not preempted
* by other threads inserting long intervals.<br> * by other threads inserting long intervals.<br>
* If the above conditions are not satisfied you may have @p do_something() * If the above conditions are not satisfied you may have @p do_something()
* executed at irregular intevals, as example:<br><br> * executed at irregular intervals, as example:<br><br>
* T0...T0+1000...T0+2002...T0+3002...T0+4005...etc.<br><br> * T0...T0+1000...T0+2002...T0+3002...T0+4005...etc.<br><br>
* Also note that the error increases over time and this kind of behavior can * Also note that the error increases over time and this kind of behavior can
* lead anomalies really hard to debug. * lead anomalies really hard to debug.