UART driver: read function

2015-03-06 Thread Daniel Krüger

Hello,

what is the right implementation for the UART driver read function 
(console_fns .deviceRead)? It seems to be implemented differently from 
target to target. Some implementations return -1 if the receive FIFO is 
empty and some implementations do a busy waiting for new characters.


I would like to use some Posix application code, which switches stdin 
into non-blocking mode and uses getchar() to read from UART. getchar() 
shall return EOF if no character is available.


This code requires that the UART driver read function does not block, 
otherwise getchar() will block. But a non-blocking UART driver is not 
sufficient. The function __srefill_r() in newlib/libc/stdio/refill.c 
sets the flag __SEOF whenever the driver's read function returns no 
characters. So on subsequent calls of getchar() and hence __srefill_r() 
the UART driver's read function is not called anymore, because __SEOF 
flag is set (see if statement at beginning of __srefill_r()).


My current work-around is to call clearerr(stdin) before calling 
getchar(). clearerr() resets the flag __SEOF, so getchar() will get the 
current character from the UART driver.


There are many other functions and modules (e.g. console*.c, 
rtems_termios*, ...) involved between getchar() and the UART driver's 
read function. So it's a little bit hard to dig into that issue and to 
find a good solution.


Best regards,
  Daniel Krüger

--
SYS TEC electronic GmbH
Am Windrad 2
08468 Heinsdorfergrund

Telefon : +49 (0) 3765 38600-0
Fax : +49 (0) 3765 38600-4100
Email   : daniel.krue...@systec-electronic.com
Website : http://www.systec-electronic.com

Managing Director   : Dipl.-Phys. Siegmar Schmidt
Commercial registry : Amtsgericht Chemnitz, HRB 28082
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Re: UART driver: read function

2015-03-06 Thread Sebastian Huber

Hello Daniel,

I would not use the C stdio for this and instead directly use the POSIX 
read/write. You have to set up the right Termios settings.  In case you 
use RTEMS 4.11 I would use the new Termios device interface (see 
rtems_termios_device_install()).


On 06/03/15 10:52, Daniel Krüger wrote:

Hello,

what is the right implementation for the UART driver read function 
(console_fns .deviceRead)? It seems to be implemented differently from 
target to target. Some implementations return -1 if the receive FIFO 
is empty and some implementations do a busy waiting for new characters.


I would like to use some Posix application code, which switches stdin 
into non-blocking mode and uses getchar() to read from UART. getchar() 
shall return EOF if no character is available.


This code requires that the UART driver read function does not block, 
otherwise getchar() will block. But a non-blocking UART driver is not 
sufficient. The function __srefill_r() in newlib/libc/stdio/refill.c 
sets the flag __SEOF whenever the driver's read function returns no 
characters. So on subsequent calls of getchar() and hence 
__srefill_r() the UART driver's read function is not called anymore, 
because __SEOF flag is set (see if statement at beginning of 
__srefill_r()).


My current work-around is to call clearerr(stdin) before calling 
getchar(). clearerr() resets the flag __SEOF, so getchar() will get 
the current character from the UART driver.


There are many other functions and modules (e.g. console*.c, 
rtems_termios*, ...) involved between getchar() and the UART driver's 
read function. So it's a little bit hard to dig into that issue and to 
find a good solution.


Best regards,
  Daniel Krüger



--
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.hu...@embedded-brains.de
PGP : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

[PATCH] Test_environment: cascading option implemented

2015-03-06 Thread Alexander Krutwig
---
 cpukit/libmisc/testsupport/test.h | 23 -
 cpukit/libmisc/testsupport/testparallel.c | 24 +
 testsuites/smptests/smpatomic01/init.c| 84 ---
 3 files changed, 90 insertions(+), 41 deletions(-)

