public inbox for linux-bluetooth@vger.kernel.org
 help / color / mirror / Atom feed
From: Marcel Holtmann <marcel@holtmann.org>
To: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: [PATCH] Bluetooth: hci_nokia: select BT_BCM for btbcm_set_bdaddr()
Date: Mon, 24 Jul 2017 19:09:08 +0200	[thread overview]
Message-ID: <C99B9ECC-75CD-4945-BF49-496B66C19493@holtmann.org> (raw)
In-Reply-To: <20170724102357.cj73ujrukrqnl47s@earth>

Hi Sebastian,

>>>>>> The Nokia devices require the setup of its Public Bluetooth Device
>>>>>> Address and for that it is required to depend on vendor specific
>>>>>> commands. For Broadcom based Nokia devices, that is part of btbcm
>>>>>> module and can be selected via BT_BCM config option.
>>>>>> 
>>>>>> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
>>>>> 
>>>>> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
>>>> 
>>>> btw. we need to also provide the set_bdaddr for TI chips.
>>> 
>>> The TI based chip in Nokia N950 has a proper address configured, so
>>> it works without set_bdaddr (it would still be nice of course). It
>>> also seems to be missing for hci_ll, though. So the required command
>>> is completly unknown?
>> 
>> are these a TI address or a Nokia address? I doubt Nokia would
>> have actually shipped any hardware using an IEEE assigned address
>> to TI.
> 
> I can check this later.
> 
>> Where do we have the firmware files for the Nokia devices?
> 
> For N950 I extracted it out of the following rpm:
> 
> http://repo.merproject.org/obs/nemo:/devel:/hw:/ti:/omap3:/n950-n9/latest_armv7hl/src/ti-wl1273-bt-firmware-0.23-1.2.Nemo.Adaptation.N950.N9.src.rpm
> 
>> Don't they contain a command for setting the BD_ADDR.
> 
> I did not check, since the firmware file is not device
> specific as far as I know.

doen't matter since the old Nokia written driver hacked it from a sysfs file and the address came from the secure flash area.

>> Also the original Nokia driver had code to re-write that command
>> inline while loading the firmware.
> 
> The address injection happens in hardware specific code (stock driver
> supports TI, Broadcom & CSR). In opposit to Broadcom and CSR the TI
> specific one does not change the address:
> 
> https://github.com/nemomobile/kernel-adaptation-n950-n9/blob/master/drivers/bluetooth/hci_h4p/fw-ti1273.c

As far as I know they rewrite the Write BD_ADDR command of each vendor at the time before they send to the hardware.

Regards

Marcel


  parent reply	other threads:[~2017-07-24 17:09 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-22  9:57 [PATCH] Bluetooth: hci_nokia: select BT_BCM for btbcm_set_bdaddr() Marcel Holtmann
2017-07-22 19:03 ` Sebastian Reichel
2017-07-22 19:08   ` Marcel Holtmann
2017-07-22 21:16     ` Sebastian Reichel
2017-07-23  7:32       ` Marcel Holtmann
2017-07-24 10:23         ` Sebastian Reichel
2017-07-24 15:27           ` Sebastian Reichel
2017-07-24 17:10             ` Marcel Holtmann
2017-07-24 17:09           ` Marcel Holtmann [this message]
2017-07-24 18:48             ` Sebastian Reichel
2017-07-23  7:40       ` Marcel Holtmann
2017-07-24 18:58 ` Johan Hedberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C99B9ECC-75CD-4945-BF49-496B66C19493@holtmann.org \
    --to=marcel@holtmann.org \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=sebastian.reichel@collabora.co.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox