主题 : 为啥我的linux没法启动呢? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 4794
精华: 0
发帖: 18
金钱: 90 两
威望: 18 点
综合积分: 36 分
注册时间: 2009-03-29
最后登录: 2017-09-13
楼主  发表于: 2011-10-05 10:07

 为啥我的linux没法启动呢?

大家好,请谁帮忙看下为啥我的linux没法启动呢,我的boot是 tek 的那个版本编译的,uboot启动没问题,但是一进入启动linux就不行了,这里贴一下我的环境变量,以及后面的启动log,哪位大侠帮忙看下吧,不胜感激。。。
----------------我的环境变量
[u-boot@MINI2440]# print
baudrate=115200
ethaddr=08:08:11:18:12:27
gatewayip=192.168.0.1
netmask=255.255.255.0
tekkaman=bmp d 70000
stdin=serial
stdout=serial
stderr=serial
ethact=dm9000
bootdelay=3
serverip=192.168.0.210
ipaddr=192.168.0.33
bootcmd=nand read 30800000 100000 300000 ; bootm 30800000
bootargs=root=/dev/mtdblock8 init=/linuxrs rootfstype=cramfs console=ttySAC0,115200 mem=64M

Environment size: 368/131068 bytes


------------------分区表为
static struct mtd_partition friendly_arm_default_nand_part[] = {
    [0] = {
        .name    = "Boot Agent",
        .size    = SZ_16K,
        .offset    = 0,
    },
    [1] = {
        .name    = "u-boot",
        .offset = 0,
        .size    = 0x60000,  //384KB size
    },
    [2] = {
        .name    = "u-boot param",
        .offset = 0x60000,
        .size    = SZ_128K,
    },
    [3] = {
        .name    = "boot-Logo",
        .offset    = SZ_512K,
        .size    = SZ_256K,
    },
    [4] = {
        .name    = "reserved partition",
        .offset = 0xb0000,
        .size    = SZ_256K,
    },
    [5] = {
        .name    = "Kernel",
        .offset    = SZ_1M,
        .size    = SZ_1M * 3,
    },
    [6] = {
        .name    = "Critical Data",
        .offset    = SZ_4M,
        .size    = SZ_2M,
    },
    [7] = {
        .name    = "Application",
        .offset = SZ_1M * 6,
        .size    = SZ_4M,
    },
    [8] = {
        .name    = "root fs",
        .offset = SZ_1M * 10,
        .size    = SZ_1M * 54,
    }        
};



-----------------log

[u-boot@MINI2440]# reset
resetting ...


U-Boot 2010.03 (Oct 01 2011 - 22:57:01)

modified by tekkamanninja (tekkamanninja@163.com)
Love Linux forever!!

I2C:   ready
DRAM:  64 MB
Flash:  2 MB
NAND:  64 MiB
Video: 240x320x16 20kHz 62Hz
In:    serial
Out:   serial
Err:   serial
USB slave is enable!
Net:   dm9000
U-Boot 2010.03 (Oct 01 2011 - 22:57:01)
modified by tekkamanninja
(tekkamanninja@163.com)
Love Linux forever!!
welcome jeyawn to enter boot!
Hit any key to stop autoboot:  0
argc: 5
flag: 0

NAND read: device 0 offset 0x100000, size 0x300000
3145728 bytes read: OK
## Booting kernel from Legacy Image at 30800000 ...
   Image Name:   jeyawn arm linux kernel
   Created:      2011-10-01  16:15:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2021616 Bytes =  1.9 MB
   Load Address: 30008000
   Entry Point:  30008040
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux.................................................................................................................................. done, booting the kernel.

这里就静止了,啥也没了
级别: 新手上路
UID: 4794
精华: 0
发帖: 18
金钱: 90 两
威望: 18 点
综合积分: 36 分
注册时间: 2009-03-29
最后登录: 2017-09-13
1楼  发表于: 2011-10-06 09:06
原来还是机器码错误,真晕,大家可以在menuconfig那里打开 kernel hacking ,会出现以下信息

Hit any key to stop autoboot:  0
[u-boot@MINI2440]# tftp -f uImage -h 192.168.0.100
pImgHead : 30008000
argv[0]: tftp
argv[1]: -f
argv[3]: -h
dm9000 i/o: 0x20000300, id: 0x90000a46
DM9000: running in 16 bit mode
MAC: 08:08:11:18:12:27
operating at 100M full duplex mode
TftpStart calledUsing dm9000 device
TFTP from server 192.168.0.100; our IP address is 192.168.0.33
Filename 'uImage'.
Load address: 0x30008000
Loading: T #################################################################
         #################################################################
         #########
done
Bytes transferred = 2028620 (1ef44c hex)
finished!!!!!!
[u-boot@MINI2440]# bootm 30008000
## Booting kernel from Legacy Image at 30008000 ...
   Image Name:   jeyawn arm linux kernel
   Created:      2011-10-02   6:16:31 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2028556 Bytes =  1.9 MB
   Load Address: 30008000
   Entry Point:  30008040
   Verifying Checksum ... OK
   XIP Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux................................................................................................................................... done, booting the kernel.

Error: unrecognized/unsupported machine ID (r1 = 0x000007cf).

Available machine support:

ID (hex)        NAME
0000030e        FriendlyARM Mini2440 development board

Please check your kernel config and/or bootloader.



改下Mach-mini2440.c里面的
MACHINE_START(MINI2440, "FriendlyARM Mini2440 development board") 即可
级别: 新手上路
UID: 51245
精华: 0
发帖: 4
金钱: 30 两
威望: 6 点
综合积分: 8 分
注册时间: 2011-06-30
最后登录: 2014-08-15
2楼  发表于: 2011-10-22 19:31
你好 请问你是如何查看你的机器码错误信息的呢