本文接上一篇:http://www.cnblogs.com/tanghuimin0713/p/3965528.html

6.3)重新编译,烧写,运行

U-Boot 2010.03 (Sep   - ::) for SMDK6410

CPU:     S3C6410@533MHz
Fclk = 533MHz, Hclk = 133MHz, Pclk = 66MHz (ASYNC Mode)
Board: SMDK6410
DRAM: MB
Flash: kB
NAND: MiB
*** Warning - bad CRC, using default environment In: serial
Out: serial
Err: serial
Net: dm9000
Hit any key to stop autoboot:

网卡信息显示正确。

6.4)测试网卡功能

将上位机与开发板用网线相连,上位机IP设为192.168.1.88,将iptables服务关掉。

开发板ping上位机

SMDK6410 # ping 192.168.1.88
dm9000 i/o: 0x18000300, id: 0x90000a46
DM9000: running in bit mode
MAC: :::::
operating at 100M full duplex mode
Using dm9000 device
host 192.168.1.88 is alive
SMDK6410 #

ok,可以ping通。

再来测试一下tftp功能

SMDK6410 # tftp 0x50000000 led.bin
dm9000 i/o: 0x18000300, id: 0x90000a46
DM9000: running in bit mode
MAC: :::::
operating at 100M full duplex mode
Using dm9000 device
TFTP from server 192.168.1.88; our IP address is 192.168.1.230
Filename 'led.bin'.
Load address: 0x50000000
Loading: T #
done
Bytes transferred = (ec hex)
SMDK6410 #

tftp可以正常使用。

7.引导linux镜像

用bootm命令启动一个内核镜像时,需要用工具mkimage给内核镜像文件打个头部。

[root@tanghuimin u-boot-2010.03]# cp /opt/FriendlyARM/images/Linux/zImage_n43 tools/
[root@tanghuimin u-boot-2010.03]# cd tools/
[root@tanghuimin tools]# ./mkimage -n "linux-2.6.38" -A arm -O linux -T kernel -C none -a 0x50008000 -e 0x50008040 -d zImage_n43 uImage.img
Image Name: linux-2.6.
Created: Wed Sep ::
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: Bytes = 3674.99 kB = 3.59 MB
Load Address:
Entry Point:
[root@tanghuimin tools]#

zImage_n43为现成的内核镜像文件,uImage.img为打了特定头部的内核镜像文件。

把内核镜像下载到sdram的地址0x50008000处,并用bootm命令启动内核。

SMDK6410 # tftp 0x50008000 uImage.img
dm9000 i/o: 0x18000300, id: 0x90000a46
DM9000: running in bit mode
MAC: :::::
operating at 100M full duplex mode
Using dm9000 device
TFTP from server 192.168.1.88; our IP address is 192.168.1.230
Filename 'uImage.img'.
Load address: 0x50008000
Loading: #################################################################
#################################################################
#################################################################
##############################################################
done
Bytes transferred = (396c38 hex)
SMDK6410 #
SMDK6410 # bootm 0x50008000
## Booting kernel from Legacy Image at ...
Image Name: linux-2.6.
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: Bytes = 3.6 MB
Load Address:
Entry Point:
Verifying Checksum ... OK
XIP Kernel Image ... OK
OK Starting kernel ... Uncompressing Linux... done, booting the kernel.
Initializing cgroup subsys cpu
Linux version 2.6.-FriendlyARM (root@jensen) (gcc version 4.5. (ctng-1.8.-FA) ) # PREEMPT Fri Mar :: HKT
CPU: ARMv6-compatible processor [410fb766] revision (ARMv7), cr=00c5387f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: MINI6410
Memory policy: ECC disabled, Data cache writeback
...
...
...

成功。

8)u-boot调试

8.1)在串口初始化程序执行之后,可用“printf”打印调试信息;

8.2)在串口初始化程序执行之前,我们无法通过printf来打印调试信息,当启动u-boot,串口没有任何输出时,怎样判断程序到底走到哪一步了呢?如下是亮灯的程序,根据需要在汇编代码中插入如下程序段,如果程序走到了这一步,则四盏led灯亮起,否则不亮。

#if 1
ldr r0, =0x70000000
orr r0, r0, #0x13
mcr p15,,r0,c15,c2, ldr r1, =0x7f008800
ldr r0, =0x11110000
str r0, [r1] ldr r1, =0x7f008808
mov r0, #
str r0, [r1]
#endif

