TQ2440成功移植linux-2.6.29内核

好久没捣鼓linux 了, 参照下边的文章

http://blog.csdn.net/zbffff/article/details/12029105

 

尝试了下移植linux 内核。

自己的操作步骤是:(大致是按照参考文章操作的)

 

.修改平台输入时钟和机器码

    修改内核源码arch/arm/mach-s3c2440/mach-smdk2440.c”文件的大概162行或163行,把16.9344MHz改为12MHz,因为TQ2440使用的就是12MHz的外部时钟源输入,即把16934400改为12000000

    TQ2440使用的uboot中设定了机器码为168,所以内核这里需要修改机器码,否则会
出现不能启动的情况。机器码保存在内核源码的“arch/arm/tools/mach-types”文件中,在大概379行,把
原来的362改为168保存即可。

.利用默认配置单做配置单

#make menuconfig ARCH=arm CROSS_COMPILE=arm-sdutyl-linux-gnueabi-

 

Load an Alternate Configuration File回车,输入arch/arm/configs/s3c2410_defconfig,OK

然后返回到配置界面,进入到“SystemType”选项下的配置单:


然后配置各个平台如下所示

SystemType --->
       S3C2410Machines --->
          [*]SMDK2410/A9M2410
          []IPAQH1940
          []AcerN30
          []SimtecElectronicsBAST(EB2410ITX)
          []NexVisionOTOMBoard
          []AMLM5900Series
          []ThorcomVR1000
          []QT2410
       S3C2412Machines --->
          []SMDK2413
          []SMDK2412
          []VMSTMS
       S3C2440Machines --->
          []SimtecElectronicsANUBIS
          []SimtecIM2440D20(OSIRIS) module
          []HPiPAQrx3715          

  [*]SMDK2440
          []NexVision NEXCODER 2440 Light Board
          [*]SMDK2440withS3C2440CPUmodule
      S3C2442Machines --->
         []SMDM2440withS3C2442CPUmodule
      S3C2443Machines --->
         []SMDK2443
    
配置完毕这个地方后,退回到最初的配置单。

在配置单中添加自己的信息

    然后配置选项,配置如下

Generalsetup --->
    [*]Promptfordevelopmentand/orincompletecode/drivers
    (-
Sdutyl)Localversion-appendtokernelrelease
    [*]SystemVIPC
    (17)Kernellogbuffersize(16=>64KB,17=>128KB)
    -*-Namespacessupport
        ChooseSLABallocator(SLUB(UnqueuedAllocator)) --->

选择是否支持EEAABBII

    然后对是否支持EABI进行选择,配置如下:
KernelFeatures --->
   Memorysplit(3G/1Guser/kernelsplit) --->
   []PreemptibleKernel(EXPERIMENTAL)
   [*]UsetheARMEABItocompilethekernel
   [*]  AllowoldABIbinariestorunwiththiskernel(EXPERIMENTAL)
   []HighMemory Support(EXPERIMENTAL)
        Memorymodel(FlatMemory) --->
   []AddLRUlisttotracknon-evictablepages
   (4096)Lowaddressspacetoprotectfromuserallocation
    说明:如果您使用的4.3.3的编译器(也就是支出EABI的编译器),
那么就选中它;如果您使用3.4.5或以下的编译器,那么就不要选中它。

然后保存自己的配置单为.config

三、编译(此时编译出来的内核仅能引导,后边还有驱动的移植, 明天有时间再弄)

#make menuconfig ARCH=arm CROSS_COMPILE=arm-sdutyl-linux-gnueabi-

 

四、下载编译出来的zImage 到内核,可以加载内核,但是驱动什么的都还没有移植。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值