需要帮助将RAM从256MB增加到512MB [英] Need help to increase RAM from 256MB to 512MB
问题描述
您好,
我在DM3730平台上使用WinCE 7和TI BSP。 我非常需要帮助修改BSP,将RAM大小从256MB增加到512MB。 我在旧帖子中解释
http://social.msdn.microsoft.com/Forums/en-US/winembplatdev/thread/a1c8901f-6fda-4a07-a085-021e71f55b7c 我做了什么没有成功并在那里寻求帮助但是没有得到任何回应。 如上所述,我尝试使用OEMRamTable动态
将256MB的RAM添加到g_oalAddressTable中指定的数量,但是我的主板在跳入Eboot后挂起。
I am using WinCE 7 and TI BSP on DM3730 platform. I badly need help in modifying the BSP to increase RAM size from 256MB to 512MB. I explain in an old post http://social.msdn.microsoft.com/Forums/en-US/winembplatdev/thread/a1c8901f-6fda-4a07-a085-021e71f55b7c what I did without success and asked for help there but did not get any response. As explained, I attempted to use OEMRamTable to dynamically add 256MB of RAM to the amount specified in g_oalAddressTable but my board hangs after jumping into the Eboot.
我也尝试过 在addrtab_cfg.inc中实现OEMDeviceTable,如下所示:
I also tried to implement OEMDeviceTable in addrtab_cfg.inc as below:
EXPORT g_oalAddressTable [DATA]
导出 g_oalEbootAddressTable [DATA]
g_oalDeviceTable
DCD     0xA5000000,0x150000, 0x1000000,  0     ; CS5,LAN9115
DCD     0xA6000000,0x480000, 0x1000000,  0     ; L4核心/唤醒注册器
DCD     0xA7000000,0x490000, 0x0100000,  0     ; L4外围设备
DCD     0xA7100000,0x680000, 0x1000000,  0     ; L3寄存器
DCD     0xA8100000,0x6C0000, 0x1000000,  0     ;短信登记册为
DCD     0xA9100000,0x6D0000, 0x1000000,  0     ; SDRC注册为
DCD     0xAa100000,0x6E0000, 0x1000000,  0     ; GPMC注册号
DCD     0xAb100000,0x402000, 0x0100000,  0     ; 64KB SRAM
DCD     0xAb200000,0x5C0000, 0x1000000,  0     ; IPSS互连
DCD     0xAC200000,0x000000, 0x0100000,  0     ; ROM
DCD     0xAC300000,0x080000, 0x0100000,  0     ; NAND寄存器(FIFO)
DCD     0x00000000,0x000000, 0, 0 ;表格结尾
EXPORT g_oalAddressTable[DATA]
EXPORT g_oalEbootAddressTable[DATA]
g_oalDeviceTable
DCD 0xA5000000, 0x150000, 0x1000000, 0 ; CS5, LAN9115
DCD 0xA6000000, 0x480000, 0x1000000, 0 ; L4 Core/Wakeup registers
DCD 0xA7000000, 0x490000, 0x0100000, 0 ; L4 Peripheral
DCD 0xA7100000, 0x680000, 0x1000000, 0 ; L3 registers
DCD 0xA8100000, 0x6C0000, 0x1000000, 0 ; SMS registers
DCD 0xA9100000, 0x6D0000, 0x1000000, 0 ; SDRC registers
DCD 0xAa100000, 0x6E0000, 0x1000000, 0 ; GPMC registers
DCD 0xAb100000, 0x402000, 0x0100000, 0 ; 64KB SRAM
DCD 0xAb200000, 0x5C0000, 0x1000000, 0 ; IPSS interconnect
DCD 0xAC200000, 0x000000, 0x0100000, 0 ; ROM
DCD 0xAC300000, 0x080000, 0x0100000, 0 ; NAND Registers (FIFO)
DCD 0x00000000, 0x000000, 0, 0 ; end of table
; ----------------------------------- -------------------------------------------
; 表格格式:缓存地址,实际地址,大小
;------------------------------------------------------------------------------
; Table format: cached address, physical address, size
g_oalAddressTable
DCD CE_NEW_MAPPING_TABLE,g_oalDeviceTable,0
$
DCD     0x80000000,0x800000,512, 0  ;; SDRAM
DCD     0x00000000,0x00000000, 0, 0&NBSP ;;表格结束
g_oalEbootAddressTable
g_oalAddressTable
DCD CE_NEW_MAPPING_TABLE, g_oalDeviceTable, 0
DCD 0x80000000, 0x800000, 512, 0 ; SDRAM
DCD 0x00000000, 0x00000000, 0, 0 ; end of table
g_oalEbootAddressTable
DCD     0x80000000,0x80000000,256 ; SDRAM
DCD     0x95000000,0x15000000, 16     ; CS5,LAN9115
DCD     0x96000000,0x48000000, 16     ; L4核心/唤醒注册器
DCD     0x97000000,0x49000000, 1     ; L4外围设备
DCD     0x97100000,0x68000000, 16     ; L3寄存器
DCD     0x98100000,0x6C000000, 16     ;短信登记册为
DCD     0x99100000,0x6D000000, 16     ; SDRC注册为
DCD     0x9a100000,0x6E000000, 16     ; GPMC注册号
DCD     0x9b100000,0x40200000, 1     ; 64KB SRAM
DCD     0x9b200000,0x5C000000, 16     ; IPSS互连
DCD     0x9C200000,0x00000000, 1     ; ROM
DCD     0x9C300000,0x08000000, 1     ; NAND寄存器(FIFO)
DCD     0x00000000,0x00000000, 0     ;表的结尾
DCD 0x80000000, 0x80000000, 256 ; SDRAM
DCD 0x95000000, 0x15000000, 16 ; CS5, LAN9115
DCD 0x96000000, 0x48000000, 16 ; L4 Core/Wakeup registers
DCD 0x97000000, 0x49000000, 1 ; L4 Peripheral
DCD 0x97100000, 0x68000000, 16 ; L3 registers
DCD 0x98100000, 0x6C000000, 16 ; SMS registers
DCD 0x99100000, 0x6D000000, 16 ; SDRC registers
DCD 0x9a100000, 0x6E000000, 16 ; GPMC registers
DCD 0x9b100000, 0x40200000, 1 ; 64KB SRAM
DCD 0x9b200000, 0x5C000000, 16 ; IPSS interconnect
DCD 0x9C200000, 0x00000000, 1 ; ROM
DCD 0x9C300000, 0x08000000, 1 ; NAND Registers (FIFO)
DCD 0x00000000, 0x00000000, 0 ; end of table
我创建了g_oalEbootAddressTable以在Eboot startup.s和Eboot mmu.c的OALPAtoVA和OALVAtoPA函数中使用,而不是使用g_oalAddressTable  尽管如此,从Xloader跳到Eboot后我得到了同样的挂起。
I created g_oalEbootAddressTable to use in Eboot startup.s and in functions OALPAtoVA and OALVAtoPA of Eboot mmu.c instead of using g_oalAddressTable. Nonetheless, I got the same hang after jumping from Xloader to the Eboot.
请你给我一些详细的步骤来告诉我我错过了什么?
Would you please give me some detailed steps to do this or tell me what I am missing?
非常感谢你的帮助。
Luan
Luan Le
推荐答案
修改FILES文件夹下的config.bib文件例如......(仅供参考......)
Modify your config.bib file under FILES folder for eg .. (only for your reference ... )
ARGS                        84000000    00001000   保留; 4K
NK                          84001000    047FF000    RAMIMAGE; 72MB - 4K
DISPLAY                     88800000    01000000   保留; 16MB
CMEM_DSP                    89800000    02800000   保留; 40 MB
RAM                         8C000000    12200000    RAM      ;
290MB
ARGS 84000000 00001000 RESERVED ; 4K
NK 84001000 047FF000 RAMIMAGE ; 72MB - 4K
DISPLAY 88800000 01000000 RESERVED ; 16MB
CMEM_DSP 89800000 02800000 RESERVED ; 40 MB
RAM 8C000000 12200000 RAM ;
290MB
修改你的"g_oalAddressTable" INC文件夹下的addrtab_cfg.inc,例如......(仅供参考)
Modify your "g_oalAddressTable" addrtab_cfg.inc under INC folder for eg ... (For your reference only)
     DCD     0x84000000,0x80000000,418 ; SDRAM
      DCD     0x9E200000,0x5C000000, 16     ; L3互连
      DCD     0x9F200000,0x40200000, 1     ; 62KB SRAM
