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.

AM3352BZCZ的MMCO使用问题

Other Parts Discussed in Thread: SYSCONFIG

ARM上使用mmc0(复用GPMC_A20-A25)相关6根管脚连接FPGA,作为地址线。使用GPMC_AD0-AD15作为数据线连接FPGA,

现在问题是:读取不同地址的数据都是同一个值,没有变化,这个值像是地址线的初始电平值。读取不同地址,使用示波器测量地址线电平无变化。

  • 请问使用的什么版本的SDK?rtos还是linux?是在哪个例程上修改的?请再详细说明一下。

    ti-processor-sdk-rtos-am335x-evm-06.03.00.106\pdk_am335x_1_0_17\packages\MyExampleProjects\GPMC_Test_icev2AM335x_armExampleProject

  • 是linux,GPMC分为0:nand和1:fpga,在kernel/arch/arm/mach-omap2/board-am335xevm.c文件中修改管脚复用配置,如下:
    {"mmc0_dat3.gpmc_a20", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"mmc0_dat2.gpmc_a21", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"mmc0_dat1.gpmc_a22", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"mmc0_dat0.gpmc_a23", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"mmc0_clk.gpmc_a24", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"mmc0_cmd.gpmc_a25", OMAP_MUX_MODE1 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA},
    {"gpmc_csn1.gpmc_csn1", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},
    {"gpmc_advn_ale.gpmc_advn_ale", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},
    {"gpmc_oen_ren.gpmc_oen_ren", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},
    {"gpmc_wen.gpmc_wen", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},
    {"gpmc_ben0_cle.gpmc_ben0_cle", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},
    {"gpmc_wait0.gpmc_wait0", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
    {"gpmc_ben1.gpmc_ben1", OMAP_MUX_MODE0 | AM33XX_PULL_DISA},

    例程是仿照驱动程序写的,设置如下:
    result = gpmc_cs_request(1, 0x4000000, (unsigned long*)&fpga_base);
    if(!request_mem_region(fpga_base,0x4000000,"mem_fpga")) {
    gpmc_cs_free(1);
    return -ENOMEM;
    }
    fpga_addr = ioremap(fpga_base, 0x4000000);
    读的地方如下:
    tw = readw(fpga_addr + io_addr);
    不论 io_addr是啥,tw值都不变

  • 现在都是基于设备树修改了,以下文档讲的比较详细,可以参考看一下:

    https://blog.csdn.net/u012010054/article/details/81094704

  • 您好,请问一下,芯片的mmc0管脚复用成gpmcA20-25是否已经真的做通,还是只做了通用的使用方式?

  • 只要datasheet中罗列出来的都是可以实现复用的,您可以通过sysconfig工具辅助配置。

    https://dev.ti.com/