• mini2440移植uboot 2011.03(上)


    参考博文:

           u-boot-2011.03在mini2440/micro2440上的移植

    本来我想移植最新版的uboot,但是移植却不太成功,所以先模仿他人的例子重新执行一遍,对uboot更熟悉后再开始新版本的移植。

    操作系统: debian 7.4

    uboot:   u-boot-2011.03(下载地址

    交叉编译器:arm-linux-gcc 4.4.3(下载地址

    执行过程如下:

    移植(一)基本配置:

    在boards.cfg下添加一行:

    mini2440                     arm         arm920t     -                   friendlyarm    s3c24x0

    执行下面命令:

    host@debian:~/soft/mini2440/u-boot-2011.03$ mkdir -p board/friendlyarm/mini2440
    host@debian:~/soft/mini2440/u-boot-2011.03$ cp -r board/samsung/smdk2410/* board/friendlyarm/mini2440/
    host@debian:~/soft/mini2440/u-boot-2011.03$ cd board/friendlyarm/mini2440/
    host@debian:~/soft/mini2440/u-boot-2011.03/board/friendlyarm/mini2440$ mv smdk2410.c mini2440.c
    host@debian:~/soft/mini2440/u-boot-2011.03/board/friendlyarm/mini2440$ vim Makefile
    将Makefile中smdk2410替换成mini2440
    host@debian:~/soft/mini2440/u-boot-2011.03/board/friendlyarm/mini2440$ cd -
    host@debian:~/soft/mini2440/u-boot-2011.03$ cp include/configs/smdk2410.h  include/configs/mini2440.h
    host@debian:~/soft/mini2440/u-boot-2011.03$ vim include/configs/mini2440.h
    将#define CONFIG_SYS_PROMPT       "SMDK2410 # "中的SMDK2410修改成MINI2440。
    添加两行内容:
    #define CONFIG_SYS_SDRAM_BASE       PHYS_SDRAM_1
    #define CONFIG_SYS_INIT_SP_ADDR     (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE)

    然后进行编译:

    host@debian:~/soft/mini2440/u-boot-2011.03$ make mini2440_config
    host@debian:~/soft/mini2440/u-boot-2011.03$ make 

    得到下面的输出:

    ............................
    /home/host/soft/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-ld: warning: creating a DT_TEXTREL in object.
    arm-linux-objcopy -O srec u-boot u-boot.srec
    arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin

    移植(二)在RAM中执行:

    host@debian:~/soft/mini2440/u-boot-2011.03$ vim include/configs/mini2440.h 
    删除两行内容:
    #define CONFIG_S3C2410  1   /* specifically a SAMSUNG S3C2410 SoC   */
    #define CONFIG_SMDK2410 1   /* on a SAMSUNG SMDK2410 Board  */
    添加三行代码:
    #define CONFIG_S3C2440  1   /* specifically a SAMSUNG S3C2440 SoC   */
    #define CONFIG_MINI2440 1   /* on a FriendlyArm MINI2440 Board  */
    #define CONFIG_SKIP_LOWLEVEL_INIT
    host@debian:~/soft/mini2440/u-boot-2011.03$ vim arch/arm/cpu/arm920t/start.S
    # if defined(CONFIG_S3C2440)
    # define LOCKTIME 0x4C000000
    # define MPLLCON 0x4C000004
    # define UPLLCON 0x4C000008

     

    # define CLKDIV_VAL 5
    # define M_MDIV 0x7f /* XTal=12.0MHz MPLL=405MHz */
    # define M_PDIV 2
    # define M_SDIV 1
    # define U_MDIV 0x38 /* XTal=12.0MHz UPLL=48MHz */
    # define U_PDIV 2
    # define U_SDIV 2

     

        ldr r1, =0x7fff
        ldr r0, =INTSUBMSK
        str r1, [r0]

     

        ldr r0,=LOCKTIME /* config U_LTIME and M_LTIME */
        ldr r1,=0x0fff0fff
        str r1,[r0]

     

        ldr r0, =CLKDIVN /* Fclk:Hclk:Pclk = 1:4:8 */
        ldr r1, =CLKDIV_VAL
        str r1, [r0]

     

        mrc p15, 0, r0, c1, c0, 0 /* asynchronous bus mode */
        orr r0, r0, #0xc0000000
        mcr p15, 0, r0, c1, c0, 0

     

        ldr r0,=UPLLCON /* config UPLL */
        ldr r1,=((U_MDIV<<12) + (U_PDIV<<4) + U_SDIV)
        str r1,[r0]
        nop /* to ensure finishing the operation, wait 7 clocks */
        nop
        nop
        nop
        nop
        nop
        nop

        ldr r0,=MPLLCON /* config MPLL */
        ldr r1,=((M_MDIV<<12) + (M_PDIV<<4) + M_SDIV)
        str r1,[r0]
    #else
        /* FCLK:HCLK:PCLK = 1:2:4 */
        /* default FCLK is 120 MHz ! */
        ldr r0, =CLKDIVN
        mov r1, #3
        str r1, [r0]
    #endif /* CONFIG_S3C2440 */

    开发板文件修改:

    host@debian:~/soft/mini2440/u-boot-2011.03$ vim board/friendlyarm/mini2440/mini2440.c 

    #define FCLK_SPEED 2


    #elif FCLK_SPEED==1 /* Fout = 202.8MHz */
    #define M_MDIV 0xA1
    #define M_PDIV 0x3
    #define M_SDIV 0x1
    #elif FCLK_SPEED==2 /* Fout = 405MHz */
    #define M_MDIV 0x7F
    #define M_PDIV 0x2
    #define M_SDIV 0x1

    #endif

    #define USB_CLOCK 2


    #elif USB_CLOCK==1
    #define U_M_MDIV 0x48
    #define U_M_PDIV 0x3
    #define U_M_SDIV 0x2
    #elif USB_CLOCK==2 /* Fout = 48MHz */
    #define U_M_MDIV 0x38
    #define U_M_PDIV 0x2
    #define U_M_SDIV 0x2

    #endif

    int board_init (void)
    {
         ......
         gd->bd->bi_arch_number = MACH_TYPE_MINI2440;

         ......
    }

    int dram_init (void)
    {
         ......
         gd->ram_size = PHYS_SDRAM_1_SIZE; 

         return 0;
    }

    然后执行编译:

    make

    然后根据《openocd+jlink为mini2440调试u-boot》配置好openocd,然后在一个控制台下执行下面命令:

    sudo openocd -f interface/jlink.cfg  -f board/mini2440.cfg

    同时打开一个控制台,查看串口信息:

    sudo minicom

    在另一个控制台下执行下面的命令:

    telnet localhost 4444
    halt
    init_2440
    load_image /home/host/soft/mini2440/u-boot-2011.03/u-boot.bin 0x33f80000 bin 
    resume 0x33f80000

    其中/home/host/soft/mini2440/u-boot-2011.03/u-boot.bin是我的uboot存放路径,根据自己的需要配置成自己电脑上的路径即可。

    这时候在串口下会显示下面的信息:

    U-Boot 2011.03-00000-g9224c05-dirty (Jun 03 2014 - 16:36:50)
    
    DRAM:  64 MiB
    Flash: 512 KiB
    *** Warning - bad CRC, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   CS8900-0
    MINI2440 #  

    移植(三)添加对dm9000的支持:

    删除下面代码:

     #define CONFIG_CS8900       /* we have a CS8900 on-board */
     #define CONFIG_CS8900_BASE  0x19000300
     #define CONFIG_CS8900_BUS16 /* the Linux driver does accesses as shorts */
     #define CONFIG_NETMASK          255.255.255.0
     #define CONFIG_IPADDR       10.0.0.110
     #define CONFIG_SERVERIP     10.0.0.1

    添加新代码:

     #define CONFIG_CMD_NET
     #define CONFIG_DRIVER_DM9000 1
     #define CONFIG_DM9000_NO_SROM 1
     #define CONFIG_DM9000_BASE 0x20000300
     #define DM9000_IO CONFIG_DM9000_BASE
     #define DM9000_DATA (CONFIG_DM9000_BASE + 4)
     #define CONFIG_CMD_PING
     #define CONFIG_ETHADDR 08:00:3e:26:0a:5b
     #define CONFIG_NETMASK 255.255.255.0
     #define CONFIG_IPADDR 192.168.211.25
     #define CONFIG_SERVERIP 192.168.211.2

    host@debian:~/soft/mini2440/u-boot-2011.03$ vim board/friendlyarm/mini2440/mini2440.c

    在board_eth_init函数中返回语句前添加代码:
    #ifdef CONFIG_DRIVER_DM9000
        rc = dm9000_initialize(bis);
    #endif

    host@debian:~/soft/mini2440/u-boot-2011.03$ vim arch/arm/lib/eabi_compat.c

    修改如下代码:
     int raise (int signum)
     {
     #ifdef CONFIG_MINI2440
         printf("raise: Signal # %d caught ", signum);
     #endif
         return 0;
     }
    此时再次进行编译,然后按照上面步骤烧写到mini2440,控制台可以得到如下信息:

    U-Boot 2011.03-00000-g5ad0f7d-dirty (Jun 03 2014 - 17:09:47)
    
    DRAM:  64 MiB
    Flash: 512 KiB
    *** Warning - bad CRC, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   dm9000
    MINI2440 # ping 192.168.211.2
    dm9000 i/o: 0x20000300, id: 0x90000a46 
    DM9000: running in 16 bit mode
    MAC: 08:00:3e:26:0a:5b
    could not establish link
    Using dm9000 device

    然后就冻结在这个地方 。

    修改drivers/net/dm9000.c
    #ifndef CONFIG_MINI2440
         i = 0;
         while (!(phy_read(1) & 0x20)) { /* autonegation complete bit */
             udelay(1000);
             i++;
             if (i == 10000) {
                 printf("could not establish link ");
                 return 0;
             }
         }
    #endif

     static void dm9000_halt(struct eth_device *netdev)
    {
        DM9000_DBG("%s ", __func__);

    #ifndef CONFIG_MINI2440
        /* RESET devie */
        phy_write(0, 0x8000);   /* PHY RESET */
        DM9000_iow(DM9000_GPR, 0x01);   /* Power-Down PHY */
        DM9000_iow(DM9000_IMR, 0x80);   /* Disable all interrupt */
        DM9000_iow(DM9000_RCR, 0x00);   /* Disable RX */
    #endif
    }

    然后按照上面步骤重新编译并将生成u-boot加载到mini2440的内存启动,执行ping 192.168.211.2。

    但是第一次执行ping仍然是停留很久,我就把命令取消掉(ctrl+c),然后重新执行ping 192.168.211.2,这次得到下面信息:

    MINI2440 # ping 192.168.211.2                                                                                                                   
    dm9000 i/o: 0x20000300, id: 0x90000a46                                                                                                          
    DM9000: running in 16 bit mode                                                                                                                  
    MAC: 08:00:3e:26:0a:5b                                                                                                                          
    operating at unknown: 0 mode                                                                                                                    
    Using dm9000 device                                                                                                                             
    host 192.168.211.2 is alive 

    好像很多人也遇到过类似bug,等到后面再来解决这个问题。

    移植(四)添加对内核启动的支持:

    host@debian:~/soft/mini2440/u-boot-2011.03$ vim include/configs/mini2440.h 
    添加四行代码:
    #define CONFIG_SETUP_MEMORY_TAGS 1
    #define CONFIG_INITRD_TAG 1
    #define CONFIG_CMDLINE_TAG 1
    #define CONFIG_BOOTARGS "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0"

    重新编译uboot,并按照上面的步骤加载到mini2440内存并启动。

    将mini2440光盘内核源代码编译成uImage(make ARCH=arm uImage),并拷贝到tftp文件夹(tftp配置可以参考我的博文《debian7配置》):

    host@debian:~/soft/mini2440/linux-2.6.32.2$ make ARCH=arm uImage
    host@debian:~/soft/mini2440/linux-2.6.32.2$ cp arch/arm/boot/uImage  ~/nfs/tftp/
    host@debian:~/soft/mini2440/linux-2.6.32.2$ sudo /etc/init.d/tftpd-hpa  restart

    然后在uboot下执行命令:

    MINI2440 # tftp 30008000 uImage                                                                                                                 
    dm9000 i/o: 0x20000300, id: 0x90000a46                                                                                                          
    DM9000: running in 16 bit mode                                                                                                                  
    MAC: 08:00:3e:26:0a:5b                                                                                                                          
    operating at unknown: 0 mode                                                                                                                    
    Using dm9000 device                                                                                                                             
    TFTP from server 192.168.211.2; our IP address is 192.168.211.25                                                                                
    Filename 'uImage'.                                                                                                                              
    Load address: 0x30008000                                                                                                                        
    Loading: #################################################################                                                                      
             #################################################################                                                                      
             #########################                                                                                                              
    done                                                                                                                                            
    Bytes transferred = 2266620 (2295fc hex)                                                                                                        
    MINI2440 # bootm                                                                                                                                
    ## Booting kernel from Legacy Image at 30008000 ...                                                                                             
       Image Name:   Linux-2.6.32.2-FriendlyARM                                                                                                     
       Created:      2014-06-04   0:49:52 UTC                                                                                                       
       Image Type:   ARM Linux Kernel Image (uncompressed)                                                                                          
       Data Size:    2266556 Bytes = 2.2 MiB                                                                                                        
       Load Address: 30008000                                                                                                                       
       Entry Point:  30008000                                                                                                                       
       Verifying Checksum ... OK                                                                                                                    
       XIP Kernel Image ... OK                                                                                                                      
    OK                                                                                                                                              
                                                                                                                                                    
    Starting kernel ...   

    可惜,执行到"Starting kernel"程序就不再继续向下执行。

    之后,我参考了文章 《Linux 内核 Starting kernel ... 串口无输出问题归纳总结》,逐步进行排查,但仍然到"Starting kernel"就停下来了。

     然后我参考了文章《Starting kernel ... 内核启动停止问题》,知道了由于uImage在zImage前加载了0x40个字节的文件头,所以实际用tftp加载的地址应该是0x30007fc0,然后再用bootm启动就可以了。

    uboot输出信息如下:

    U-Boot 2011.03-00000-g51ea5ad-dirty (Jun 04 2014 - 09:16:06)
    
    DRAM:  64 MiB
    Flash: 512 KiB
    *** Warning - bad CRC, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    Net:   dm9000
    MINI2440 # tftp 30007fc0 uImage
    dm9000 i/o: 0x20000300, id: 0x90000a46 
    DM9000: running in 16 bit mode
    MAC: 08:00:3e:26:0a:5b
    operating at unknown: 0 mode
    Using dm9000 device
    TFTP from server 192.168.211.2; our IP address is 192.168.211.25
    Filename 'uImage'.
    Load address: 0x30007fc0
    Loading: #################################################################
             #################################################################
             #########################
    done
    Bytes transferred = 2273988 (22b2c4 hex)
    MINI2440 # bootm
    ## Booting kernel from Legacy Image at 30007fc0 ...
       Image Name:   Linux-2.6.32.2-FriendlyARM
       Created:      2014-06-04   1:21:48 UTC
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    2273924 Bytes = 2.2 MiB
       Load Address: 30008000
       Entry Point:  30008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK
    
    Starting kernel ...
    
    Uncompressing Linux................................................................................................................................................... .
    Linux version 2.6.32.2-FriendlyARM (host@debian) (gcc version 4.4.3 (ctng-1.6.1) ) #2 Wed Jun 4 09:21:45 CST 2014
    CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
    CPU: VIVT data cache, VIVT instruction cache
    Machine: FriendlyARM Mini2440 development board
    Memory policy: ECC disabled, Data cache writeback
    CPU S3C2440A (id 0x32440001)
    S3C24XX Clocks, (c) 2004 Simtec Electronics
    S3C244X: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz
    CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
    Kernel command line: noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
    PID hash table entries: 256 (order: -2, 1024 bytes)
    Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
    Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
    Memory: 64MB = 64MB total
    Memory: 60072KB available (4188K code, 452K data, 156K init, 0K highmem)
    SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    Hierarchical RCU implementation.
    NR_IRQS:85
    irq: clearing subpending status 00000003
    irq: clearing subpending status 00000002
    Console: colour dummy device 80x30
    console [ttySAC0] enabled
    Calibrating delay loop... 201.93 BogoMIPS (lpj=504832)
    Mount-cache hash table entries: 512
    CPU: Testing write buffer coherency: ok
    NET: Registered protocol family 16
    S3C2440: Initialising architecture
    S3C2440: IRQ Support
    S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
    DMA channel 0 at c4808000, irq 33
    DMA channel 1 at c4808040, irq 34
    DMA channel 2 at c4808080, irq 35
    DMA channel 3 at c48080c0, irq 36
    S3C244X: Clock Support, DVS off
    bio: create slab <bio-0> at 0
    SCSI subsystem initialized
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    s3c-i2c s3c2440-i2c: slave address 0x10
    s3c-i2c s3c2440-i2c: bus frequency set to 98 KHz
    s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
    NET: Registered protocol family 2
    IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
    TCP established hash table entries: 2048 (order: 2, 16384 bytes)
    TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    TCP: Hash tables configured (established 2048 bind 2048)
    TCP reno registered
    NET: Registered protocol family 1
    RPC: Registered udp transport module.
    RPC: Registered tcp transport module.
    RPC: Registered tcp NFSv4.1 backchannel transport module.
    NetWinder Floating Point Emulator V0.97 (double precision)
    yaffs Jun  4 2014 09:16:49 Installing. 
    msgmni has been set to 117
    alg: No test for stdrng (krng)
    io scheduler noop registered (default)
    Console: switching to colour frame buffer device 30x20
    fb0: s3c2410fb frame buffer device
    backlight       initialized
    leds    initialized
    buttons initialized
    pwm     initialized
    adc     initialized
    s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
    s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
    s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
    loop: module loaded
    S3C24XX NAND Driver, (c) 2004 Simtec Electronics
    s3c24xx-nand s3c2440-nand: Tacls=3, 29ns Twrph0=7 69ns, Twrph1=3 29ns
    s3c24xx-nand s3c2440-nand: NAND soft ECC
    NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-bit)
    Scanning device for bad blocks
    Bad eraseblock 177 at 0x000001620000
    Bad eraseblock 823 at 0x0000066e0000
    Creating 5 MTD partitions on "NAND 128MiB 3,3V 8-bit":
    0x000000000000-0x000000040000 : "supervivi"
    0x000000040000-0x000000060000 : "param"
    0x000000060000-0x000000560000 : "Kernel"
    0x000000560000-0x000040560000 : "root"
    mtd: partition "root" extends beyond the end of device "NAND 128MiB 3,3V 8-bit" -- size truncated to 0x7aa0000
    0x000000000000-0x000040000000 : "nand"
    mtd: partition "nand" extends beyond the end of device "NAND 128MiB 3,3V 8-bit" -- size truncated to 0x8000000
    dm9000 Ethernet Driver, V1.31
    eth0: dm9000e at c4814300,c4818304 IRQ 51 MAC: 08:90:90:90:90:90 (chip)
    ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
    s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
    s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
    s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
    usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
    usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    usb usb1: Product: S3C24XX OHCI
    usb usb1: Manufacturer: Linux 2.6.32.2-FriendlyARM ohci_hcd
    usb usb1: SerialNumber: s3c24xx
    usb usb1: configuration #1 chosen from 1 choice
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 2 ports detected
    Initializing USB Mass Storage driver...
    usbcore: registered new interface driver usb-storage
    USB Mass Storage support registered.
    usbcore: registered new interface driver ums-alauda
    usbcore: registered new interface driver ums-cypress
    usbcore: registered new interface driver ums-datafab
    usbcore: registered new interface driver ums-freecom
    usbcore: registered new interface driver ums-isd200
    usbcore: registered new interface driver ums-jumpshot
    usbcore: registered new interface driver ums-karma
    usbcore: registered new interface driver ums-onetouch
    usbcore: registered new interface driver ums-sddr09
    usbcore: registered new interface driver ums-sddr55
    usbcore: registered new interface driver ums-usbat
    usbcore: registered new interface driver usbserial
    USB Serial support registered for generic
    usbcore: registered new interface driver usbserial_generic
    usbserial: USB Serial Driver core
    USB Serial support registered for aircable
    usbcore: registered new interface driver aircable
    USB Serial support registered for ark3116
    usbcore: registered new interface driver ark3116
    USB Serial support registered for Belkin / Peracom / GoHubs USB Serial Adapter
    usbcore: registered new interface driver belkin
    belkin_sa: v1.2:USB Belkin Serial converter driver
    USB Serial support registered for ch341-uart
    usbcore: registered new interface driver ch341
    USB Serial support registered for cp210x
    usbcore: registered new interface driver cp210x
    cp210x: v0.09:Silicon Labs CP210x RS232 serial adaptor driver
    USB Serial support registered for Reiner SCT Cyberjack USB card reader
    usbcore: registered new interface driver cyberjack
    cyberjack: v1.01 Matthias Bruestle
    cyberjack: REINER SCT cyberJack pinpad/e-com USB Chipcard Reader Driver
    USB Serial support registered for DeLorme Earthmate USB
    USB Serial support registered for HID->COM RS232 Adapter
    USB Serial support registered for Nokia CA-42 V2 Adapter
    usbcore: registered new interface driver cypress
    cypress_m8: v1.09:Cypress USB to Serial Driver
    USB Serial support registered for Digi 2 port USB adapter
    USB Serial support registered for Digi 4 port USB adapter
    usbcore: registered new interface driver digi_acceleport
    digi_acceleport: v1.80.1.2:Digi AccelePort USB-2/USB-4 Serial Converter driver
    USB Serial support registered for Edgeport 2 port adapter
    USB Serial support registered for Edgeport 4 port adapter
    USB Serial support registered for Edgeport 8 port adapter
    USB Serial support registered for EPiC device
    usbcore: registered new interface driver io_edgeport
    io_edgeport: v2.7:Edgeport USB Serial Driver
    USB Serial support registered for Edgeport TI 1 port adapter
    USB Serial support registered for Edgeport TI 2 port adapter
    usbcore: registered new interface driver io_ti
    io_ti: v0.7mode043006:Edgeport USB Serial Driver
    USB Serial support registered for empeg
    usbcore: registered new interface driver empeg
    empeg: v1.2:USB Empeg Mark I/II Driver
    USB Serial support registered for FTDI USB Serial Device
    usbcore: registered new interface driver ftdi_sio
    ftdi_sio: v1.5.0:USB FTDI Serial Converters Driver
    USB Serial support registered for funsoft
    usbcore: registered new interface driver funsoft
    USB Serial support registered for Garmin GPS usb/tty
    usbcore: registered new interface driver garmin_gps
    garmin_gps: v0.33:garmin gps driver
    USB Serial support registered for hp4X
    usbcore: registered new interface driver hp4X
    hp4x: v1.00:HP4x (48/49) Generic Serial driver
    USB Serial support registered for PocketPC PDA
    usbcore: registered new interface driver ipaq
    ipaq: v0.5:USB PocketPC PDA driver
    USB Serial support registered for IPWireless converter
    usbcore: registered new interface driver ipwtty
    ipw: v0.3:IPWireless tty driver
    USB Serial support registered for IR Dongle
    usbcore: registered new interface driver ir-usb
    ir_usb: v0.4:USB IR Dongle driver
    USB Serial support registered for iuu_phoenix
    usbcore: registered new interface driver iuu_phoenix
    iuu_phoenix: v0.11:Infinity USB Unlimited Phoenix driver
    USB Serial support registered for Keyspan - (without firmware)
    USB Serial support registered for Keyspan 1 port adapter
    USB Serial support registered for Keyspan 2 port adapter
    USB Serial support registered for Keyspan 4 port adapter
    usbcore: registered new interface driver keyspan
    keyspan: v1.1.5:Keyspan USB to Serial Converter Driver
    USB Serial support registered for Keyspan PDA
    USB Serial support registered for Keyspan PDA - (prerenumeration)
    USB Serial support registered for Xircom / Entregra PGS - (prerenumeration)
    usbcore: registered new interface driver keyspan_pda
    keyspan_pda: v1.1:USB Keyspan PDA Converter driver
    USB Serial support registered for KL5KUSB105D / PalmConnect
    usbcore: registered new interface driver kl5kusb105d
    kl5kusb105: v0.3a:KLSI KL5KUSB105 chipset USB->Serial Converter driver
    USB Serial support registered for KOBIL USB smart card terminal
    usbcore: registered new interface driver kobil
    kobil_sct: 21/05/2004:KOBIL USB Smart Card Terminal Driver (experimental)
    USB Serial support registered for MCT U232
    usbcore: registered new interface driver mct_u232
    mct_u232: z2.1:Magic Control Technology USB-RS232 converter driver
    USB Serial support registered for Moschip 2 port adapter
    mos7720: 1.0.0.4F:Moschip USB Serial Driver
    usbcore: registered new interface driver moschip7720
    USB Serial support registered for Moschip 7840/7820 USB Serial Driver
    mos7840: 1.3.2:Moschip 7840/7820 USB Serial Driver
    usbcore: registered new interface driver mos7840
    USB Serial support registered for moto-modem
    usbcore: registered new interface driver moto-modem
    USB Serial support registered for navman
    usbcore: registered new interface driver navman
    USB Serial support registered for ZyXEL - omni.net lcd plus usb
    usbcore: registered new interface driver omninet
    omninet: v1.1:USB ZyXEL omni.net LCD PLUS Driver
    USB Serial support registered for opticon
    usbcore: registered new interface driver opticon
    USB Serial support registered for GSM modem (1-port)
    usbcore: registered new interface driver option
    option: v0.7.2:USB Driver for GSM modems
    USB Serial support registered for oti6858
    usbcore: registered new interface driver oti6858
    USB Serial support registered for pl2303
    usbcore: registered new interface driver pl2303
    pl2303: Prolific PL2303 USB to serial adaptor driver
    USB Serial support registered for Qualcomm USB modem
    usbcore: registered new interface driver qcserial
    safe_serial: v0.0b:USB Safe Encapsulated Serial
    USB Serial support registered for safe_serial
    usbcore: registered new interface driver safe_serial
    USB Serial support registered for siemens_mpi
    usbcore: registered new interface driver siemens_mpi
    Driver for Siemens USB/MPI adapter
    Version 0.1 09/26/2005 Thomas Hergenhahn@web.de http://libnodave.sf.net
    USB Serial support registered for Sierra USB modem
    usbcore: registered new interface driver sierra
    sierra: v.1.3.8:USB Driver for Sierra Wireless USB modems
    USB Serial support registered for SPCP8x5
    usbcore: registered new interface driver spcp8x5
    spcp8x5: v0.04:SPCP8x5 USB to serial adaptor driver
    USB Serial support registered for symbol
    usbcore: registered new interface driver symbol
    USB Serial support registered for TI USB 3410 1 port adapter
    USB Serial support registered for TI USB 5052 2 port adapter
    usbcore: registered new interface driver ti_usb_3410_5052
    ti_usb_3410_5052: v0.9:TI USB 3410/5052 Serial Driver
    USB Serial support registered for Handspring Visor / Palm OS
    USB Serial support registered for Sony Clie 3.5
    USB Serial support registered for Sony Clie 5.0
    usbcore: registered new interface driver visor
    visor: USB HandSpring Visor / Palm OS driver
    USB Serial support registered for Connect Tech - WhiteHEAT - (prerenumeration)
    USB Serial support registered for Connect Tech - WhiteHEAT
    usbcore: registered new interface driver whiteheat
    whiteheat: v2.0:USB ConnectTech WhiteHEAT driver
    mice: PS/2 mouse device common for all mice
    s3c2410 TouchScreen successfully loaded
    input: s3c2410 TouchScreen as /devices/virtual/input/input0
    S3C24XX RTC, (c) 2004,2006 Simtec Electronics
    s3c2410-rtc s3c2410-rtc: rtc disabled, re-enabling
    s3c2410-rtc s3c2410-rtc: rtc core: registered s3c as rtc0
    i2c /dev entries driver
    Linux video capture interface: v2.00
    gspca: main v2.7.0 registered
    usbcore: registered new interface driver conex
    conex: registered
    usbcore: registered new interface driver etoms
    etoms: registered
    usbcore: registered new interface driver finepix
    finepix: registered
    usbcore: registered new interface driver jeilinj
    jeilinj: registered
    usbcore: registered new interface driver mars
    mars: registered
    usbcore: registered new interface driver mr97310a
    mr97310a: registered
    usbcore: registered new interface driver ov519
    ov519: registered
    usbcore: registered new interface driver ov534
    ov534: registered
    usbcore: registered new interface driver pac207
    pac207: registered
    usbcore: registered new interface driver pac7311
    pac7311: registered
    usbcore: registered new interface driver sn9c20x
    sn9c20x: registered
    usbcore: registered new interface driver sonixb
    sonixb: registered
    usbcore: registered new interface driver sonixj
    sonixj: registered
    usbcore: registered new interface driver spca500
    spca500: registered
    usbcore: registered new interface driver spca501
    spca501: registered
    usbcore: registered new interface driver spca505
    spca505: registered
    usbcore: registered new interface driver spca506
    spca506: registered
    usbcore: registered new interface driver spca508
    spca508: registered
    usbcore: registered new interface driver spca561
    spca561: registered
    usbcore: registered new interface driver sq905
    sq905: registered
    usbcore: registered new interface driver sq905c
    sq905c: registered
    usbcore: registered new interface driver sunplus
    sunplus: registered
    usbcore: registered new interface driver stk014
    stk014: registered
    usbcore: registered new interface driver t613
    t613: registered
    usbcore: registered new interface driver tv8532
    tv8532: registered
    usbcore: registered new interface driver vc032x
    vc032x: registered
    usbcore: registered new interface driver zc3xx
    zc3xx: registered
    usbcore: registered new interface driver ALi m5602
    ALi m5602: registered
    usbcore: registered new interface driver STV06xx
    STV06xx: registered
    gspca_gl860: driver startup - version 0.9d10
    usbcore: registered new interface driver gspca_gl860
    gspca_gl860: driver registered
    usbcore: registered new interface driver uvcvideo
    USB Video Class driver (v0.1.0)
    initializing s3c2440 camera interface......
    s3c2440 camif init done
    Loading OV9650 driver.........
    SCCB address 0x60, manufacture ID 0xFFFF, expect 0x7FA2
    SCCB address 0x60, manufacture ID 0xFFFF, expect 0x7FA2
    No OV9650 found!!!
    S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
    s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
    s3c-sdi s3c2440-sdi: powered down.
    s3c-sdi s3c2440-sdi: mmc0 - using pio, sw SDIO IRQ
    usbcore: registered new interface driver usbhid
    usbhid: v2.6:USB HID core driver
    Advanced Linux Sound Architecture Driver Version 1.0.21.
    No device for DAI UDA134X
    No device for DAI s3c24xx-i2s
    S3C24XX_UDA134X SoC Audio driver
    UDA134X SoC Audio Codec
    asoc: UDA134X <-> s3c24xx-i2s mapping ok
    ALSA device list:
      #0: S3C24XX_UDA134X (UDA134X)
    TCP cubic registered
    NET: Registered protocol family 17
    s3c2410-rtc s3c2410-rtc: setting system clock to 2132-04-03 12:01:14 UTC (825312778)
    yaffs: dev is 32505859 name is "mtdblock3"
    yaffs: passed flags ""
    yaffs: Attempting MTD mount on 31.3, "mtdblock3"
    yaffs: auto selecting yaffs2
    block 135 is bad
    block 781 is bad
    yaffs_read_super: isCheckpointed 0
    VFS: Mounted root (yaffs filesystem) on device 31:3.
    Freeing init memory: 156K
    Warning: unable to open an initial console.
    Failed to execute /linuxrc.  Attempting defaults...
    Kernel panic - not syncing: No init found.  Try passing init= option to kernel.
    Backtrace: 
    [<c00341d0>] (dump_backtrace+0x0/0x10c) from [<c032bb98>] (dump_stack+0x18/0x1c)
     r7:00000000 r6:00000000 r5:c001f5a4 r4:c0483e30
    [<c032bb80>] (dump_stack+0x0/0x1c) from [<c032bbe8>] (panic+0x4c/0x11c)
    [<c032bb9c>] (panic+0x0/0x11c) from [<c002f598>] (init_post+0xa8/0x10c)
     r3:00000000 r2:c38fe000 r1:c38fe100 r0:c03dd7dc
    [<c002f4f0>] (init_post+0x0/0x10c) from [<c0008634>] (kernel_init+0xe4/0x114)
     r5:c001f5a4 r4:c04835c0
    [<c0008550>] (kernel_init+0x0/0x114) from [<c004d914>] (do_exit+0x0/0x620)
     r5:00000000 r4:00000000

    信息最后内核挂掉是因为我在之前将nand flash全部擦除,所以nand flash中没有任何文件系统,也不存在/linuxrc文件,从而导致系统崩溃。

    现在我关心的是uboot,所以这个问题暂时不管它,不过可以考虑在uboot中添加nfs命令后用nfs启动跟文件系统。

  • 相关阅读:
    【BZOJ4915】简单的数字题(数学)
    【BZOJ2140】稳定婚姻(匈牙利算法板子题)
    【BZOJ2739】最远点(决策单调性)
    【AT3526】[ARC082C] ConvexScore(贡献转化+容斥)
    【CF1264D2】Beautiful Bracket Sequence(组合数学)
    【洛谷2561】[AHOI2002] 黑白瓷砖(Polya定理)
    【洛谷3511】[POI2010] MOS-Bridges(混合图欧拉回路)
    【洛谷4226】避难所(构造)
    【洛谷7453】[THUSCH2017] 大魔法师(线段树+矩乘)
    【洛谷3207】[HNOI2010] 物品调度(置换问题)
  • 原文地址:https://www.cnblogs.com/qiaoqiao2003/p/3765917.html
Copyright © 2020-2023  润新知