打印
[i.MX]

不能写i.MX_6Quad_6Dual的EIM寄存器。

[复制链接]
1681|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
精灵脚|  楼主 | 2014-7-14 09:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
驱动代码:
    #define uSDHC_BASE   0x02190000
    #define EIM_BASE    0x021b8000
    if (!request_mem_region(uSDHC_BASE, 0xc8, "uSDHC"))
    {
         printk("request_mem_region error for uSDHC device!\n");
    }

    base = ioremap(uSDHC_BASE, 0xc8);
    if (!base)
    {
          printk("ioremap error for uSDHC device!\n");
    }

    *(volatile unsigned int *)(base+0xc0) = 0x2000780f;
   printk("uSDHC1_VEND_SPEC is %x\r\n", *(volatile unsigned int *)(base+0xc0));



    if (!request_mem_region(EIM_BASE, EIM_SIZE, EIM_DEV_NAME))
    {
        ret = -EBUSY;
        goto fail0;
    }

    base = ioremap(EIM_BASE, EIM_SIZE);
    if (!base)
    {
        ret = -EIO;
        printk("ioremap error for EIM device!\n");
        goto fail1;
    }


    *(volatile unsigned int *)(base) = 0x61008f;
    printk("EIM_CSnGCR1 is %x\r\n", *(volatile unsigned int *)(base));



运行结果:
uSDHC1_VEND_SPEC is 2000780f
EIM_CSnGCR1 is 610089

EIM_CSnGCR1寄存器仍然是缺省值.

相关帖子

沙发
FSL_TICS_ZJJ| | 2014-7-14 09:30 | 只看该作者
楼主你好,待会我会把你的问题转给我们的I.MX工程师,他会回答你,请耐心等待下哦。

使用特权

评论回复
板凳
精灵脚|  楼主 | 2014-7-14 11:03 | 只看该作者
FSL_TICS_ZJJ 发表于 2014-7-14 09:30
楼主你好,待会我会把你的问题转给我们的I.MX工程师,他会回答你,请耐心等待下哦。 ...

改了一下,可以写了,谢谢。

使用特权

评论回复
地板
精灵脚|  楼主 | 2014-7-14 11:05 | 只看该作者
FSL_TICS_ZJJ 发表于 2014-7-14 09:30
楼主你好,待会我会把你的问题转给我们的I.MX工程师,他会回答你,请耐心等待下哦。 ...

    if (!request_mem_region(CCM_BASE, 0x88, "CCM"))
    {
        ret = -EBUSY;
                printk("request_mem_region error for CCM device!\n");
            goto fail0;
    }

    base = ioremap(CCM_BASE, 0x88);
    if (!base)
    {
        ret = -EIO;
                printk("ioremap error for CCM device!\n");
        goto fail1;
    }

    reg = *(volatile unsigned int *)(base+0x80);
    reg |= 0x00000C00;
    *(volatile unsigned int *)(base+0x80) = reg;


    if (!request_mem_region(EIM_BASE, EIM_SIZE, EIM_DEV_NAME))
    {
        ret = -EBUSY;
            goto fail0;
    }

    base = ioremap(EIM_BASE, EIM_SIZE);
    if (!base)
    {
        ret = -EIO;
                printk("ioremap error for EIM device!\n");
        goto fail1;
    }

    *(volatile unsigned int *)(base) = 0x61008f;

    printk("EIM_CSnGCR1 is %x\r\n", *(volatile unsigned int *)(base));

运行结果:
/udisk # insmod eim-dev.ko
eim_init
EIM_CSnGCR1 is 61008f

使用特权

评论回复
5
FSL_TICS_ZJJ| | 2014-7-14 13:38 | 只看该作者
哦,那问题是解决了是吗?
如果问题解决了,还请帮我们及时结贴哦。
如果还有问题,欢迎交流。

使用特权

评论回复
6
FSL_TICS_Rita| | 2014-7-14 14:11 | 只看该作者
恭喜楼主问题已经解决,楼主很迅速啊:)~~欢迎有问题继续在本论坛中交流哈~~

使用特权

评论回复
7
精灵脚|  楼主 | 2014-7-16 10:10 | 只看该作者
FSL_TICS_ZJJ 发表于 2014-7-14 13:38
哦,那问题是解决了是吗?
如果问题解决了,还请帮我们及时结贴哦。
如果还有问题,欢迎交流。 ...

这个,,,,我能再提个问题吗? --为啥我不能结贴?
我已经把20分都分了,在那个"分数:  "中。 还是一直提示“分数未分配完,或分数分配存在错误”,操作失败。

使用特权

评论回复
8
精灵脚|  楼主 | 2014-7-16 10:11 | 只看该作者
FSL_TICS_ZJJ 发表于 2014-7-14 09:30
楼主你好,待会我会把你的问题转给我们的I.MX工程师,他会回答你,请耐心等待下哦。 ...

难道是因为我分数不够?

使用特权

评论回复
9
精灵脚|  楼主 | 2014-7-16 10:12 | 只看该作者
加点儿分

使用特权

评论回复
10
FSL_TICS_ZJJ| | 2014-7-16 10:30 | 只看该作者
精灵脚 发表于 2014-7-16 10:10
这个,,,,我能再提个问题吗? --为啥我不能结贴?
我已经把20分都分了,在那个"分数:  "中。 还是一直 ...

哦,这样啊,那应该是你帖子比较新,要过几天才可以结贴,再等等吧。
反正月底前帮我结贴就行啦。

使用特权

评论回复
11
FSL_TICS_ZJJ| | 2014-7-16 10:30 | 只看该作者
精灵脚 发表于 2014-7-16 10:11
难道是因为我分数不够?

不是分数不够的原因,是帖子还没到时间,再等等吧。

使用特权

评论回复
12
FSL_TICS_Rita| | 2014-7-16 14:15 | 只看该作者
精灵脚 发表于 2014-7-16 10:10
这个,,,,我能再提个问题吗? --为啥我不能结贴?
我已经把20分都分了,在那个"分数:  "中。 还是一直 ...

欢迎有问题再创新帖提问:)~~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

23

帖子

0

粉丝