Changeset cf4dfc1 in rtems


Ignore:
Timestamp:
Feb 4, 2015, 5:20:27 PM (4 years ago)
Author:
Pavel Pisa <pisa@…>
Branches:
4.11, master
Children:
b4e52ce9
Parents:
924cbd4f
git-author:
Pavel Pisa <pisa@…> (02/04/15 17:20:27)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/04/15 18:36:22)
Message:

arm/tms570: sci context has to be writable because it holds state variable.

The structure tms570_sci_context holds state variable
tx_chars_in_hw which holds if and how many characters
(in the optional FIFO support for some Ti SCIs) are submitted
into hardware.

When field is not writable then code breaks when RTEMS
is build for Flash area.

The problem found and analyzed by Martin Galvan from tallertechnologies.

Signed-off-by: Pavel Pisa <pisa@…>

Location:
c/src/lib/libbsp/arm/tms570
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/arm/tms570/console/tms570-sci.c

    r924cbd4f rcf4dfc1  
    4141 * Definitions of all serial drivers
    4242 */
    43 const tms570_sci_context driver_context_table[] = {
     43tms570_sci_context driver_context_table[] = {
    4444  {
    4545    .base = RTEMS_TERMIOS_DEVICE_CONTEXT_INITIALIZER("TMS570 SCI1"),
     
    9292    ++minor
    9393  ) {
    94     const tms570_sci_context *ctx = &driver_context_table[minor];
     94    tms570_sci_context *ctx = &driver_context_table[minor];
    9595
    9696    /*
     
    106106        handler,
    107107        NULL,
    108         RTEMS_DECONST(rtems_termios_device_context *, &ctx->base)
     108        &ctx->base
    109109    );
    110110    if ( sc != RTEMS_SUCCESSFUL ) {
  • c/src/lib/libbsp/arm/tms570/include/tms570-sci-driver.h

    r924cbd4f rcf4dfc1  
    4848extern const rtems_termios_device_handler tms570_sci_handler_interrupt;
    4949
    50 extern const tms570_sci_context driver_context_table[];
     50extern tms570_sci_context driver_context_table[];
    5151
    5252/** @} */
Note: See TracChangeset for help on using the changeset viewer.