UART4 RTS and CONFIG_SERIAL_OMAP config query

Hi everyone,

I know this issue have been posted many times, but I have tried all solutions provided (with my limited understanding of them) but can’t seem to get it right. I’m a noob in regards to Linux and Beaglebone so would appreciated someone more experience would be able to assist me resolve my issue or guild me in the correct direction.

I have a beaglebone black loaded with the latest debian 10.3 IoT buster image with kernel version v4.19. I’ve connected a RS485 transceiver to UART4’s RX/TX and it’s de/re to UART4 RTS P9_27. I have enabled the UART4_RS485 overlay but I cannot get the UART4 RTS pin to toggle so I can only receive data instead of transmitting it. If I MANUALLY toggle P9_27 I can receive (pulled-down) and transmit (pulled-up) data.

How can I get the UART4 RTS pin to toggle without me having to toggle it manually?

debian@beaglebone:~$ sudo /opt/scripts/tools/version.sh | grep uboot
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot.dts]
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-UART4-RS485-00A0.dtbo]
uboot_overlay_options:[disable_uboot_overlay_emmc=1]
uboot_overlay_options:[disable_uboot_overlay_video=1]
uboot_overlay_options:[disable_uboot_overlay_audio=1]
uboot_overlay_options:[disable_uboot_overlay_wireless=1]
uboot_overlay_options:[disable_uboot_overlay_adc=1]
uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-RPROC-4-19-TI-00A0.dtbo]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet]

I have tried searching for solutions and mostly it seems I have to rebuild the kernel and enable CONFIG_SERIAL_OMAP config. However I have tried rebuilding with the following steps below but keep running into “error: index-pack died of signal 9351302”. What am I doing wrong that I can’t rebuild the kernel. Is there additional permissions/dependencies I need to add?

root@beaglebone:git clone https://github.com/RobertCNelson/bb-kernel.git
root@beaglebone:cd bb-kernel
root@beaglebone:/home/debian/bb-kernel# git checkout am33x-v4.19
Branch ‘am33x-v4.19’ set up to track remote branch ‘am33x-v4.19’ from ‘origin’.
Switched to a new branch ‘am33x-v4.19’
root@beaglebone:/home/debian/bb-kernel# ./build_deb.sh

  • Detected build host [Debian GNU/Linux 10 (buster)]
  • host: [armv7l]
  • git HEAD commit: [24523d1be563f9dfa8e0c503208ede02e396fec4]
    '-----------------------------
    cpio: cpio (GNU cpio) 2.12
    lzop: lzop 1.03
    '-----------------------------
    scripts/gcc: Using: gcc (Debian 8.3.0-6) 8.3.0
    Copyright (C) 2018 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    '-----------------------------
    CROSS_COMPILE=
    scripts/git: [git version 2.20.1]
    '-----------------------------
    scripts/git: LINUX_GIT not defined in system.sh
    cloning kernel/git/torvalds/linux.git - Linux kernel source tree into default location: /home/debian/bb-kernel/ignore/linux-src
    Cloning into ‘/home/debian/bb-kernel/ignore/linux-src’…
    remote: Enumerating objects: 867, done.
    remote: Counting objects: 100% (867/867), done.
    remote: Compressing objects: 100% (474/474), done.
    error: index-pack died of signal 9351302), 1.57 GiB | 302.00 KiB/s
    fatal: index-pack failed

I’ve even tried first upgrading the kernel to v5.4 with the sudo /opt/scripts/tools/update_kernel.sh tool, but even on kernel v5.4, I cannot get UART4 RTS to toggle and I still run into the same issue if I rebuild the kernel.

Thanks for reading my post and any feedback would be greatly appreciated.