Hi,

There have been a number of posts on here on how to switch between the 8250 
and OMAP drivers.  Above in this same thread, Robert showed which defines 
within the kernel defconfig file to change, and I experimented with this 
and was able to see and use /dev/ttyO* instead of /dev/ttyS*.  I had to 
search for and swtich additional defines, as initially, I ended-up losing 
my console and still had /dev/ttyS*..  If you look through the following 
post, you can see how I switched from the 8250 to the OMAP driver.  
 Someone else on here proposed a way to have a mixture of OMAP and 8250 
serial drivers, but I haven't been brave enough to try that yet.

https://groups.google.com/forum/#!topic/beagleboard/JGIm0Ej6jDI

I never attempted to get full-blown hardware flow control up and running, 
since our hardware board has RS485 chips which only have the DE pin 
connected.  RTS and CTS lines don't interconnect the different parties on 
the MODBUS network in our case, only the RS485 differential signals (e.g. 
TXp, TXn).  

Initially we connected GPIO lines to the DE pins, but then more recently, 
our hardware engineer swapped out GPIO lines for the  "dedicated RTS" line 
for a given UART.  

One thing that's really interesting, IMO, is if you use a dedicated RTS 
line (e.g. UART5 RTSn), you can still toggle RTS from the application layer 
**using the 8250 driver**.  Whereas when I attempted to use  a GPIO line 
and couple that to the UART through the UART device tree fragment (refer to 
the above thread for an example), I was not able to toggle the RTS line 
with the 8250 serial driver, but only the OMAP serial driver.  So as a test 
I installed python-serial on my beagleBoard-X15.  When I issued 
serial_object.setRTS(False/True) which was connected to DE on the 485 chip, 
I would see the chip transmit and not transmit using the 8250 driver.  But 
when using the GPIO line for RTS, I could only switch between transmit and 
receive on the 485 chip when I compiled in and used the OMAP drivers.

