← Back to team overview

kernel-packages team mailing list archive

[Bug 1065400] Re: Support for loading Broadcom bluetooth firmware


So, I think I now know the problem.

Regarding this code snippet (3.16.7 btusb)
	{ USB_VENDOR_AND_INTERFACE_INFO(0x0489, 0xff, 0x01, 0x01) },

	/* Broadcom devices with vendor specific id */
	{ USB_VENDOR_AND_INTERFACE_INFO(0x0a5c, 0xff, 0x01, 0x01),
	  .driver_info = BTUSB_BCM_PATCHRAM },
the patchram fw load function is only used with devices with VID 0x0a5c. Thats not good, as my device is of VID 0x0489 and needs the broadcom fw too.  :(

My device is a BCM 2070 (  0489:e031 Foxconn / Hon Hai ).

How can I get the ".driver_info = BTUSB_BCM_PATCHRAM }, " into my btusb
module for the 0x0489 devices?

You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.

  Support for loading Broadcom bluetooth firmware

Status in “linux” package in Ubuntu:
  Fix Released
Status in “linux” source package in Precise:
  Fix Released
Status in “linux” source package in Quantal:
  Fix Released
Status in “linux” source package in Raring:
  Fix Released
Status in “linux” source package in Saucy:
  Fix Released

Bug description:
  Broadcom bluetooth chips require a tool called patchram uploader [1]
  to load firmware. This applies to at least BCM20702 and BCM43142.
  Although some of the devices have an OTPROM that contains required
  firmware, but it is found that these devices would not have HFP/HSP
  support unless a upgraded firmware is loaded via patchram uploader.

  This tool requires hci device to do the firmware loading, but this may
  cause some race condition between patchram tool and bluetoothd or
  something that also works on hci interface.

  Also it needs some hooks to make firmware loads after bootup, s3,  s4,
  rfkill, and device hotplug events. Implement this loader in kernel
  module would make things more easier.

  [1] http://marc.info/?l=linux-bluetooth&m=132039175324993&w=2

To manage notifications about this bug go to: