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

查看: 3705|回復: 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
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文天堂在线最新2022更新 | 成人伊人亚洲人综合网站222 | 国产伦精品一区三区视频 | 理论片亚洲 | 色婷婷亚洲精品综合影院 | 久久久免费观看 | 厚颜无耻有字幕在线观看 | 九九视频在线观看视频 | 亚洲综合久久久久久中文字幕 | 国产综合色在线视频 | 天天干天天曰天天操 | 国产精品妖精视频 | www.亚洲精品.com | 在线观看日本免费不卡 | 免费永久在线观看污污的网站 | 传媒天美果冻aaaaa | 国内精品久久久久鸭 | 国产日韩精品欧美一区视频 | 国产青草| 中文字幕一区二区三匹 | 色综合久久久久久久久五月 | 日本亚洲欧美在线 | 国产精品成人一区二区 | 国产男人的天堂 | 一级黄色片a | 国产四虎免费精品视频 | 在线视频一区二区日韩国产 | hitomi在线播放 | 侠盗高飞在线观看免费完整版 | 韩国视频一区二区 | 久久精品国产亚洲麻豆小说 | 国产精品秒播无毒不卡 | 韩国一级黄色录像 | 国产一级特黄生活片 | 欧美精品免费线视频观看视频 | 精品四虎 | 精品欧美一区手机在线观看 | 国产福利一区视频 | 青青青国产成人久久111网站 | 特级深夜a级毛片免费观看 特级全黄一级毛片视频 | 久久www免费人成看国产片 |