移植U-Boot到2440时的一些问题

[复制链接]
3356|1
 楼主| yannzi 发表于 2009-2-13 00:48 | 显示全部楼层 |阅读模式
(1)新建一个开发板的相应目录和文件。<br />(2)修改SDRAM的配置。<br />(3)增加对S3C2440的支持。<br />前面的board_init函数在识别出S3C2410或S3C2440后,设置了机器类型ID:gd-&gtbd-&gt&nbsp;bi_arch_number,后面的函数可以通过它来分辨是S3C2410还是S3C2440。首先要在程序的开头增加如下一行,这样才可以使用gd变&nbsp;量:<br />DECLARE_GLOBAL_DATA_PTR;<br />这里增加的<br />138&nbsp;/*&nbsp;机器类型ID,这在调用Linux内核时用到,这个值要与内核相对应&nbsp;*/<br />139&nbsp;gd-&gtbd-&gtbi_arch_number&nbsp;=&nbsp;MACH_TYPE_S3C2440;<br />1、请问是不是可以用?<br /><br />其次,在ulong&nbsp;get_HCLK(void)和&nbsp;ulong&nbsp;get_PCLK(void),增加的:<br />clkdiv&nbsp;=&nbsp;clk_power-&gtCLKDIVN;<br />camdiv&nbsp;=&nbsp;clk_power-&gtCAMDIVN;<br />其中,我得到的结果是:<br />speed.c:&nbsp;In&nbsp;function&nbsp;`get_HCLK':<br />speed.c:104:&nbsp;error:&nbsp;structure&nbsp;has&nbsp;no&nbsp;member&nbsp;named&nbsp;`CAMDIVN'<br />speed.c:&nbsp;In&nbsp;function&nbsp;`get_PCLK':<br />speed.c:134:&nbsp;error:&nbsp;structure&nbsp;has&nbsp;no&nbsp;member&nbsp;named&nbsp;`CAMDIVN'<br /><br />详细的过程可以参考http://blog.**/douzi/187693/message.aspx<br />里面我看起来是完全转载《嵌入式Linux应用开发完全手册》
 楼主| yannzi 发表于 2009-2-13 10:29 | 显示全部楼层

在s3c24x0.h中

typedef&nbsp;struct&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;LOCKTIME;<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;MPLLCON;<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;UPLLCON;<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;CLKCON;<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;CLKSLOW;<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;CLKDIVN;<br />#ifdef&nbsp;CONFIG_S3C2440<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;CAMDIVN;<br />#endif<br />}&nbsp;/*__attribute__((__packed__))*/&nbsp;S3C24X0_CLOCK_POWER;<br />“#ifdef&nbsp;CONFIG_S3C2440<br />&nbsp;&nbsp;&nbsp;&nbsp;S3C24X0_REG32&nbsp;&nbsp;&nbsp;&nbsp;CAMDIVN;<br />#endif”是自己加上去的吗?<br />“#ifdef&nbsp;CONFIG_S3C2440”要怎么样才能成立呢?<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

26

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部