* [PATCH v6 0/2] add support of interrupt for host wakeup from devicetree in BCM HCI driver @ 2020-01-09 10:42 Guillaume La Roque 2020-01-09 10:42 ` [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties Guillaume La Roque 2020-01-09 10:42 ` [PATCH v6 2/2] bluetooth: hci_bcm: enable IRQ capability from devicetree Guillaume La Roque 0 siblings, 2 replies; 7+ messages in thread From: Guillaume La Roque @ 2020-01-09 10:42 UTC (permalink / raw) To: marcel, johan.hedberg, devicetree, linux-bluetooth Cc: johan, nsaenzjulienne, linux-kernel, khilman add interrupts and interrupt-names properties to set host wakeup IRQ. actually driver find this IRQ from host-wakeup-gpios propety but some platforms are not supported gpiod_to_irq function. so to have possibility to use interrupt mode we need to add interrupts field in devicetree and support it in driver. change sinve v5: - add tags change sinve v4 [1]: - add patch to update Documentation - use of_irq_get_byname to be more clear and move call in bcm_of_probe - update commit message change since v3: - move on of_irq instead of platform_get_irq change since v2: - fix commit message change since v1: - rebase patch [1] https://lore.kernel.org/linux-bluetooth/20191213105521.4290-1-glaroque@baylibre.com/ Guillaume La Roque (2): dt-bindings: net: bluetooth: add interrupts properties bluetooth: hci_bcm: enable IRQ capability from devicetree Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- drivers/bluetooth/hci_bcm.c | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) -- 2.17.1 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties 2020-01-09 10:42 [PATCH v6 0/2] add support of interrupt for host wakeup from devicetree in BCM HCI driver Guillaume La Roque @ 2020-01-09 10:42 ` Guillaume La Roque 2020-01-09 10:53 ` Johan Hovold 2020-01-09 10:42 ` [PATCH v6 2/2] bluetooth: hci_bcm: enable IRQ capability from devicetree Guillaume La Roque 1 sibling, 1 reply; 7+ messages in thread From: Guillaume La Roque @ 2020-01-09 10:42 UTC (permalink / raw) To: marcel, johan.hedberg, devicetree, linux-bluetooth Cc: johan, nsaenzjulienne, linux-kernel, khilman add interrupts and interrupt-names as optional properties to support host-wakeup by interrupt properties instead of host-wakeup-gpios. Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> --- Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt index c44a30dbe43d..d33bbc998687 100644 --- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt +++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt @@ -37,7 +37,9 @@ Optional properties: - pcm-frame-type: short, long - pcm-sync-mode: slave, master - pcm-clock-mode: slave, master - + - interrupts: must be one, used to wakeup the host processor if + gpiod_to_irq function not supported + - interrupt-names: must be "host-wakeup" Example: -- 2.17.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties 2020-01-09 10:42 ` [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties Guillaume La Roque @ 2020-01-09 10:53 ` Johan Hovold 2020-01-09 13:13 ` guillaume La Roque 0 siblings, 1 reply; 7+ messages in thread From: Johan Hovold @ 2020-01-09 10:53 UTC (permalink / raw) To: Guillaume La Roque, Rob Herring Cc: marcel, johan.hedberg, devicetree, linux-bluetooth, johan, nsaenzjulienne, linux-kernel, khilman On Thu, Jan 09, 2020 at 11:42:56AM +0100, Guillaume La Roque wrote: > add interrupts and interrupt-names as optional properties > to support host-wakeup by interrupt properties instead of > host-wakeup-gpios. > > Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> > --- > Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > index c44a30dbe43d..d33bbc998687 100644 > --- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > +++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > @@ -37,7 +37,9 @@ Optional properties: > - pcm-frame-type: short, long > - pcm-sync-mode: slave, master > - pcm-clock-mode: slave, master > - > + - interrupts: must be one, used to wakeup the host processor if > + gpiod_to_irq function not supported > + - interrupt-names: must be "host-wakeup" Looks like you forgot to address Rob's comment. If I understood him correctly you either need to stick with "host-wakeup-gpios" (and fix your platform) or deprecate it in favour of "interrupts": https://lkml.kernel.org/r/20191218203818.GA8009@bogus Johan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties 2020-01-09 10:53 ` Johan Hovold @ 2020-01-09 13:13 ` guillaume La Roque 2020-01-09 13:29 ` Johan Hovold 0 siblings, 1 reply; 7+ messages in thread From: guillaume La Roque @ 2020-01-09 13:13 UTC (permalink / raw) To: Johan Hovold, Rob Herring Cc: marcel, johan.hedberg, devicetree, linux-bluetooth, nsaenzjulienne, linux-kernel, khilman On 1/9/20 11:53 AM, Johan Hovold wrote: > On Thu, Jan 09, 2020 at 11:42:56AM +0100, Guillaume La Roque wrote: >> add interrupts and interrupt-names as optional properties >> to support host-wakeup by interrupt properties instead of >> host-wakeup-gpios. >> >> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> >> --- >> Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt >> index c44a30dbe43d..d33bbc998687 100644 >> --- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt >> +++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt >> @@ -37,7 +37,9 @@ Optional properties: >> - pcm-frame-type: short, long >> - pcm-sync-mode: slave, master >> - pcm-clock-mode: slave, master >> - >> + - interrupts: must be one, used to wakeup the host processor if >> + gpiod_to_irq function not supported >> + - interrupt-names: must be "host-wakeup" > Looks like you forgot to address Rob's comment. If I understood him > correctly you either need to stick with "host-wakeup-gpios" (and fix > your platform) or deprecate it in favour of "interrupts": > > https://lkml.kernel.org/r/20191218203818.GA8009@bogus not forgot marcel ask me a v6 for rob comment ok but it's not possible to support gpiod_to_irq on my platform. if i deprecated it i need to update all DT with good interrupt number right? > Johan Regards Guillaume ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties 2020-01-09 13:13 ` guillaume La Roque @ 2020-01-09 13:29 ` Johan Hovold 2020-01-13 22:37 ` Rob Herring 0 siblings, 1 reply; 7+ messages in thread From: Johan Hovold @ 2020-01-09 13:29 UTC (permalink / raw) To: guillaume La Roque Cc: Johan Hovold, Rob Herring, marcel, johan.hedberg, devicetree, linux-bluetooth, nsaenzjulienne, linux-kernel, khilman On Thu, Jan 09, 2020 at 02:13:23PM +0100, guillaume La Roque wrote: > > On 1/9/20 11:53 AM, Johan Hovold wrote: > > On Thu, Jan 09, 2020 at 11:42:56AM +0100, Guillaume La Roque wrote: > >> add interrupts and interrupt-names as optional properties > >> to support host-wakeup by interrupt properties instead of > >> host-wakeup-gpios. > >> > >> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> > >> --- > >> Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- > >> 1 file changed, 3 insertions(+), 1 deletion(-) > >> > >> diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > >> index c44a30dbe43d..d33bbc998687 100644 > >> --- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > >> +++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > >> @@ -37,7 +37,9 @@ Optional properties: > >> - pcm-frame-type: short, long > >> - pcm-sync-mode: slave, master > >> - pcm-clock-mode: slave, master > >> - > >> + - interrupts: must be one, used to wakeup the host processor if > >> + gpiod_to_irq function not supported > >> + - interrupt-names: must be "host-wakeup" > > Looks like you forgot to address Rob's comment. If I understood him > > correctly you either need to stick with "host-wakeup-gpios" (and fix > > your platform) or deprecate it in favour of "interrupts": > > > > https://lkml.kernel.org/r/20191218203818.GA8009@bogus > > not forgot marcel ask me a v6 Not much point in sending v6 before addressing feedback on v5. Especially as Marcel asked for a v6 with acks. ;) > for rob comment ok but it's not possible to support gpiod_to_irq on my > platform. > > if i deprecated it i need to update all DT with good interrupt number > right? Not sure. Perhaps just updating the binding is enough. Rob? Johan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties 2020-01-09 13:29 ` Johan Hovold @ 2020-01-13 22:37 ` Rob Herring 0 siblings, 0 replies; 7+ messages in thread From: Rob Herring @ 2020-01-13 22:37 UTC (permalink / raw) To: Johan Hovold Cc: guillaume La Roque, marcel, johan.hedberg, devicetree, linux-bluetooth, nsaenzjulienne, linux-kernel, khilman On Thu, Jan 09, 2020 at 02:29:17PM +0100, Johan Hovold wrote: > On Thu, Jan 09, 2020 at 02:13:23PM +0100, guillaume La Roque wrote: > > > > On 1/9/20 11:53 AM, Johan Hovold wrote: > > > On Thu, Jan 09, 2020 at 11:42:56AM +0100, Guillaume La Roque wrote: > > >> add interrupts and interrupt-names as optional properties > > >> to support host-wakeup by interrupt properties instead of > > >> host-wakeup-gpios. > > >> > > >> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> > > >> --- > > >> Documentation/devicetree/bindings/net/broadcom-bluetooth.txt | 4 +++- > > >> 1 file changed, 3 insertions(+), 1 deletion(-) > > >> > > >> diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > > >> index c44a30dbe43d..d33bbc998687 100644 > > >> --- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > > >> +++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt > > >> @@ -37,7 +37,9 @@ Optional properties: > > >> - pcm-frame-type: short, long > > >> - pcm-sync-mode: slave, master > > >> - pcm-clock-mode: slave, master > > >> - > > >> + - interrupts: must be one, used to wakeup the host processor if > > >> + gpiod_to_irq function not supported > > >> + - interrupt-names: must be "host-wakeup" > > > Looks like you forgot to address Rob's comment. If I understood him > > > correctly you either need to stick with "host-wakeup-gpios" (and fix > > > your platform) or deprecate it in favour of "interrupts": > > > > > > https://lkml.kernel.org/r/20191218203818.GA8009@bogus > > > > not forgot marcel ask me a v6 > > Not much point in sending v6 before addressing feedback on v5. > Especially as Marcel asked for a v6 with acks. ;) > > > for rob comment ok but it's not possible to support gpiod_to_irq on my > > platform. > > > > if i deprecated it i need to update all DT with good interrupt number > > right? > > Not sure. Perhaps just updating the binding is enough. Rob? Correct. Just need to reflect in the binding which way is preferred. If it's a case of update all the dts files, then we often just don't document the old way. Rob ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v6 2/2] bluetooth: hci_bcm: enable IRQ capability from devicetree 2020-01-09 10:42 [PATCH v6 0/2] add support of interrupt for host wakeup from devicetree in BCM HCI driver Guillaume La Roque 2020-01-09 10:42 ` [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties Guillaume La Roque @ 2020-01-09 10:42 ` Guillaume La Roque 1 sibling, 0 replies; 7+ messages in thread From: Guillaume La Roque @ 2020-01-09 10:42 UTC (permalink / raw) To: marcel, johan.hedberg, devicetree, linux-bluetooth Cc: johan, nsaenzjulienne, linux-kernel, khilman Add support for getting IRQ directly from DT instead of relying on converting a GPIO to IRQ. This is needed for platforms with GPIO controllers that that do not support gpiod_to_irq(). Reviewed-by: Kevin Hilman <khilman@baylibre.com> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> --- drivers/bluetooth/hci_bcm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c index 769bb4404bd1..b236cb11c0dc 100644 --- a/drivers/bluetooth/hci_bcm.c +++ b/drivers/bluetooth/hci_bcm.c @@ -13,6 +13,7 @@ #include <linux/module.h> #include <linux/acpi.h> #include <linux/of.h> +#include <linux/of_irq.h> #include <linux/property.h> #include <linux/platform_data/x86/apple.h> #include <linux/platform_device.h> @@ -1151,6 +1152,8 @@ static int bcm_of_probe(struct bcm_device *bdev) device_property_read_u32(bdev->dev, "max-speed", &bdev->oper_speed); device_property_read_u8_array(bdev->dev, "brcm,bt-pcm-int-params", bdev->pcm_int_params, 5); + bdev->irq = of_irq_get_byname(bdev->dev->of_node, "host-wakeup"); + return 0; } -- 2.17.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-01-13 22:37 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-01-09 10:42 [PATCH v6 0/2] add support of interrupt for host wakeup from devicetree in BCM HCI driver Guillaume La Roque 2020-01-09 10:42 ` [PATCH v6 1/2] dt-bindings: net: bluetooth: add interrupts properties Guillaume La Roque 2020-01-09 10:53 ` Johan Hovold 2020-01-09 13:13 ` guillaume La Roque 2020-01-09 13:29 ` Johan Hovold 2020-01-13 22:37 ` Rob Herring 2020-01-09 10:42 ` [PATCH v6 2/2] bluetooth: hci_bcm: enable IRQ capability from devicetree Guillaume La Roque
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).