Message ID | 20190118170232.16142-4-anarsoul@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add support for rtl8723bs/rtl8723cs bluetooth | expand |
On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > --- > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > 1 file changed, 35 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > new file mode 100644 > index 000000000000..8357f242ae4c > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > @@ -0,0 +1,35 @@ > +RTL8723BS/RTL8723CS Bluetooth > +--------------------- > + > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > +BT is connected over serial. It speaks H5 protocol with few extra commands > +to upload firmware and change module speed. > + > +Required properties: > + > + - compatible: should be one of the following: > + * "realtek,rtl8723bs-bt" > + * "realtek,rtl8723cs-bt" > +Optional properties: > + > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > + - firmware-postfix: firmware postfix to be used for firmware config How is this used? Rob
On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > --- > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > 1 file changed, 35 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > new file mode 100644 > > index 000000000000..8357f242ae4c > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > @@ -0,0 +1,35 @@ > > +RTL8723BS/RTL8723CS Bluetooth > > +--------------------- > > + > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > +to upload firmware and change module speed. > > + > > +Required properties: > > + > > + - compatible: should be one of the following: > > + * "realtek,rtl8723bs-bt" > > + * "realtek,rtl8723cs-bt" > > +Optional properties: > > + > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > + - firmware-postfix: firmware postfix to be used for firmware config > > How is this used? rtl8723bs-bt needs 2 firmware binaries -- one is actual firmware, another is firmware config which is specific to the board. If firmware-postfix is specified, driver appends it to the name of config and requests board-specific config while loading firmware. I.e. if 'pine64' is specified as firmware-postfix driver will load rtl8723bs_config-pine64.bin. > Rob >
Hi Vasily, > Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > --- > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > 1 file changed, 35 insertions(+) > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > new file mode 100644 > > > index 000000000000..8357f242ae4c > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > @@ -0,0 +1,35 @@ > > > +RTL8723BS/RTL8723CS Bluetooth > > > +--------------------- > > > + > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > +to upload firmware and change module speed. > > > + > > > +Required properties: > > > + > > > + - compatible: should be one of the following: > > > + * "realtek,rtl8723bs-bt" > > > + * "realtek,rtl8723cs-bt" > > > +Optional properties: > > > + > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > + - firmware-postfix: firmware postfix to be used for firmware config > > sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? Stefan
> Stefan Wahren <stefan.wahren@i2se.com> hat am 18. Februar 2019 um 23:08 geschrieben: > > > Hi Vasily, > > > Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > > > > > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > > --- > > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > > 1 file changed, 35 insertions(+) > > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > new file mode 100644 > > > > index 000000000000..8357f242ae4c > > > > --- /dev/null > > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > @@ -0,0 +1,35 @@ > > > > +RTL8723BS/RTL8723CS Bluetooth > > > > +--------------------- > > > > + > > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > > +to upload firmware and change module speed. > > > > + > > > > +Required properties: > > > > + > > > > + - compatible: should be one of the following: > > > > + * "realtek,rtl8723bs-bt" > > > > + * "realtek,rtl8723cs-bt" > > > > +Optional properties: > > > > + > > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > > + - firmware-postfix: firmware postfix to be used for firmware config > > > > > sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. > > I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. > > Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? > > Stefan [1] - https://gist.github.com/lategoodbye/79bac99d4f1158a719a48ea3c45eb7f1
On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: > > Hi Vasily, Hi Stefan, > > Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > > > > > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > > --- > > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > > 1 file changed, 35 insertions(+) > > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > new file mode 100644 > > > > index 000000000000..8357f242ae4c > > > > --- /dev/null > > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > @@ -0,0 +1,35 @@ > > > > +RTL8723BS/RTL8723CS Bluetooth > > > > +--------------------- > > > > + > > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > > +to upload firmware and change module speed. > > > > + > > > > +Required properties: > > > > + > > > > + - compatible: should be one of the following: > > > > + * "realtek,rtl8723bs-bt" > > > > + * "realtek,rtl8723cs-bt" > > > > +Optional properties: > > > > + > > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > > + - firmware-postfix: firmware postfix to be used for firmware config > > > > > sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. > > I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. Looks good to me, but you may need to add firmware-postfix. > Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. > Stefan
Hi Vasily, Am 18.02.19 um 22:24 schrieb Vasily Khoruzhick: > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: >> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: >>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS >>> >>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> >>> --- >>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ >>> 1 file changed, 35 insertions(+) >>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>> >>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>> new file mode 100644 >>> index 000000000000..8357f242ae4c >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>> @@ -0,0 +1,35 @@ >>> +RTL8723BS/RTL8723CS Bluetooth >>> +--------------------- >>> + >>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while >>> +BT is connected over serial. It speaks H5 protocol with few extra commands >>> +to upload firmware and change module speed. >>> + >>> +Required properties: >>> + >>> + - compatible: should be one of the following: >>> + * "realtek,rtl8723bs-bt" >>> + * "realtek,rtl8723cs-bt" >>> +Optional properties: >>> + >>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) >>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) >>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) >>> + - firmware-postfix: firmware postfix to be used for firmware config >> How is this used? > rtl8723bs-bt needs 2 firmware binaries -- one is actual firmware, > another is firmware config which is specific to the board. If > firmware-postfix is specified, driver appends it to the name of config > and requests board-specific config while loading firmware. I.e. if > 'pine64' is specified as firmware-postfix driver will load > rtl8723bs_config-pine64.bin. this is a common problem (e.g. brcmfmac has the same problem [1]). Why not using the "model" property instead of inventing a new software specific property? [1] - https://patchwork.kernel.org/patch/10764463/ > >> Rob >> > _
On Mon, Feb 18, 2019 at 3:24 PM Vasily Khoruzhick <anarsoul@gmail.com> wrote: > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > --- > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > 1 file changed, 35 insertions(+) > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > new file mode 100644 > > > index 000000000000..8357f242ae4c > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > @@ -0,0 +1,35 @@ > > > +RTL8723BS/RTL8723CS Bluetooth > > > +--------------------- > > > + > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > +to upload firmware and change module speed. > > > + > > > +Required properties: > > > + > > > + - compatible: should be one of the following: > > > + * "realtek,rtl8723bs-bt" > > > + * "realtek,rtl8723cs-bt" > > > +Optional properties: > > > + > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > + - firmware-postfix: firmware postfix to be used for firmware config > > > > How is this used? > > rtl8723bs-bt needs 2 firmware binaries -- one is actual firmware, > another is firmware config which is specific to the board. If > firmware-postfix is specified, driver appends it to the name of config > and requests board-specific config while loading firmware. I.e. if > 'pine64' is specified as firmware-postfix driver will load > rtl8723bs_config-pine64.bin. We already have 'firmware-name' defined and I'd prefer not to have another way to do things. The difference is just you have to give the full filename. Also, on other chips with board specific config blobs, there's been some discussion of converting those to DT properties. That depends on you knowing what's in the blob and having a reasonable number of parameter to make properties. Rob
On Mon, Feb 18, 2019 at 4:28 PM Vasily Khoruzhick <anarsoul@gmail.com> wrote: > > On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: > > > > Hi Vasily, > > Hi Stefan, > > > > Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > > > > > > > > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > > > --- > > > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > > > 1 file changed, 35 insertions(+) > > > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > new file mode 100644 > > > > > index 000000000000..8357f242ae4c > > > > > --- /dev/null > > > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > @@ -0,0 +1,35 @@ > > > > > +RTL8723BS/RTL8723CS Bluetooth > > > > > +--------------------- > > > > > + > > > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > > > +to upload firmware and change module speed. > > > > > + > > > > > +Required properties: > > > > > + > > > > > + - compatible: should be one of the following: > > > > > + * "realtek,rtl8723bs-bt" > > > > > + * "realtek,rtl8723cs-bt" > > > > > +Optional properties: > > > > > + > > > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > > > + - firmware-postfix: firmware postfix to be used for firmware config > > > > > > > > sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. > > > > I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. > > Looks good to me, but you may need to add firmware-postfix. > > > Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? > > Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. Then why do we have both? Reset and enable are distinct. The inverse of enable-gpios is typically powerdown-gpios, not reset-gpios. Rob
On 19/02/2019 14:17, Rob Herring wrote: > On Mon, Feb 18, 2019 at 4:28 PM Vasily Khoruzhick <anarsoul@gmail.com> wrote: >> On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: >>> Hi Vasily, >> Hi Stefan, >> >>>> Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: >>>> >>>> >>>> On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: >>>>> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: >>>>>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS >>>>>> >>>>>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> >>>>>> --- >>>>>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ >>>>>> 1 file changed, 35 insertions(+) >>>>>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>> >>>>>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>> new file mode 100644 >>>>>> index 000000000000..8357f242ae4c >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>> @@ -0,0 +1,35 @@ >>>>>> +RTL8723BS/RTL8723CS Bluetooth >>>>>> +--------------------- >>>>>> + >>>>>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while >>>>>> +BT is connected over serial. It speaks H5 protocol with few extra commands >>>>>> +to upload firmware and change module speed. >>>>>> + >>>>>> +Required properties: >>>>>> + >>>>>> + - compatible: should be one of the following: >>>>>> + * "realtek,rtl8723bs-bt" >>>>>> + * "realtek,rtl8723cs-bt" >>>>>> +Optional properties: >>>>>> + >>>>>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) >>>>>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) >>>>>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) >>>>>> + - firmware-postfix: firmware postfix to be used for firmware config >>> sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. >>> >>> I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. >> Looks good to me, but you may need to add firmware-postfix. >> >>> Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? >> Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. > Then why do we have both? Reset and enable are distinct. The inverse > of enable-gpios is typically powerdown-gpios, not reset-gpios. > > Rob Both data sheets that I know: http://cit.odessa.ua/media/pdf/Intel-Compute-Stick/FN-Link_F23BDSM25-W1.pdf http://files.pine64.org/doc/datasheet/pine64/RTL8723BS.pdf BT_RST_N BT Reset IN / BT_DIS# General Purpose I/O Pin So from the datasheet there is only one pin. And from its name it sounds like reset. This said though the datasheets of these Realtek devices are a bit thin ....
On Tue, Feb 19, 2019 at 6:14 AM Rob Herring <robh@kernel.org> wrote: > > On Mon, Feb 18, 2019 at 3:24 PM Vasily Khoruzhick <anarsoul@gmail.com> wrote: > > > > On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > > > > > > On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > > > > Add binding document for bluetooth part of RTL8723BS/RTL8723CS > > > > > > > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > > > > --- > > > > .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > > > > 1 file changed, 35 insertions(+) > > > > create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > > > > > diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > new file mode 100644 > > > > index 000000000000..8357f242ae4c > > > > --- /dev/null > > > > +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > > > > @@ -0,0 +1,35 @@ > > > > +RTL8723BS/RTL8723CS Bluetooth > > > > +--------------------- > > > > + > > > > +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > > > > +BT is connected over serial. It speaks H5 protocol with few extra commands > > > > +to upload firmware and change module speed. > > > > + > > > > +Required properties: > > > > + > > > > + - compatible: should be one of the following: > > > > + * "realtek,rtl8723bs-bt" > > > > + * "realtek,rtl8723cs-bt" > > > > +Optional properties: > > > > + > > > > + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > > > > + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > > > > + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > > > > + - firmware-postfix: firmware postfix to be used for firmware config > > > > > > How is this used? > > > > rtl8723bs-bt needs 2 firmware binaries -- one is actual firmware, > > another is firmware config which is specific to the board. If > > firmware-postfix is specified, driver appends it to the name of config > > and requests board-specific config while loading firmware. I.e. if > > 'pine64' is specified as firmware-postfix driver will load > > rtl8723bs_config-pine64.bin. > > We already have 'firmware-name' defined and I'd prefer not to have > another way to do things. The difference is just you have to give the > full filename. OK > Also, on other chips with board specific config blobs, there's been > some discussion of converting those to DT properties. That depends on > you knowing what's in the blob and having a reasonable number of > parameter to make properties. We'd have to RE binary format of this config first. > Rob
On Wed, Feb 20, 2019 at 5:09 AM David Summers <beagleboard@davidjohnsummers.uk> wrote: > > On 19/02/2019 14:17, Rob Herring wrote: > > On Mon, Feb 18, 2019 at 4:28 PM Vasily Khoruzhick <anarsoul@gmail.com> wrote: > >> On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: > >>> Hi Vasily, > >> Hi Stefan, > >> > >>>> Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > >>>> > >>>> > >>>> On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > >>>>> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > >>>>>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS > >>>>>> > >>>>>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > >>>>>> --- > >>>>>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > >>>>>> 1 file changed, 35 insertions(+) > >>>>>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>>> > >>>>>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>>> new file mode 100644 > >>>>>> index 000000000000..8357f242ae4c > >>>>>> --- /dev/null > >>>>>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>>> @@ -0,0 +1,35 @@ > >>>>>> +RTL8723BS/RTL8723CS Bluetooth > >>>>>> +--------------------- > >>>>>> + > >>>>>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > >>>>>> +BT is connected over serial. It speaks H5 protocol with few extra commands > >>>>>> +to upload firmware and change module speed. > >>>>>> + > >>>>>> +Required properties: > >>>>>> + > >>>>>> + - compatible: should be one of the following: > >>>>>> + * "realtek,rtl8723bs-bt" > >>>>>> + * "realtek,rtl8723cs-bt" > >>>>>> +Optional properties: > >>>>>> + > >>>>>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > >>>>>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > >>>>>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > >>>>>> + - firmware-postfix: firmware postfix to be used for firmware config > >>> sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. > >>> > >>> I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. > >> Looks good to me, but you may need to add firmware-postfix. > >> > >>> Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? > >> Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. > > Then why do we have both? Reset and enable are distinct. The inverse > > of enable-gpios is typically powerdown-gpios, not reset-gpios. > > > > Rob > > Both data sheets that I know: > > http://cit.odessa.ua/media/pdf/Intel-Compute-Stick/FN-Link_F23BDSM25-W1.pdf > http://files.pine64.org/doc/datasheet/pine64/RTL8723BS.pdf > > BT_RST_N BT Reset IN / BT_DIS# General Purpose I/O Pin > > So from the datasheet there is only one pin. And from its name it sounds > like reset. Yes there's only one pin. Would be nice if we could use "enable" though. That is what ACPI uses. > This said though the datasheets of these Realtek devices are a bit thin .... These datasheets are for the integrated modules (the chip plus passive components). I don't think the datasheet for the chip itself is public. ChenYu
Hi Vasily, Just catching up with this series - good that you are doing it. We need it for users on ArchLinux ARM! On question though, what is "firmware-postfix" used for? I see in the documentation, that it points to the board name. But can't see where else it is used. Is there a need to have the board name? Anyway good work. David. On 18/02/2019 22:28, Vasily Khoruzhick wrote: > On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: >> Hi Vasily, > Hi Stefan, > >>> Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: >>> >>> >>> On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: >>>> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: >>>>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS >>>>> >>>>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> >>>>> --- >>>>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ >>>>> 1 file changed, 35 insertions(+) >>>>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>> >>>>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>> new file mode 100644 >>>>> index 000000000000..8357f242ae4c >>>>> --- /dev/null >>>>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>> @@ -0,0 +1,35 @@ >>>>> +RTL8723BS/RTL8723CS Bluetooth >>>>> +--------------------- >>>>> + >>>>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while >>>>> +BT is connected over serial. It speaks H5 protocol with few extra commands >>>>> +to upload firmware and change module speed. >>>>> + >>>>> +Required properties: >>>>> + >>>>> + - compatible: should be one of the following: >>>>> + * "realtek,rtl8723bs-bt" >>>>> + * "realtek,rtl8723cs-bt" >>>>> +Optional properties: >>>>> + >>>>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) >>>>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) >>>>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) >>>>> + - firmware-postfix: firmware postfix to be used for firmware config >> sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. >> >> I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. > Looks good to me, but you may need to add firmware-postfix. > >> Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? > Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. > >> Stefan
On Fri, Feb 22, 2019 at 11:14 AM David Summers <beagleboard@davidjohnsummers.uk> wrote: > > Hi Vasily, > > Just catching up with this series - good that you are doing it. We need > it for users on ArchLinux ARM! > > On question though, what is "firmware-postfix" used for? I see in the > documentation, that it points to the board name. But can't see where > else it is used. See h5_serdev_probe() in drivers/bluetooth/hci_h5.c. Basically it specifies what firmware config to use. I agree with Rob that we should probably use firmware-name here instead. > Is there a need to have the board name? As far as I understand firmware config depends on board, so I think it's a good idea to use board name here. > Anyway good work. Thanks! > > David. > > On 18/02/2019 22:28, Vasily Khoruzhick wrote: > > On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: > >> Hi Vasily, > > Hi Stefan, > > > >>> Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: > >>> > >>> > >>> On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: > >>>> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: > >>>>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS > >>>>> > >>>>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> > >>>>> --- > >>>>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ > >>>>> 1 file changed, 35 insertions(+) > >>>>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>> > >>>>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>> new file mode 100644 > >>>>> index 000000000000..8357f242ae4c > >>>>> --- /dev/null > >>>>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt > >>>>> @@ -0,0 +1,35 @@ > >>>>> +RTL8723BS/RTL8723CS Bluetooth > >>>>> +--------------------- > >>>>> + > >>>>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while > >>>>> +BT is connected over serial. It speaks H5 protocol with few extra commands > >>>>> +to upload firmware and change module speed. > >>>>> + > >>>>> +Required properties: > >>>>> + > >>>>> + - compatible: should be one of the following: > >>>>> + * "realtek,rtl8723bs-bt" > >>>>> + * "realtek,rtl8723cs-bt" > >>>>> +Optional properties: > >>>>> + > >>>>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) > >>>>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) > >>>>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) > >>>>> + - firmware-postfix: firmware postfix to be used for firmware config > >> sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. > >> > >> I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. > > Looks good to me, but you may need to add firmware-postfix. > > > >> Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? > > Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. > > > >> Stefan > >
On 22/02/2019 19:21, Vasily Khoruzhick wrote: > On Fri, Feb 22, 2019 at 11:14 AM David Summers > <beagleboard@davidjohnsummers.uk> wrote: >> Hi Vasily, >> >> Just catching up with this series - good that you are doing it. We need >> it for users on ArchLinux ARM! >> >> On question though, what is "firmware-postfix" used for? I see in the >> documentation, that it points to the board name. But can't see where >> else it is used. > See h5_serdev_probe() in drivers/bluetooth/hci_h5.c. Basically it > specifies what firmware config to use. > I agree with Rob that we should probably use firmware-name here instead. Ah OK followed it. its sets h5->id than in h5_btrtl_setup (in hci_h5) calls up btrtl_initialise (in btrtl.c) and that gives the file to load. Guess now need to trace what firmware files are available. Oh yes - see why you called it postfix, as that is the name given in btrl_initialise. I can't comment on what name is best, but I can see the sense of keeping the device tree hook the same as used as in btrtl_initialise. >> Is there a need to have the board name? > As far as I understand firmware config depends on board, so I think > it's a good idea to use board name here. > >> Anyway good work. > Thanks! > >> David. >> >> On 18/02/2019 22:28, Vasily Khoruzhick wrote: >>> On Mon, Feb 18, 2019 at 2:08 PM Stefan Wahren <stefan.wahren@i2se.com> wrote: >>>> Hi Vasily, >>> Hi Stefan, >>> >>>>> Vasily Khoruzhick <anarsoul@gmail.com> hat am 18. Februar 2019 um 22:24 geschrieben: >>>>> >>>>> >>>>> On Mon, Feb 18, 2019 at 1:10 PM Rob Herring <robh@kernel.org> wrote: >>>>>> On Fri, Jan 18, 2019 at 09:02:27AM -0800, Vasily Khoruzhick wrote: >>>>>>> Add binding document for bluetooth part of RTL8723BS/RTL8723CS >>>>>>> >>>>>>> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> >>>>>>> --- >>>>>>> .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ >>>>>>> 1 file changed, 35 insertions(+) >>>>>>> create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>>> >>>>>>> diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>>> new file mode 100644 >>>>>>> index 000000000000..8357f242ae4c >>>>>>> --- /dev/null >>>>>>> +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt >>>>>>> @@ -0,0 +1,35 @@ >>>>>>> +RTL8723BS/RTL8723CS Bluetooth >>>>>>> +--------------------- >>>>>>> + >>>>>>> +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while >>>>>>> +BT is connected over serial. It speaks H5 protocol with few extra commands >>>>>>> +to upload firmware and change module speed. >>>>>>> + >>>>>>> +Required properties: >>>>>>> + >>>>>>> + - compatible: should be one of the following: >>>>>>> + * "realtek,rtl8723bs-bt" >>>>>>> + * "realtek,rtl8723cs-bt" >>>>>>> +Optional properties: >>>>>>> + >>>>>>> + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) >>>>>>> + - enable-gpios: GPIO specifier, used to enable the BT module (active high) >>>>>>> + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) >>>>>>> + - firmware-postfix: firmware postfix to be used for firmware config >>>> sorry, i didn't noticed your great series before. David and i working at the same stuff but for the Asus Tinker Board. >>>> >>>> I created a similiar yet untested patch version for hci_h5 [1]. Maybe it's useful. >>> Looks good to me, but you may need to add firmware-postfix. >>> >>>> Just a comment about the binding. It's really necessary to add the reset-gpio? Can't we use the enable-gpio with inverse polarity for this? >>> Yes, we can use enable-gpio instead of reset-gpio on pine64 and pinebook. >>> >>>> Stefan >>
Hi Vasily, Hi Alex, On 22/02/2019 11:21, Vasily Khoruzhick wrote: > I agree with Rob that we should probably use firmware-name here instead. Have you considered skipping this property for v1 of this series? We can still add that property (as optional one) later on if we really see the need for it. (The btrtl code should already support the case where NULL is passed as "postfix") I checked the public rtl8723bs_bt [0] and rtl8723ds_bt [1] git repos and they each contain only one config blob. The blob from the rtl8723bs_bt repo worked on my two Amlogic boards (data only, sound input/output not tested), even though Amlogic seems to ship different blobs: [2] >> Is there a need to have the board name? > > As far as I understand firmware config depends on board, so I think > it's a good idea to use board name here. I also added Alex Lu from Realtek / Realsil to this email. Alex, I hope that you can help us with the "Bluetooth config" format for the Realtek WiFi and Bluetooth combo chips - mainly the ones which connect to the host using SDIO. This is important for us because the question came up whether we can describe everything that's part of the "config blob" as device-tree properties. If we knew the format we could generate the "config blob" on-the-fly (either by fully generating it, taking a blob - maybe with only the smallest set of config data - as "template" and update values on-the-fly, etc.) Marcel wrote a tool [3] which handles the basic config format. However, we're still missing a lot of details (only 3 offsets are known, "UART_CONFIG" contains 16 bytes but we only know the purpose of 4 of these, ...). I would highly appreciate if you give us enough details so we can extend Marcel's tool to display the human-readable representation of the config blobs from rtl8723bs_bt [0] and rtl8723ds_bt [1]. Vasily, thank you for your effort on this topic so far! If you keep me CC'ed on v2 of your series then I can test it on two of my Amlogic boards (which come with a RTL8723BS). [0] https://github.com/lwfinger/rtl8723bs_bt/tree/09eb91f52a639ec5e4c5c4c98dc2afede046cf20 [1] https://github.com/ayufan-pine64/rtl8723ds_bt/tree/fab21b52250d67857b694f961e1ff8618e678d89/8723D [2] https://github.com/khadas/android_hardware_realtek/tree/bd3b113266c353aafcbf528a0334d28090ff249b/rtkbt/system/etc/firmware [3] https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/rtlfw.c?id=261948090e9073514ac4b5f64c8715cf0a71eafa
Hi Martin, Thanks for your information. The config is related to eFuse in chips. I'm sorry that the details can't be open. Only some special configurations are related to the host platforms, such as UART working baudrate, hardware flow control, PCM settings, etc. These are the settings for HCI UART and PCM Interface. Most of configurations are only relevant to chips. Thanks, BRs, Alex Lu.
Hi Alex, On Sat, Mar 2, 2019 at 10:30 AM 陆朱伟 <alex_lu@realsil.com.cn> wrote: > > Hi Martin, > Thanks for your information. thank you for the quick reply! > The config is related to eFuse in chips. I'm sorry that the details can't be open. > Only some special configurations are related to the host platforms, such as UART working baudrate, hardware flow control, PCM settings, etc. These are the settings for HCI UART and PCM Interface. > Most of configurations are only relevant to chips. please let me repeat this with my own words to see if I understand the "config blob" correctly. Feel free to correct me if anything is wrong: - the data in the config blob "patches" eFuse values at runtime (non-persistent) - we know the offsets of the UART_CONFIG, PCM_SETTING and BD_ADDR - these can be "board specific" (like baud rate, flow control, ...) - most other values from the "config blob" are "chip specific" - meaning they are identical for each board and they only depend on the chip do you have any suggestions how we can support multiple boards (the main goal of this whole discussion is: how to do this "correct")? so far different approaches were discussed (not only in this thread, but also in the past): - use a separate config blob for each board. this means that whenever a new board is supported (for example by adding a .dts for it to the mainline kernel) then Bluetooth won't work out-of-the-box unless a config is provided. - specify the properties of the connection to the chip (for example by adding a device-tree property for the speed, flow control, ...) and generate the config based on the device-tree properties. - (I am open for other suggestions, please let us know if you have any) I would like to hear your opinion on this topic and especially the reasons behind your suggestions. Best regards Martin
Hi Martin, You're right about the config blob. Thanks for your invitation to the discussion. In my option, specifying the properties of the connection to the chip would be better. Thanks, BRs, Alex Lu. -----邮件原件----- 发件人: Martin Blumenstingl [mailto:martin.blumenstingl@googlemail.com] 发送时间: 2019年3月3日 0:44 收件人: 陆朱伟 抄送: anarsoul@gmail.com; beagleboard@davidjohnsummers.uk; davem@davemloft.net; devicetree@vger.kernel.org; johan.hedberg@gmail.com; linux-arm-kernel@lists.infradead.org; linux-bluetooth@vger.kernel.org; marcel@holtmann.org; mark.rutland@arm.com; maxime.ripard@bootlin.com; netdev@vger.kernel.org; robh@kernel.org; stefan.wahren@i2se.com; wens@csie.org 主题: Re: [PATCH 3/8] dt-bindings: net: bluetooth: Add rtl8723bs-bluetooth Hi Alex, On Sat, Mar 2, 2019 at 10:30 AM 陆朱伟 <alex_lu@realsil.com.cn> wrote: > > Hi Martin, > Thanks for your information. thank you for the quick reply! > The config is related to eFuse in chips. I'm sorry that the details can't be open. > Only some special configurations are related to the host platforms, such as UART working baudrate, hardware flow control, PCM settings, etc. These are the settings for HCI UART and PCM Interface. > Most of configurations are only relevant to chips. please let me repeat this with my own words to see if I understand the "config blob" correctly. Feel free to correct me if anything is wrong: - the data in the config blob "patches" eFuse values at runtime (non-persistent) - we know the offsets of the UART_CONFIG, PCM_SETTING and BD_ADDR - these can be "board specific" (like baud rate, flow control, ...) - most other values from the "config blob" are "chip specific" - meaning they are identical for each board and they only depend on the chip do you have any suggestions how we can support multiple boards (the main goal of this whole discussion is: how to do this "correct")? so far different approaches were discussed (not only in this thread, but also in the past): - use a separate config blob for each board. this means that whenever a new board is supported (for example by adding a .dts for it to the mainline kernel) then Bluetooth won't work out-of-the-box unless a config is provided. - specify the properties of the connection to the chip (for example by adding a device-tree property for the speed, flow control, ...) and generate the config based on the device-tree properties. - (I am open for other suggestions, please let us know if you have any) I would like to hear your opinion on this topic and especially the reasons behind your suggestions. Best regards Martin ------Please consider the environment before printing this e-mail.
On Dienstag, 19. Februar 2019 15:14:01 CEST Rob Herring wrote: > > > How is this used? > > > > rtl8723bs-bt needs 2 firmware binaries -- one is actual firmware, > > another is firmware config which is specific to the board. If > > firmware-postfix is specified, driver appends it to the name of config > > and requests board-specific config while loading firmware. I.e. if > > 'pine64' is specified as firmware-postfix driver will load > > rtl8723bs_config-pine64.bin. > > We already have 'firmware-name' defined and I'd prefer not to have > another way to do things. The difference is just you have to give the > full filename. > Hi Rob, I'm working on a v2 for this patchset and I've looked on how using "firmware- name" with the full filename would be possible but as David Summers has already written [1], the existing code [2] takes this "postfix" as parameter and basically fills it into a filename template ("${CFG_NAME}-${POSTFIX}.bin"). So either we stay with the "firmware-postfix" property or the existing code would have to be modified to accomodate the full filename; but if using firmware-postfix is unacceptable, I can rework the existing code. Luca [1] https://lore.kernel.org/netdev/d06e3c30-a34a-bd84-9cdf-535f253843e3@davidjohnsummers.uk/ [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/ drivers/bluetooth/btrtl.c#n566
diff --git a/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt new file mode 100644 index 000000000000..8357f242ae4c --- /dev/null +++ b/Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt @@ -0,0 +1,35 @@ +RTL8723BS/RTL8723CS Bluetooth +--------------------- + +RTL8723CS/RTL8723CS is WiFi + BT chip. WiFi part is connected over SDIO, while +BT is connected over serial. It speaks H5 protocol with few extra commands +to upload firmware and change module speed. + +Required properties: + + - compatible: should be one of the following: + * "realtek,rtl8723bs-bt" + * "realtek,rtl8723cs-bt" +Optional properties: + + - device-wake-gpios: GPIO specifier, used to wakeup the BT module (active high) + - enable-gpios: GPIO specifier, used to enable the BT module (active high) + - host-wake-gpios: GPIO specifier, used to wakeup the host processor (active high) + - firmware-postfix: firmware postfix to be used for firmware config + - reset-gpios: GPIO specifier, used to reset the BT module (active high) + +Example: + +&uart1 { + pinctrl-names = "default"; + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; + status = "okay"; + + bluetooth { + compatible = "realtek,rtl8723bs-bt"; + reset-gpios = <&r_pio 0 4 GPIO_ACTIVE_LOW>; /* PL4 */ + device-wake-gpios = <&r_pio 0 5 GPIO_ACTIVE_HIGH>; /* PL5 */ + host-wakeup-gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */ + firmware-postfix="pine64"; + }; +};
Add binding document for bluetooth part of RTL8723BS/RTL8723CS Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> --- .../bindings/net/rtl8723bs-bluetooth.txt | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/rtl8723bs-bluetooth.txt