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: Configuring board TMDSICE3359

Part Number: TMDSICE3359
Other Parts Discussed in Thread: AM3358, AM3359

Dear TI experts:

Along with saying hello, and hoping you are all right, I have a problem configuring the board: TMDSICE3359.

I have been following the following documentation:

- AM335x ICE EVM Rev2.1 Hardware User's Guide

- Processor SDK Linux Software Developer's Guide ( http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Overview.html )

I am looking to configure the card to operate with the GPIO ports, but so far, I have not been able to access those ports.

Waiting your reply, and thanking you for your arrangement and management,

Best regards,

Sebastián Jorquera Z.

  • Hello Sebastián,

    Here is our Linux GPIO driver documentation.

    Regards,

    Nick

  • Dear Nick:

    Thanks for your reply.

    I already checked that link, and I still can't configure on the board. 

    I have followed the instructions in the documentation, but still have not been able to generate any file on the board that allows me to access the registers or the connectors of the card.

    Waiting your reply, and thanking you for your arrangement and management,

    Best regards,

    Sebastián Jorquera Z.

  • Hello Sebastián,

    Have you done a "Hello World" test yet to make sure you can boot the board and access the Linux terminal? Please read the Getting Started Guide. Note that you should probably "Download and Install the SDK" and "Run Setup Scripts" before following the SD Card creation guide.

    Regards,

    Nick

  • Dear Nick:

    Let me tell you what have I've done on the board:

    1. I followed the instructions of the page: Processor SDK Linux Software Developer’s Guide.

    2. I generated a virtual machine of Ubuntu 18.04 LTS (Windows 10 Home host). 

    3. I created a simple file of Hello World on C: 

    #include<linux/gpio.h>
    #include<stdio.h>

    int main(){
    printf("Hello World!\n");
    return 0;
    }

    The first library is for test the installation was succesfully.

    4. At this moment, I need to generate a code that allow me to use the Expansion conector J14 (Digital Input and Output), but I can't find a complete sample code with all the libraries and instructions. I'd like to know if I need another libraries for that purpose.

    5. Talking about Expansion conector J14, I checked that the register SPI0_D0 contain the information of those Digital I/O, but I don't know how to get them.

    Thank you for your reply, and I hope you have a great day,

    Best regards,

    Sebastián J.

     

  • Hello Sebastián,

    1) The first step is to make sure you can boot unmodified software on an unmodified board, and communicate with the board over the Linux terminal. That is what the getting started guide will help with. I assume you have successfully completed this step.

    2) I assume your hello world code compiles and is working properly. If not, you should be able to find plenty of examples for developing C code in Linux userspace online. 

    3) You need to make sure that the GPIO pins are pinmuxed to allow the GPIO module to access the pin before you can send or receive data from the GPIO. TI performs pinmuxing in the Linux device tree. You can use the PinMux tool at https://dev.ti.com/ to generate pinmux output. We document how to format that data for AM335x/AM437x device trees in the Sitara PinMux Tool Supplemental information. Since you are using the AM335x ICE board, you will want to place pinmux changes in the arch/arm/boot/dts file am335x-icev2.dts, and then recompile the dtb file following the steps in the getting started guide.

    Regards,

    Nick

  • Dear Nick:

    Thanks you very much for your reply.

    I'd like to ask you, how to configure with PinMux because, I noticed that there is a lot of signal and function that, at this moment, I won't use them. 

    I need to access to GPIO of connector J14, and configure and Ethernet port for comunication Modbus TCP/IP.

    I watched videos that explain how to use the software PinMux, but I don't know which signal or pin I have to configure to reach that connector (J14).

    Best regards,

    Sebastián Jorquera

  • Hello Sebastian,

    Go to the schematic. Find the names of the AM335x pins that are connected to J14. Go to the AM3358 datasheet. Search for those pin names in the "Pin Attributes" section of the datasheet. Now you know which pin you want to use, and which mux mode you need to set for that pin to get your desired signal to appear on the pin.

    Regards,

    Nick

  • Dear Nick:

    Thanks for all your reply.

    Let me tell you about my exprience of the linking of the signals:

    I'm looking for the signal, for example: INDUS_INPUT0. Later, I searched that signal on the AM3359 datasheet, but it didn´t appear. So, I continued searching more about that signal, INDUS_INPUT0, and I found this:

    It seems that the signals: INDUS_INPUT0 to INDUS_INPUT7, are concentrated in the signal SPI0_D0 (it even contains the other signals associated with the J14 connector), and that signal appear on AM3359 datasheet.

    Finally, that signal is the one that I have to configure in the PinMux program.

    At this point, I am clear on the matter of looking for signals in the schematic and then matching the datasheet, but what is not entirely clear is how I use that configuration to perform a program to read or write to those pins.

    Waiting your reply, and thanking you for your arrangement and management,

    Best regards,

    Sebastián Jorquera Z.

  • Hello Sebastián, 

    I assume you are using pin SPI0_D0, muxmode 7 (which is gpio0_3). I also assume you are trying to access the GPIO pin from Linux userspace code. As per the SDK documentation in my first post, you can interact with the GPIO pin by reading/writing to the sysfs interface that will appear under /sys/class/gpio. 

    Reference posts GPIO Driver and GPIO LED Toggle Example

    Regards,

    Nick