OK6410编译U_BOOT,使之支持DM9000AE(一)

2024-02-23 08:48

本文主要是介绍OK6410编译U_BOOT,使之支持DM9000AE(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

步骤如下:


#tar zxf uboot1.26_FORLINX_6410.tgz  –C  /home/FOLINX_SHARE/uboot1.1.6_256M      解压,解压到/home/FOLINX_SHARE/uboot1.1.6_256M目录下

#cd  /home/FOLINX_SHARE/uboot1.1.6_256M                进入/home/FOLINX_SHARE/uboot1.1.6_256M目录


  移植的原因:

由于OK6410所用的网卡是DM9000AE的,而飞凌提供的U_BOOT的网卡驱动是CS8900,所以在U_BOOT中要改。

修改的方法参见:http://bbs.witech.com.cn/thread-4704-1-1.html

ok6410 u-boot dm9000 驱动补丁 patch
解压ok6410 或 ok6410b 对应的u-boot源代码
下载附件,覆盖u-boot源文件里面的同名文件,然后
打开文件 include/configs/smdk6410.h
找到
#ifdef  CONFIG_DRIVER_SMC911X   
#undef  CONFIG_DRIVER_CS8900   
#define CONFIG_DRIVER_SMC911X_BASE      0x18800300
#else
#define CONFIG_DRIVER_CS8900    0       /* wehave a CS8900 on-board */
#define CS8900_BASE            0x18800300
#define CS8900_BUS16            1      /* the Linux driver does accesses as shorts */
#endif
替换为
#define CONFIG_DRIVER_DM9000AE  1
#define CONFIG_DRIVER_DM9000    1
#define CONFIG_DM9000_BASE      (0x18000000)
#define DM9000_IO              (CONFIG_DM9000_BASE)
#define DM9000_DATA             (CONFIG_DM9000_BASE+0x4)
//#define CONFIG_DM9000_DEBUG     1
#define CONFIG_DM9000_USE_16BIT 1

make smdk6410_config   配置
make 编译,把编好的u-boot.bin写到开发板里面就可以用网卡了

 

附件:D:\嵌入式学习资料\ARM11  u-boot-dm9000-patch


u_boot.bin下载到开发板的方法:

         参见OK6410-A开发板LINUX2.6.28用户手册 制作用于一键烧写LINUX的SD卡的方法。


OK6410编译U_BOOT,使之支持DM9000AE 并支持NFS(二)

由于项目中的需要,之前使用的linux2.6.28的OK6410交叉环境破坏了,重新烧写linux2.6.36,使之支持QT4.7的。

后来要修改回来,使之支持NFS挂载,那么就要修改u_boot.bin,使之支持DM9000AE的。按照以前的方法,出现如下错误:

进入linux系统(2.6.36)以后发现:一大片s3c-nand: ECC uncorrectable error detected 提示。
请问:原因是什么? 如何解决?
s3c-nand: ECC uncorrectable error detected
s3c-nand: ECC uncorrectable error detected
s3c-nand: ECC uncorrectable error detected
s3c-nand: ECC uncorrectable error detected

····

参考网上的解决:

部分用户第一次烧写linux && Android系统的时候会遇到s3c-nand: ECC uncorrectable error detected这样的问题,出现这样的问题的时候请按照下面的步骤解决:

1.uboot命令行中运行下面命令:

nand erase 0

该命令将删除整块nandflash。

2.使用SD启动的uboot重新烧写各个镜像文件。

请按照下面的步骤调试:

1.使用uboot下使用nand erase 0擦除flash。

2.使用SD启动的uboot烧写nand启动的uboot。

3.使用nand启动的uboot烧写linux内核与cramfs。

我编译的Uboot是飞凌linux2.6.26中自的,在linux2.6.36当中,无法编译成功,开发环境为ubuntu10.04,交叉工具链为gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)

编译好后,利用SD一键烧写,可以了··················


u-boot.bin 是自己修改过的,支持DM9000
zImage和cramfs的飞凌自带的

为了能够挂载NFS和根文件系统。在uboot状态下修改参数如下:

setenv ipaddr 192.168.0.50

setenv serverip 192.168.0.47

setenv gatewayip 192.168.0.1

setenv bootdelay 3

setenv bootargs console=ttySAC0,115200 root=/dev/nfs nfsroot=192.168.0.47:/sheng/filesystem,proto=tcp,nfsvers=3,nolock ip=192.168.0.50




此外,以上操作,无关内核的事,故不用修改内核的任何东西





这篇关于OK6410编译U_BOOT,使之支持DM9000AE(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/738090

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

在Spring Boot中实现HTTPS加密通信及常见问题排查

《在SpringBoot中实现HTTPS加密通信及常见问题排查》HTTPS是HTTP的安全版本,通过SSL/TLS协议为通讯提供加密、身份验证和数据完整性保护,下面通过本文给大家介绍在SpringB... 目录一、HTTPS核心原理1.加密流程概述2.加密技术组合二、证书体系详解1、证书类型对比2. 证书获

Spring Boot中的YML配置列表及应用小结

《SpringBoot中的YML配置列表及应用小结》在SpringBoot中使用YAML进行列表的配置不仅简洁明了,还能提高代码的可读性和可维护性,:本文主要介绍SpringBoot中的YML配... 目录YAML列表的基础语法在Spring Boot中的应用从YAML读取列表列表中的复杂对象其他注意事项总

Spring Boot 整合 Redis 实现数据缓存案例详解

《SpringBoot整合Redis实现数据缓存案例详解》Springboot缓存,默认使用的是ConcurrentMap的方式来实现的,然而我们在项目中并不会这么使用,本文介绍SpringB... 目录1.添加 Maven 依赖2.配置Redis属性3.创建 redisCacheManager4.使用Sp

redis在spring boot中异常退出的问题解决方案

《redis在springboot中异常退出的问题解决方案》:本文主要介绍redis在springboot中异常退出的问题解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴... 目录问题:解决 问题根源️ 解决方案1. 异步处理 + 提前ACK(关键步骤)2. 调整Redis消费者组

Spring Boot 事务详解(事务传播行为、事务属性)

《SpringBoot事务详解(事务传播行为、事务属性)》SpringBoot提供了强大的事务管理功能,通过@Transactional注解可以方便地配置事务的传播行为和属性,本文将详细介绍Spr... 目录Spring Boot 事务详解引言声明式事务管理示例编程式事务管理示例事务传播行为1. REQUI

Spring Boot 集成 Solr 的详细示例

《SpringBoot集成Solr的详细示例》:本文主要介绍SpringBoot集成Solr的详细示例,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录环境准备添加依赖配置 Solr 连接定义实体类编写 Repository 接口创建 Service 与 Controller示例运行

Spring Boot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)

《SpringBoot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)》:本文主要介绍SpringBoot拦截器Interceptor与过滤器Filter深度解析... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现与实