diff options
-rw-r--r-- | demos/ARM7-AT91SAM7X-GCC/Makefile | 2 | ||||
-rw-r--r-- | demos/ARM7-AT91SAM7X-GCC/Makefile.thumb | 2 | ||||
-rw-r--r-- | docs/Doxyfile | 2 | ||||
-rw-r--r-- | docs/index.html | 2 | ||||
-rw-r--r-- | readme.txt | 7 | ||||
-rw-r--r-- | src/chschd.c | 11 |
6 files changed, 15 insertions, 11 deletions
diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile b/demos/ARM7-AT91SAM7X-GCC/Makefile index c94b88fdb..5e1211efa 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile @@ -103,7 +103,7 @@ TOPT = -mthumb -D THUMB # increases the code size.
OPT = -O2 -ggdb -fomit-frame-pointer -fno-strict-aliasing
#OPT += -ffixed-r7
-OPT += -falign-functions=16
+#OPT += -falign-functions=16
# Define warning options here
WARN = -Wall -Wstrict-prototypes
diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb index 76a4459fd..64d348ad5 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb @@ -103,7 +103,7 @@ TOPT = -mthumb -D THUMB # increases the code size.
OPT = -Os -ggdb -fomit-frame-pointer -fno-strict-aliasing
#OPT += -ffixed-r7
-OPT += -falign-functions=16
+#OPT += -falign-functions=16
# Define warning options here
WARN = -Wall -Wstrict-prototypes
diff --git a/docs/Doxyfile b/docs/Doxyfile index e4915c571..a6b908404 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -4,7 +4,7 @@ # Project related configuration options #--------------------------------------------------------------------------- PROJECT_NAME = ChibiOS/RT -PROJECT_NUMBER = "0.6.0 beta" +PROJECT_NUMBER = "0.6.1 beta" OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English diff --git a/docs/index.html b/docs/index.html index 43738aa72..edd77fc03 100644 --- a/docs/index.html +++ b/docs/index.html @@ -13,7 +13,7 @@ Homepage</h2> </tr>
<tr>
<td style="text-align: center; vertical-align: top; width: 150px;">Current
-Version 0.6.0<br>
+Version 0.6.1<br>
-<br>
<a href="http://sourceforge.net/projects/chibios/" rel="me" target="_top">Project on SourceForge</a><br>
<a href="html/index.html" target="_top" rel="me">Documentation</a><br>
diff --git a/readme.txt b/readme.txt index 740506706..537642ebb 100644 --- a/readme.txt +++ b/readme.txt @@ -62,6 +62,13 @@ AVR-AT90CANx-GCC - Port on AVR AT90CAN128, not tested on hardware yet. *** Releases ***
*****************************************************************************
+*** 0.6.1 ***
+- Removed some redundant checks from the scheduler code: improved threads
+ flyback time.
+- Removed the -falign-functions=16 option from the AT91SAM7X demo makefiles,
+ the Atmel chip does not require it, the option is still present on the
+ LPC21xx demos. This saves significant ROM space.
+
*** 0.6.0 ***
- Code refactory, all the old sized-integer definitions like LONG32, UWORD16
etc are now replaced by the proper definitions provided by the compiler
diff --git a/src/chschd.c b/src/chschd.c index 7a14df518..b7f52c96d 100644 --- a/src/chschd.c +++ b/src/chschd.c @@ -93,8 +93,10 @@ void chSchGoSleepS(tstate_t newstate) { #ifdef CH_USE_VIRTUAL_TIMERS
static void wakeup(void *p) {
+#ifdef CH_USE_SEMAPHORES
if (((Thread *)p)->p_state == PRWTSEM)
chSemFastSignalI(((Thread *)p)->p_wtsemp);
+#endif
chSchReadyI(p, RDY_TIMEOUT);
}
@@ -170,10 +172,8 @@ void chSchDoRescheduleI(void) { */
void chSchRescheduleS(void) {
- if (isempty(&rlist.r_queue) || firstprio(&rlist.r_queue) <= currp->p_prio)
- return;
-
- chSchDoRescheduleI();
+ if (firstprio(&rlist.r_queue) > currp->p_prio)
+ chSchDoRescheduleI();
}
/**
@@ -183,9 +183,6 @@ void chSchRescheduleS(void) { */
bool_t chSchRescRequiredI(void) {
- if (isempty(&rlist.r_queue))
- return FALSE;
-
if (rlist.r_preempt) {
if (firstprio(&rlist.r_queue) <= currp->p_prio)
return FALSE;
|