[RTEMS Project] #3170: Microzed libtest/block08 fails to print end of test correctly.

RTEMS trac trac at rtems.org
Mon Oct 9 07:19:29 UTC 2017


#3170: Microzed libtest/block08 fails to print end of test correctly.
------------------------------+------------------------------
 Reporter:  Chris Johns       |       Owner:  joel.sherrill@…
     Type:  defect            |      Status:  new
 Priority:  high              |   Milestone:  4.12.0
Component:  testing           |     Version:  4.12
 Severity:  critical          |  Resolution:
 Keywords:  zedboard testing  |
------------------------------+------------------------------

Comment (by Sebastian Huber):

 Does the following patch alter the output:
 {{{
 diff --git a/c/src/lib/libbsp/arm/xilinx-zynq/console/zynq-uart.c
 b/c/src/lib/libbsp/arm/xilinx-zynq/console/zynq-uart.c
 index fa91f3f46e..3c42be428f 100644
 --- a/c/src/lib/libbsp/arm/xilinx-zynq/console/zynq-uart.c
 +++ b/c/src/lib/libbsp/arm/xilinx-zynq/console/zynq-uart.c
 @@ -226,12 +226,18 @@ void zynq_uart_write_polled(
  {
    zynq_uart_context *ctx = (zynq_uart_context *) base;
    volatile zynq_uart *regs = ctx->regs;
 +  rtems_interrupt_level level;
 +
 +  rtems_interrupt_local_disable(level);

    while ((regs->channel_sts & ZYNQ_UART_CHANNEL_STS_TFUL) != 0) {
      /* Wait */
 +    rtems_interrupt_local_enable(level);
 +    rtems_interrupt_local_disable(level);
    }

    regs->tx_rx_fifo = ZYNQ_UART_TX_RX_FIFO_FIFO(c);
 +  rtems_interrupt_local_enable(level);
  }

  static void zynq_uart_write_support(
 }}}

--
Ticket URL: <http://devel.rtems.org/ticket/3170#comment:2>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list