On Monday, March 5, 2018 at 7:12:50 AM UTC-6, erc...@gmail.com wrote:
>
> Hi Micka,
>
> We are having lots of trouble with RS485 with Kernel 4.4.x or kernel 
> 3.8.13.
>
> Is there any guideline about how to use OMAP rather than 8250 or can you 
> please explain the steps how can we do that?
>
> On Tuesday, April 26, 2016 at 10:00:19 AM UTC+3, Micka wrote:
>>
>> I dont know about 8250, but omap work well. I'm more confident about omap 
>> handling the gpio than the driver 8250.
>>
>> I've been using omap for rs485 since the driver 3.8 and I've nothing to 
>> complain about. 
>>
>> I will also switch to the driver 8250 when it will be ready ( a lot of 
>> test need to be done )
>>
>>
>> Micka,
>>
>>
>>
>> Le mar. 26 avr. 2016 08:05, 'Artur Festyn' via BeagleBoard <
>> beagl...@googlegroups.com> a écrit :
>>
>>> Hi Micka.
>>> no ttyO, its 8250 driver.
>>> shouldn't 4.5 kernel work after these patches are applied or is it still 
>>> too early?
>>>
>>> -rw-r--r--  1 root root 1440 Apr 21 12:26 
>>> 0001-tty-serial-8250-fix-RS485-half-duplex-RX.patch
>>> -rw-r--r--  1 root root 8243 Apr 21 12:26 
>>> 0002-tty-serial-8250-make-UART_MCR-register-access-consis.patch
>>> -rw-r--r--  1 root root 2743 Apr 21 12:26 
>>> 0003-serial-mctrl_gpio-add-modem-control-read-routine.patch
>>> -rw-r--r--  1 root root 1347 Apr 21 12:26 
>>> 0004-serial-mctrl_gpio-add-IRQ-locking.patch
>>> -rw-r--r--  1 root root 7924 Apr 21 12:26 
>>> 0005-tty-serial-8250-use-mctrl_gpio-helpers.patch
>>>
>>> the last one clearly states that use of any gpio as rts should be 
>>> possible
>>>
>>>
>>> 2016-04-26 6:54 GMT+01:00 Micka <micka...@gmail.com>:
>>>
>>>> Can you show me what this command show : 
>>>>
>>>> dmesg|grep ttyO*
>>>>
>>>> I repeat only omap driver work for rs485
>>>>
>>>> Le mar. 26 avr. 2016 00:40, 'Artur Festyn' via BeagleBoard <
>>>> beagl...@googlegroups.com> a écrit :
>>>>
>>>>> It is easy and already disabled.
>>>>> My question is about RS485 and custom gpio to drive DE pin of RS485 
>>>>> chip.
>>>>>
>>>>>
>>>>> 2016-04-25 23:22 GMT+01:00 evilwulfie <evilw...@gmail.com>:
>>>>>
>>>>>> read this. disabling I2C2 is not as easy as using an overlay
>>>>>> if you are not using capes sure but IMHO is always best to leave the 
>>>>>> default things enabled and just work with overlays
>>>>>>
>>>>>>
>>>>>> http://www.embedded-things.com/bbb/enable-canbus-on-the-beaglebone-black/
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 4/25/2016 2:09 PM, 'Artur Festyn' via BeagleBoard wrote:
>>>>>>
>>>>>> Honestly I don't know. I though this might be useful info :) 
>>>>>> Three is no problem to disable I2C-2, but I am using those pins for 
>>>>>> CAN0.
>>>>>> That is why I want to use custom gpio to drive RS485 DE which doesn't 
>>>>>> work.
>>>>>>
>>>>>> 2016-04-25 21:56 GMT+01:00 William Hermans <yyr...@gmail.com>:
>>>>>>
>>>>>>> *cat /proc/tty/driver/serial*
>>>>>>>
>>>>>>> *serinfo:1.0 driver revision:*
>>>>>>> *0: uart:8250 mmio:0x44E09000 irq:158 tx:2451 rx:0 RTS|CTS|DTR|DSR*
>>>>>>> *1: uart:8250 mmio:0x48022000 irq:159 tx:24 rx:0 CTS|DSR|CD|RI*
>>>>>>> *2: uart:8250 mmio:0x48024000 irq:160 tx:0 rx:0 CTS|DSR*
>>>>>>> *3: uart:unknown port:00000000 irq:0*
>>>>>>> *4: uart:8250 mmio:0x481A8000 irq:161 tx:2 rx:1 brk:1 CTS|DSR*
>>>>>>>
>>>>>>> *5: uart:unknown port:00000000 irq:0*
>>>>>>>
>>>>>>> What is this supposed to mean ? That says UART0 has RTS, CTS, etc, 
>>>>>>> but they're not connected to anything. So the CTS on UART1 means 
>>>>>>> nothing. 
>>>>>>> Because it's connected to I2C-2, which I'm sure you would have all 
>>>>>>> kinds of 
>>>>>>> fun disabling I2C-2 . . .
>>>>>>>
>>>>>>>
>>>>>>> On Mon, Apr 25, 2016 at 1:14 PM, 'Artur Festyn' via BeagleBoard <
>>>>>>> beagl...@googlegroups.com> wrote:
>>>>>>>
>>>>>>>> cat /proc/tty/driver/serial 
>>>>>>>> serinfo:1.0 driver revision:
>>>>>>>> 0: uart:8250 mmio:0x44E09000 irq:158 tx:2451 rx:0 RTS|CTS|DTR|DSR
>>>>>>>> *1: uart:8250 mmio:0x48022000 irq:159 tx:24 rx:0 CTS|DSR|CD|RI*
>>>>>>>> 2: uart:8250 mmio:0x48024000 irq:160 tx:0 rx:0 CTS|DSR
>>>>>>>> 3: uart:unknown port:00000000 irq:0
>>>>>>>> 4: uart:8250 mmio:0x481A8000 irq:161 tx:2 rx:1 brk:1 CTS|DSR
>>>>>>>> 5: uart:unknown port:00000000 irq:0
>>>>>>>>
>>>>>>>>
>>>>>>>> 2016-04-25 21:12 GMT+01:00 Artur Festyn <fes...@googlemail.com>:
>>>>>>>>
>>>>>>>>> I can't use RTS/CTS pins on UART4 because I need HDMI. 
>>>>>>>>> New RS485 patches suppose to help to use any gpio as RS485 RTS and 
>>>>>>>>> in fact any gpio for any UART as RTS/CTS.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2016-04-25 21:00 GMT+01:00 evilwulfie <evilw...@gmail.com>:
>>>>>>>>>
>>>>>>>>>> any reason you want to use uart1 ?
>>>>>>>>>>
>>>>>>>>>> if you use uart4 you can use the whole uart tx rx and rts. trying 
>>>>>>>>>> to bitbang rts for rs485 on uart1 sounds hard 
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 4/25/2016 12:24 PM, 'Jan Kinkazu' via BeagleBoard wrote:
>>>>>>>>>>
>>>>>>>>>> So i compiled (bb-kernel, all patches) and installed 4.5.2-bone4  
>>>>>>>>>> I have modified am335-boneblack.dts and compiled it.
>>>>>>>>>>
>>>>>>>>>> #include "am335x-peripheral-ttyS1.dtsi"
>>>>>>>>>> #include "am335x-bone-pinmux-ttyS1.dtsi"
>>>>>>>>>>
>>>>>>>>>> &am33xx_pinmux {
>>>>>>>>>>         uart1_pins: pinmux_uart1_pins {
>>>>>>>>>>                 pinctrl-single,pins = <
>>>>>>>>>>                         /* P9_23: uart1_de */
>>>>>>>>>>                         BONE_P9_23 (PIN_OUTPUT_PULLDOWN | 
>>>>>>>>>> MUX_MODE7)
>>>>>>>>>>                 >;
>>>>>>>>>>         };
>>>>>>>>>> };
>>>>>>>>>>
>>>>>>>>>> &uart1 {
>>>>>>>>>>         pinctrl-names = "default";
>>>>>>>>>>         pinctrl-0 = <&uart1_pins>;
>>>>>>>>>>         status = "okay";
>>>>>>>>>>         rts-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
>>>>>>>>>>         rs485-rts-active-high;
>>>>>>>>>>         rs485-rx-during-tx;
>>>>>>>>>>         rs485-rts-delay = <1 1>;
>>>>>>>>>>         linux,rs485-enabled-at-boot-time;
>>>>>>>>>> };
>>>>>>>>>>
>>>>>>>>>> RS485 doesn't work, what do I do wrong?
>>>>>>>>>>
>>>>>>>>>> Kind regards
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Friday, 12 February 2016 15:33:40 UTC, Taceant Omnes wrote: 
>>>>>>>>>>>
>>>>>>>>>>> I would like to use RS485 with the BBB. 
>>>>>>>>>>>
>>>>>>>>>>> root@beaglebone:~/test# uname -a 
>>>>>>>>>>> Linux beaglebone 4.1.15-ti-r40 #1 SMP PREEMPT Thu Jan 7 23:32:17 
>>>>>>>>>>> UTC 
>>>>>>>>>>> 2016 armv7l GNU/Linux 
>>>>>>>>>>>
>>>>>>>>>>> I am using the kernel above. Its source code is at 
>>>>>>>>>>>
>>>>>>>>>>> <https://github.com/RobertCNelson/linux-stable-rcn-ee/tree/4.1.15-ti-rt-r40>
>>>>>>>>>>> https://github.com/RobertCNelson/linux-stable-rcn-ee/tree/4.1.15-ti-rt-r40
>>>>>>>>>>>  
>>>>>>>>>>>
>>>>>>>>>>> ... however it does not include the changes in this patch: 
>>>>>>>>>>>
>>>>>>>>>>> <https://github.com/RobertCNelson/bb-kernel/blob/am33x-v3.8/patches/fixes/0007-omap-RS485-support-by-Michael-Musset.patch#L30>
>>>>>>>>>>> https://github.com/RobertCNelson/bb-kernel/blob/am33x-v3.8/patches/fixes/0007-omap-RS485-support-by-Michael-Musset.patch#L30
>>>>>>>>>>>  
>>>>>>>>>>>
>>>>>>>>>>> Which kernel should I use that includes the changes in the patch 
>>>>>>>>>>> or 
>>>>>>>>>>> something similar? 
>>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> For more options, visit <http://beagleboard.org/discuss>
>>>>>>>>>> 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 beagleboard...@googlegroups.com.
>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/50692f39-69e3-4454-b8ba-ec03e4d86101%40googlegroups.com>
>>>>>>>>>> https://groups.google.com/d/msgid/beagleboard/50692f39-69e3-4454-b8ba-ec03e4d86101%40googlegroups.com
>>>>>>>>>> .
>>>>>>>>>> For more options, visit <https://groups.google.com/d/optout>
>>>>>>>>>> https://groups.google.com/d/optout.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=icon>
>>>>>>>>>>  Virus-free. 
>>>>>>>>>>
>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=link>
>>>>>>>>>> www.avast.com 
>>>>>>>>>> -- 
>>>>>>>>>> For more options, visit <http://beagleboard.org/discuss>
>>>>>>>>>> http://beagleboard.org/discuss
>>>>>>>>>> --- 
>>>>>>>>>> You received this message because you are subscribed to a topic 
>>>>>>>>>> in the Google Groups "BeagleBoard" group.
>>>>>>>>>> To unsubscribe from this topic, visit 
>>>>>>>>>> <https://groups.google.com/d/topic/beagleboard/nMtRpdWSJu0/unsubscribe>
>>>>>>>>>> https://groups.google.com/d/topic/beagleboard/nMtRpdWSJu0/unsubscribe
>>>>>>>>>> .
>>>>>>>>>> To unsubscribe from this group and all its topics, send an email 
>>>>>>>>>> to beagleboard...@googlegroups.com.
>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>> <https://groups.google.com/d/msgid/beagleboard/571E7751.2020206%40gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>> https://groups.google.com/d/msgid/beagleboard/571E7751.2020206%40gmail.com.
>>>>>>>>>>  
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> For more options, visit <https://groups.google.com/d/optout>
>>>>>>>>>> https://groups.google.com/d/optout.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> -- 
>>>>>>>> For more options, visit <http://beagleboard.org/discuss>
>>>>>>>> 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 beagleboard...@googlegroups.com.
>>>>>>>> To view this discussion on the web visit <a href="
>>>>>>>> https://groups.google.com/d/msgid/beagleboard/CAAPjYCaM58KxhqX_s1DwsdJ7z2tdemEoCVHjZj0D780CpxQTug%40mail.gmail.com?utm_medium=email&utm_source=footer";
>>>>>>>>  
>>>>>>>> target="_blank" rel="nofollow" onmousedown="this.href='
>>>>>>>> https://groups.google.com/d/msgid/beagleboard/CAAPjYCaM58KxhqX_s1DwsdJ7z2tdemEoCVHjZj0D780CpxQTug%4
>>>>>>>
>>>>>>>

-- 
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 beagleboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/f490c291-9cb5-4759-9b54-b5556986b5f2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to