u-boot本身有cs8900网卡驱动程式,所以需要修改的地方不多。由于数据通过总线传送,所以要注意地址空间的设置和总线的设置。
1) 修改/include/configs/smdk2410.h文件:
#define CONFIG_ETHADDR    08:00:3e:26:0a:5b
#define CONFIG_IPADDR        192.168.1.18
#define CONFIG_SERVERIP        192.168.1.19
CONFIG_IPADDR     宏是你研发板的IP地址。tftp client
CONFIG_SERVERIP   宏是你安装tftp server的系统的IP
确定网卡的基地址,我的研发板CS8900接在nGCS3上,而且是A24引脚为高时使能CS8900A的IO模式,所以代码为:
#define CONFIG_DRIVER_CS8900    1    /* we have a CS8900 on-board */
#define CS8900_BASE        0x19000300
#define CS8900_BUS16        1 /* the Linux driver does accesses as shorts */
2) BWSCON寄存器的设置,BANKCON3寄存器的设置
   由于网卡占用的是nGCS3之上地址,所以需要设置/board/smdk2410/lowlevel.S文件中相应寄存器的值:
#define B3_BWSCON         (DW16 + WAIT + UBLB)
#define B3_Tacs             0x0    /* 0clk */
#define B3_Tcos             0x3    /* 4clk */
#define B3_Tacc             0x7    /* 14clk */
#define B3_Tcoh             0x1    /* 1clk */
#define B3_Tah             0x0    /* 0clk */
#define B3_Tacp             0x3 /* 6clk */
#define B3_PMC             0x0    /* normal */
3) 设置完毕后能重新编译。
4) tftp测试:

以上改完了就能实现tftp功能.

下面说说我的心得.

1  网线可以是路由器出来的, 不一定要是直接到pc的网口. 以上192.168.1.19 是pc的地址.

2  xp端的tftp软件可以用 tftp32, 就一个执行文件,绿色的,不需要安装, 可以自己去弄,  这个也是别人介绍我用的.

3  连接上以后如果想重新烧录nand的bootloader断,请参考如下

1)烧入内核 HB2440# tftp 0x30000000 uImage //先烧录进SDRAM HB2440# nand erase 0x0 0x00200000 //擦出NAND flash待烧入空间 HB2440# nand write 0x30000000 0x0 0x178400 //使用nand命令从SDRAM到NAND指定 //区域 2)烧入文件系统 HB2440# tftp 0x30000000 yaffs.img //先烧录进SDRAM HB2440# nand erase 0xa00000 0x3600000 //擦出NAND flash待烧入空间 HB2440# nand write 0x30000000 0xa00000 0x106d0d0//使用nand命令从SDRAM到 //NAND指定区域

是先用tftp命令把uboot.bin传入4g内存索引中的地址0x30000000,然后用nand write 写入从0x30000000开始的资料到nand地址0x0 到0x178400(这个大小可变,根据你的bin文件大小).

这个方法我试过烧录一个只有nand支持功能的bin文件上去, 成功.   重新开机后,串口调试界面只有提示符, 输入tftp指令,提示错误指令. 呵呵.. 说明用tftp功能烧录bootloader成功.

