This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器/CC2540:下载 UBL 引导后、CC2540无法在 Linux 中识别为 U 盘。

Guru**** 2943350 points

Other Parts Discussed in Thread: CC2531, CC2540

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/802607/compiler-cc2540-after-downloading-ubl-boot-cc2540-cannot-be-recognized-as-u-disk-in-linux

器件型号:CC2540
主题中讨论的其他器件:CC2531

工具/软件:TI C/C++编译器

在蓝牙芯片上下载 UBL 引导后、我们的主芯片(Linux 系统)未正确将其识别为 USB 闪存驱动器、因此我们无法在主芯片上执行升级操作。 

如图所示、我使用了主机提供的 USB 驱动程序、但在/dev/目录 中未找到所需的器件。

但是、我可以在 Windows 下正确地将其识别为 USB 闪存驱动器、并且可以升级 HostTestReleaseCC2540USB-UBL.bin、并且工作正常。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Dashi:
    我不知道为什么它不起作用,或者它是否应该起作用。 您是否尝试过不同的机器?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。


    我们已经使用 UBL 试用了各种 Linux 发行版、这些版本包括:

     1. Linux 3.3.81.  Ubuntu 14.04.6 LTS  

    Linux 3.3.81没有症状、/dev/目录 中没有需要。(我们需要解决的问题) 


    Ubuntu 14.04.6 LTS:


    将 USB 软件狗插入主机的 USB 端口。 使用的驱动程序是 USB 存储。


    1.该器件已成功识别为块器件、并与器件文件/dev/sdc 相关联


    2.驱动程序和设备协商过程出错。

    内核输出信息如下:

    [478.312136] USB 5-2:USB 断开连接、器件编号2
    [480.256040] USB 5-2:使用 UHCI_hcd 的全新全速 USB 器件编号3
    [480.436933] USB 5-2:找到新的 USB 器件、idVendor=0451、idProduct=16a8
    [480.436943] USB 5-2:新 USB 器件字符串:MFR=1、Product=2、SerialNumber=3
    [480.436950] USB 5-2:产品:TI CC2531 USB MSD
    [480.436956] USB 5-2:制造商:德州仪器
    [480.436962] USB 5-2:序列号:__0XFFFFFFFF
    [480.440109] USB-STORAGE 5-2:1.0:检测到 USB 大容量存储设备
    [480.440348] SCSI host5:USB-storage 5-2:1.0
    [481.445512] SCSI 5:0:0:0:0:直接访问    通用 USB 闪存盘  0.00 PQ:0 ANSI:2.
    [481.448627] SD 5:0:0:0:已连接 SCSI 通用 SG2类型0
    [481.456504] SD 5:0:0:0:0:[SDC] 485 512字节逻辑块:(248KB/243 KiB)
    [481.460522] SD 5:0:0:0:0:[SDC]写保护关闭
    [481.460529] SD 5:0:0:0:[SDC]模式检测:03 00 00 00
    [481.463491] SD 5:0:0:0:[SDC]找不到缓存模式页
    [481.463499] SD 5:0:0:0:0:[SDC]假设驱动器高速缓存:写入
    [481.521430] SCSI_IO_Completion:73个回调被抑制
    [481.521441] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.521446] SD 5:0:0:0:[SDC]标签#0 CDB:读取(10) 28 00 00 00 00 00 00 00 01 00
    [481.521449] blk_update_request:73 callback 被抑制
    [481.521451] blk_update_request:I/O error、dev sdc、sector 0
    [481.521456] buffer_io_error:214个回调被抑制
    [481.521458] 开发 sdc、逻辑块0、异步页面读取时出现缓冲器 I/O 错误
    [481.561404] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.561410] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 01 00 01 00 01 00
    [481.5614] blk_update_request:I/O error、dev sdc、sector 1.
    [481.561418] 开发 sdc、逻辑块1、异步页面读取时出现缓冲器 I/O 错误
    [481.601400] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.601407] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 00 02 00 01 00
    [481.601410] blk_update_request:I/O error、dev sdc、sector 2.
    [481.6014] 开发 sdc、逻辑块2、异步页面读取时出现缓冲器 I/O 错误
    [481.641380] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.641387] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 00 03 00 01 00
    [481.641390] blk_update_request:I/O error、dev sdc、sector 3.
    [481.641394] 开发 sdc、逻辑块3、异步页面读取上的缓冲器 I/O 错误
    [481.687349] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.687356] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 00 04 00 01 00
    [481.687359] blk_update_request:I/O error、dev sdc、sector 4
    [481.687363] DEV sdc、逻辑块4、异步页面读取时出现缓冲器 I/O 错误
    [481.731333] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.731340] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 05 00 01 00
    [481.73343] blk_update_request:I/O error、dev sdc、sector 5
    [481.731346] 开发 sdc、逻辑块5、异步页面读取时出现缓冲器 I/O 错误
    [481.775304] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.775311] SD 5:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 00 06 00 01 00
    [481.775314] blk_update_request:I/O error、dev sdc、sector 6.
    [481.775317] 开发 sdc、逻辑块6、异步页面读取时出现缓冲器 I/O 错误
    [481.819289] SD 5:0:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.819295] SD 5:0:0:0:[SDC]标签#0 CDB:读取(10) 28 00 00 00 07 00 01 00
    [481.819298] blk_update_request:I/O error、dev sdc、扇区7
    [481.819302] 开发 sdc、逻辑块7、异步页面读取时出现缓冲器 I/O 错误
    [481.861281] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.861288] SD 5:0:0:0:[SDC]标签#0 CDB:读取(10) 28 00 00 00 00 00 00 00 01 00
    [481.861291] blk_update_request:I/O error、dev sdc、sector 0
    [481.861295] 开发 sdc、逻辑块0、异步页面读取时出现缓冲器 I/O 错误
    [481.901254] SD 5:0:0:0:[SDC] TAG#0失败结果:hostbyte=ded_error driverbyte=driver_OK
    [481.901261] SD 5:0:0:0:[SDC] TAG#0 CDB:读取(10) 28 00 00 01 00 01 00 01 00
    [481.901264] blk_update_request:I/O error、dev sdc、sector 1.
    [481.901268] 开发 sdc、逻辑块1、异步页面读取时出现缓冲器 I/O 错误
    [482.510991] LDM_VALIDATE_PARTIA_TABLE ():磁盘读取失败。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Linux 系统基本信息

    硬件: CC2540 (UBL 固件)

    内核:Linux 3.3.8版

    要支持 U 盘功能、请按照以下步骤打开内核:
    SCSI 设备支持
    SCSI 磁盘支持
    USB 海量存储支持

    系统可以识别 SDA 器件、但卡无法启动、并且始终在器件 sda 上打印缓冲器 I/O 错误、怀疑 Linux 下的固件驱动程序有一些问题。 按以下步骤开始打印:
    [1.370000]  CDC_ACM:用于 USB 调制解调器和 ISDN 适配器的 USB 抽象控制模型驱动程序
    [1.380000]  正在初始化 USB 海量存储驱动程序...
    [1.390000]  usbcore:注册的新接口驱动程序 USB 存储
    [1.390000]  已注册 USB 海量存储支持。
    [1.400000]  NF_conntrack 版本0.5.0 (1973桶、最大7892)
    [1.410000]  IPv4 over IPv4隧道驱动程序
    [1.410000]  IP_tables:(c) 2000-2006年 Netfilter 核心小组
    [1.42000]  TCP 立方注册
    [1.42000]  NET:注册协议系列17.
    [1.430000]  8021q:802.1Q VLAN 支持 v1.8
    [1.430000]  ### of _selftest():设备树中没有测试用例数据;未运行测试
    [1.440000]  VFS:在器件31:4上安装了 root (squarashfs 文件系统)只读。
    [1.450000]  释放未使用的内核内存:释放176k
    [1.630000]  USB 1-1:使用 EHCI 平台的全新全速 USB 器件编号2
    [1.900000]  scsi0:USB-storage 1-1:1.0
    [2.920000]  SCSI 0:0:0:0:0:直接访问  通用 USB 闪存盘 0.00 PQ:0 ANSI:2.
    [  2.980000] SD 0:0:0:0:[SDA] 485 512字节逻辑块:(248 KB/242 KiB)
    [3.030000]  SD 0:0:0:0:0:[SDA]写保护关闭
    [3.110000]  SD 0:0:0:0:[SDA]不存在缓存模式页
    [3.120000]  SD 0:0:0:0:[SDA]假设驱动器高速缓存:写入
    [3.210000]  SD 0:0:0:0:[SDA]不存在缓存模式页
    [  3.220000] SD 0:0:0:0:[SDA]假设驱动器高速缓存:写入
    mkdir:无法创建目录"/var/run:文件存在
    [4.620000]  [BM core  ][init_online_ip 、1343] INFO:创建了在线 IP 数据哈希表,大小= 199
    [4.630000]  [BM core  ][init_online_ip_procfs、703] INFO:online _ip proc 文件已创建
    [4.650000]  km_CTF_init 283:CTF_REGISTER_Hook 失败、可能是 fastnat 而不是 insmod
    [4.650000]  km_init 434:##km base init Success ##
    [34.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [65.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [96.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [127.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [158.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [189.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [189.350000] SD 0:0:0:0:[SDA]未处理错误代码
    [189.360000] SD 0:0:0:0:0:[SDA] 结果:hostbyte=0x05 driverbyte=0x00
    [189.360000] SD 0:0:0:0:0:[SDA] CDB:CDB[0]=0x28 00 00 00 00 00 00 01 00
    [189.370000] end_request:I/O error、dev sda、sector 0
    [189.380000] 器件 sda 上的缓冲器 I/O 错误、逻辑块0
    [220.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [251.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [282.200000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [312.52000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [343.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [374.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [374.310000] SD 0:0:0:0:0:[SDA]未处理错误代码
    [374.320000] SD 0:0:0:0:0:[SDA] 结果:hostbyte=0x05 driverbyte=0x00
    [374.320000] SD 0:0:0:0:0:[SDA] CDB:CDB[0]=0x28 00 00 01 00 01 00
    [374.330000] END_REQUEST:I/O 错误、dev sda、扇区1
    [374.340000] 器件 sda 上的缓冲器 I/O 错误、逻辑块1
    [405.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [436.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [467.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [498.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [529.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [560.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [560.310000] SD 0:0:0:0:[SDA]未处理错误代码
    [560.320000] SD 0:0:0:0:0:[SDA] 结果:hostbyte=0x05 driverbyte=0x00
    [560.320000] SD 0:0:0:0:0:[SDA] CDB:CDB[0]=0x28 00 00 02 00 06 00
    [560.330000] END_REQUEST:I/O 错误、dev sda、扇区2
    [560.340000] 器件 sda 上的缓冲器 I/O 错误、逻辑块2.
    [560.340000] 器件 sda 上的缓冲器 I/O 错误、逻辑块3.
    [560.350000] 器件 sda 上的缓冲器 I/O 错误、逻辑块4.
    [560.350000] 器件 sda 上的缓冲器 I/O 错误、逻辑块5
    [560.360000] 器件 sda 上的缓冲器 I/O 错误、逻辑块6.
    [560.360000] 器件 sda 上的缓冲器 I/O 错误、逻辑块7
    [591.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [622.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [653.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [684.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [715.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [746.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [746.310000] SD 0:0:0:0:0:[SDA]未处理错误代码
    [746.320000] SD 0:0:0:0:0:[SDA] 结果:hostbyte=0x05 driverbyte=0x00
    [746.320000] SD 0:0:0:0:0:[SDA] CDB:CDB[0]=0x28 00 00 00 00 00 00 01 00
    [746.330000] END_REQUEST:I/O 错误、dev sda、扇区0
    [746.340000] 器件 sda 上的缓冲器 I/O 错误、逻辑块0
    [777.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
    [808.160000] USB 1-1:使用 EHCI 平台重置全速 USB 器件编号2
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、
    我对 Linux 还不够熟悉、因此无法提供帮助。 也许社区或其他人知道发生了什么。 我将使该线程保持打开一段时间。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    现有驱动程序似乎不支持 Linux。