Project

General

Profile

Configuring and editing the pinmux settings for AM57(F) dev kit through dts files.

Added by Thejas Raj 3 days ago

Hi,

We have a yocto source built following the arm development wiki and a working base image.

We are trying to change the pin mux settings some of the peripherals like gpio through the dts files. But cant seem to find anything regarding pinctrl other than for mmc, defined in the dts files corresponding to the devkit. (am57xx-mitysom-devkit.dts and its respective inclusions).The path of the dts files seem to be in work-shared/mitysom-am57x/kernel-source/arch/arm/boot/dts

Can you elaborate on how we can do this? The primary intention is to identify the path or process to configure each peripherals as and when required and verify if the change has been reflected on the hardware.

Thanks in advance.


Replies (4)

RE: Configuring and editing the pinmux settings for AM57(F) dev kit through dts files. - Added by Jonathan Cormier 3 days ago

Unfortunately TI's guidance at least for SDK 6, is that the majority of pinmuxing must be done in u-boot while the IO's are in isolation mode... Setting up the pinmux in u-boot is covered in this following wiki page.

https://support.criticallink.com/redmine/projects/mitysom_am57x/wiki/U-Boot_Setup_Pinmux

Note: We are working on getting the SDK 9.3 release working, hoping to get this done in the next couple months. This moves to the 2023 u-boot and the 6.1 kernel and kirkstone yocto. Most modifications you make in SDK 6 should pretty easily move forward. In the 6.1 kernel, there are several 57x device trees that are doing some pinmuxing. I need to look into that to see if TI has loosened their restriction on pinmuxing.

The path of the dts files seem to be in work-shared/mitysom-am57x/kernel-source/arch/arm/boot/dts

Yeah yocto checks out the kernel source there as its used by several recipes. Note don't make changes in that directory as it will confuse the build system.

I find that its easier to checkout u-boot and the kernel separately, make and test modifications before integrating them back into yocto. The following wiki pages walk through checking out and building

https://support.criticallink.com/redmine/projects/mitysom_am57x/wiki/U-Boot_Building_for_MitySOM-AM57X
https://support.criticallink.com/redmine/projects/mitysom_am57x/wiki/Linux_Kernel

If you want to do everything within the yocto ecosystem, they provide the devtool utility, that helps you build and test software. I just haven't used it as much.

RE: Configuring and editing the pinmux settings for AM57(F) dev kit through dts files. - Added by Jonathan Cormier 3 days ago

Note if you are developing a custom board, we'd be happy to do a schematic/layout review as well. Those can be emailed to

RE: Configuring and editing the pinmux settings for AM57(F) dev kit through dts files. - Added by Thejas Raj 2 days ago

Hi,
Thank you for your reply.

And can you give me the path to the u-boot device tree in the yocto environment. The boards/cl directory mentioned in the u-boot wiki that you just provided, especially.

RE: Configuring and editing the pinmux settings for AM57(F) dev kit through dts files. - Added by Jonathan Cormier 2 days ago

Thejas Raj wrote in RE: Configuring and editing the pinmux settings for AM57(...:

Hi,
Thank you for your reply.

And can you give me the path to the u-boot device tree in the yocto environment. The boards/cl directory mentioned in the u-boot wiki that you just provided, especially.

Please clone the u-boot and kernel source separately using git.

git clone https://support.criticallink.com/git/processor-sdk-u-boot.git --branch processor-sdk-u-boot-2019.01
git clone https://support.criticallink.com/git/processor-sdk-linux.git --branch mitysom-linux-4.19

I tried doing things using the devtools command to "modify" the recipes. This will checkout the sources in a temporary workspace where it is safe to make modifications.

In theory, After launching the docker

pokyuser@e34e187356b3:/workdir$ export MACHINE=mitysom-am57x
pokyuser@e34e187356b3:~$ cd build
pokyuser@e34e187356b3:~$ source conf/setenv
pokyuser@e34e187356b3:~$ devtool modify u-boot-cl-ti
pokyuser@e34e187356b3:~$ devtool modify linux-cl-ti

This should checkout the sources to build/workspaces/sources/*

However when I try this, devtools is failing to parse the u-boot and kernel SRC_URIs... so its possible devtools isn't working properly in thud

  File "/work/sources/bitbake/lib/bb/fetch2/__init__.py", line 368, in decodeurl
    raise MalformedUrl(url)
bb.fetch2.MalformedUrl: The URL: '${KERNEL_REPO};protocol=http;branch=master;nocheckout=1;name=machine' is invalid and cannot be interpreted

    (1-4/4)
    Go to top
    Add picture from clipboard (Maximum size: 1 GB)