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.

TMDSICE3359: Use D17 as UART1_RTS

Part Number: TMDSICE3359
Other Parts Discussed in Thread: PROFIBUS,

Hi,

I'd like to use UART1 without PRU as RS485 port and I think that I could activate pin D17 LATCH1_IN to UART1_RTS but I have to solder the line to DE pin of the Profibus transceiver because there is no UART1_RTS in pin C13 (GPIO3_19). But what should I do to make this pin change to work in Yocto build? My Yocto workspace is based on software-dl.ti.com/.../Overview_Building_the_SDK.html and I build it as MACHINE=am335x-evm bitbake arago-base-tisdk-image.

Regards,

Jani

  • Hi Jani,

    To change a pin function, you would have to modify its pinmux configuration in kernel device tree. Please refer to the pinmix of other uart pins in device tree to understand how to modify it for pin D17.

  • Thanks, Bin,

    It might be that I have not understood something right but I couldn't find any pinmux for uart in my workspace:

    $ grep -r pinmux tisdk/sources/
    tisdk/sources/meta-ti/recipes-kernel/linux/files/ti43x/am437x-pru-uio.dtsi:&am43xx_pinmux {
    tisdk/sources/meta-ti/recipes-kernel/linux/files/ti33x/am335x-pru-uio.dtsi:&am33xx_pinmux {
    isdk/sources/meta-processor-sdk/recipes-kernel/linux/files/ti33x/am335x-pru-adc.dtsi:&am33xx_pinmux {

    But I can create an image with the results of the Yocto build with the files of am335x-icev2-am335x-evm.dtb, MLO, u-boot.img and zImage, and the image in a SD card starts the TMDSICE3359 properly.

    Therefore I think that the am335x-icev2-am335x-evm.dtb is mentioned in a recipe to be downloaded from somewhere and I guess that I should make a bbappend to overwrite the pinmux of uart1 for am335x-icev2.

    Regards,

    Jani

  • Hi Jani,

    I am not familiar with this ICE board particularly, I never used one. But looking at the following files in kernel source code:

    arch/arm/boot/dts/am335x-icev2-common.dtsi

    arch/arm/boot/dts/am335x-icev2.dts

    which have some pinmux definitions under &am33xx_pinmux node.

    Jani Soderstrom said:
    But I can create an image with the results of the Yocto build with the files of am335x-icev2-am335x-evm.dtb, MLO, u-boot.img and zImage, and the image in a SD card starts the TMDSICE3359 properly.

    I am not sure which kernel version do you use. In kernel v4.19 which is provided in TI Processor SDK Linux release, I only see am335x-icev2.dtb, but not am335x-icev2-am335x-evm.dtb.

    Jani Soderstrom said:
    Therefore I think that the am335x-icev2-am335x-evm.dtb is mentioned in a recipe to be downloaded from somewhere and I guess that I should make a bbappend to overwrite the pinmux of uart1 for am335x-icev2.

    I am not familiar with Yocto, but the dtb files are generated when compiling the kernel source.

  • Thanks, Bin,

    I looked for the files you mentioned in the build folder and I found them in arago-tmp-external-arm-toolchain/work/armv7at2hf-neon-linux-gnueabi/external-arm-toolchain/2019.03-r0/git/arch/arm/boot/dts/ . I made a bbappend file and copied these two files into my recipes as mentioned in stackoverflow.com/.../yocto-device-tree-overlay . Now I have a proper image but I still have to make the changes to the board before I can be confident the operation is successful.

    Regards,

    Jani