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.

AM4376: GPMC configuration

Part Number: AM4376


Hello All,

Our company developed a board that use AM4376BZDN100 processor and Altera FPGA.

Those modules connected through GPMC.

On the hardware side those modules will use two configurations, one for receiving  large amounts of data, and the second is for commands(read write to registers).

1. NOR flash type Synchronous Burst Read 16X16 bits based on chip select Csn0.
2. NOR flash type asynchronous Read and Write single word based on chip select Csn1 for access to internal register.

Lets suppose that the hardware is working perfectly.

1.On the Linux side (on AM4376), where should i start from?

2.How do i configure the GPMC?

3.clocks? 

4.manual on GPMC functions/API?

I will very appreciate any help here (a lot of links that i found doesn't work nay more).

Best Regards,

Alexey

  • Hi,

    1. In Linux GPMC is configured in the device tree. Look in the documentation section of the AM437x Linux Processor SDK for device tree bindings.
    2. Also see section 9.1 in the AM437x TRM Rev. G for detailed description of the GPMC.
    3. Clocks are configured through the device tree settings.
    4. GPMC is a memory mapped interface. You directly read/write memory locations.
  • Hello Biser,

    Thanks for quick response,.
    I found the AM437x TRM Rev. G.
    I can't find on TI the documentation(Look in the documentation section of the AM437x Linux Processor SDK for device tree bindings), please advise.
    Also is there any examples that use GPMC.

    Best Regards,
    Alexey
  • Hello Alexey,

    You can find the device tree bindings at this location:
    <Processor SDK>/board-support/linux-<version>/Documentation/devicetree/bindings/mtd/gpmc-nor.txt

    Please, see this thread and use
    drivers/memory/omap-gpmc.c
    arch/arm/mach-omap2/gpmc-nand.c
    files for examples.

    Best regards,
    Kemal