国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 3700|回復: 2
打印 上一主題 下一主題

【小練初成】Linux 2.6.36內核移植飛凌OK6410開發板完整步驟詳解

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2011-5-20 14:07:47 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
今天終于讓Linux內核在飛凌的板子上跑起來了,想來也是艱辛,為了移植成功,斷斷續續做了將近兩個月的努力,期間郁悶不可言
語形容啊,   了解其中艱辛,將自己移植步驟與心得與大家分享,希望對初踏次領域之人有所幫助,我所寫的成果一部分也是網上前
輩的所作,并非完全本人原創。  
一、       移植環境
主 機:VMWare-Ubuntu
開發板:飛凌OK6410 nandflash,Kernel:2.6.36.2  
編譯器:arm-linux-gcc-4.3.2.tgz
u-boot:u-boot-1.1.6

注:編譯器和u-boot 都是飛凌開發板自帶的
二、  源碼獲得
       內核源碼到http://www.all.kernel.org/下載;
三、    移植步驟:
1.將Linux2.6.34.2內核源碼放到工作目錄文件夾下,并解壓。
#tar xzvf linux2.6.36.2.tar.gz –c /
#pwd
/  
# cd linux2.6.36.2
       2. 修改內核源碼根目錄下的Makefile文件(CROSS_COMPILE    =的值因個人情況而定,其他可以照做)
       #gedit Makefile
......
#SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
#                  -e s/arm.*/arm/ -e s/sa110/arm/ \
#                  -e s/s390x/s390/ -e s/parisc64/parisc/ \
#                  -e s/ppc.*/powerpc/ -e s/mips.*/mips/ )
......
#ARCH        ?= $(SUBARCH)
#CROSS_COMPILE    ?=
ARCH        = arm
CROSS_COMPILE    = /usr/local/arm/usr/local/arm/4.3.2/bin/arm-none-linux- gnueabi-
3添加NandFlash分區信息.
修改arch/arm/mach-s3c64xx/mach-smdk6410.c文件,添加Nand Flash的分區信息和Nand Flash的硬件信息。(藍色字體為添加部分)  
#pwd
        #gedit mach-smdk6410.c               //add here 注意:此處的nandflash分區信息是飛凌自帶的2.6.28的內核設置,由
于此處要用到uboot是飛凌的,所以分區信息也要按人家的來 添加頭文件 #include #include  
#include #include struct mtd_partition s3c_partition_info[]  
= {      
                   {         
                      .name          = "Bootloader",
                       .offset               = 0,   
                      .size          = (256*SZ_1K),     
                        .mask_flags    =MTD_CAP_NANDFLASH,   
                     },   
                     {         
                      .name          = "Kernel",   
                     .offset               = (256*SZ_1K),      
                     .size          = (4*SZ_1M) - (256*SZ_1K),     
                      .mask_flags    = MTD_CAP_NANDFLASH,      
                     },
#if defined      (CONFIG_SPLIT_ROOT_FILESYSTEM)
                {            
                        .name          = "Rootfs",  
                        .offset               = (4*SZ_1M),   
                         .size          = (80*SZ_1M),//
                },
#endif         
                  {           
                          .name          = "File System",
                          .offset               = MTDPART_OFS_APPEND,   
                       .size          = MTDPART_SIZ_FULL,   
                  }
};
static struct s3c2410_nand_set s3c_nandset[]={   
       [0]=         {         
                   .name            ="s3c24xx-nand",     
                  .nr_chips        = 1,   
                    .nr_partitions   =ARRAY_SIZE(s3c_partition_info),         
                 .partitions   =s3c_partition_info,  
                    }
};
static struct s3c2410_platform_nand s3c_platform={      
              .tacls =25,            
            .twrph0 =55,         
            .sets = &s3c_nandset,      
             .nr_sets =ARRAY_SIZE(s3c_nandset),};
//add here…
static struct platform_device *smdk6410_devices[] __initdata = {
#ifdef CONFIG_SMDK6410_SD_CH0      
    &s3c_device_hsmmc0,
#endif
#ifdef CONFIG_SMDK6410_SD_CH1      
     &s3c_device_hsmmc1,
#endif         
   &s3c_device_i2c0,      
     &s3c_device_i2c1,      
    &s3c_device_fb,        
    &s3c_device_ohci,      
      &s3c_device_usb_hsotg,     
     &s3c64xx_device_iisv4,   
       //add here      
     &s3c_device_nand,      
   //add here…
}
static void __init smdk6410_map_io(void){   
       u32 tmp;      
      //add here      
      s3c_device_nand.name = "s3c6410-nand";   
       //add here…

}
static void __init smdk6410_machine_init(void){      
      u32 cs1;        
     s3c_i2c0_set_platdata(NULL);   
       s3c_i2c1_set_platdata(NULL);   
      s3c_fb_set_platdata(&smdk6410_lcd_pdata);   
       //add here        
     s3c_nand_set_platdata(&s3c_platform);//      
     //add here…
}
沙發
發表于 2011-6-9 15:53:05 | 只看該作者
謝謝樓主!
板凳
發表于 2011-11-1 13:11:40 | 只看該作者
收藏了 感謝LZ!!!
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产小视频精品 | 亚洲日本欧美日韩高观看 | 亚洲免费在线视频播放 | 五月综合在线 | 国内精品手机在线观看视频 | 日韩精品毛片 | 四虎在线视频免费观看 | 好吊788gaoco| 91免费在线看 | 国产精品入口麻豆高清 | 欧美成a人片在线观看久 | 狠狠色丁香久久婷婷综合丁香 | 亚洲国产综合精品中文第一区 | 日本在线高清视频 | 日韩免费网址 | 日韩在线视频中文字幕 | 日韩伦理片免费在线观看 | 天天爽夜夜爽一区二区三区 | 91情侣在线视频 | 五月天婷婷色综合 | 一级特黄色毛片免费看 | 久久美女网 | 久久这里是精品 | 欧美视频第一区 | xxxx日本在线播放免费不卡 | 国产综合色在线视频 | 久久精彩免费视频 | 中文字幕第10页 | 日日干视频 | 久久综合九色综合精品 | 狠狠色婷婷综合天天久久丁香 | 一区二区中文字幕 | 女人张开腿让男人桶免费最新 | 亚洲精品高清国产一久久 | 最近中文字幕无吗 | 欧美亚洲日本国产综合网 | 国产日产欧美一区二区三区 | 麻豆导航 | 国产卡一卡二卡3卡4卡无卡视频 | 天天曰天天干天天操 | 欧美日本免费观看αv片 |