天嵌 ARM开发社区

 找回密码
 注册
查看: 2897|回复: 7

内核移植错误

[复制链接]
KauBoi 发表于 2010-3-29 11:00:25 | 显示全部楼层 |阅读模式
本帖最后由 KauBoi 于 2010-3-29 11:12 编辑

make menuconfig配置内核里面,我是先通过Load官方的配置文件config_EmbedSky,在这个基础上增加一些我自己的配置的。首先我试过config_EmbedSky配置出来的内核能够成功移植。
我添加的一些配置,都是摄像头的驱动,如下:

-----------------------------------------------------------------------------------------------------
    --- V4L USB devices                                              │ │   
  │ │    <*>   USB Video Class (UVC)                                      │ │   
  │ │   
  •      UVC input events device support                          │ │   
      │ │    <*>   GSPCA based webcams  --->                                  │ │   
      │ │    < >   Hauppauge WinTV-PVR USB2 support                           │ │   
      │ │    < >   Hauppauge HD PVR support                                   │ │   
      │ │    <*>   Empia EM28xx USB video capture support                     │ │   
      │ │    < >     Empia EM28xx ALSA audio module                           │ │   
      │ │    <*>   Conexant cx231xx USB video capture support                 │ │   
      │ │    < >     Conexant Cx231xx ALSA audio module                       │   
      │ │    <*>   USB video devices based on Nogatech NT1003/1004/1005       ││   
      │ │    <*>   USB 3com HomeConnect (aka vicam) support (EXPERIMENTAL)    │   
      │ │    <*>   USB IBM (Xirlink) C-it Camera support                      │ │   
      │ │    <*>   USB Konica Webcam support                                  │ │   
      │ │    <*>   USB Logitech Quickcam Messenger                            │ │   
      │ │    <*>   USB ET61X[12]51 PC Camera Controller support               │ │   
      │ │    <*>   OmniVision Camera Chip support                             │ │   
      │ │    <*>     USB W996[87]CF JPEG Dual Mode Camera support             │ │   
      │ │    <*>   USB OV511 Camera support                                   │ │   
      │ │    <*>   USB SE401 Camera support                                   │ │
      │ │    <*>   USB SN9C1xx PC Camera Controller support                   │ │   
      │ │    <*>   USB STV680 (Pencam) Camera support                         │ │   
      │ │    <*>   USB ZC0301[P] Image Processor and Control Chip support     │ │   
      │ │    <*>   USB Philips Cameras                                        │ │   
      │ │    [ ]     USB Philips Cameras verbose debug                        │ │   
      │ │   
  •    USB Philips Cameras input events device support            │ │   
      │ │    <*>   USB ZR364XX Camera support                                 │ │   
      │ │    <*>   USB Syntek DC1125 Camera support                           │ │   
      │ │    <*>   USB Sensoray 2255 video capture device                     │ │   

    -----------------------------------------------------------------------------------------------------

    增加了上面的配置之后,make zImage编译出来的内核烧写到NAND FLASH后,启动出现下面的错误:

    ##### EmbedSky BIOS for SKY2440/TQ2440 #####                                    
    Press Space key to Download Mode !                                               
    Booting Linux ...                                                               
    Copy linux kernel from 0x00200000 to 0x30008000, size = 0x00200000 ... Copy Ker.
    data abort                                                                       
    pc : [<3000b42c>]    lr : [<0000005c>]                                          
    sp : 302403a0  ip : 03a33040  fp : 302403bc                                      
    r10: 40000000  r9 : 30000000  r8 : 30008000                                      
    r7 : 03841102  r6 : 0590600c  r5 : 03a3c0c0  r4 : 30236efc                       
    r3 : 000000a8  r2 : 302503c0  r1 : 302403c0  r0 : 302503c0                       
    Flags: nzCv  IRQs off  FIQs off  Mode SVC_32                                    
    Resetting CPU ...                                                               

    然后就不断的重启,出现上面的错误,重启,错误,重启.......
    很奇怪,要是我在uboot里面不是按“3”烧写到NAND FLASH,而是按"t"(Test Linux Image)烧写到SDRAM中,它却能够正常启动


    是内核镜像大于2MB的原因吗?编译出来的2.1MB
  •  楼主| KauBoi 发表于 2010-3-29 11:20:21 | 显示全部楼层
    是不是可以通过修改
    linux-2.6.30.4\arch\arm\plat-s3c24xx÷common-smdk.c  中的
    static struct mtd_partition smdk_default_nand_part[] = {
    #if        defined(CONFIG_EmbedSky_more_than_256MB_NAND)
            [0] = {
                    .name        = "EmbedSky_Board_uboot",
                    .offset        = 0x00000000,
                    .size        = 0x00040000,
            },
            [1] = {
                    .name        = "EmbedSky_Board_kernel",
                    .offset        = 0x00200000,
                    .size        = 0x00300000,   //size改成3MB
            },
            [2] = {
                    .name        = "EmbedSky_Board_yaffs2",
                    .offset        = 0x00400000,   //起始地址顺延1MB
                    .size        = 0x0FB88000,   //size减小1MB
            }

    就可以解决了?uboot也要修改吗?应该要修改,不知道该如何修改uboot
    回复

    使用道具 举报

    亚瑟王 发表于 2010-3-29 12:27:57 | 显示全部楼层
    不是在这里修改,是在uboot中修改,因为是使用uboot烧写和启动内核的,你先去掉内核配置的其他选项,然后再编译内核吧。
    回复

    使用道具 举报

     楼主| KauBoi 发表于 2010-3-29 13:55:24 | 显示全部楼层
    3# 亚瑟王


    我要做摄像头采样方面的,想支持各种摄像头,所以要把各种摄像头的驱动都编译到内核里面去
    回复

    使用道具 举报

    亚瑟王 发表于 2010-3-30 10:52:47 | 显示全部楼层
    你先减少别的地方的驱动组件,都能测试好了摄像头再取消不必要的摄像头驱动。
    回复

    使用道具 举报

    亚瑟王 发表于 2010-3-30 10:53:16 | 显示全部楼层
    我会尽快提供支持3MB内核镜像的uboot到论坛上的。弄好了就发布出来。
    回复

    使用道具 举报

     楼主| KauBoi 发表于 2010-3-30 11:15:20 | 显示全部楼层
    6# 亚瑟王

    Thanks
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

    Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

    GMT+8, 2025-8-7 21:01 , Processed in 2.038036 second(s), 20 queries .

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表