diff --git a/cpukit/libmisc/testsupport/test.h 
b/cpukit/libmisc/testsupport/test.h
index afed462..6b46244 100644
--- a/cpukit/libmisc/testsupport/test.h
+++ b/cpukit/libmisc/testsupport/test.h
@@ -141,13 +141,16 @@ typedef struct {
*
* @param[in] ctx The parallel context.
* @param[in] arg The user specified argument.
+   * @param[in] active_workers Count of active workers.  Depends on the cascade
+   *   option.
*
* @return The desired job body execution time in clock ticks.  See
*   rtems_test_parallel_stop_job().
*/
   rtems_interval (*init)(
 rtems_test_parallel_context *ctx,
-void *arg
+void *arg,
+size_t active_workers
   );
 
   /**
@@ -172,13 +175,29 @@ typedef struct {
*
* @param[in] ctx The parallel context.
* @param[in] arg The user specified argument.
+   * @param[in] active_workers Count of active workers.  Depends on the cascade
+   *   option.
*/
   void (*fini)(
 rtems_test_parallel_context *ctx,
-void *arg
+void *arg,
+size_t active_workers
   );
 
+  /**
+   * @brief Job specific argument.
+   */
   void *arg;
+
+  /**
+   * @brief Job cascading flag.
+   *
+   * This flag indicates whether the job should be executed in a cascaded
+   * manner (if n processors are available, test is executed on one processor
+   * first, two processors afterwards and incremented step by step until all
+   * processors are used)
+   */
+  bool cascade;
 } rtems_test_parallel_job;
 
 /**
diff --git a/cpukit/libmisc/testsupport/testparallel.c 
b/cpukit/libmisc/testsupport/testparallel.c
index 681f769..5e572b5 100644
--- a/cpukit/libmisc/testsupport/testparallel.c
+++ b/cpukit/libmisc/testsupport/testparallel.c
@@ -58,21 +58,27 @@ static void run_tests(
 
   for (i = 0; i < job_count; ++i) {
 const rtems_test_parallel_job *job = &jobs[i];
+size_t n = job->cascade ? rtems_get_processor_count() : 1;
+size_t j;
 
-if (rtems_test_parallel_is_master_worker(worker_index)) {
-  rtems_interval duration = (*job->init)(ctx, job->arg);
+for (j = 0; j < n; ++j) {
+  if (rtems_test_parallel_is_master_worker(worker_index)) {
+rtems_interval duration = (*job->init)(ctx, job->arg, j + 1);
 
-  start_worker_stop_timer(ctx, duration);
-}
+start_worker_stop_timer(ctx, duration);
+  }
 
-_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
+  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
 
-(*job->body)(ctx, job->arg, worker_index);
+  if (worker_index <= j) {
+(*job->body)(ctx, job->arg, worker_index);
+  }
 
-_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
+  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
 
-if (rtems_test_parallel_is_master_worker(worker_index)) {
-  (*job->fini)(ctx, job->arg);
+  if (rtems_test_parallel_is_master_worker(worker_index)) {
+(*job->fini)(ctx, job->arg, j + 1);
+  }
 }
   }
 }
diff --git a/testsuites/smptests/smpatomic01/init.c 
b/testsuites/smptests/smpatomic01/init.c
index fbd20fa..53d32c2 100644
--- a/testsuites/smptests/smpatomic01/init.c
+++ b/testsuites/smptests/smpatomic01/init.c
@@ -98,7 +98,8 @@ static void test_fini(
 
 static rtems_interval test_atomic_add_init(
   rtems_test_parallel_context *base,
-  void *arg
+  void *arg,
+  size_t active_workers
 )
 {
   smpatomic01_context *ctx = (smpatomic01_context *) base;
@@ -125,7 +126,11 @@ static void test_atomic_add_body(
   ctx->per_worker_value[worker_index] = counter;
 }
 
-static void test_atomic_add_fini(rtems_test_parallel_context *base, void *arg)
+static void test_atomic_add_fini(
+  rtems_test_parallel_context *base, 
+  void *arg,
+  size_t active_workers
+)
 {
   smpatomic01_context *ctx = (smpatomic01_context *) base;
 
@@ -134,7 +139,8 @@ static void 
test_atomic_add_fini(rtems_test_parallel_context *base, void *arg)
 
 static rtems_interval test_atomic_flag_init(
   rtems_test_parallel_context *base,
-  void *arg
+  void *arg,
+  size_t active_workers
 )
 {
   smpatomic01_context *ctx = (smpatomic01_context *) base;
@@ -168,7 +174,11 @@ static void test_atomic_flag_body(
   ctx->per_worker_value[worker_index] = counter;
 }
 
-static void test_atomic_flag_fini(rtems_test_parallel_context *base, void *arg)
+static void test_atomic_flag_fini(
+  rtems_test_parallel_context *base, 
+  void *arg,
+  size_t active_workers
+  )
 {
   smpatomic01_context *ctx = (smpatomic01_context *) base;
 
@@ -177,7 +187,8 @@ static void 
test_atomic_flag_fini(rtems_test_parallel_context *base, void *arg)
 
 static rtems_interval test_atomic_sub_init(
   rtems_test_parallel_context *base,
-  void *arg
+  void *arg,
+  size_t active_workers
 )
 {
   smpatomic01_context

Fwd: Problem running executable in debugger on Mac OS Mavericks

2015-03-06 Thread Gedare Bloom
Hi Cyrille,


On Fri, Mar 6, 2015 at 12:10 AM, Cyrille Artho  wrote:
> Hi all,
> I have tried to build rtems-builder and rtems following the "Quick Start"
> instructions on the web page. It seems I can build executables as I can find
> "ticker.exe". However, I cannot run it as shown.
>
> "tar sim" is not recognized; it seems the simulator is not built correctly.
> Below is the output from gdb. What went wrong?
> I also don't have a binary called "i386-rtems4.11-run", which is mentioned
> on the quick start guide as well.
>
You made the logical but invalid assumption that every toolchain works
the same. The "run" command is only available for some of the targets
for which RTEMS is cross-compiled. In particular, sparc-sis can be
executed by a simulator in gdb, which is what sparc-rtems4.11-run
wraps. 'tar sim' is available only when the gdb simulator support
exists.

For i386 the recommended simulator to use is Qemu.

Gedare

> i386-rtems4.11-gdb ./ticker.exe
> GNU gdb (GDB) 7.8.2
> Copyright (C) 2014 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> 
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "--host=x86_64-apple-darwin13.3.0
> --target=i386-rtems4.11".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> .
> Find the GDB manual and other documentation resources online at:
> .
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from ./ticker.exe...done.
> (gdb) tar sim
> Undefined target command: "sim".  Try "help target".
> (gdb) help target
> Connect to a target machine or process.
> The first argument is the type or protocol of the target machine.
> Remaining arguments are interpreted by the target protocol.  For more
> information on the arguments for a particular protocol, type
> `help target ' followed by the protocol name.
>
> List of target subcommands:
>
> target core -- Use a core file as a target
> target exec -- Use an executable file as a target
> target extended-remote -- Use a remote computer via a serial line
> target record -- Log program while executing and replay execution from log
> target record-btrace -- Collect control-flow trace and provide the execution
> history
> target record-core -- Log program while executing and replay execution from
> log
> target record-full -- Log program while executing and replay execution from
> log
> target remote -- Use a remote computer via a serial line
> target tfile -- Use a trace file as a target
>
> Type "help target" followed by target subcommand name for full
> documentation.
> Type "apropos word" to search for commands related to "word".
> Command name abbreviations are allowed if unambiguous.
> --
> Regards,
> Cyrille Artho - http://artho.com/
> War is like love, it always finds a way.
> -- Bertolt Brecht, "Mother Courage"
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH] Test_environment: cascading option implemented

2015-03-06 Thread Gedare Bloom
On Fri, Mar 6, 2015 at 8:49 AM, Alexander Krutwig
 wrote:
> ---
>  cpukit/libmisc/testsupport/test.h | 23 -
>  cpukit/libmisc/testsupport/testparallel.c | 24 +
>  testsuites/smptests/smpatomic01/init.c| 84 
> ---
>  3 files changed, 90 insertions(+), 41 deletions(-)
>
> diff --git a/cpukit/libmisc/testsupport/test.h 
> b/cpukit/libmisc/testsupport/test.h
> index afed462..6b46244 100644
> --- a/cpukit/libmisc/testsupport/test.h
> +++ b/cpukit/libmisc/testsupport/test.h
> @@ -141,13 +141,16 @@ typedef struct {
> *
> * @param[in] ctx The parallel context.
> * @param[in] arg The user specified argument.
> +   * @param[in] active_workers Count of active workers.  Depends on the 
> cascade
> +   *   option.
> *
> * @return The desired job body execution time in clock ticks.  See
> *   rtems_test_parallel_stop_job().
> */
>rtems_interval (*init)(
>  rtems_test_parallel_context *ctx,
> -void *arg
> +void *arg,
> +size_t active_workers
>);
>
>/**
> @@ -172,13 +175,29 @@ typedef struct {
> *
> * @param[in] ctx The parallel context.
> * @param[in] arg The user specified argument.
> +   * @param[in] active_workers Count of active workers.  Depends on the 
> cascade
> +   *   option.
> */
>void (*fini)(
>  rtems_test_parallel_context *ctx,
> -void *arg
> +void *arg,
> +size_t active_workers
>);
>
> +  /**
> +   * @brief Job specific argument.
> +   */
>void *arg;
> +
> +  /**
> +   * @brief Job cascading flag.
> +   *
> +   * This flag indicates whether the job should be executed in a cascaded
> +   * manner (if n processors are available, test is executed on one processor
> +   * first, two processors afterwards and incremented step by step until all
> +   * processors are used)
> +   */
> +  bool cascade;
>  } rtems_test_parallel_job;
>
>  /**
> diff --git a/cpukit/libmisc/testsupport/testparallel.c 
> b/cpukit/libmisc/testsupport/testparallel.c
> index 681f769..5e572b5 100644
> --- a/cpukit/libmisc/testsupport/testparallel.c
> +++ b/cpukit/libmisc/testsupport/testparallel.c
> @@ -58,21 +58,27 @@ static void run_tests(
>
>for (i = 0; i < job_count; ++i) {
>  const rtems_test_parallel_job *job = &jobs[i];
> +size_t n = job->cascade ? rtems_get_processor_count() : 1;
> +size_t j;
>
> -if (rtems_test_parallel_is_master_worker(worker_index)) {
> -  rtems_interval duration = (*job->init)(ctx, job->arg);
> +for (j = 0; j < n; ++j) {
> +  if (rtems_test_parallel_is_master_worker(worker_index)) {
> +rtems_interval duration = (*job->init)(ctx, job->arg, j + 1);
I don't quite understand the logic here. If cascade is false, you
should want to execute with max workers = rtems_get_processor_count
right? But here it looks like it will just execute with one worker.


>
> -  start_worker_stop_timer(ctx, duration);
> -}
> +start_worker_stop_timer(ctx, duration);
> +  }
>
> -_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
> +  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
>
> -(*job->body)(ctx, job->arg, worker_index);
> +  if (worker_index <= j) {
> +(*job->body)(ctx, job->arg, worker_index);
> +  }
>
> -_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
> +  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
>
> -if (rtems_test_parallel_is_master_worker(worker_index)) {
> -  (*job->fini)(ctx, job->arg);
> +  if (rtems_test_parallel_is_master_worker(worker_index)) {
> +(*job->fini)(ctx, job->arg, j + 1);
> +  }
>  }
>}
>  }
> diff --git a/testsuites/smptests/smpatomic01/init.c 
> b/testsuites/smptests/smpatomic01/init.c
> index fbd20fa..53d32c2 100644
> --- a/testsuites/smptests/smpatomic01/init.c
> +++ b/testsuites/smptests/smpatomic01/init.c
> @@ -98,7 +98,8 @@ static void test_fini(
>
>  static rtems_interval test_atomic_add_init(
>rtems_test_parallel_context *base,
> -  void *arg
> +  void *arg,
> +  size_t active_workers
>  )
>  {
>smpatomic01_context *ctx = (smpatomic01_context *) base;
> @@ -125,7 +126,11 @@ static void test_atomic_add_body(
>ctx->per_worker_value[worker_index] = counter;
>  }
>
> -static void test_atomic_add_fini(rtems_test_parallel_context *base, void 
> *arg)
> +static void test_atomic_add_fini(
> +  rtems_test_parallel_context *base,
> +  void *arg,
> +  size_t active_workers
> +)
>  {
>smpatomic01_context *ctx = (smpatomic01_context *) base;
>
> @@ -134,7 +139,8 @@ static void 
> test_atomic_add_fini(rtems_test_parallel_context *base, void *arg)
>
>  static rtems_interval test_atomic_flag_init(
>rtems_test_parallel_context *base,
> -  void *arg
> +  void *arg,
> +  size_t active_workers
>  )
>  {
>smpatomic01_context *ctx = (smpatomic01_context *) base;
> @@ -168,7 +174,11 @@ static void test_atomic_flag_body(
>ctx->per_worker_value[worker_index] = counter;
>  }
>

Re: Fwd: Problem running executable in debugger on Mac OS Mavericks

2015-03-06 Thread Joel Sherrill


On 3/6/2015 8:01 AM, Gedare Bloom wrote:
> Hi Cyrille,
>
>
> On Fri, Mar 6, 2015 at 12:10 AM, Cyrille Artho  wrote:
>> Hi all,
>> I have tried to build rtems-builder and rtems following the "Quick Start"
>> instructions on the web page. It seems I can build executables as I can find
>> "ticker.exe". However, I cannot run it as shown.
>>
>> "tar sim" is not recognized; it seems the simulator is not built correctly.
>> Below is the output from gdb. What went wrong?
>> I also don't have a binary called "i386-rtems4.11-run", which is mentioned
>> on the quick start guide as well.
>>
> You made the logical but invalid assumption that every toolchain works
> the same. The "run" command is only available for some of the targets
> for which RTEMS is cross-compiled. In particular, sparc-sis can be
> executed by a simulator in gdb, which is what sparc-rtems4.11-run
> wraps. 'tar sim' is available only when the gdb simulator support
> exists.
>
> For i386 the recommended simulator to use is Qemu.
FWIW sparc/sis with the simulator built into gdb is much easier to use
if it has the capabilities you need.

--joel
> Gedare
>
>> i386-rtems4.11-gdb ./ticker.exe
>> GNU gdb (GDB) 7.8.2
>> Copyright (C) 2014 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later
>> 
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
>> and "show warranty" for details.
>> This GDB was configured as "--host=x86_64-apple-darwin13.3.0
>> --target=i386-rtems4.11".
>> Type "show configuration" for configuration details.
>> For bug reporting instructions, please see:
>> .
>> Find the GDB manual and other documentation resources online at:
>> .
>> For help, type "help".
>> Type "apropos word" to search for commands related to "word"...
>> Reading symbols from ./ticker.exe...done.
>> (gdb) tar sim
>> Undefined target command: "sim".  Try "help target".
>> (gdb) help target
>> Connect to a target machine or process.
>> The first argument is the type or protocol of the target machine.
>> Remaining arguments are interpreted by the target protocol.  For more
>> information on the arguments for a particular protocol, type
>> `help target ' followed by the protocol name.
>>
>> List of target subcommands:
>>
>> target core -- Use a core file as a target
>> target exec -- Use an executable file as a target
>> target extended-remote -- Use a remote computer via a serial line
>> target record -- Log program while executing and replay execution from log
>> target record-btrace -- Collect control-flow trace and provide the execution
>> history
>> target record-core -- Log program while executing and replay execution from
>> log
>> target record-full -- Log program while executing and replay execution from
>> log
>> target remote -- Use a remote computer via a serial line
>> target tfile -- Use a trace file as a target
>>
>> Type "help target" followed by target subcommand name for full
>> documentation.
>> Type "apropos word" to search for commands related to "word".
>> Command name abbreviations are allowed if unambiguous.
>> --
>> Regards,
>> Cyrille Artho - http://artho.com/
>> War is like love, it always finds a way.
>> -- Bertolt Brecht, "Mother Courage"
>> ___
>> devel mailing list
>> devel@rtems.org
>> http://lists.rtems.org/mailman/listinfo/devel
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel

-- 
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: Re: Re: an error about RTEMS compile when make

2015-03-06 Thread Gedare Bloom
Asher,

I see two problems.

First, is that the native compiler is failing for some reason in the
tools subdirectory, which is the only part of RTEMS that gets compiled
by the native compiler. From what I can tell it appears like the
native compiler is not finding the dlls needed to compile argument
processing (optargs).

The rest of RTEMS is cross-compiled, which means the compiler that
gets used when compiling RTEMS is not /bin/gcc but should instead (in
your case) be /opt/rtems-4.10/bin/arm-rtems4.10-gcc. The second
problem comes where it says:
checking for arm-rtems4.10-gcc... arm-rtems4.10-gcc
checking for arm-rtems4.10-gcc... (cached) arm-rtems4.10-gcc
checking whether the C compiler works... no
configure: error: in `/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337':
configure: error: C compiler cannot create executables
See `config.log' for more details
Makefile:712: recipe for target 'csb337' failed
make[2]: *** [csb337] Error 1
make[2]: Leaving directory '/archive/rtems-4.10.2/build-
rtems/arm-rtems4.10/c'

Look through config.log in the build subdirectory
'/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c' to try to find the
problem with arm-rtems4.10-gcc.

You might like to consider using a virtual machine with a Linux host
instead of Windows.

Gedare

On Thu, Mar 5, 2015 at 9:47 PM, zhengyazhou  wrote:
>
> When I first time configure and make,here comes the error in make :
> configure: error: in
> `/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337':
> configure: error: C compiler cannot create executables
> then I execute the command
>  $ ln -s /bin/gcc.exe /bin/cc.exe ( copy from Using MS-Windows as a
> Development Host, PartA.2 Cygwin)
> then I execute configure and make again, the error changed to
> make[2]: *** No rule to make target 'all'。 停止。
> make[2]: Leaving directory
> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337'
> Makefile:257: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c'
> Makefile:275: recipe for target 'all-recursive' failed
> make: *** [all-recursive] Error 1
>
>
> Bellowed is the detail of the configure and make
>
> The first time configure and make
> first time configure infomation:
> $ ../configure --target=arm-rtems4.10 --disable-posix --disable-networking
> --dis
> able-cxx --enable-rtemsbsp=csb337 --prefix=/opt/rtems-4.10
> checking for gmake... no
> checking for make... make
> checking for RTEMS Version... 4.10.2
> checking build system type... x86_64-unknown-cygwin
> checking host system type... x86_64-unknown-cygwin
> checking target system type... arm-unknown-rtems4.10
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether to enable maintainer-specific portions of Makefiles... no
> configure: creating ./config.status
> configure: configuring in ./tools/build
> configure: running /bin/sh '../../../tools/build/configure'
> '--prefix=/opt/rtems
> -4.10' '--host=x86_64-unknown-cygwin' '--build=x86_64-unknown-cygwin'
> '--disabl
> e-posix' '--disable-networking' '--disable-cxx' '--enable-rtemsbsp=csb337'
> '--ta
> rget=arm-rtems4.10'  '--cache-file=/dev/null'
> '--srcdir=../../../tools/build'
> checking for gmake... no
> checking for make... make
> checking for RTEMS Version... 4.10.2
> checking build system type... x86_64-unknown-cygwin
> checking host system type... x86_64-unknown-cygwin
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether to enable maintainer-specific portions of Makefiles... no
> checking for x86_64-unknown-cygwin-gcc... no
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.exe
> checking for suffix of executables... .exe
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /usr/bin/grep
> checking for egrep... /usr/bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> check

[PATCH 00/12] Ticket Closing/Moving Milestone Patches

2015-03-06 Thread Joel Sherrill

Hi,

This series of patches is an odd mix. It addresses a lot of 
build issues which may or may not have tickets. There are a
handful of libdl tickets which either impact an entire 
architecture or a subset of BSPs. All have tickets. If it
was an architecture issue, libdl is now disabled. It is
was a subset of BSPs, then a I added a special testdata
file and included it. 

I fixed some odd issues along the way like the Pi not working
with libdl. 

Some BSPs had tests which did not fit into memory and the
builds had not gotten far enough in long enough to spot that.
One of the patch adds fsscandir01 as needed to about 20 BSPs
which wouldn't build that far when I added the test.

I have started a build of all BSPs with networking and all tests
enabled. There may still be a nit but I wanted a basic review
in case I messed up something obvious like the Trac annotation.
I really don't expect much since this should mostly be build
related to work around outstanding issues or disable tests.

Once committed, the libdl tickets which are updated can have
their milestone moved past 4.11. This should eliminate 6-8
tickets between us and 4.11

--joel


Joel Sherrill (12):
  lpc1768_mbed_ahb_ram.tcfg: Remove as it is a junk file
  lpc1768_mbed_ahb_ram-testsuite.tcfg: Add ftp01
  raspberrypi: Do not include default IRQ handler and BSP specific one
  Temporarily disable libdl for bfin
  Temporarily disable libdl for v850
  Temporarily disable libdl for lm32
  dltests-broken-on-this-bsp.tcfg: New file used for dl* tests work
around
  Temporarily disable libdl tests on some MIPS BSPSs
  Always disable networking for h8300
  Temporarily ignore dl* tests on some PowerPC BSPs
  Add jffs2_fsscandir01 to more BSPs testsuite configuration
  Temporarily disable libdl for h8300

 c/src/aclocal/check-networking.m4|  3 ++-
 .../arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg |  2 ++
 .../arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg |  1 +
 .../arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg  |  1 +
 .../arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg  |  1 +
 .../make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg  |  2 ++
 .../arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg|  7 ---
 .../make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg  |  1 +
 .../arm/lpc24xx/make/custom/lpc2362-testsuite.tcfg   |  1 +
 .../lpc24xx/make/custom/lpc23xx_tli800-testsuite.tcfg|  2 ++
 .../make/custom/lpc32xx_mzx_stage_1-testsuite.tcfg   |  1 +
 c/src/lib/libbsp/arm/raspberrypi/Makefile.am |  1 -
 .../arm/stm32f4/make/custom/stm32f105rc-testsuite.tcfg   |  1 +
 .../arm/stm32f4/make/custom/stm32f4-testsuite.tcfg   |  1 +
 .../make/custom/tms570ls3137_hdk_intram-testsuite.tcfg   |  1 +
 .../m32c/m32cbsp/make/custom/m32csim-testsuite.tcfg  |  2 ++
 .../m68k/mcf52235/make/custom/mcf52235-testsuite.tcfg|  1 +
 .../m68k/mcf5225x/make/custom/mcf5225x-testsuite.tcfg|  1 +
 .../mips/hurricane/make/custom/hurricane-testsuite.tcfg  |  5 +
 .../mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg|  5 +
 .../mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg|  5 +
 .../powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg |  2 ++
 .../mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg |  2 ++
 .../mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg |  2 ++
 .../mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg   |  2 ++
 .../mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg   |  2 ++
 .../mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg   |  5 +
 .../make/custom/mpc5674f_ecu508_app-testsuite.tcfg   |  5 +
 .../make/custom/mpc5674f_ecu508_boot-testsuite.tcfg  |  1 +
 .../mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg  |  1 +
 .../mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg|  5 +
 .../make/custom/mpc5674fevb_spe-testsuite.tcfg   |  5 +
 .../make/custom/phycore_mpc5554-testsuite.tcfg   |  2 ++
 .../qoriq/make/custom/qoriq_core_0-testsuite.tcfg|  5 +
 .../qoriq/make/custom/qoriq_core_1-testsuite.tcfg|  5 +
 .../qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg  |  5 +
 .../qoriq/make/custom/qoriq_t2080rdb-testsuite.tcfg  |  5 +
 .../qoriq/make/custom/qoriq_t4240rdb-testsuite.tcfg  |  5 +
 cpukit/aclocal/check-networking.m4   |  4 
 cpukit/configure.ac  | 16 ++--
 testsuites/libtests/configure.ac | 16 ++--
 testsuites/testdata/dltests-broken-on-this-bsp.tcfg  |  8 
 42 files changed, 135 insertions(+), 13 deletions(-)
 delete mode 100644 
c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg
 create mode 100644 
c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/mips/rbtx4938/ma

[PATCH 01/12] lpc1768_mbed_ahb_ram.tcfg: Remove as it is a junk file

2015-03-06 Thread Joel Sherrill
This file does not have "-testsuite" in the name and is ignored
by the build system.
---
 c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg | 7 ---
 1 file changed, 7 deletions(-)
 delete mode 100644 
c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg

diff --git a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg
deleted file mode 100644
index d96fb14..000
--- a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram.tcfg
+++ /dev/null
@@ -1,7 +0,0 @@
-#
-# lpc1768 mbed AHB RAM RTEMS Test Database.
-#
-# Format is one line per test that is _NOT_ built.
-#
-
-pppd
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 03/12] raspberrypi: Do not include default IRQ handler and BSP specific one

2015-03-06 Thread Joel Sherrill
This was tripping a linker error in the dl0[12] tests.

closes 2247.
---
 c/src/lib/libbsp/arm/raspberrypi/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

diff --git a/c/src/lib/libbsp/arm/raspberrypi/Makefile.am 
b/c/src/lib/libbsp/arm/raspberrypi/Makefile.am
index ed134fa..c6133df 100644
--- a/c/src/lib/libbsp/arm/raspberrypi/Makefile.am
+++ b/c/src/lib/libbsp/arm/raspberrypi/Makefile.am
@@ -94,7 +94,6 @@ libbsp_a_SOURCES += ../../shared/bspreset_loop.c
 libbsp_a_SOURCES += startup/bspstart.c
 
 # IRQ
-libbsp_a_SOURCES += ../../shared/src/irq-default-handler.c
 libbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c
 libbsp_a_SOURCES += ../../shared/src/irq-generic.c
 libbsp_a_SOURCES += ../../shared/src/irq-info.c
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 02/12] lpc1768_mbed_ahb_ram-testsuite.tcfg: Add ftp01

2015-03-06 Thread Joel Sherrill
---
 .../libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg   | 1 +
 1 file changed, 1 insertion(+)

diff --git 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
index 748b271..cc994eb 100644
--- 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
@@ -6,6 +6,7 @@
 
 flashdisk01
 fsdosfsname01
+ftp01
 jffs2_fserror
 jffs2_fslink
 jffs2_fspatheval
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 04/12] Temporarily disable libdl for bfin

2015-03-06 Thread Joel Sherrill
There is an issue linking dl0* which has not been resolved.
This issue is being tracked but is not considered a release
blocker. This patch is a workaround which disables libdl
for the bfin until the ticket is resolved.

updates 2252.
---
 cpukit/configure.ac  | 5 -
 testsuites/libtests/configure.ac | 5 -
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/cpukit/configure.ac b/cpukit/configure.ac
index 5067315..f4d4e7b 100644
--- a/cpukit/configure.ac
+++ b/cpukit/configure.ac
@@ -376,9 +376,12 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
 # reloc backends
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | bfin | h8300 | i386 | lm32 | m32r | m68k | mips | \
+  arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
   moxie | powerpc | sparc | v850)
HAVE_LIBDL=yes ;;
+  # bfin has an issue to resolve with libdl. See ticket #2252
+  bfin)
+   HAVE_LIBDL=no ;;
   *)
HAVE_LIBDL=no ;;
 esac
diff --git a/testsuites/libtests/configure.ac b/testsuites/libtests/configure.ac
index 1cc5943..7c82394 100644
--- a/testsuites/libtests/configure.ac
+++ b/testsuites/libtests/configure.ac
@@ -44,9 +44,12 @@ AM_CONDITIONAL(HAS_POSIX,test x"${rtems_cv_RTEMS_POSIX_API}" 
= x"yes")
 # Must match the list in cpukit.
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | bfin | h8300 | i386 | lm32 | m32r | m68k | mips | \
+  arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
   moxie | powerpc | sparc | v850)
TEST_LIBDL=yes ;;
+  # bfin has an issue to resolve with libdl. See ticket #2252
+  bfin)
+   HAVE_LIBDL=no ;;
   *)
TEST_LIBDL=no ;;
 esac
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 05/12] Temporarily disable libdl for v850

2015-03-06 Thread Joel Sherrill
There is an issue linking dl0* which has not been resolved.
This issue is being tracked but is not considered a release
blocker. This patch is a workaround which disables libdl
for the v850 until the ticket is resolved.

updates 2260.
---
 cpukit/configure.ac  | 5 -
 testsuites/libtests/configure.ac | 5 -
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/cpukit/configure.ac b/cpukit/configure.ac
index f4d4e7b..39104ec 100644
--- a/cpukit/configure.ac
+++ b/cpukit/configure.ac
@@ -377,11 +377,14 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
   arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
-  moxie | powerpc | sparc | v850)
+  moxie | powerpc | sparc)
HAVE_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # v850 has an issue to resolve with libdl. See ticket #2260
+  v850)
+   HAVE_LIBDL=no ;;
   *)
HAVE_LIBDL=no ;;
 esac
diff --git a/testsuites/libtests/configure.ac b/testsuites/libtests/configure.ac
index 7c82394..5308384 100644
--- a/testsuites/libtests/configure.ac
+++ b/testsuites/libtests/configure.ac
@@ -45,11 +45,14 @@ AM_CONDITIONAL(HAS_POSIX,test 
x"${rtems_cv_RTEMS_POSIX_API}" = x"yes")
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
   arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
-  moxie | powerpc | sparc | v850)
+  moxie | powerpc | sparc)
TEST_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # v850 has an issue to resolve with libdl. See ticket #2260
+  v850)
+   HAVE_LIBDL=no ;;
   *)
TEST_LIBDL=no ;;
 esac
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 07/12] dltests-broken-on-this-bsp.tcfg: New file used for dl* tests work around

2015-03-06 Thread Joel Sherrill
---
 testsuites/testdata/dltests-broken-on-this-bsp.tcfg | 8 
 1 file changed, 8 insertions(+)
 create mode 100644 testsuites/testdata/dltests-broken-on-this-bsp.tcfg

diff --git a/testsuites/testdata/dltests-broken-on-this-bsp.tcfg 
b/testsuites/testdata/dltests-broken-on-this-bsp.tcfg
new file mode 100644
index 000..77132ed
--- /dev/null
+++ b/testsuites/testdata/dltests-broken-on-this-bsp.tcfg
@@ -0,0 +1,8 @@
+#
+# On some architectures, some BSPs work with libdl and others do not.
+# There may be Trac tickets files regarding the BSPs which have issues.
+# This file should be included by those BSPs which have dl* test issues
+# which remain to be investigated and solved.
+#
+dl01
+dl02
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 08/12] Temporarily disable libdl tests on some MIPS BSPSs

2015-03-06 Thread Joel Sherrill
These BSPs are little endian while most are big endian.
The dl tool does not support the -EL option yet.

updates 2279.
---
 c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg | 5 +
 c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg   | 5 +
 c/src/lib/libbsp/mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg   | 5 +
 3 files changed, 15 insertions(+)
 create mode 100644 
c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg

diff --git 
a/c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg 
b/c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/mips/hurricane/make/custom/hurricane-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git a/c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg 
b/c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/mips/rbtx4925/make/custom/rbtx4925-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git a/c/src/lib/libbsp/mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg 
b/c/src/lib/libbsp/mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/mips/rbtx4938/make/custom/rbtx4938-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 06/12] Temporarily disable libdl for lm32

2015-03-06 Thread Joel Sherrill
There is a GCC ICE when building libdl. This temporarily disables
building libdl until that is resolved.

updates 2283.
---
 cpukit/configure.ac  | 5 -
 testsuites/libtests/configure.ac | 5 -
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/cpukit/configure.ac b/cpukit/configure.ac
index 39104ec..b3b054a 100644
--- a/cpukit/configure.ac
+++ b/cpukit/configure.ac
@@ -376,12 +376,15 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
 # reloc backends
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
+  arm | h8300 | i386 | m32r | m68k | mips | \
   moxie | powerpc | sparc)
HAVE_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # lm32 has an issue to resolve with libdl. See ticket #2283
+  lm32)
+   HAVE_LIBDL=no ;;
   # v850 has an issue to resolve with libdl. See ticket #2260
   v850)
HAVE_LIBDL=no ;;
diff --git a/testsuites/libtests/configure.ac b/testsuites/libtests/configure.ac
index 5308384..f417722 100644
--- a/testsuites/libtests/configure.ac
+++ b/testsuites/libtests/configure.ac
@@ -44,12 +44,15 @@ AM_CONDITIONAL(HAS_POSIX,test 
x"${rtems_cv_RTEMS_POSIX_API}" = x"yes")
 # Must match the list in cpukit.
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
+  arm | h8300 | i386 | m32r | m68k | mips | \
   moxie | powerpc | sparc)
TEST_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # lm32 has an issue to resolve with libdl. See ticket #2283
+  lm32)
+   HAVE_LIBDL=no ;;
   # v850 has an issue to resolve with libdl. See ticket #2260
   v850)
HAVE_LIBDL=no ;;
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH 09/12] Always disable networking for h8300

2015-03-06 Thread Joel Sherrill
---
 c/src/aclocal/check-networking.m4 | 3 ++-
 c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg   | 1 +
 .../powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg  | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg | 1 +
 .../mpc55xxevb/make/custom/mpc5674f_ecu508_boot-testsuite.tcfg| 1 +
 .../powerpc/mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg   | 1 +
 .../powerpc/mpc55xxevb/make/custom/phycore_mpc5554-testsuite.tcfg | 1 +
 cpukit/aclocal/check-networking.m4| 4 
 10 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/c/src/aclocal/check-networking.m4 
b/c/src/aclocal/check-networking.m4
index fd1fd9d..53d2d36 100644
--- a/c/src/aclocal/check-networking.m4
+++ b/c/src/aclocal/check-networking.m4
@@ -7,7 +7,8 @@ AC_CACHE_CHECK([whether BSP supports networking],
   rtems_cv_HAS_NETWORKING,
   [dnl
 case "$RTEMS_CPU" in
-avr*|m32c*)   # do not have address space to hold BSD TCP/IP stack
+# do not have address space to hold BSD TCP/IP stack
+avr*|h8300*|m32c*)
   rtems_cv_HAS_NETWORKING="no"
   ;;
 *)
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg
index d80db72..a900eda 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg
@@ -4,6 +4,7 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 fsdosfsname01
 jffs2_fserror
 jffs2_fslink
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg
index 8301964..c7c3450 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg
@@ -4,6 +4,7 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 fsdosfsname01
 jffs2_fserror
 jffs2_fslink
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg
index b8a1f9c..eef72a6 100644
--- 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg
@@ -4,6 +4,7 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 fsdosfsname01
 jffs2_fserror
 jffs2_fslink
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg
index 64ee998..aa800cd 100644
--- 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg
@@ -4,6 +4,7 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 flashdisk01
 fsdosfsname01
 jffs2_fserror
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg
index ae335e8..b23c1fa 100644
--- 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg
@@ -4,6 +4,7 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 flashdisk01
 fsdosfsname01
 jffs2_fserror
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_boot-testsuite.tcfg
 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_boot-testsuite.tcfg
index 66495cc..77f4a24 100644
--- 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_boot-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_boot-testsuite.tcfg
@@ -4,4 +4,5 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/dltests-broken-on-this-bsp.tcfg
 fsdosfsname01
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg
index d751176..ee9e62c 100644
--- 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_rsm6-testsuite.tcfg
@@ -4,4 +4,5 @@
 # Format is one line per test that is _NOT_ built.
 #
 
+include: testdata/d

[PATCH 10/12] Temporarily ignore dl* tests on some PowerPC BSPs

2015-03-06 Thread Joel Sherrill
Some BSPs have issues linking the dl* tests. These issues have
not been investigated. This is a temporary workaround until we
have an explanation and permanent solution.

updates 2258.
---
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg| 5 +
 .../mpc55xxevb/make/custom/mpc5674f_ecu508_app-testsuite.tcfg| 5 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg | 5 +
 .../powerpc/mpc55xxevb/make/custom/mpc5674fevb_spe-testsuite.tcfg| 5 +
 .../lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_0-testsuite.tcfg | 5 +
 .../lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_1-testsuite.tcfg | 5 +
 .../libbsp/powerpc/qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg   | 5 +
 .../libbsp/powerpc/qoriq/make/custom/qoriq_t2080rdb-testsuite.tcfg   | 5 +
 .../libbsp/powerpc/qoriq/make/custom/qoriq_t4240rdb-testsuite.tcfg   | 5 +
 9 files changed, 45 insertions(+)
 create mode 100644 
c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_app-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb_spe-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_0-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_1-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_t2080rdb-testsuite.tcfg
 create mode 100644 
c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_t4240rdb-testsuite.tcfg

diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5668g-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_app-testsuite.tcfg
 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_app-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674f_ecu508_app-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb_spe-testsuite.tcfg
 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb_spe-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ 
b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5674fevb_spe-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_0-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_0-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_0-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_1-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_1-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_core_1-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg 
b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg
new file mode 100644
index 000..8728642
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/qoriq/make/custom/qoriq_p1020rdb-testsuite.tcfg
@@ -0,0 +1,5 @@
+#
+#  This is the set of tests which are known to not link on this BSP
+#
+
+include: testdata/dltests-broken-on-this-bsp.tcfg
diff --git 
a/c/src/lib/libbsp/powerpc/qoriq

[PATCH 11/12] Add jffs2_fsscandir01 to more BSPs testsuite configuration

2015-03-06 Thread Joel Sherrill
---
 c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg   | 2 ++
 c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg   | 1 +
 c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg| 1 +
 c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg| 1 +
 .../libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg  | 1 +
 .../arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg | 1 +
 c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc2362-testsuite.tcfg | 1 +
 c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc23xx_tli800-testsuite.tcfg  | 2 ++
 .../libbsp/arm/lpc32xx/make/custom/lpc32xx_mzx_stage_1-testsuite.tcfg   | 1 +
 c/src/lib/libbsp/arm/stm32f4/make/custom/stm32f105rc-testsuite.tcfg | 1 +
 c/src/lib/libbsp/arm/stm32f4/make/custom/stm32f4-testsuite.tcfg | 1 +
 .../arm/tms570/make/custom/tms570ls3137_hdk_intram-testsuite.tcfg   | 1 +
 c/src/lib/libbsp/m32c/m32cbsp/make/custom/m32csim-testsuite.tcfg| 2 ++
 c/src/lib/libbsp/m68k/mcf52235/make/custom/mcf52235-testsuite.tcfg  | 1 +
 c/src/lib/libbsp/m68k/mcf5225x/make/custom/mcf5225x-testsuite.tcfg  | 1 +
 c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/gwlcfm-testsuite.tcfg   | 1 +
 .../lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb-testsuite.tcfg | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5566evb_spe-testsuite.tcfg | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_dpu-testsuite.tcfg   | 1 +
 .../libbsp/powerpc/mpc55xxevb/make/custom/mpc5643l_evb-testsuite.tcfg   | 1 +
 .../powerpc/mpc55xxevb/make/custom/phycore_mpc5554-testsuite.tcfg   | 1 +
 21 files changed, 24 insertions(+)

diff --git a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg
index 8562b4e..b95bc2b 100644
--- a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg
+++ b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s3749-testsuite.tcfg
@@ -19,6 +19,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 loopback
@@ -32,6 +33,7 @@ mrfs_fslink
 mrfs_fspatheval
 mrfs_fspermission
 mrfs_fsrdwr
+mrfs_fsscandir01
 mrfs_fssymlink
 mrfs_fstime
 paranoia
diff --git a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg
index 302d3f3..0fca79c 100644
--- a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg
+++ b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm3s6965-testsuite.tcfg
@@ -14,6 +14,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 mghttpd01
diff --git a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg
index b4b9365..ad9fa10 100644
--- a/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg
+++ b/c/src/lib/libbsp/arm/lm3s69xx/make/custom/lm4f120-testsuite.tcfg
@@ -15,6 +15,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 mghttpd01
diff --git 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg
index 851f938..4c36434 100644
--- a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg
+++ b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed-testsuite.tcfg
@@ -14,6 +14,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 pppd
diff --git 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
index cc994eb..91da55a 100644
--- 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram-testsuite.tcfg
@@ -12,6 +12,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 mghttpd01
diff --git 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg
 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg
index 5d61685..67eec8c 100644
--- 
a/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg
+++ 
b/c/src/lib/libbsp/arm/lpc176x/make/custom/lpc1768_mbed_ahb_ram_eth-testsuite.tcfg
@@ -14,6 +14,7 @@ jffs2_fslink
 jffs2_fspatheval
 jffs2_fspermission
 jffs2_fsrdwr
+jffs2_fsscandir01
 jffs2_fssymlink
 jffs2_fstime
 mghttpd01
diff --git a/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc2362-testsuite.tcfg 
b/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc2362-testsuite.tcfg
index 4c9a9b5..9621837 100644
--- a/c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc2362-testsuite.tcfg
+++ b/

[PATCH 12/12] Temporarily disable libdl for h8300

2015-03-06 Thread Joel Sherrill
The h8300 gets a linking error for the dl0* tests. This temporarily
disables libdl until that can be investigated.

updates 2284.
---
 cpukit/configure.ac  | 5 -
 testsuites/libtests/configure.ac | 5 -
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/cpukit/configure.ac b/cpukit/configure.ac
index b3b054a..2b16964 100644
--- a/cpukit/configure.ac
+++ b/cpukit/configure.ac
@@ -376,12 +376,15 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
 # reloc backends
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | h8300 | i386 | m32r | m68k | mips | \
+  arm | i386 | m32r | m68k | mips | \
   moxie | powerpc | sparc)
HAVE_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # h8300 has an issue to resolve with libdl. See ticket #2284
+  h8300)
+   HAVE_LIBDL=no ;;
   # lm32 has an issue to resolve with libdl. See ticket #2283
   lm32)
HAVE_LIBDL=no ;;
diff --git a/testsuites/libtests/configure.ac b/testsuites/libtests/configure.ac
index f417722..4924e0f 100644
--- a/testsuites/libtests/configure.ac
+++ b/testsuites/libtests/configure.ac
@@ -44,12 +44,15 @@ AM_CONDITIONAL(HAS_POSIX,test 
x"${rtems_cv_RTEMS_POSIX_API}" = x"yes")
 # Must match the list in cpukit.
 AC_MSG_CHECKING([whether CPU supports libdl])
 case $RTEMS_CPU in
-  arm | h8300 | i386 | m32r | m68k | mips | \
+  arm | i386 | m32r | m68k | mips | \
   moxie | powerpc | sparc)
TEST_LIBDL=yes ;;
   # bfin has an issue to resolve with libdl. See ticket #2252
   bfin)
HAVE_LIBDL=no ;;
+  # h8300 has an issue to resolve with libdl. See ticket #2284
+  h8300)
+   HAVE_LIBDL=no ;;
   # lm32 has an issue to resolve with libdl. See ticket #2283
   lm32)
HAVE_LIBDL=no ;;
-- 
1.9.3

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH] testsupport: Add cascade option to parallel test

2015-03-06 Thread Gedare Bloom
Thanks looks better now.

On Fri, Mar 6, 2015 at 10:13 AM, Alexander Krutwig
 wrote:
> ---
>  cpukit/libmisc/testsupport/test.h | 25 -
>  cpukit/libmisc/testsupport/testparallel.c | 30 +++
>  testsuites/smptests/smpatomic01/init.c| 90 
> ---
>  3 files changed, 104 insertions(+), 41 deletions(-)
>
> diff --git a/cpukit/libmisc/testsupport/test.h 
> b/cpukit/libmisc/testsupport/test.h
> index afed462..ae6c17e 100644
> --- a/cpukit/libmisc/testsupport/test.h
> +++ b/cpukit/libmisc/testsupport/test.h
> @@ -141,13 +141,16 @@ typedef struct {
> *
> * @param[in] ctx The parallel context.
> * @param[in] arg The user specified argument.
> +   * @param[in] active_workers Count of active workers.  Depends on the 
> cascade
> +   *   option.
> *
> * @return The desired job body execution time in clock ticks.  See
> *   rtems_test_parallel_stop_job().
> */
>rtems_interval (*init)(
>  rtems_test_parallel_context *ctx,
> -void *arg
> +void *arg,
> +size_t active_workers
>);
>
>/**
> @@ -155,12 +158,15 @@ typedef struct {
> *
> * @param[in] ctx The parallel context.
> * @param[in] arg The user specified argument.
> +   * @param[in] active_workers Count of active workers.  Depends on the 
> cascade
> +   *   option.
> * @param[in] worker_index The worker index.  It ranges from 0 to the
> *   processor count minus one.
> */
>void (*body)(
>  rtems_test_parallel_context *ctx,
>  void *arg,
> +size_t active_workers,
>  size_t worker_index
>);
>
> @@ -172,13 +178,28 @@ typedef struct {
> *
> * @param[in] ctx The parallel context.
> * @param[in] arg The user specified argument.
> +   * @param[in] active_workers Count of active workers.  Depends on the 
> cascade
> +   *   option.
> */
>void (*fini)(
>  rtems_test_parallel_context *ctx,
> -void *arg
> +void *arg,
> +size_t active_workers
>);
>
> +  /**
> +   * @brief Job specific argument.
> +   */
>void *arg;
> +
> +  /**
> +   * @brief Job cascading flag.
> +   *
> +   * This flag indicates whether the job should be executed in a cascaded
> +   * manner (the job is executed on one processor first, two processors
> +   * afterwards and incremented step by step until all processors are used).
> +   */
> +  bool cascade;
>  } rtems_test_parallel_job;
>
>  /**
> diff --git a/cpukit/libmisc/testsupport/testparallel.c 
> b/cpukit/libmisc/testsupport/testparallel.c
> index 681f769..c1bdeda 100644
> --- a/cpukit/libmisc/testsupport/testparallel.c
> +++ b/cpukit/libmisc/testsupport/testparallel.c
> @@ -44,6 +44,7 @@ static void start_worker_stop_timer(
>  ctx
>);
>_Assert(sc == RTEMS_SUCCESSFUL);
> +  (void) sc;
>  }
>
>  static void run_tests(
> @@ -58,21 +59,31 @@ static void run_tests(
>
>for (i = 0; i < job_count; ++i) {
>  const rtems_test_parallel_job *job = &jobs[i];
> +size_t n = rtems_get_processor_count();
> +size_t j = job->cascade ? 0 : rtems_get_processor_count() - 1;
>
> -if (rtems_test_parallel_is_master_worker(worker_index)) {
> -  rtems_interval duration = (*job->init)(ctx, job->arg);
> +while (j < n) {
> +  size_t active_worker = j + 1;
>
> -  start_worker_stop_timer(ctx, duration);
> -}
> +  if (rtems_test_parallel_is_master_worker(worker_index)) {
> +rtems_interval duration = (*job->init)(ctx, job->arg, active_worker);
> +
> +start_worker_stop_timer(ctx, duration);
> +  }
> +
> +  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
>
> -_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
> +  if (worker_index <= j) {
> +(*job->body)(ctx, job->arg, active_worker, worker_index);
> +  }
>
> -(*job->body)(ctx, job->arg, worker_index);
> +  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
>
> -_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
> +  if (rtems_test_parallel_is_master_worker(worker_index)) {
> +(*job->fini)(ctx, job->arg, active_worker);
> +  }
>
> -if (rtems_test_parallel_is_master_worker(worker_index)) {
> -  (*job->fini)(ctx, job->arg);
> +  ++j;
>  }
>}
>  }
> @@ -91,6 +102,7 @@ static void worker_task(rtems_task_argument arg)
>
>sc = rtems_event_transient_send(warg.ctx->master_id);
>_Assert(sc == RTEMS_SUCCESSFUL);
> +  (void) sc;
>
>run_tests(warg.ctx, warg.jobs, warg.job_count, warg.worker_index);
>
> diff --git a/testsuites/smptests/smpatomic01/init.c 
> b/testsuites/smptests/smpatomic01/init.c
> index fbd20fa..0241a01 100644
> --- a/testsuites/smptests/smpatomic01/init.c
> +++ b/testsuites/smptests/smpatomic01/init.c
> @@ -98,7 +98,8 @@ static void test_fini(
>
>  static rtems_interval test_atomic_add_init(
>rtems_test_parallel_context *base,
> -  void *arg
> +  void *arg,
> +  size_t active_workers
>  )
>  {
>smpatomic01_context *ctx = (smpatomic01_conte

Re: [PATCH 05/12] Temporarily disable libdl for v850

2015-03-06 Thread Gedare Bloom
On Fri, Mar 6, 2015 at 9:55 AM, Joel Sherrill  wrote:
> There is an issue linking dl0* which has not been resolved.
> This issue is being tracked but is not considered a release
> blocker. This patch is a workaround which disables libdl
> for the v850 until the ticket is resolved.
>
> updates 2260.
> ---
>  cpukit/configure.ac  | 5 -
>  testsuites/libtests/configure.ac | 5 -
>  2 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/cpukit/configure.ac b/cpukit/configure.ac
> index f4d4e7b..39104ec 100644
> --- a/cpukit/configure.ac
> +++ b/cpukit/configure.ac
> @@ -377,11 +377,14 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
>  AC_MSG_CHECKING([whether CPU supports libdl])
>  case $RTEMS_CPU in
>arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
> -  moxie | powerpc | sparc | v850)
> +  moxie | powerpc | sparc)
> HAVE_LIBDL=yes ;;
># bfin has an issue to resolve with libdl. See ticket #2252
>bfin)
> HAVE_LIBDL=no ;;
> +  # v850 has an issue to resolve with libdl. See ticket #2260
> +  v850)
> +   HAVE_LIBDL=no ;;
Can you conjoin these cases like
bfin | v850 | *)
?
>*)
> HAVE_LIBDL=no ;;
>  esac
> diff --git a/testsuites/libtests/configure.ac 
> b/testsuites/libtests/configure.ac
> index 7c82394..5308384 100644
> --- a/testsuites/libtests/configure.ac
> +++ b/testsuites/libtests/configure.ac
> @@ -45,11 +45,14 @@ AM_CONDITIONAL(HAS_POSIX,test 
> x"${rtems_cv_RTEMS_POSIX_API}" = x"yes")
>  AC_MSG_CHECKING([whether CPU supports libdl])
>  case $RTEMS_CPU in
>arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
> -  moxie | powerpc | sparc | v850)
> +  moxie | powerpc | sparc)
> TEST_LIBDL=yes ;;
># bfin has an issue to resolve with libdl. See ticket #2252
>bfin)
> HAVE_LIBDL=no ;;
> +  # v850 has an issue to resolve with libdl. See ticket #2260
> +  v850)
> +   HAVE_LIBDL=no ;;
>*)
> TEST_LIBDL=no ;;
>  esac
> --
> 1.9.3
>
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH] testsupport: Add cascade option to parallel test

2015-03-06 Thread Alexander Krutwig
---
 cpukit/libmisc/testsupport/test.h | 25 -
 cpukit/libmisc/testsupport/testparallel.c | 30 +++
 testsuites/smptests/smpatomic01/init.c| 90 ---
 3 files changed, 104 insertions(+), 41 deletions(-)

diff --git a/cpukit/libmisc/testsupport/test.h 
b/cpukit/libmisc/testsupport/test.h
index afed462..ae6c17e 100644
--- a/cpukit/libmisc/testsupport/test.h
+++ b/cpukit/libmisc/testsupport/test.h
@@ -141,13 +141,16 @@ typedef struct {
*
* @param[in] ctx The parallel context.
* @param[in] arg The user specified argument.
+   * @param[in] active_workers Count of active workers.  Depends on the cascade
+   *   option.
*
* @return The desired job body execution time in clock ticks.  See
*   rtems_test_parallel_stop_job().
*/
   rtems_interval (*init)(
 rtems_test_parallel_context *ctx,
-void *arg
+void *arg,
+size_t active_workers
   );
 
   /**
@@ -155,12 +158,15 @@ typedef struct {
*
* @param[in] ctx The parallel context.
* @param[in] arg The user specified argument.
+   * @param[in] active_workers Count of active workers.  Depends on the cascade
+   *   option.
* @param[in] worker_index The worker index.  It ranges from 0 to the
*   processor count minus one.
*/
   void (*body)(
 rtems_test_parallel_context *ctx,
 void *arg,
+size_t active_workers,
 size_t worker_index
   );
 
