UART0 hardware flow control

Forums Devices OSD335x-SM UART0 hardware flow control

Viewing 2 reply threads
  • Author
    Posts
    • #9083
      Kartik Jangamslisgrinder
      Participant

        Greetings,

        I was wondering if there was any way to test the hardware flow control for UART0? Im referring to RTS/CTS lines (balls C13/C12). I have already diverted the console output of the kernel to ttyS2 and disabled the getty service. We have a custom board and wanted to use UART2 with its hardware flow control but unfortunately the RTS/CTS pins are shared with I2C0 which is connected to the PMIC and EEPROM inside the SiP.

        I am using the latest “console” image from elinux and the hardware is based on the RED development board:
        https://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Debian_Stretch_Console_Snapshot
        “bone-debian-9.10-console-armhf-2019-09-08-1gb.img.xz”
        Linux beaglebone 4.14.108-ti-r116 #1 SMP PREEMPT Wed Sep 4 21:44:30 UTC 2019 armv7l GNU/Linux
        U-Boot 2019.04-00002-gbb4af0f50f (Jul 08 2019 – 11:44:39 -0500), Build: jenkins-github_Bootloader-Builder-128

        Any insight is appreciated.

        Regards,
        Kartik

      • #9085
        Neeraj Kumar Reddy DantuNeeraj Dantu
        Moderator

          Kartik,

          I am assuming the flow control pins for UART0(C12/C13) are accessible on your custom board. Hardware flow control is supported in omap uart driver.

          You should be able to test hardware flow control for UART. First, you will have to set pin multiplexing for these pins in your device tree. You should add pin mux details of C12 and C13 her: https://github.com/RobertCNelson/dtb-rebuilder/blob/4.14-ti/src/arm/am335x-bone-common.dtsi#L92

          Please see application notes regarding device tree for help:

          Pin multiplexing for OSD335x: https://octavosystems.com/app_notes/osd335x_pinmux/

          Device tree tutorial: https://octavosystems.com/app_notes/osd335x-design-tutorial/osd335x-lesson-2-minimal-linux-boot/linux-device-tree/

          For testing, please take a look at: http://processors.wiki.ti.com/index.php/Linux_Core_UART_User%27s_Guide. You can also create a test environment by setting up your board as transmitter and pull down the CTS pin to GND to see if the processor stops communication.

          Best,

          Neeraj

        • #9106
          Kartik Jangamslisgrinder
          Participant

            Good evening Neeraj,

            Thanks for the info. I managed to get RTS/CTS defined and enabled in am335x-boneblack-uboot-univ.dtb. In the spirit of product development I already ran into another issue but that’s on our end.

            Thank you for your help!
            Regards,
            Kartik

        Viewing 2 reply threads
        • You must be logged in to reply to this topic.