移植linux到龙芯3210笔记2

 有了笔记1的配置,也就是说,得到了三个宏:

CONFIG_SOC32101_BOARDS、
CONFIG_SOC_SOC、
CONFIG_CPU_SOC32101

那么:

修改或者增加一些与CPU相关的代码就可以用CONFIG_CPU_SOC32101来判断,例如cache、tlb等。

修改或者增加一些与板级相关的代码就可以用CONFIG_SOC_SOC或者CONFIG_SOC32101_BOARDS来判断。

  

修改Makefile

1、./Makefile(顶级makefile)

 我们修改这个Makefile的原因是通过它来选择我们的CPU构架,指定我们的编译工具

 首先修改两个宏,SUBARCH是选定CPU构架的,CROSS_COMPILE选定交叉工具链:

修改宏SUBARCH = mips

修改宏CROSS_COMPILE ?= mipsel-linux- 

  

2、./arch/mips/Makefile(CPU构架相关makefile)

 我们修改这个Makefile的原因是加入与我们平台相关的代码到内核源码中,并作一些平台相关的修改。

主要的修改任务:

1)、加入3210的平台相关代码到内核工程中

2)、指定链接的起始地址

3)、指定编译器的编译选项

 所以添加:

core-$(CONFIG_SOC_SOC)+= arch/mips/mips-boards/soc32101- boards/soc-soc/

load-$(CONFIG_SOC_SOC)+= 0xffffffff80200000 


cflags-$(CONFIG_SOC_SOC)+= -Iinclude/asm-mips/mach-longmeng

cflags-$(CONFIG_CPU_SOC32101) += -march=r4600 -Wa,--trap

3、./arch/mips/kernel/Makefile(内核相关makefile)

 这个修改主要是针对CPU的,关于CPU方面的FPU操作和上下文切换操作等。

 添加:

    obj-$(CONFIG_CPU_SOC32101) += r4k_fpu.o r4k_switch.o 

 

4、arch/mips/mm/Makefile(MM相关的,即内存管理)

这部分要加入的模块了是针对CPU的,主要是加入CPU在内存管理方面的操作,主要是Cache和TLB。

添加:

     obj-$(CONFIG_CPU_SOC32101) += c-r4k.o cex-gen.o pg-r4k.o tlb-r4k.o

这部分内容是根据实际情况进行修改,因为龙芯3210在cache和tlb的操作上都有自己特定的指令,所以这部分代码需要修改。

 

5、arch/mips/lib-32/Makefile(TLB相关的)

 添加:

   obj-$(CONFIG_CPU_SOC32101) += dump_tlb.o

 

6、arch/mips/pci/Makefile (PCI相关的)

添加:

    obj-$(CONFIG_SOC_SOC)           += fixup-soc-soc.o ops-soc-soc.o 

可见fixup-soc-soc.c 和 ops-soc-soc.c文件将要加入到这个目录下进行编译

 

PS:以上的修改,主要是加入一些平台相关的代码到内核工程中,这样, 这些平台相关的代码就会被编译。接下来的工作就是把这些平台相关的代码加入到这些目录下。

 

--龙芯嵌入式系列开发板更多信息请关注  http://shop107479358.taobao.com 

--龙芯1B开发板: http://item.taobao.com/item.htm?spm=a1z10.1.w4004-4678790104.8.WBYZuT&id=36562593290

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值