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.

SK-AM62B-P1: AM62 GPMC driver / config

Part Number: SK-AM62B-P1
Other Parts Discussed in Thread: AM3352

Champs:

please see this: 

         https://e2e.ti.com/support/processors-group/processors/f/processors-forum/770569/linux-processor-sdk-am335x-gpmc-edma-test

Q1. My customer is using this part to connect AM62x: CY7C132 

       They use it as external Memory storage, not for booting.

       So, how to turn on the GPMC feature on AM62?

Q2. What are the DTS we need to modify for adapting it?

BR Rio

  • Hi Rio,

    The AM62x GPMC uses the same driver as does the AM335x GPMC. So the same device tree binding is still applicable.

    Kernel doc: Documentation/devicetree/bindings/memory-controllers/ti,gpmc.yaml.

  • Hi Bin:

    Q1. There are 2 files: ti,gpmc.yaml + ti,gpmc-child.yaml in this folder, which one should I study?

    Q2. What's the ti,gpmc-child.yaml used for? if the AM62 is the host to control the Dual Port Ram?

    Q3. In the ti,gpmc.yaml , there is no enum for AM62, it only shows this, can you confirm if this is okay to use on AM62?

    - enum
    - ti,am3352-gpmc
    - ti,am64-gpmc
    - ti,omap2420-gpmc
    - ti,omap2430-gpmc
    - ti,omap3430-gpmc
    - ti,omap4430-gpmc

    Q4. What are the kernel configs I need to turn on this feature? plz address.

           Or it default is activated.?

    BR Rio

  • Should I study those for the Dual Port Ram when it is used by customer?

    please see below. 

    And the red words should be fixed for AM62?

    ./vendor-prefixes.yaml: "^(at25|bm|devbus|dmacap|dsa|exynos|fsi[ab]|gpio-fan|gpio-key|gpio|gpmc|hdmi|i2c-gpio),.*": true
    ./mtd/ti,gpmc-nand.yaml:$id: devicetree.org/.../ti,gpmc-nand.yaml
    ./mtd/ti,gpmc-nand.yaml: - $ref: "/schemas/memory-controllers/ti,gpmc-child.yaml"
    ./mtd/ti,gpmc-nand.yaml: gpmc: memory-controller@50000000 {
    ./mtd/ti,gpmc-nand.yaml: compatible = "ti,am3352-gpmc";
    ./mtd/ti,gpmc-nand.yaml: gpmc,num-cs = <7>;
    ./mtd/ti,gpmc-nand.yaml: gpmc,num-waitpins = <2>;
    ./mtd/ti,gpmc-nand.yaml: interrupt-parent = <&gpmc>;
    ./mtd/ti,gpmc-nand.yaml: rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */
    ./mtd/ti,gpmc-nand.yaml: gpmc,device-width = <1>;
    ./mtd/ti,gpmc-onenand.yaml:$id: devicetree.org/.../ti,gpmc-onenand.yaml
    ./mtd/ti,gpmc-onenand.yaml: - $ref: "/schemas/memory-controllers/ti,gpmc-child.yaml"
    ./mtd/ti,gpmc-onenand.yaml: gpmc: memory-controller@6e000000 {
    ./mtd/ti,gpmc-onenand.yaml: compatible = "ti,omap3430-gpmc";
    ./mtd/ti,gpmc-onenand.yaml: gpmc,num-cs = <8>;
    ./mtd/ti,gpmc-onenand.yaml: gpmc,num-waitpins = <4>;
    ./net/smsc,lan9115.yaml:# "gpmc,*", ...) to be found, that actually depend on the compatible value of

  • Hi Rio,

    I am out of office today. I will review your questions next week and get back to you.

  • Hi Rio,

    Q1. There are 2 files: ti,gpmc.yaml + ti,gpmc-child.yaml in this folder, which one should I study?

    The ti,gpmc.taml describes the GPMC controller, while ti,gpmc-child.yaml describes the devices connected to GPMC, for example, NAND, NOR, or FPGA...

    Q3. In the ti,gpmc.yaml , there is no enum for AM62, it only shows this, can you confirm if this is okay to use on AM62?

    Please see the gpmc0 node in kernel device tree k3-am62-main.dtsi, it uses "ti,am64-gpmc".

    Q4. What are the kernel configs I need to turn on this feature? plz address.

    CONFIG_OMAP_GPMC

           Or it default is activated.?

    It is already enabled in the kernel defconfig.

  • Hi Bin:

    Thanks, I will close this.

    BR Rio