@@ -172,13 +178,28 @@ typedef struct {
*
* @param[in] ctx The parallel context.
* @param[in] arg The user specified argument.
+   * @param[in] active_workers Count of active workers.  Depends on the cascade
+   *   option.
*/
   void (*fini)(
 rtems_test_parallel_context *ctx,
-void *arg
+void *arg,
+size_t active_workers
   );
 
+  /**
+   * @brief Job specific argument.
+   */
   void *arg;
+
+  /**
+   * @brief Job cascading flag.
+   *
+   * This flag indicates whether the job should be executed in a cascaded
+   * manner (the job is executed on one processor first, two processors
+   * afterwards and incremented step by step until all processors are used).
+   */
+  bool cascade;
 } rtems_test_parallel_job;
 
 /**
diff --git a/cpukit/libmisc/testsupport/testparallel.c 
b/cpukit/libmisc/testsupport/testparallel.c
index 681f769..c1bdeda 100644
--- a/cpukit/libmisc/testsupport/testparallel.c
+++ b/cpukit/libmisc/testsupport/testparallel.c
@@ -44,6 +44,7 @@ static void start_worker_stop_timer(
 ctx
   );
   _Assert(sc == RTEMS_SUCCESSFUL);
+  (void) sc;
 }
 
 static void run_tests(
@@ -58,21 +59,31 @@ static void run_tests(
 
   for (i = 0; i < job_count; ++i) {
 const rtems_test_parallel_job *job = &jobs[i];
+size_t n = rtems_get_processor_count();
+size_t j = job->cascade ? 0 : rtems_get_processor_count() - 1;
 
-if (rtems_test_parallel_is_master_worker(worker_index)) {
-  rtems_interval duration = (*job->init)(ctx, job->arg);
+while (j < n) {
+  size_t active_worker = j + 1;
 
-  start_worker_stop_timer(ctx, duration);
-}
+  if (rtems_test_parallel_is_master_worker(worker_index)) {
+rtems_interval duration = (*job->init)(ctx, job->arg, active_worker);
+
+start_worker_stop_timer(ctx, duration);
+  }
+
+  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
 
-_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
+  if (worker_index <= j) {
+(*job->body)(ctx, job->arg, active_worker, worker_index);
+  }
 
-(*job->body)(ctx, job->arg, worker_index);
+  _SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
 
-_SMP_barrier_Wait(&ctx->barrier, &bs, ctx->worker_count);
+  if (rtems_test_parallel_is_master_worker(worker_index)) {
+(*job->fini)(ctx, job->arg, active_worker);
+  }
 
-if (rtems_test_parallel_is_master_worker(worker_index)) {
-  (*job->fini)(ctx, job->arg);
+  ++j;
 }
   }
 }
@@ -91,6 +102,7 @@ static void worker_task(rtems_task_argument arg)
 
   sc = rtems_event_transient_send(warg.ctx->master_id);
   _Assert(sc == RTEMS_SUCCESSFUL);
+  (void) sc;
 
   run_tests(warg.ctx, warg.jobs, warg.job_count, warg.worker_index);
 
diff --git a/testsuites/smptests/smpatomic01/init.c 
b/testsuites/smptests/smpatomic01/init.c
index fbd20fa..0241a01 100644
--- a/testsuites/smptests/smpatomic01/init.c
+++ b/testsuites/smptests/smpatomic01/init.c
@@ -98,7 +98,8 @@ static void test_fini(
 
 static rtems_interval test_atomic_add_init(
   rtems_test_parallel_context *base,
-  void *arg
+  void *arg,
+  size_t active_workers
 )
 {
   smpatomic01_context *ctx = (smpatomic01_context *) base;
@@ -111,6 +112,7 @@ static rtems_interval test_atomic_add_init(
 static void test_atomic_add_body(
   rtems_test_parallel_context *base,
   void *arg,
+  size_t active_workers,
   size_t worker_index
 )
 {
@@ -125,7 +127,11 @@ static void test_atomic_add_body(
   ctx->per_worker_value[worker_index] = counter;
 }
 
-static void test_atomic_add_fini(rtems_

Re: [PATCH 05/12] Temporarily disable libdl for v850

2015-03-06 Thread Joel Sherrill


On 3/6/2015 9:12 AM, Gedare Bloom wrote:
> On Fri, Mar 6, 2015 at 9:55 AM, Joel Sherrill  
> wrote:
>> There is an issue linking dl0* which has not been resolved.
>> This issue is being tracked but is not considered a release
>> blocker. This patch is a workaround which disables libdl
>> for the v850 until the ticket is resolved.
>>
>> updates 2260.
>> ---
>>  cpukit/configure.ac  | 5 -
>>  testsuites/libtests/configure.ac | 5 -
>>  2 files changed, 8 insertions(+), 2 deletions(-)
>>
>> diff --git a/cpukit/configure.ac b/cpukit/configure.ac
>> index f4d4e7b..39104ec 100644
>> --- a/cpukit/configure.ac
>> +++ b/cpukit/configure.ac
>> @@ -377,11 +377,14 @@ AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \
>>  AC_MSG_CHECKING([whether CPU supports libdl])
>>  case $RTEMS_CPU in
>>arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
>> -  moxie | powerpc | sparc | v850)
>> +  moxie | powerpc | sparc)
>> HAVE_LIBDL=yes ;;
>># bfin has an issue to resolve with libdl. See ticket #2252
>>bfin)
>> HAVE_LIBDL=no ;;
>> +  # v850 has an issue to resolve with libdl. See ticket #2260
>> +  v850)
>> +   HAVE_LIBDL=no ;;
> Can you conjoin these cases like
> bfin | v850 | *)
> ?
I could but I left them separate to emphasize that they had separate
tickets, were independent issues, and weren't just not supported.

>>*)
>> HAVE_LIBDL=no ;;
>>  esac
>> diff --git a/testsuites/libtests/configure.ac 
>> b/testsuites/libtests/configure.ac
>> index 7c82394..5308384 100644
>> --- a/testsuites/libtests/configure.ac
>> +++ b/testsuites/libtests/configure.ac
>> @@ -45,11 +45,14 @@ AM_CONDITIONAL(HAS_POSIX,test 
>> x"${rtems_cv_RTEMS_POSIX_API}" = x"yes")
>>  AC_MSG_CHECKING([whether CPU supports libdl])
>>  case $RTEMS_CPU in
>>arm | h8300 | i386 | lm32 | m32r | m68k | mips | \
>> -  moxie | powerpc | sparc | v850)
>> +  moxie | powerpc | sparc)
>> TEST_LIBDL=yes ;;
>># bfin has an issue to resolve with libdl. See ticket #2252
>>bfin)
>> HAVE_LIBDL=no ;;
>> +  # v850 has an issue to resolve with libdl. See ticket #2260
>> +  v850)
>> +   HAVE_LIBDL=no ;;
>>*)
>> TEST_LIBDL=no ;;
>>  esac
>> --
>> 1.9.3
>>
>> ___
>> devel mailing list
>> devel@rtems.org
>> http://lists.rtems.org/mailman/listinfo/devel

-- 
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Doxygen Warnings - Please Look at Attempt to Fix Some

2015-03-06 Thread Joel Sherrill
Hi

There are some Doxygen issues which need to be fixed. In particular,
there are grouping errors and inconsistent group naming issues.
todimpl.h has two groups with the same name. Some files do not
have end groups.

I threw out all the "undocumented" warnings. There are ~7000 of
those. These are inconsistencies which we should attempt to narrow
down.

Thanks.

-- 
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985

Notice: Output directory `/home/joel/rtems-4.11-work/doxygen/cpukit-tmp' does 
not exist. I have created it for you.
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/dev/i2c/i2c.h:432:
 Warning: end of file while inside a group

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/devfs.h:258:
 Warning: reached end of file while inside a code block!
The command that should end the block seems to be missing!

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/devfs.h:258:
 Warning: end of file while inside a group

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/score/cpuset.h:33:
 Warning: missing title after \defgroup ScoreCpuset
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/score/todimpl.h:121:
 group ScoreTOD: ignoring title "Time Of Day (TOD) Handler" that does not match 
old title "Time of Day Handler"

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/score/scheduleredfimpl.h:29:
 group ScoreSchedulerEDF: ignoring title "EDF" that does not match old title 
"EDF Scheduler"

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rtl/rtl.h:58:
 Warning: documentation for unknown define RTL_XGLUE found.

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rtl/rtl.h:66:
 Warning: documentation for unknown define RTEMS_RTL_SYMS_GLOBAL_BUCKETS found.

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rtl/rtl.h:71:
 Warning: documentation for unknown define RTEMS_RTL_UNRESOLVED_BLOCK_SIZE 
found.

/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/error.h:106:
 Warning: argument 'p' of command @param is not found in the argument list of 
rtems_verror(rtems_error_code_t error_code, const char *printf_format, va_list 
arglist)
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/error.h:106:
 Warning: The following parameters of rtems_verror(rtems_error_code_t 
error_code, const char *printf_format, va_list arglist) are not documented:
  parameter 'arglist'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-bitmaps.h:298:
 Warning: The following parameters of 
rtems_rfs_bitmap_open(rtems_rfs_bitmap_control *control, rtems_rfs_file_system 
*fs, rtems_rfs_buffer_handle *buffer, size_t size, rtems_rfs_buffer_block 
block) are not documented:
  parameter 'block'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:262:
 Warning: argument '_fs' of command @param is not found in the argument list of 
rtems_rfs_fs_flags(_f)
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:262:
 Warning: The following parameters of rtems_rfs_fs_flags(_f) are not documented:
  parameter '_f'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:275:
 Warning: argument '_fs' of command @param is not found in the argument list of 
rtems_rfs_fs_no_local_cache(_f)
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:275:
 Warning: The following parameters of rtems_rfs_fs_no_local_cache(_f) are not 
documented:
  parameter '_f'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:268:
 Warning: argument '_fs' of command @param is not found in the argument list of 
rtems_rfs_fs_release_bitmaps(_f)
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:268:
 Warning: The following parameters of rtems_rfs_fs_release_bitmaps(_f) are not 
documented:
  parameter '_f'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file-system.h:375:
 Warning: End of list marker found without any preceding list items
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-file.h:298:
 Warning: The following parameters of rtems_rfs_file_open(rtems_rfs_file_system 
*fs, rtems_rfs_ino ino, int oflag, rtems_rfs_file_handle **handle) are not 
documented:
  parameter 'oflag'
/home/joel/rtems-4.11-work/b-doxy/sparc-rtems4.11/leon3/lib/include/rtems/rfs/rtems-rfs-inode.h:568:
 Warning: The following parameters of 
rtems_rfs_inode_alloc(rte

[PATCH] confdefs: replace disable with enable option for notepads

2015-03-06 Thread Gedare Bloom
Make notepads disabled by default. The previous option
CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS is now unused and
will emit a compile-time warning. A new option
CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS is available to turn
on notepads, but it also will emit a compile-time warning
to indicate that notepads are deprecated.

Closes #2265
---
 cpukit/sapi/include/confdefs.h |  8 ++--
 doc/user/conf.t| 46 +-
 2 files changed, 47 insertions(+), 7 deletions(-)

diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
index 7d9e3b9..7c520ac 100644
--- a/cpukit/sapi/include/confdefs.h
+++ b/cpukit/sapi/include/confdefs.h
@@ -1810,7 +1810,11 @@ const rtems_libio_helper rtems_fs_init_helper =
   #define CONFIGURE_TASKS \
 (CONFIGURE_MAXIMUM_TASKS + CONFIGURE_LIBBLOCK_TASKS)
 
-  #ifndef CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS
+  #if defined(CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS)
+#warning "CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS is deprecated and will be 
removed."
+  #endif
+  #if defined(CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS)
+#warning "CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS is deprecated and will be 
removed."
 #define CONFIGURE_NOTEPADS_ENABLED   TRUE
   #else
 #define CONFIGURE_NOTEPADS_ENABLED   FALSE
@@ -2613,7 +2617,7 @@ const rtems_libio_helper rtems_fs_init_helper =
   #endif
 } Scheduler;
 RTEMS_API_Control API_RTEMS;
-#ifndef CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS
+#if defined(CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS)
   uint32_t Notepads[ RTEMS_NUMBER_NOTEPADS ];
 #endif
 #ifdef RTEMS_POSIX_API
diff --git a/doc/user/conf.t b/doc/user/conf.t
index dc10816..fe714b4 100644
--- a/doc/user/conf.t
+++ b/doc/user/conf.t
@@ -595,6 +595,40 @@ require the addition of a new configuration parameter to 
specify the
 number of tasks which enable floating point support.
 
 @c
+@c === CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS ===
+@c
+@subsection Enable Classic API Notepads
+
+@findex CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS
+
+@table @b
+@item CONSTANT:
+@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS}
+
+@item DATA TYPE:
+Boolean feature macro.
+
+@item RANGE:
+Defined or undefined.
+
+@item DEFAULT VALUE:
+This is not defined by default, and Classic API Notepads are not supported.
+
+@end table
+
+@subheading DESCRIPTION:
+@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS} should be defined if the
+user wants to have support for Classic API Notepads in their application.
+
+@subheading NOTES:
+Disabling Classic API Notepads saves the allocation of sixteen (16)
+thirty-two bit integers. This saves sixty-four bytes per task/thread
+plus the allocation overhead. Notepads are rarely used in applications
+and this can save significant memory in a low RAM system. Classic API 
+Notepads are deprecated, and this option is expected to be obsolete in
+the near future.
+
+@c
 @c === CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS ===
 @c
 @subsection Disable Classic API Notepads
@@ -612,20 +646,22 @@ Boolean feature macro.
 Defined or undefined.
 
 @item DEFAULT VALUE:
-This is not defined by default, and Classic API Notepads are supported.
+This is not defined by default, and Classic API Notepads are not supported.
 
 @end table
 
 @subheading DESCRIPTION:
-@code{CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS} should be defined if the
-user does not want to have support for Classic API Notepads in their
-application.
+@code{CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS} is deprecated. If users
+want to have support for Classic API Notepads, they should use
+@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS}.
 
 @subheading NOTES:
 Disabling Classic API Notepads saves the allocation of sixteen (16)
 thirty-two bit integers. This saves sixty-four bytes per task/thread
 plus the allocation overhead. Notepads are rarely used in applications
-and this can save significant memory in a low RAM system.
+and this can save significant memory in a low RAM system. Classic API 
+Notepads are deprecated, and this option is expected to be obsolete in
+the near future.
 
 @c
 @c === CONFIGURE_MAXIMUM_TIMERS ===
-- 
1.9.1

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: [PATCH] confdefs: replace disable with enable option for notepads

2015-03-06 Thread Gedare Bloom
This should also update the tests:
samples/minimum/init.c
sptests/sp07/task1.c
sptests/sp07/task2.c
sptests/sp07/init.c
sptests/sp07/sp07.scn
sptests/sptask_err04/task1.c
sptests/spnotepad01/spnotepad01.scn
sptests/spnotepad01/init.c

On Fri, Mar 6, 2015 at 12:43 PM, Gedare Bloom  wrote:
> Make notepads disabled by default. The previous option
> CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS is now unused and
> will emit a compile-time warning. A new option
> CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS is available to turn
> on notepads, but it also will emit a compile-time warning
> to indicate that notepads are deprecated.
>
> Closes #2265
> ---
>  cpukit/sapi/include/confdefs.h |  8 ++--
>  doc/user/conf.t| 46 
> +-
>  2 files changed, 47 insertions(+), 7 deletions(-)
>
> diff --git a/cpukit/sapi/include/confdefs.h b/cpukit/sapi/include/confdefs.h
> index 7d9e3b9..7c520ac 100644
> --- a/cpukit/sapi/include/confdefs.h
> +++ b/cpukit/sapi/include/confdefs.h
> @@ -1810,7 +1810,11 @@ const rtems_libio_helper rtems_fs_init_helper =
>#define CONFIGURE_TASKS \
>  (CONFIGURE_MAXIMUM_TASKS + CONFIGURE_LIBBLOCK_TASKS)
>
> -  #ifndef CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS
> +  #if defined(CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS)
> +#warning "CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS is deprecated and will 
> be removed."
> +  #endif
> +  #if defined(CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS)
> +#warning "CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS is deprecated and will 
> be removed."
>  #define CONFIGURE_NOTEPADS_ENABLED   TRUE
>#else
>  #define CONFIGURE_NOTEPADS_ENABLED   FALSE
> @@ -2613,7 +2617,7 @@ const rtems_libio_helper rtems_fs_init_helper =
>#endif
>  } Scheduler;
>  RTEMS_API_Control API_RTEMS;
> -#ifndef CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS
> +#if defined(CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS)
>uint32_t Notepads[ RTEMS_NUMBER_NOTEPADS ];
>  #endif
>  #ifdef RTEMS_POSIX_API
> diff --git a/doc/user/conf.t b/doc/user/conf.t
> index dc10816..fe714b4 100644
> --- a/doc/user/conf.t
> +++ b/doc/user/conf.t
> @@ -595,6 +595,40 @@ require the addition of a new configuration parameter to 
> specify the
>  number of tasks which enable floating point support.
>
>  @c
> +@c === CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS ===
> +@c
> +@subsection Enable Classic API Notepads
> +
> +@findex CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS
> +
> +@table @b
> +@item CONSTANT:
> +@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS}
> +
> +@item DATA TYPE:
> +Boolean feature macro.
> +
> +@item RANGE:
> +Defined or undefined.
> +
> +@item DEFAULT VALUE:
> +This is not defined by default, and Classic API Notepads are not supported.
> +
> +@end table
> +
> +@subheading DESCRIPTION:
> +@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS} should be defined if the
> +user wants to have support for Classic API Notepads in their application.
> +
> +@subheading NOTES:
> +Disabling Classic API Notepads saves the allocation of sixteen (16)
> +thirty-two bit integers. This saves sixty-four bytes per task/thread
> +plus the allocation overhead. Notepads are rarely used in applications
> +and this can save significant memory in a low RAM system. Classic API
> +Notepads are deprecated, and this option is expected to be obsolete in
> +the near future.
> +
> +@c
>  @c === CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS ===
>  @c
>  @subsection Disable Classic API Notepads
> @@ -612,20 +646,22 @@ Boolean feature macro.
>  Defined or undefined.
>
>  @item DEFAULT VALUE:
> -This is not defined by default, and Classic API Notepads are supported.
> +This is not defined by default, and Classic API Notepads are not supported.
>
>  @end table
>
>  @subheading DESCRIPTION:
> -@code{CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS} should be defined if the
> -user does not want to have support for Classic API Notepads in their
> -application.
> +@code{CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS} is deprecated. If users
> +want to have support for Classic API Notepads, they should use
> +@code{CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS}.
>
>  @subheading NOTES:
>  Disabling Classic API Notepads saves the allocation of sixteen (16)
>  thirty-two bit integers. This saves sixty-four bytes per task/thread
>  plus the allocation overhead. Notepads are rarely used in applications
> -and this can save significant memory in a low RAM system.
> +and this can save significant memory in a low RAM system. Classic API
> +Notepads are deprecated, and this option is expected to be obsolete in
> +the near future.
>
>  @c
>  @c === CONFIGURE_MAXIMUM_TIMERS ===
> --
> 1.9.1
>
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


4.11 Branching Close

2015-03-06 Thread Joel Sherrill
Hi

There has been a lot of work over the past month by multiple people
to get ready for branching 4.11. This has involved tool testing, ticket
evaluation, etc.

Please help by testing on your BSP of choice and ensuring that
things look good.

I believe we are very close to entering a "slushy" state before
branching.

-- 
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherr...@oarcorp.comOn-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available(256) 722-9985

___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


New source layout.

2015-03-06 Thread Amar Takhar
The following is a proposal for a new source layout that will be included in 
the 
new 'waf' build system.  The current layout is a product of years of laying and 
requirements for the auto* build system.  Since we are no longer restricted by 
this it makes sense to take the time and give RTEMS a more sensible source 
layout.

rtems/bsp/* exists to carry common bsp files.  I don't know why it makes sense 
to have score/* then cpu/* with separate architectures.  Even if the purpose is 
different does it make sense to have two completely separate areas with 
architecture hierarchies?  There may have been a reason to do this before is 
there one now?

There are some interdependencies between the common BSP files (bsp.h).  I can 
hack around this for now using waf until we can break this interdependency by 
moving to public APIs.

Note: the reason for rtems/bsp/* existing is to unhook rtems/ and bsp/ 100%.  
This means you can develop a BSP with only librtems installed on your system 
and 
nothing else.  We will also support a build that does not build any BSP code.  
It will also allow us to split our tests correctly as well.

I will propose a 1:1 mapping of all source and header files from current -> new 
location for approval once we have the general layout completed.  I would like 
to avoid renaming the source files themselves until after we have moved and 
verified everything builds OK.  Renaming the files in-dir is a trivial 
operation and can be verified using a hash of the resulting libraries.


include locations
~
include/rtems/include/ - Private API
include/rtems/include/rtems/   - Public API
include/rtems/bsp/include/ - Common BSP files
include/rtems/bsp/include/   - Architecture specific


rtems

rtems/lib/ada/  [c/src/ada]
rtems/lib/block
rtems/lib/csupport
rtems/lib/fs
rtems/lib/misc
rtems/lib/networking
rtems/lib/rpc
rtems/lib/z
rtems/lib/qos
rtems/lib/md
rtems/lib/gnat
rtems/lib/i2c
rtems/lib/rtems++   [c/src/librtems++]
rtems/classic   [cpukit/rtems]
rtems/posix
rtems/sapi
rtems/server/ftpd
rtems/server/mghttpd
rtems/server/pppd
rtems/score

The following need to be discussed in detail as they will end up split into 
multiple locations:
rtems/bsp/chip/ [c/src/libchip]
rtems/bsp/shared/ [c/src/lib/libcpu]

Note: c/src/support has been killed.


bsp (contents of c/src/lib/libbsp, actual BSP source)
~~~
bsp//
bsp///
bsp///include <-installable BSP headers.


installed locations
~~
include/rtems/  - Public API
include/rtems/bsp/  - Common BSP files
include/rtems/bsp//   - Architecture specific
include/rtems/bsp//  - BSP specific


changes to source

- All RTEMS source will use #include  for public API
- Private API will use #include "header.h"
- Local header will use #include "header.h"
- Only -Iinclude will be provided all paths must be full and start with 
'rtems/' 
  to avoid name clashing and for clarity.


Please feel free to comment on any of the above.  It is meant as a guideline 
for 
us to talk about the larger 'chunks' of source.  Eventually this will move to a 
spreadsheet that contains 1:1 mapping of old_dir -> new_dir locations.


Amar.
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Waf migration proposal.

2015-03-06 Thread Amar Takhar
The following is a proposal to lay out the beginnings of a plan to move from 
the 
current auto* build system to the new waf build located at 
http://git.rtems.org/amar/waf.git.

This is meant as an initial overview open for discussion.  The entire project 
will be fleshed out on the wiki and using milestones on the roadmap populated 
with tickets for each task that needs to be completed.  This will help give 
everyone an idea of progress and a place to collect any issues that may arise.


* 1 Initial commit
  
  1.1 move headers
  1.2 introduce waf
  1.3 apply all include fixes (from 'fix' branch)
  1.4 remove documentation

* 2 Tests
  ~~~
  2.1 migrate tests to waf

* 3 Source Move
  ~
  3.1 new source layout

* 4 Buildbot
  ~~
  4.1 Introduce automated building using buildbot

* 5 Tools
  ~~~
  5.1 build all tools, run all test suites to ensure RTEMS builds as 
  expected.

* 6 Verification
  ~~
  6.1 Final version containing all testing required in order to verify the 
  build.
  6.2 create new rtems-docs repository with new reST + Sphinx documentation 
  containing data from docs/ (This is already complete)


It was brought up previously the above may be too much at once.  I've had a lot 
of time to think about it and I believe there is no other way to do it for the 
following reasons:

 * The current build is monolithic in nature.  It literally touches everything 
   if you only want to build 1 BSP.
 * There is no way to verify old+new other than hashing the important parts of 
   the resulting object files.  Using this method it does not matter how much 
we 
   change at once.
 * The incremental changes, in their smallest units are so large that each one 
   is a radical change that requires a lot of testing.  If we do each one then 
   test or do it all and test we garner no benefit doing it in between steps 
   other than 5 times the work.  This is due to our test method: object 
   checking and testsuite.
 * Trying to make changes using the current build system is worse as the auto* 
   build provides no way to verify itself whereas waf does.
 * waf offers us the opportunity to build RTEMS in an extremely concise manner. 
 
   Once we verify it we know it will build that way on every system or fail 
   during the build.

While moving forward with this we will still have 4.11,4.12 or however many 
iterations of the 4.x branch until the waf build can be called stable.  While 
there are concerns about RTEMS being seen as unstable this can be mitigated or 
completely removed by detailing our intentions and not cutting any releases of 
the 'master' branch.

I will be writing a tool that will map old source paths to new ones.  You could 
for example go:

# ./find.py 
  - get a list of files that match that file in their new location
# ./find 
  - same a above just a more exact search
# ./find.py 
  - locate a file based on old file hash

This will be useful to allow users to make their way around the new source.  It
will also offer an easy way to port patches to the new branch from 4.x.

Also, no code freeze will be necessary.  None of the source file contents will
change only their names.  It should be possible to use the above tool to write
something that will automatically convert patches if someone want to do this.
Otherwise as long as you point it to the new file all patches will apply
cleanly.

The expected timeline from milestones 1-5 inclusive is 1 month.

To be clear: this is a proposal where all development moves to the 4.x branches 
until this project is complete.  Once done commits into the 4.x branches can be 
merged into master one by one where they will go through review and testing via 
Buildbot.  Porting should in most cases be trivial as pointing to the new file 
location.  Any build changes will be trivial to port to waf from auto*.

Any and all comments welcome feel free to ask for clarification on any points!


Amar.
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re:Re: Re: Re: an error about RTEMS compile when make

2015-03-06 Thread zhengyazhou
Gedare,
The second problem can be solved by command  $ ln -s /bin/gcc.exe /bin/cc.exe
but comes the error when make :

>> Making all in csb337
>> make[2]: Entering directory
>> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337'
>> make[2]: *** No rule to make target 'all'。 停止。
>> make[2]: Leaving directory
>> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337'
>> Makefile:257: recipe for target 'all-recursive' failed
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory
>> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c'
>> Makefile:275: recipe for target 'all-recursive' failed
>> make: *** [all-recursive] Error 1

and I am a little confused about the first problem you say .I will check it 
latter.

Thank you for help,
best wishes
Asher










At 2015-03-06 22:41:04, "Gedare Bloom"  wrote:
>Asher,
>
>I see two problems.
>
>First, is that the native compiler is failing for some reason in the
>tools subdirectory, which is the only part of RTEMS that gets compiled
>by the native compiler. From what I can tell it appears like the
>native compiler is not finding the dlls needed to compile argument
>processing (optargs).
>
>The rest of RTEMS is cross-compiled, which means the compiler that
>gets used when compiling RTEMS is not /bin/gcc but should instead (in
>your case) be /opt/rtems-4.10/bin/arm-rtems4.10-gcc. The second
>problem comes where it says:
>checking for arm-rtems4.10-gcc... arm-rtems4.10-gcc
>checking for arm-rtems4.10-gcc... (cached) arm-rtems4.10-gcc
>checking whether the C compiler works... no
>configure: error: in 
>`/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337':
>configure: error: C compiler cannot create executables
>See `config.log' for more details
>Makefile:712: recipe for target 'csb337' failed
>make[2]: *** [csb337] Error 1
>make[2]: Leaving directory '/archive/rtems-4.10.2/build-
>rtems/arm-rtems4.10/c'
>
>Look through config.log in the build subdirectory
>'/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c' to try to find the
>problem with arm-rtems4.10-gcc.
>
>You might like to consider using a virtual machine with a Linux host
>instead of Windows.
>
>Gedare
>
>On Thu, Mar 5, 2015 at 9:47 PM, zhengyazhou  wrote:
>>
>> When I first time configure and make,here comes the error in make :
>> configure: error: in
>> `/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337':
>> configure: error: C compiler cannot create executables
>> then I execute the command
>>  $ ln -s /bin/gcc.exe /bin/cc.exe ( copy from Using MS-Windows as a
>> Development Host, PartA.2 Cygwin)
>> then I execute configure and make again, the error changed to
>> make[2]: *** No rule to make target 'all'。 停止。
>> make[2]: Leaving directory
>> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c/csb337'
>> Makefile:257: recipe for target 'all-recursive' failed
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory
>> '/archive/rtems-4.10.2/build-rtems/arm-rtems4.10/c'
>> Makefile:275: recipe for target 'all-recursive' failed
>> make: *** [all-recursive] Error 1
>>
>>
>> Bellowed is the detail of the configure and make
>>
>> The first time configure and make
>> first time configure infomation:
>> $ ../configure --target=arm-rtems4.10 --disable-posix --disable-networking
>> --dis
>> able-cxx --enable-rtemsbsp=csb337 --prefix=/opt/rtems-4.10
>> checking for gmake... no
>> checking for make... make
>> checking for RTEMS Version... 4.10.2
>> checking build system type... x86_64-unknown-cygwin
>> checking host system type... x86_64-unknown-cygwin
>> checking target system type... arm-unknown-rtems4.10
>> checking for a BSD-compatible install... /usr/bin/install -c
>> checking whether build environment is sane... yes
>> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
>> checking for gawk... gawk
>> checking whether make sets $(MAKE)... yes
>> checking whether to enable maintainer-specific portions of Makefiles... no
>> configure: creating ./config.status
>> configure: configuring in ./tools/build
>> configure: running /bin/sh '../../../tools/build/configure'
>> '--prefix=/opt/rtems
>> -4.10' '--host=x86_64-unknown-cygwin' '--build=x86_64-unknown-cygwin'
>> '--disabl
>> e-posix' '--disable-networking' '--disable-cxx' '--enable-rtemsbsp=csb337'
>> '--ta
>> rget=arm-rtems4.10'  '--cache-file=/dev/null'
>> '--srcdir=../../../tools/build'
>> checking for gmake... no
>> checking for make... make
>> checking for RTEMS Version... 4.10.2
>> checking build system type... x86_64-unknown-cygwin
>> checking host system type... x86_64-unknown-cygwin
>> checking for a BSD-compatible install... /usr/bin/install -c
>> checking whether build environment is sane... yes
>> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
>> checking for gawk... gawk
>> checking whether make sets $(MAKE)... yes
>> checking whether to enable maintainer-specific portions of Makefiles... no
>> checking for x86_64-unknown-cygwin-gcc... no
>> checking for gcc... gcc
>> checking whether the