s3c6410_u-boot-2010.03移植【续】的更多相关文章

  1. s3c6410_u-boot-2010.03移植

    开发环境: 开发板 FriendlyARM Tiny6410 主机 CentOS release 6.4 (Final) 参考: http://www.cnblogs.com/plinx/archiv ...

  2. http://www.cnblogs.com/wzh206/archive/2010/03/21/1691112.html

    http://www.cnblogs.com/wzh206/archive/2010/03/21/1691112.html

  3. http://www.binghe.org/2010/03/use-httpsurlconnection-in-java/

    http://www.binghe.org/2010/03/use-httpsurlconnection-in-java/

  4. linux 03 命令 续

    linux 03 命令 续 一.vim 两种操作方式:新文件 pyvip@Vip:~/demo/2_3$ vim demo.txt #操作一个新文件 一开始进入的是命令模式,按i进入插入模式,开始编辑 ...

  5. Davinci DM6446开发攻略-UBOOT-2009.03移植2 nand flash的烧写

      很长一段时间没有更新博客了,是因为要推出新开发方案和做好客户服务工作,忙得不易乐乎.有关DAVINCI U-BOOT的移植,以前写过一篇u-boot-1.3.4(2008年的),其实和这个u-bo ...

  6. DM6446开发攻略:UBOOT-2009.03移植及nand flash烧写

    有关DAVINCI U-BOOT的移植,以前写过一篇u-boot-1.3.4(2008年的),其实和这个u-boot-2009.03差别不大,只不过这个u-boot-2009.03是从TI的网站上下载 ...

  7. 一起学JAVA之《spring boot》03 - 开始spring boot基本配置及项目结构(转)

    <div class="markdown_views"> <h3 id="一导航"><a name="t0"& ...

  8. hdu 3342 Legal or Not(拓扑排序) HDOJ Monthly Contest – 2010.03.06

    一道极其水的拓扑排序……但是我还是要把它发出来,原因很简单,连错12次…… 题意也很裸,前面的废话不用看,直接看输入 输入n, m表示从0到n-1共n个人,有m组关系 截下来m组,每组输入a, b表示 ...

  9. Java时间日期格式转换 转自:http://www.cnblogs.com/edwardlauxh/archive/2010/03/21/1918615.html

    Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @ ...

随机推荐

  1. 区分DPI、分辨率(PPI)、图像的物理大小、像素宽度

    分辨率都知道,越高越清晰. 一.描述分辨率的单位有:    dpi(点每英寸).lpi(线每英寸)和ppi(像素每英寸).但只有lpi是描述光学分辨率的尺度的.虽然dpi和ppi也属于分辨率范畴内的单 ...

  2. sql如何获取一个时间段内的月份

    ),) from master..spt_values where type='P' and dateadd(month,number,'2010-01-01')<='2010-09-01' / ...

  3. gulp构建前端开发环境

    1.gulp环境的安装 首先确保你已经正确安装了nodejs环境.然后以全局方式安装gulp: npm install -g gulp 2.建立文件夹 mkdir item 3.初始化项目: npm ...

  4. ppm与毫克/立方米怎么换算

    ppm是溶液浓度(溶质质量分数)的一种表示方法,1升水溶液中有1毫克的溶质,g/m3或mg/L. 对于气体:,一百万体积的空气中所含污染物的体积数. 而按我国规定,特别是环保部门,则要求气体浓度以质量 ...

  5. 【Python】迭代器、生成器、yield单线程异步并发实现详解

    转自http://blog.itpub.net/29018063/viewspace-2079767 大家在学习python开发时可能经常对迭代器.生成器.yield关键字用法有所疑惑,在这篇文章将从 ...

  6. poj 2388 Who's in the Middle

    点击打开链接 Who's in the Middle Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 28324   Acce ...

  7. Windows 2008下部署Exchange Server 2007

    对于很多政府及企业来说,微软的邮件服务器Exchange Server都是一个不错的通信和协作平台选择,尤其新版邮件服务器Exchange Server 2007 和OCS的组合,在微软UC平台上创下 ...

  8. 解决:对 PInvoke 函数的调用导致堆栈不对称问题 <转载>

    问题描述: 在使用托管代码调用非托管代码时,发生“对 PInvoke 函数“UseTwiHikVisionDllTest!UseTwiHikVisionDllTest.TwiHikVision::Ge ...

  9. 剑指Offer:面试题17——合并两个排序的链表

    题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 思路1: 分别用p1,p2两个指针扫描两个有序链表,p3指针去构建新链表h3. p1.val & ...

  10. 利用Oracle VM VirtualBox部署自己的owncloud存储服务器

    最近在弄文档方面的工作,所以想找个能够自动备份且带历史版本的网盘,找了很久没找到,所以决定自己部署一个私人服务器. 找了很久.试了很久终于确定owncloud能够满足自己的要求,而且还是开源免费的. ...