lkml.org 
[lkml]   [2007]   [Jan]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    SubjectRe: ARM i.MX serial: fix tx buffer overflows
    Date
    On Friday 05 January 2007 16:51, Sascha Hauer wrote:
    > This patch fixes occasional tx buffer overflows in the i.MX serial
    > driver which came from the fact that space in the buffer was checked
    > after sending the first byte. Also, fifosize is 32 bytes, not 8.
    >
    > Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de

    Acked-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>

    Hello Sascha,

    I have tested your change on 2.6.19-rt14 kernel
    which I have on hand there. It is only very short
    test, but I have not noticed any problems.

    In the fact, I think, that it is possible, that
    I have noticed some mentioned problem during
    my CPU-Freq testing on RT kernels before.
    I have noticed some problems sometimes with BusyBox
    shell history editing during frequency throttling.
    May it be, that RT+changed frequency invoked the problem.

    I have some other small fix for i.MX uart there.
    Can you add it into patch, or should I send it
    as separate one-liner?

    If RTS interrupt is caused by RTS senzing logic inside
    i.MX UART module the IRQ type cannot be set.

    It applies only for interrupts going through GPIO layer.
    The problem has been noticed by Konstantin Kletschke
    some time ago.

    No IRQF_TRIGGER set_type function for IRQ 26 (MPU)

    I would not change type to fixed 0, because it could
    be possible to use different GPIO MX1 pin for RTS
    in the theory. On the other hand it is only for documentation
    purposes now, because RTS read code would have to be adjusted
    in such case.

    Health and success wishes
    in year 2007 from

    Pavel Pisa

    ---

    drivers/serial/imx.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    Index: linux-2.6.19-rt/drivers/serial/imx.c
    ===================================================================
    --- linux-2.6.19-rt.orig/drivers/serial/imx.c
    +++ linux-2.6.19-rt/drivers/serial/imx.c
    @@ -403,7 +403,8 @@ static int imx_startup(struct uart_port
    if (retval) goto error_out2;

    retval = request_irq(sport->rtsirq, imx_rtsint,
    - IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
    + (sport->rtsirq < IMX_IRQS) ? 0 :
    + IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
    DRIVER_NAME, sport);
    if (retval) goto error_out3;




    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-01-05 19:29    [W:0.031 / U:30.636 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site