linux uboot 网络速率,Uboot下USB xHCI传输速率问题

本文介绍了在Linux Uboot中遇到的USB XHCI传输速率低的问题,通过分析代码发现USB_MAX_XFER_BLK设置过小导致性能瓶颈。通过对宏定义的修改,特别是增加XHCI分支并将值调整为240或使用USHRT_MAX,成功将U盘传输速度提升到13MB/S以上,从而解决了传输速率问题。
摘要由CSDN通过智能技术生成

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

uboot:uboot 2016.07

kernel:linux 4.9.1

最近遇到uboot下U盘传输速率过低的问题,速度大概只有2MB/S,USB控制器是XHCI。借助USB分析仪抓包,对比kernel和uboot的数据包差异,发现kernel下每个transfer packet大小是120KB,uboot则十分的小(具体数值忘记)。针对这个现象去定位代码,确定问题点在”common/usb_storage.c”的宏定义”USB_MAX_XFER_BLK”。#ifdef CONFIG_USB_EHCI

/*

* The U-Boot EHCI driver can handle any transfer length as long as there is

* enough free heap space left, but the SCSI READ(10) and WRITE(10) commands are

* limited to 65535 blocks.

*/

#define USB_MAX_XFER_BLK 65535

#else

#define USB_MAX_XFER_BLK 20

#endif

#ifndef CONFIG_BLK

static struct us_d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: U-Boot 是一种开源的 Bootloader,常用于嵌入式系统的启动管理。它可以在引导 Linux 操作系统之前为设备配置硬件和加载内核。U-Boot 是跨平台的,可以在多种嵌入式设备上运行,包括嵌入式 Linux 和 RTOS 系统。 ### 回答2: Linuxuboot都是嵌入式系统中非常重要的组成部分。 Linux是一种开源的操作系统,具有灵活、高效、可靠的特点,因此在嵌入式系统中被广泛使用。Linux可以支持众多的硬件平台,可以根据需求自由定制内核配置,因此可以实现非常精简的系统,对于资源有限的嵌入式设备而言非常适合。同时,在Linux社区拥有众多的开发者和用户,不仅有丰富的文档与社区经验可以参考,也可以得到及时的技术支持和更新。 UBOOT是一个开源的引导加载程序,其功能是将操作系统从闪存等存储介质中取出并加载到内存中启动运行。UBOOT作为引导程序,可以实现很多操作系统没有的功能,例如热插拔、网络启动等。而且,它本身的文件体积相对比较小,占用系统资源较少。UBOOT的源代码非常精简,容易移植到不同的硬件平台上,并且支持丰富的配置选项,用户可以根据需求进行自定义,提高系统的效率。 在嵌入式系统中,通常使用UBOOT进行启动并加载Linux操作系统。首先,UBOOT启动,进行硬件初始化和自检。然后,UBOOT会加载内核映像到内存中,然后将系统控制权交给内核,由内核继续完成系统启动。 因此,对于嵌入式系统而言,LinuxUBOOT都是非常重要的部分,不仅可以提高系统的可靠性和效率,而且也支持各种硬件平台和应用场景的定制。 ### 回答3: Linux是一个自由、开放的操作系统,最初在1991年由Linus Torvalds所创建,它广泛用于服务器、个人电脑以及其他嵌入式设备中。 而U-Boot是一种开源的引导加载程序,通常被用来启动嵌入式Linux系统。它是一个非常常见的嵌入式Linux系统的引导加载程序,并且几乎所有的SOC供应商都提供了针对U-Boot的支持。因此,许多嵌入式Linux系统的开发人员都使用它来构建和调试它们的系统。 U-Boot还有其他用途,例如固件更新、硬件诊断和启动操作系统。它可以处理各种不同的启动来源,例如网络USB、SD卡和SPI闪存,通过引导从这些来源启动操作系统,进而完成在嵌入式系统上的应用。 因为U-Boot是开源软件,因此它可以在许多嵌入式系统上运行,而无需支付高昂的许可费用。同时,U-Boot具有相对较小的内存开销,使其成为各种嵌入式设备开发中的理想选择。 最后,值得一提的是,U-Boot也是一个可扩展的系统。通常情况下,开发人员能够自定义U-Boot的功能,使其更好地适应他们的需要。这些扩展可以包括添加新的引导选项、从设备中读取数据以及许多其他的功能。总之,U-Boot作为一个开源的引导程序,为许多嵌入式系统的起步和开发提供了极大的便利性与可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值