uboot 1.1.6 移植8900网卡+tftp相关推荐

  1. jz2440开发板移植U-boot之修改代码支持DM9000网卡

    今天我们来移植U-boot到jz2440开发板,修改代码支持DM9000网卡.查看之前写的移植记录请点击链接:点击查看之前的移植记录 现在大多数开发板都支持DM9000网卡.我们的U-boot源码里面 ...

  2. 【uboot】imx6ull uboot移植LAN8720A网卡驱动

    文章目录 相关文章 1. 前言 2. IMX6ULL Ethernet LAN8720A硬件连接 3. 支持LAN8720A修改步骤 4. 验证测试 问题1:如何确定LAN8720A网卡PHYAD地址 ...

  3. uboot和Linux内核移植

    这篇文章是一个读者昨晚发给我的,文章很长,里面的细节也比较多,但是微信公众号只能发 50000 字的文章,如果想阅读全文. 请发送「 uboot和Linux内核移植 」到公众号后台获取下载链接. 这篇 ...

  4. 【移植驱动到Linux3.4.2内核之一】移植DM9000C网卡驱动

    学习交流加 个人qq: 1126137994 个人微信: liu1126137994 学习交流资源分享qq群: 962535112 之前已经把uboot,内核,文件系统,都移植好了,今天开始我们把第二 ...

  5. uboot研读笔记 | 05 - 移植uboot 2012.04到JZ2440(支持Nand Flash读写)

    项目开源地址:https://github.com/Mculover666/uboot-jz2440 0. 教程完整目录 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理 01 ...

  6. uboot研读笔记 | 04 - 移植uboot 2012.04到JZ2440(支持Nor Flash读写)

    项目开源地址:https://github.com/Mculover666/uboot-jz2440 0. 教程完整目录 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理 01 ...

  7. Linux驱动移植USB网卡r8156驱动(详细)总结

    目录 一.简介 二.驱动移植 2.1 驱动源码解压 2.2 驱动Kconfig和Makefile配置 2.2.1 驱动上层目录识别驱动文件 2.2.2 驱动目录新建驱动Kconfig和Makefile ...

  8. T2080 U-BOOT与OS内核移植 准备篇(二)——开发调试环境入门(Trace32、QorIQ Linux SDK和QCVS)

    T2080 U-BOOT与OS内核移植 准备篇(二)--开发调试环境入门(Trace32.QorIQ Linux SDK和QCVS) 一.Trace32 1. 工具配置和软件安装 2. 使用PRACT ...

  9. T2080 U-BOOT与OS内核移植 u-boot移植篇(一)——创建新目标板的u-boot工程

    T2080 U-BOOT与OS内核移植 u-boot移植篇(一)--创建新目标板的u-boot工程 一.创建新目标板文件夹并修改相应文件 1.创建新目标板文件夹 2.修改t2080tpm文件夹中的相应 ...

最新文章

  1. How React Works (一)首次渲染
  2. [BZOJ1079][SCOI2008]着色方案 dp
  3. 图论文快讯|AAAI2020图相关论文合集,涉及各个方面
  4. javascript中常用数组函数
  5. 性能测试(02)-HttpSampler
  6. JavaSE之Java基础(1)
  7. c++直角坐标系与极坐标系的转换_平面向量的奇技淫巧——斜坐标系的一系列低级研究...
  8. Symfony 4.2.4 和 3.4.23 发布,经典 PHP Web 开发框架
  9. php mysql 正则表达式_mysql正则表达式(Regexp)的示例详解
  10. SQL中到底要不要用WHERE 1=1
  11. 随想录(常用的c库)
  12. 利用CSS按比例缩小图片
  13. NeHe OpenGL第四十四课:3D光晕
  14. R爬虫小白入门:Rvest爬链家网+分析(三)
  15. 计算机毕业设计Java安路友汽车租赁(源码+系统+mysql数据库+lw文档
  16. 雪球网股票用户评论爬虫
  17. TRUNK理论与配置实验
  18. 天地图实现标注用户当前坐标位置
  19. 学计算机硬盘电脑多大好,笔记本电脑固态硬盘要多大的合适
  20. flutter图片聊天泡泡_Flutter 气泡效果合集(全网最全)

热门文章

  1. 【微信红包封面】哆啦A梦 x GUCCI古驰限定版!!
  2. 微信影视站域名防封、微信影视站公众号域名防封
  3. 苹果手机怎么备份通讯录?
  4. 面向对象(高级)章节练习题
  5. LeetCode.199 二叉树的左视图
  6. ImageMagick将多张图片拼接成一张图片_不会PS也没关系!我想向你推荐这18款免费好用的在线图片处理工具...
  7. 人工智能在计算机领域中的应用
  8. ruby调用python_ruby与python
  9. 第十二周项目5-迷宫问题之图深度优先遍历解法
  10. 线程池系列三:动态修改线程池队列大小