DCD     0x9F300000,0x6E000000, 1     ; GPMC注册机构
DCD     0x9F400000,0x6D000000, 1     ; SDRC注册为
DCD     0x9F500000,0x6C000000, 1     ;短信登记册为
DCD     0x9F600000,0x68000000, 1     ; L3寄存器
DCD     0x9F700000,0x49000000, 1     ; L4外围设备
DCD     0x9F800000,0x48000000, 4     ; L4核心/唤醒注册器
DCD     0x9FC00000,0x10000000, 1     ; CS0,
DCD     0x9FD00000,0x20000000, 1     ; CS5,LAN9115
DCD     0x9FE00000,0x30000000, 1     ; CS3
DCD     0x9FF00000,0x31000000, 1     ; CS4
DCD     0x00000000,0x00000000, 0     ;表的结尾
DCD 0x84000000, 0x80000000, 418 ; SDRAM
DCD 0x9E200000, 0x5C000000, 16 ; L3 interconnect
DCD 0x9F200000, 0x40200000, 1 ; 62KB SRAM
DCD 0x9F300000, 0x6E000000, 1 ; GPMC registers
DCD 0x9F400000, 0x6D000000, 1 ; SDRC registers
DCD 0x9F500000, 0x6C000000, 1 ; SMS registers
DCD 0x9F600000, 0x68000000, 1 ; L3 registers
DCD 0x9F700000, 0x49000000, 1 ; L4 Peripheral
DCD 0x9F800000, 0x48000000, 4 ; L4 Core/Wakeup registers
DCD 0x9FC00000, 0x10000000, 1 ; CS0,
DCD 0x9FD00000, 0x20000000, 1 ; CS5, LAN9115
DCD 0x9FE00000, 0x30000000, 1 ; CS3
DCD 0x9FF00000, 0x31000000, 1 ; CS4
DCD 0x00000000, 0x00000000, 0 ; end of table
您不能使用完整的512 MB,因为您需要为I / O映射一些内存,因为它已完成以上。
You cannot use the full 512 MB because you need to have some memory to be mapped for I/O's as it is done above.
您已经创建了"g_oalEbootAddressTable" 。我不确定这是否会对你有所帮助。我告诉过你我为我做过的事情......
You have created "g_oalEbootAddressTable" . I am not sure if this will help you or not. I have told you something that i did and worked for me ...
可能你可以探索并告诉我们任何其他方式来做同样的事。
May be you can explore and let us know any other way to do the same.
尝试了解我的设置
这篇关于需要帮助将RAM从256MB增加到512MB的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!