On Wed, Dec 19, 2018 at 7:50 AM Marcel Holtmann <marcel@xxxxxxxxxxxx> wrote: > > Hi Chen-Yu, > > > This is v3 of my Broadcom-based Bluetooth controllers on Allwinner SoC- > > based SBCs series. v2 was sent on 11/15, with a follow up ping on 11/28. > > No response from either Bluetooth maintainer. Would the maintainers > > acknowledge or provide feedback so we can move forward? WiFi for the > > Broadcom chips has been supported and enabled for many years. Bluetooth > > on the other hand has required userspace trickery to get it working. > > With serdev support, this now requires minimal interaction from > > users to get working. > > > > > > Changes since v2: > > > > - Collected tags from Ondrej for applicable patches > > > > Changes since v1: > > > > - Collected tags > > - Re-organize dt binding clocks and clock-names properties > > - Simplify check for deferred probe when getting clocks > > - Add explanation of Cubietruck's clk_out_a pinmux setting placement > > to commit message. > > - Add missing "uart-has-rtscts" property to Cubietruck device tree > > > > Original cover letter follows. > > > > > > On many Allwinner SBCs / developer boards, there is a WiFi+BT combo > > module from AMPAK. Inside is either one or two Broadcom chips, depending > > on the model. This series enables the Bluetooth controllers for AMPAK > > AP6210, AP6212, and AP6330 found on several boards. More will come later > > as other SoCs require changes to some other parts. I did not cover the > > SCO PCM connections from the controller to the SoC's I2S interface. It > > seems no one is actually doing this, so I was not sure how to proceed. > > Any suggestions? > > > > I deliberately left out the netdev mailing list and Dave Miller, as the > > only thing that is under net is the binding document. Maybe we should > > move that out of Documentation/devicetree/bindings/net/ ? > > > > Also, I'm not subscribed to the linux-bluetooth ML, so please CC me for > > any discussions. > > > > Patches 1 through 4 are device tree binding changes: > > > > 1 - Make the external clock name unambiguous, and add a second entry for > > the LPO clock. > > > > 2 - Add regulator supply properties for the VBAT and VDDIO power pins. > > > > 3 - Add a compatible string for BCM20702A1. > > > > 4 - Add a compatible string for BCM4330. > > > > Patches 5 through 13 are changes to the driver, either improvements, > > or updates to handle the updated device tree binding. > > > > 5 - Make the driver handle deferred probing for the external clock. > > > > 6 - Simplify clock error checking for subsequent clk API calls. > > > > 7 - Handle clock-names for the main external clock. > > > > 8 - Support a new external clock, the LPO. > > > > 9 - Support regulator supplies. > > > > 10 - Wait a small amount of time after toggling the GPIO for the device > > to settle. > > > > 11 - Add support for BCM20702A1, including its default address. > > > > 12 - Add BCM4330 compatible string to the driver. > > > > 13 - Handle default address for BCM43430A0. > > > > 14 - Enable Broadcom-based serdev Bluetooth for multiple Allwinner ARMv7 > > boards. > > > > 15 - Enable Broadcom-based serdev Bluetooth for the Bananapi M64. > > > > checkpatch reports an error for both patch 11 and patch 13: > > > > ERROR: space required after that close brace '}' > > > > I followed the existing code's style. If this is undesirable, I can send > > a follow-up patch fixing the entire code block. > > > > The first 13 patches should go through the Bluetooth tree, while we, the > > sunxi maintainers, will take the last 2. > > > > > > Thanks > > ChenYu > > > > Chen-Yu Tsai (14): > > dt-bindings: net: broadcom-bluetooth: Fix external clock names > > dt-bindings: net: broadcom-bluetooth: Add VBAT and VDDIO supplies > > dt-bindings: net: broadcom-bluetooth: Add BCM20702A1 compatible string > > dt-bindings: net: broadcom-bluetooth: Add BCM4330 compatible string > > Bluetooth: hci_bcm: Handle deferred probing for the clock supply > > Bluetooth: hci_bcm: Simplify clk_get error handling > > Bluetooth: hci_bcm: Use "txco" and "extclk" to get clock reference > > Bluetooth: hci_bcm: Add support for LPO clock > > Bluetooth: hci_bcm: Add support for regulator supplies > > Bluetooth: hci_bcm: Wait for device to come out of reset after power > > on > > Bluetooth: hci_bcm: Add compatible string for BCM4330 > > Bluetooth: btbcm: Add default address for BCM43430A0 > > ARM: dts: sunxi: Enable Broadcom-based Bluetooth for multiple boards > > arm64: dts: allwinner: a64: bananapi-m64: Add Bluetooth device node > > > > Maxime Ripard (1): > > Bluetooth: hci_bcm: Add BCM20702A1 variant > > > > .../bindings/net/broadcom-bluetooth.txt | 11 +- > > arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 25 ++++ > > arch/arm/boot/dts/sun8i-a83t-bananapi-m3.dts | 18 +++ > > .../boot/dts/sun8i-a83t-cubietruck-plus.dts | 18 +++ > > arch/arm/boot/dts/sun8i-r16-bananapi-m2m.dts | 14 +++ > > .../dts/allwinner/sun50i-a64-bananapi-m64.dts | 14 +++ > > drivers/bluetooth/btbcm.c | 13 +- > > drivers/bluetooth/hci_bcm.c | 112 +++++++++++++++--- > > 8 files changed, 208 insertions(+), 17 deletions(-) > > patches 1-13 have been applied to bluetooth-next tree. Thanks. Queued up the last two for a late pull request round. ChenYu