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.

Compiler/CC2540: After downloading UBL boot, CC2540 cannot be recognized as U disk in Linux.

Part Number: CC2540
Other Parts Discussed in Thread: CC2531,

Tool/software: TI C/C++ Compiler

After I downloaded the boot of UBL on the Bluetooth chip, our master chip (Linux system) did not correctly identify it as a USB flash drive, so we have no way to perform the upgrade operation on the master chip.

As shown, I used the USB driver provided by my host, but I did not see the device I wanted in the /dev/ directory.

But I can correctly identify it as a USB flash drive under Windows, and can upgrade HostTestReleaseCC2540USB-UBL.bin and it works fine.

  • Hi Dashi,
    I am not certain why it does not work or if it should work. Have you tried different machines?

  • We have tried various Linux distributions using UBL, which are:

    1. linux 3.3.81.  2.Ubuntu 14.04.6 LTS 

    Linux 3.3.81 has no symptoms, there is no need in the /dev/ directory.(The problem we need to solve


    Ubuntu 14.04.6 LTS:


    Insert the usb-dongle into the usb port of the host computer. The driver used is usb-storage.


    1. The device was successfully identified as a block device, associated with the device file /dev/sdc


    2. The driver and device negotiation process is in error.

    The kernel output information is as follows:

    [  478.312136] usb 5-2: USB disconnect, device number 2
    [  480.256040] usb 5-2: new full-speed USB device number 3 using uhci_hcd
    [  480.436933] usb 5-2: New USB device found, idVendor=0451, idProduct=16a8
    [  480.436943] usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [  480.436950] usb 5-2: Product: TI CC2531 USB MSD
    [  480.436956] usb 5-2: Manufacturer: Texas Instruments
    [  480.436962] usb 5-2: SerialNumber: __0XFFFFFFFFFFFFFFFF
    [  480.440109] usb-storage 5-2:1.0: USB Mass Storage device detected
    [  480.440348] scsi host5: usb-storage 5-2:1.0
    [  481.445512] scsi 5:0:0:0: Direct-Access     Generic  USB Flash Disk   0.00 PQ: 0 ANSI: 2
    [  481.448627] sd 5:0:0:0: Attached scsi generic sg2 type 0
    [  481.456504] sd 5:0:0:0: [sdc] 485 512-byte logical blocks: (248 kB/243 KiB)
    [  481.460522] sd 5:0:0:0: [sdc] Write Protect is off
    [  481.460529] sd 5:0:0:0: [sdc] Mode Sense: 03 00 00 00
    [  481.463491] sd 5:0:0:0: [sdc] No Caching mode page found
    [  481.463499] sd 5:0:0:0: [sdc] Assuming drive cache: write through
    [  481.521430] scsi_io_completion: 73 callbacks suppressed
    [  481.521441] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.521446] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 00 00 00 01 00
    [  481.521449] blk_update_request: 73 callbacks suppressed
    [  481.521451] blk_update_request: I/O error, dev sdc, sector 0
    [  481.521456] buffer_io_error: 214 callbacks suppressed
    [  481.521458] Buffer I/O error on dev sdc, logical block 0, async page read
    [  481.561404] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.561410] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 01 00 00 01 00
    [  481.561414] blk_update_request: I/O error, dev sdc, sector 1
    [  481.561418] Buffer I/O error on dev sdc, logical block 1, async page read
    [  481.601400] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.601407] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 02 00 00 01 00
    [  481.601410] blk_update_request: I/O error, dev sdc, sector 2
    [  481.601414] Buffer I/O error on dev sdc, logical block 2, async page read
    [  481.641380] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.641387] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 03 00 00 01 00
    [  481.641390] blk_update_request: I/O error, dev sdc, sector 3
    [  481.641394] Buffer I/O error on dev sdc, logical block 3, async page read
    [  481.687349] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.687356] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 04 00 00 01 00
    [  481.687359] blk_update_request: I/O error, dev sdc, sector 4
    [  481.687363] Buffer I/O error on dev sdc, logical block 4, async page read
    [  481.731333] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.731340] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 05 00 00 01 00
    [  481.731343] blk_update_request: I/O error, dev sdc, sector 5
    [  481.731346] Buffer I/O error on dev sdc, logical block 5, async page read
    [  481.775304] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.775311] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 06 00 00 01 00
    [  481.775314] blk_update_request: I/O error, dev sdc, sector 6
    [  481.775317] Buffer I/O error on dev sdc, logical block 6, async page read
    [  481.819289] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.819295] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 07 00 00 01 00
    [  481.819298] blk_update_request: I/O error, dev sdc, sector 7
    [  481.819302] Buffer I/O error on dev sdc, logical block 7, async page read
    [  481.861281] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.861288] sd 5:0:0:0: [sdc] tag#0 CDB: Read(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] Buffer I/O error on dev sdc, logical block 0, async page read
    [  481.901254] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
    [  481.901261] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 00 01 00 00 01 00
    [  481.901264] blk_update_request: I/O error, dev sdc, sector 1
    [  481.901268] Buffer I/O error on dev sdc, logical block 1, async page read
    [  482.510991] ldm_validate_partition_table(): Disk read failed.

  • Linux system basic information

    Hardware:  CC2540 (UBL firmware)

    Kernel:Linux version 3.3.8

    To support the U disk function, open the kernel as follows:
    SCSI device support
    SCSI disk support
    USB Mass Storage support

    The system can recognize the SDA device, but the card can not start, and always print Buffer I / O error on device sda, suspected that the firmware driver has some problems under Linux. Start printing as follows:
    [    1.370000] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
    [    1.380000] Initializing USB Mass Storage driver...
    [    1.390000] usbcore: registered new interface driver usb-storage
    [    1.390000] USB Mass Storage support registered.
    [    1.400000] nf_conntrack version 0.5.0 (1973 buckets, 7892 max)
    [    1.410000] IPv4 over IPv4 tunneling driver
    [    1.410000] ip_tables: (C) 2000-2006 Netfilter Core Team
    [    1.420000] TCP cubic registered
    [    1.420000] NET: Registered protocol family 17
    [    1.430000] 8021q: 802.1Q VLAN Support v1.8
    [    1.430000] ### of_selftest(): No testcase data in device tree; not running tests
    [    1.440000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
    [    1.450000] Freeing unused kernel memory: 176k freed
    [    1.630000] usb 1-1: new full-speed USB device number 2 using ehci-platform
    [    1.900000] scsi0 : usb-storage 1-1:1.0
    [    2.920000] scsi 0:0:0:0: Direct-Access     Generic  USB Flash Disk   0.00 PQ: 0 ANSI: 2
    [    2.980000] sd 0:0:0:0: [sda] 485 512-byte logical blocks: (248 kB/242 KiB)
    [    3.030000] sd 0:0:0:0: [sda] Write Protect is off
    [    3.110000] sd 0:0:0:0: [sda] No Caching mode page present
    [    3.120000] sd 0:0:0:0: [sda] Assuming drive cache: write through
    [    3.210000] sd 0:0:0:0: [sda] No Caching mode page present
    [    3.220000] sd 0:0:0:0: [sda] Assuming drive cache: write through
    mkdir: can't create directory '/var/run': File exists
    [    4.620000] [BM CORE     ][init_online_ip  ,1343]  INFO: online ip data hash table created, size = 199
    [    4.630000] [BM CORE     ][init_online_ip_procfs,703 ]  INFO: online_ip proc file created
    [    4.650000] km_ctf_init 283: ctf_register_hook failed, maybe fastnat not insmod
    [    4.650000] km_init 434: ##km base init success##
    [   34.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [   65.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [   96.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  127.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  158.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  189.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  189.350000] sd 0:0:0:0: [sda] Unhandled error code
    [  189.360000] sd 0:0:0:0: [sda]  Result: hostbyte=0x05 driverbyte=0x00
    [  189.360000] sd 0:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 00 00 00 00 00 01 00
    [  189.370000] end_request: I/O error, dev sda, sector 0
    [  189.380000] Buffer I/O error on device sda, logical block 0
    [  220.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  251.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  282.200000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  312.520000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  343.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  374.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  374.310000] sd 0:0:0:0: [sda] Unhandled error code
    [  374.320000] sd 0:0:0:0: [sda]  Result: hostbyte=0x05 driverbyte=0x00
    [  374.320000] sd 0:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 00 00 01 00 00 01 00
    [  374.330000] end_request: I/O error, dev sda, sector 1
    [  374.340000] Buffer I/O error on device sda, logical block 1
    [  405.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  436.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  467.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  498.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  529.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  560.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  560.310000] sd 0:0:0:0: [sda] Unhandled error code
    [  560.320000] sd 0:0:0:0: [sda]  Result: hostbyte=0x05 driverbyte=0x00
    [  560.320000] sd 0:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 00 00 02 00 00 06 00
    [  560.330000] end_request: I/O error, dev sda, sector 2
    [  560.340000] Buffer I/O error on device sda, logical block 2
    [  560.340000] Buffer I/O error on device sda, logical block 3
    [  560.350000] Buffer I/O error on device sda, logical block 4
    [  560.350000] Buffer I/O error on device sda, logical block 5
    [  560.360000] Buffer I/O error on device sda, logical block 6
    [  560.360000] Buffer I/O error on device sda, logical block 7
    [  591.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  622.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  653.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  684.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  715.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  746.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  746.310000] sd 0:0:0:0: [sda] Unhandled error code
    [  746.320000] sd 0:0:0:0: [sda]  Result: hostbyte=0x05 driverbyte=0x00
    [  746.320000] sd 0:0:0:0: [sda] CDB: cdb[0]=0x28: 28 00 00 00 00 00 00 00 01 00
    [  746.330000] end_request: I/O error, dev sda, sector 0
    [  746.340000] Buffer I/O error on device sda, logical block 0
    [  777.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
    [  808.160000] usb 1-1: reset full-speed USB device number 2 using ehci-platform
  • Hey,
    I am not familiar enough with Linux to aid with this. maybe the community or someone else knows what is going on. I'll leave this thread open for a while.
  • Hi,
    There seem no be no support for Linux with the existing driver.