Hi,

On Fri, Jan 3, 2014 at 4:08 PM, Micka <[email protected]> wrote:
>
> Ok,
>
> Well, the baudrate is at 38400, the distribution is the Ubuntu from
Robert C Nelson ( 3.8.13 bone 30 ), the driver is the omap . I've modified
a little bit the driver to add RS485 support ( see the patch attached ) ,
the only major modification that I've done is to add :
>
> + wait_for_xmitr(up);
> +        if (up->rs485.flags & SER_RS485_ENABLED) {
> +       if(up->rs485.delay_rts_after_send>0){
> +                        udelay(up->rs485.delay_rts_after_send);
> +               }
> +               /* Disable RS485 TX EN */
> +               val = (up->rs485.flags & SER_RS485_RTS_AFTER_SEND) ? 1 :
0;
> +               gpio_set_value(up->rs485.gpio_pin, val);
> +        }
>
>
> in the function serial_omap_stop_tx .
>
>
> It works most of the time, but for an unknown reason there is this weird
behavior .....
>
>
> Any tips ? lead to follow ?

How much data are you writing?

Are you doing it with a single call to write?

If you're doing multipe calls to write then its quite possible that a
context switch is allowing another task to run and delaying your second
write.

--
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to