查看: 3634|回复: 2

[求助] IMX257 WEIM相关问题

[复制链接]

该用户从未签到

1

主题

1

帖子

0

新手上路

Rank: 1

积分
5
最后登录
2014-11-20
发表于 2014-11-20 14:46:36 | 显示全部楼层 |阅读模式
本帖最后由 bruce_lol 于 2014-11-20 15:23 编辑

本人是刚接触IMX25的菜鸟,现想做一个WEIM(外部内存接口)跟FPGA进行同步的16位位宽的通讯(地址为14位),FPGA当作外部内存读写。
如下为自己的配置:
       /*1.IO引脚配置*/
       /* 000: Select mux mode: ALT0 mux port: EIM_DA_H[13] of instance: emi.
           101: Select mux mode: ALT5 mux port: GPIO[1] of instance: gpio4.
           111: Select mux mode: ALT7 mux port: LCDC_CLS of instance: lcdc.
       ....*/
        mxc_request_iomux(MX25_PIN_A10, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_A13, MUX_CONFIG_FUNC);

        mxc_request_iomux(MX25_PIN_D0,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D1,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D2,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D3,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D4,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D5,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D6,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D7,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D8,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D9,  MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D10, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D11, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D12, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D13, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D14, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_D15, MUX_CONFIG_FUNC);

        mxc_request_iomux(MX25_PIN_EB0, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_EB1, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_OE, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_CS1, MUX_CONFIG_FUNC);
        mxc_request_iomux(MX25_PIN_RW, MUX_CONFIG_FUNC);


        /*2 WEIM  Register*/
        void __iomem *ram_reg = IO_ADDRESS(WEIM_BASE_ADDR);//WEIM BASE ADDR 0xB800_2000
        void __iomem *ccm_reg = IO_ADDRESS(CCM_BASE_ADDR);//CCM(Clock Control Module) 0x53F8_0000

        unsigned int reg;
        struct clk *clk;
        unsigned int rate;

        clk = clk_get(NULL,"ahb_clk");
        if(IS_ERR(clk))
                printk("ahb_clk not found\n");

        rate = clk_get_rate(clk);
        printk("emi_clk set to %d\n",rate);
        
        /* WEIM config-CS5 init -- CPLD */
        //DCDGEN( 1, 4, 0xB8002050, 0x0000D843) /* CS5_CSCRU */
        //DCDGEN( 2, 4, 0xB8002054, 0x22252521) /* CS5_CSCRL */
        //DCDGEN( 3, 4, 0xB8002058, 0x22220A00) /* CS5_CSCRA */
        writel(0x0000D843,ram_reg + 0x10);//cscr1u
        reg = readl(ccm_reg + 0x10);
        printk("cscr1u = %08x\n",reg);

        writel(0x22252521,ram_reg + 0x14);//cscr1l
        reg = readl(ccm_reg + 0x14);
        printk("cscr1l = %08x\n",reg);

        writel(0x22220A00,ram_reg + 0x18);//cscr1a
        reg = readl(ccm_reg + 0x18);
        printk("cscr1a = %08x\n",reg);

        if(NULL ==  request_mem_region (WEIM_CS1_BASE_ADDR,0x4000,"FPGA_MEM"))//WEIM_CS1_BASE_ADDR: 0xA8000000
        {
                printk("request_mem_region error\n");
                return 0;
        }
        /****************************/
        void *eim_mem= ioremap_nocache(WEIM_CS1_BASE_ADDR, 0x4000);
        if( NULL == eim_mem)
        {
                printk("Failed to ioremap eim_mem\n");
                return 0;


        }

       大家能帮忙看下还有什么漏掉了,现在问题是写寄存器写不进去,打印出来的值跟原来是一样的,本人菜鸟一枚,望指导,谢谢!
我知道答案 目前已有2人回答
回复

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-11-20 16:00:21 | 显示全部楼层
楼主你好,关于i.mx25系列的我不熟悉,要不你到飞思卡尔官网提交一个技术服务请求吧,会有我们全球的工程师给您回复的。新建技术服务请求链接为:
https://www.freescale.co
m/zh-H ... sp?code=SUPPORTHOME

点击:创建服务请求。
回复 支持 反对

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-11-20 16:01:32 | 显示全部楼层
最好问题是英文的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-20 16:52 , Processed in 0.090444 second(s), 23 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表