Re: rts-gpio DT binding

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 18/03/14 17:11, Felipe Balbi wrote:
> On Tue, Mar 18, 2014 at 05:04:47PM +0000, Mark Jackson wrote:
>> On 18/03/14 16:55, Felipe Balbi wrote:
>>> Hi Mark,
>>>
>>> I'm looking at the omap-serial driver and saw that you added rts-gpio
>>> binding in commit 4a0ac0f55b18dc297a87a85417fcf068658bf103 (OMAP: add
>>> RS485 support) but, as it turns out, gpio0_13 and gpio2_15 are both
>>> actual RTS signals.
>>>
>>> Instead of adding that extra GPIO handling, why didn't you just mux
>>> those signals as RTS and enable auto-RTS/auto-CTS feature ?
>>>
>>> It looks to me like that's highly unnecessary binding.
>>
>> I agree !!
>>
>> I think it was to allow delays pre- and post- sending the comms data.
>>
>> Several RS485 drivers require a "warm up" time before they will
>> transmit data correctly, and also need a "cool down" time to prevent
>> clipping of the last few bits of data.
>>
>> IIRC the built-in RTS handling did not allow for this.
> 
> you might be right here. I can't find anywhere to write rts delays.
> Weird... digging TRM.
> 
>> It also allows the RTS signal to be "inverted", again required for
>> some RS485 driver chips.
>>
>> However, I'll dig into why I did this and report back.
> 
> cool, thanks

Okay ... it comes back to me now.

When using RS485 drivers, we're not actually using RTS as a "Ready
To Send", we're really using it as an "enable RS485 driver".

I just used the "RTS" mnemonic as "we're now wanting to send some
data so please now enable the RS485 driver", rather than the normal
"I'm ready for your to send me some data".

So it's the opposite function.

Maybe it was a poor choice of abbreviation ?

As I said before, RS485 drivers might have active or active low
enables, so we might need to invert the "RTS" polarity.  This is
not handled by the hardware RTS signal.

Is that a good enough explanation ?

Mark J.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux