构建了好久的系统,由于工作原因,没有及时写记录,目前我已经进展到构建yaffs2文件系统,启动Linux内核了。Uboot移植基本功能已经完成。

由于Uboot移植方法大致是一样的,我主要参考这位博友的博客来移植的,很是有代表性,确实能完成一些基本功能。

参考网址如下:http://blog.chinaunix.net/uid-28382924-id-3489648.html

由于步骤基本一样,我就不再重复他的内容,只说点需要重点关心的。

1. 对于nandflash代码复制问题

这个问题也是我和我同学之前有疑问的问题,我们ok6410上的nandflash页大小为4K, 而在进行重定位复制代码时候,先复制的是以2K页大小,复制4次,即8K,这个卡了我们很久,后来去阅读arm datasheet才发现,这是S3C6410的nandflash控制器所决定的。

2. 环境变量获取问题

这个问题,同样也是很棘手,因为从网上大多数找到的答案大多是,什么nandflash有坏块导致。可我去nand scrub,问题同样存在,幸亏我看到上面的博客,终于知道原因,原来我们在启动的时候,在复制u-boot代码到ram时,需要同时将环境变量也一并复制过去,至于复制的地址这就需要你自己在6410头文件中定义了。

3. 引导内核启动地址,需要和Linux内核入口地址匹配。

在移植uboot就注意这些吧,这样,基本的功能都有了,下面是我的Uboot启动界面。

[05/03-11:18:26:352]
[05/03-11:18:26:352]
[05/03-11:18:26:353]U-Boot 2010.03-svn3 (May 01 2014 - 19:26:53) for SMDK6410
[05/03-11:18:26:353]
[05/03-11:18:26:353]*******************************************************
[05/03-11:18:26:363] Welcome to Embedded System
[05/03-11:18:26:364] Base On S3C6410 Devolopment
[05/03-11:18:26:364] Date: 2014/4/15 22:00 PM
[05/03-11:18:26:375]*******************************************************
[05/03-11:18:26:375]
[05/03-11:18:26:376]CPU: S3C6410@533MHz
[05/03-11:18:26:376] Fclk = 533MHz, Hclk = 133MHz, Pclk = 66MHz (ASYNC Mode)
[05/03-11:18:26:376]Board: SMDK6410
[05/03-11:18:26:380]DRAM: 256 MB
[05/03-11:18:26:424]Flash: 0 kB
[05/03-11:18:26:424]NAND Flash: 2048 MB
[05/03-11:18:27:545]********************************************************
[05/03-11:18:27:545]Initial LCD controller
[05/03-11:18:27:559] clk_freq:9 MHz, div_freq:13 ,rea_freq:9 MHz
[05/03-11:18:27:559]
[05/03-11:18:27:560] HBP = 2 HFP = 2 HSW = 41,Hpixs:480
[05/03-11:18:27:560] VBP = 2 VFP = 2 VSW = 10,Vpixs:272
[05/03-11:18:27:577]FrameBuff:57e7a000
[05/03-11:18:27:579] LCD initialization Finished.
[05/03-11:18:27:580]********************************************************
[05/03-11:18:27:602]In: serial
[05/03-11:18:27:602]
[05/03-11:18:27:602]Out: lcd
[05/03-11:18:27:602]
[05/03-11:18:27:602]Err: lcd
[05/03-11:18:27:603]
[05/03-11:18:27:953]Net: DM9000
[05/03-11:18:28:971]Hit any key to stop autoboot: 0

S3C6410嵌入式应用平台构建(三)的更多相关文章

  1. S3C6410嵌入式应用平台构建(一)

    [2014-4/8~4/10]目前我们已经积累一定的嵌入式相关知识,对嵌入式的架构及开发过程有了大体了解,唯一缺的就是实践,通过自己的分析搭建自己的嵌入式系统.下面,我将从此处开始记录我和我同学一起分 ...

  2. S3C6410嵌入式应用平台构建(六)——linux-3.14.4移植到OK6410-(Yaffs2文件制作)

    本文主要讲怎用利用yaffs2工具和busybox制作yaffs2文件系统镜像.大多数都是参照网上的,目的在于记录学习,不做任何用途. 一.制作mkyaffs2image工具 进入yaffs2源码目录 ...

  3. S3C6410嵌入式应用平台构建(五)——linux-3.14.4移植到OK6410-(Nand分区问题)

    前一篇文章,我们的Linux能后启动了,只是在识别nand时候,没有获取到时钟源,导致后面的分区没哟进行. 我们从启动的log发现: [06/08-11:25:41:371]s3c24xx-nand ...

  4. S3C6410嵌入式应用平台构建(四)——linux-3.14.4移植到OK6410-(初步启动)

    这次,还是把基本的基于我目前最新的Linux源码进行移植到OK6410吧,同时也写下我移植过程中遇到的问题及解决方法,不过有些方法是借鉴网上的,有些是自己加的,会有一些小bug. 一.基本工作 1. ...

  5. S3C6410嵌入式应用平台构建(二)

    [2014-4/11~4/14]经过之前的实验,对Uboot已经有了大体的了解,前我们已经把led灯给点亮,但这不是我们的根本目的,我们是要进入boot启动,经过两天的分析代码和反复的实验,终于可以进 ...

  6. 【Microsoft Azure 的1024种玩法】三.基于Azure云平台构建Discuz论坛

    [简介] Discuz!是一套通用社区论坛软件系统,用户在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能.很强负载能力和可高度定制的论坛服务. [前期文章] [操作步骤] ...

  7. Unity跨平台C/CPP动态库编译---可靠UDP网络库kcp基于CMake的各平台构建实践

    1.为什么需要动态库 a)提供原生代码(native code)的支持,也叫原生插件,但是我实践的是c/cpp跨平台动态库,这里不具体涉及安卓平台java库和ios平台的objectc库构建. b)某 ...

  8. SharpGL学习笔记(一) 平台构建与Opengl的hello World

    (一)平台构建与Opengl的hello World OpenGL就是3d绘图的API,微软针和它竞争推出D3D,也就是玩游戏时最常见的DirectorX组件中的3d功能. 所以不要指望windows ...

  9. Unity3D跨平台动态库编译---记kcp基于CMake的各平台构建实践

    一 为什么需要动态库 1)提供原生代码(native code)的支持,也叫原生插件,但是我实践的是c/cpp跨平台动态库,这里不具体涉及安卓平台java库和ios平台的objectc库构建. 2)某 ...

随机推荐

  1. Python读取PDF内容

    1,引言 晚上翻看<Python网络数据采集>这本书,看到读取PDF内容的代码,想起来前几天集搜客刚刚发布了一个抓取网页pdf内容的抓取规则,这个规则能够把pdf内容当成html来做网页抓 ...

  2. mongo设计(二)

    原文:http://blog.mongodb.org/post/87892923503/6-rules-of-thumb-for-mongodb-schema-design-part-2 By Wil ...

  3. Spring包的方法WebUtils.getParametersStartingWith(request,String)

    举个例子,比如页面上有 <input type="text" name="p_name" value="aileen"> < ...

  4. Delphi XE6 通过JavaScript API调用百度地图

    参考昨天的内容,有朋友还是问如何调用百度地图,也是,谁让咱都在国内呢,没办法,你懂的. 首先去申请个Key,然后看一下百度JavaScript的第一个例子:http://developer.baidu ...

  5. Unity3d 打包时报错 CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details.

    今天打包带有Android插件的unity3d 项目是,报错CommandInvokationFailure: Unable to convert classes into dex format. S ...

  6. shell programs

    find * -not -path "docs/*" -regex ".*\.\(rb\)" -type f -print0 | xargs -0     gr ...

  7. centos6.5 eclipse C/C++开发环境

  8. 基于本地iso 搭建的本地yum源 安装部署openldap

    1,yum openldap-servers,openldap-clients 基于iso-cd1搭建的本地yum源(具体搭建参看ruige的repo本地快速搭建,在右边 找找看中输入repo key ...

  9. ASP.NET mvc4 WEB API异常处理

    当一个web api抛出一个异常后 此异常会被转化成一个HTTP响应 错误代码为500的服务错误 但是如果你不想让客户端看到500的错误码 你也可以自定义错误码 如下代码当用户输入的ID没有与之相关的 ...

  10. js——DOM操作(一)

    DOM:Document Object Model  文档对象模型 文档:html页面 文档对象:页面中元素 文档对象模型:定义  为了能够让程序(js)去操作页面中的元素 DOM会把文档看作是一棵树 ...