This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

UART IrDA mode

Other Parts Discussed in Thread: DM385, DM388

Hello!

I have DM385 processor, which has 3 uarts. This uarts can work in IrDA mode. As I understand, processor has powerful stack to mix input data to output frames by IrDA standart.  I have "DM38x Technical Reference Manual ( SPRUHG1A dec2013 )" too. At page 2388 we see instruction to start transmit data by IrDA uart.

But, It doesnt work!!!

I have tried to solve this problem two ways. First, I changed omap_serial.c driver in linux kernel. But at the physisst lawyer i didn't see anything. UART_IRTX line didn't change.

Then I mmap UART1 address registers to userspace, build small programm which do the same operations as i see at page 2388 technical manual. And UART_IRTX line didnt changed again. I see hi state of IRTX line all the time.

What can be wrong? Who has successfully solved this problem?

 

  • Hi Evgeniy,

    Could you share what software you are using on your board and are you finding some messages related to the issue in the dmesg kernel log.
    Could you give details about the board? Is it stock or custom board because I could not exclude some hardware relation of the issue.

    BR
    Tsvetolin Shulev
  • Our board based on DM388 IP Camera Reference Design. Kernel link arago-project.org/.../

    May be you have some real example to  tune IrDA uart by dm385? Because I manipulate uart registers directly from userspace by <open("/dev/mem"); mmap> functions. I can change other uart ports settings registers in uart mode, and I see result in oscilloscope, but in irda mode i dont see any changes of the tx line.   

  • There is very interesting situation. On my board ( in my opinion it is not depends on board ) SIR mode works only on UART3 ( uartO2 in linux kernel ). And the output pin is uart_tx, although at technical reference manual output pin in sir mode is IRTX( uart_rtsn ). And the most dumbfounded fact - SIR mode doesnt work on UART2 ( uartO1 in linux kernel ). TI employees, how can you comment this fact?
  • OK, I have time to answer. I don't know, why TI writes that embedded irda SIR, MIR, FIR mode has every uart. I set IRDA SIR mode only at uart2. It works in linux kernel too. But embedde irda modes has a  little underwater rock: linux irda stack ( irlap and higher ) are already has preamble part of frame. So this  joint build is not working. I use free frame format where DaVinchi only send fixed pulse signals.