AG patches chunk A

Daniel Hellstrom daniel at gaisler.com
Thu Feb 2 14:39:30 UTC 2012


Hello,

I summarize the first chunk of patches, PATCH means I will send them on the rtems-devel list, PR means I will file a bugzilla PR. Feel free to comment.. and apply :)

Patches are listed in reverse apply order, thus IO_MANAGER patch comes last.

Thanks,
Daniel


+ SPARC specific enhancements
     c1afe98 LEON3: fix compiler warning in SHM driver

+ SPARC specific bugs
     3e2aa5e LEON3BSP MP: may wake one more CPU than expected
     fe9dc9e SPARC BSPs: workspace must be aligned on a 8-byte boundary
     124e68d LEON3: CPU index intialization moved to bspstart.c
     c7d92b6 LEON3: change d-cache snoop detect implementation

     LEON specific because GRETH driver only used by LEON:
     7a92dba GRETH: Moved print to remove potential deadlock
     6c66b13 GRETH: performance improvements and one bugfix

+ General bugs, (but not in any release, so PR not filed)
     839ef7b MP06 TEST: avoid program failure when slow UART on CPU core 0

+ General enhancements
     fe2ee40 bootstrap: handy --root switch for bootstrapping subdirs
     11ae399 IO_MANAGER: early dynamic driver registration



PATCH commit 8713dbeead0fb5ce880793ef391916cc422efce5
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Thu Nov 24 16:54:28 2011 +0100

     IO_MANAGER: early dynamic driver registration

     Adds the possibility to register drivers before the IO Manager has
     completed the initialization. Sometimes the BSP may want to register
     a driver dynamically early in the boot process.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PATCH commit b2a54a1af400bf731855fe26c8c4550a7cc0697b
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Nov 25 13:58:07 2011 +0100

     bootstrap: handy --root switch for bootstrapping subdirs

     Use the "--root DIR" to process only a subdir, for example
      $ ./bootstrap --root c/src/lib/libbsp/sparc
     will only generate Makefiles for all SPARC BSPs, saves some
     time when working with a specific BSP.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR commit 6c66b134e18dc24b3fe8b2d9a9a6954c6bc6840e
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Dec 2 10:47:58 2011 +0100

     GRETH: performance improvements and one bugfix

     GRETH driver updated, 10-15% performance improvements for GBIT MAC,
     unnecessary RX interrupts not taken which under heavy load saves approx.
     1500 interrupts/s, one task removed saving about 5kb memory and 1 bug
     solved.

     BUG: RX interrupt was enabled before the RX-daemon was created which could
     result in a faulty call to rtems_event_send.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR commit 7a92dba76fa113ab9fba1ddc90a2578ea8ff8d0a
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Dec 2 10:45:10 2011 +0100

     GRETH: Moved print to remove potential deadlock

     Deadlock may arise when the EDCL bug link is used to tunnel
     console output over Ethernet, when Ethernet is down one should
     avoid using console (only during debugging of LEON targets)

     Author: Marko Isomaki <marko at gaisler.com>
     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR[DEP-1] commit c7d92b6562014f85a29bd94ceb2c3292f36dfb32
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Nov 25 14:02:00 2011 +0100

     LEON3: change d-cache snoop detect implementation

     The previous code only checked if d-cache snooping was implemented,
     however snooping may be available but not enabled which may lead
     to driver bugs.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR commit 124e68d114f1ae6489ee86167357e6b6b16503e5
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Nov 25 14:15:16 2011 +0100

     LEON3: CPU index intialization moved to bspstart.c

     All LEON3/4 systems have a CPU-id, if on a single-CPU system the
     ID is always zero. On a multicore system it ranges from 0 to 15.

     The CPU index should always by updated even in a non-MP RTEMS OS
     since the CPU running RTEMS may not always be CPU0. For example
     when RTEMS runs on CPU1 and Linux on CPU0 in a mixed ASMP system.

     The old code executed within the IRQ controller initialization code
     makes no sense since the ASR register is a CPU register, it has
     nothing to do with AMBA initialization either.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PATCH commit 839ef7ba191dc65ecbb777bbd108758025259d34
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Wed Nov 16 16:56:46 2011 +0100

     MP06 TEST: avoid program failure when slow UART on CPU core 0

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR commit fe9dc9e1a55c1e71980eaa290f193cdae79141ca
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Nov 25 10:54:28 2011 +0100

     SPARC BSPs: workspace must be aligned on a 8-byte boundary

     The linker-script already declares a 8-byte aligned symbol (_end)
     which can be used instead of "variable aligned" symbol end.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PR commit 3e2aa5ed2415ff02dac7545930f0a07c546dac77
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Wed Nov 9 16:09:55 2011 +0100

     LEON3BSP MP: may wake one more CPU than expected

     The SHM code always wakes one CPU more that configured, however
     this has never been a problem since RTEMS will be running on all CPUs
     or only two cores were available.

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>

PATCH commit c1afe981bf63c79f695b6ff826c5109a9f7f1dd7
Author: Daniel Hellstrom <daniel at gaisler.com>
Date:   Fri Nov 25 11:33:11 2011 +0100

     LEON3: fix compiler warning in SHM driver

     Signed-off-by: Daniel Hellstrom <daniel at gaisler.com>




More information about the devel mailing list