wince从64M内存变更到128M大内存的实现

我的平台wince5.0+s3c2410

 

下面我讲讲我修改的地方

1.fw.s
HandleFIQ是存放着FIQ服务程序入口地址的地址,内存多了64M,所以要加上64M的内存。

  1. HandleFIQ   EQU   0x33ffff1c  

改成

  1. HandleFIQ   EQU   0x37ffff1c  

这个文件第二个要改的地方

  1. ldr     r3, = (0x8C000000 - 0x30000000)

改成

  1. ldr     r3, = (0x88800000 - 0x30000000)

2.map.a

  1.     DCD 0x80000000, 0x02000000, 30  ; 30 MB SROM(SRAM/ROM) BANK 0
  2.     DCD 0x82000000, 0x08000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 1
  3.     DCD 0x84000000, 0x10000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 2
  4.     DCD 0x86000000, 0x18000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 3
  5.     DCD 0x88000000, 0x20000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 4
  6.     DCD 0x8A000000, 0x28000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 5
  7.     DCD 0x8C000000, 0x30000000, 64  ; 64 MB DRAM BANK 0,1

改成

  1.     DCD 0x80000000, 0x02000000, 30  ; 30 MB SROM(SRAM/ROM) BANK 0
  2.     DCD 0x82000000, 0x08000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 1
  3.     DCD 0x84000000, 0x10000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 2
  4.     DCD 0x86000000, 0x18000000, 32  ; 32 MB SROM(SRAM/ROM) BANK 3
  5.     DCD 0x88000000, 0x20000000, 4   ; 32 MB SROM(SRAM/ROM) BANK 4
  6.     DCD 0x88400000, 0x28000000, 4   ; 32 MB SROM(SRAM/ROM) BANK 5
  7.     DCD 0x88800000, 0x30000000, 128 ; 128 MB DRAM BANK 0,1

3.memcfg.a 

  1. ;Bank 6 parameter
  2. B6_MT  EQU 0x3 ;SDRAM
  3. B6_Trcd  EQU 0x1 ;3clk  ; over 180M 
  4. B6_SCAN  EQU 0x1 ;9bit
  5. ;Bank 7 parameter
  6. B7_MT  EQU 0x3 ;SDRAM
  7. B7_Trcd  EQU 0x1 ;2clk
  8. B7_SCAN  EQU 0x1 ;9bit

改成


 

  1. ;Bank 6 parameter
  2. B6_MT  EQU 0x3 ;SDRAM
  3. B6_Trcd  EQU 0x1 ;3clk  ; over 180M 
  4. B6_SCAN  EQU 0x2 ;10bit
  5. ;Bank 7 parameter
  6. B7_MT  EQU 0x3 ;SDRAM
  7. B7_Trcd  EQU 0x1 ;2clk
  8. B7_SCAN  EQU 0x2 ;10bit

该处修改在nBoot中对应memcfg.inc,要做对应修改

 

4.s2410.h

  1. #define DMA_BUFFER_BASE   0xAC000000

改成

  1. #define DMA_BUFFER_BASE   0xA8800000

5.platform.reg

  1. [HKEY_LOCAL_MACHINE/Drivers/Display/S3C2410/CONFIG]
  2.  "DisplayDll"="s3c2410disp.dll"
  3.  "LCDVirtualFrameBase"=dword:ac100000
  4.  "LCDPhysicalFrameBase"=dword:30100000

改成

  1. [HKEY_LOCAL_MACHINE/Drivers/Display/S3C2410/CONFIG]
  2.  "DisplayDll"="s3c2410disp.dll"
  3.  "LCDVirtualFrameBase"=dword:a8900000
  4.  "LCDPhysicalFrameBase"=dword:30100000

6.config.bib

  1.  ; NK Start address
  2.  #define NKSTART  8C200000
  3.  #define NKLEN  01800000 ;02000000
  4.  #define RAMSTART 8DA00000 ;8E200000
  5.  #define RAMLEN  02600000 ;01E00000

改成

  1.  ; NK Start address
  2.  #define NKSTART  88a00000
  3.  #define NKLEN  01800000 ;02000000
  4.  #define RAMSTART 8a200000 ;8E200000
  5.  #define RAMLEN  06600000 ;06600000

 继续

  1. AUD_DMA       8c002000  00002000  RESERVED 
  2.  DRV_GLB       8c010000  00010000  RESERVED
  3.  DBGSER_DMA    8c022000  00002000  RESERVED
  4.  SER_DMA       8c024000  00002000  RESERVED
  5.  IR_DMA        8c026000  00002000  RESERVED
  6.  SD_DMA     8c028000  00008000  RESERVED
  7.  EDBG          8c030000  00020000  RESERVED
  8.  CPXIPCHAIN    8c050000  00008000  RESERVED
  9.  SLEEP_BUFF  8c058000  00004000  RESERVED
  10.  DISPLAY       8c100000  00100000  RESERVED   

改成

 

 

  1.  AUD_DMA       88802000  00002000  RESERVED 
  2.  DRV_GLB       88810000  00010000  RESERVED
  3.  DBGSER_DMA    88822000  00002000  RESERVED
  4.  SER_DMA       88824000  00002000  RESERVED
  5.  IR_DMA        88826000  00002000  RESERVED
  6.  SD_DMA     88828000  00008000  RESERVED
  7.  EDBG          88830000  00020000  RESERVED
  8.  CPXIPCHAIN    88850000  00008000  RESERVED
  9.  SLEEP_BUFF  88858000  00004000  RESERVED
  10.  DISPLAY       88900000  00100000  RESERVED    

到此内核修改结束

boot中除了刚才说到memcfg.inc要修改的地方,在start.s中也要修改一个地方

  1. SDRAM_BASE EQU  0x4000000

改成 

  1. SDRAM_BASE EQU  0x8000000

 

 

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值