Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1639323 > unrolled thread
| Started by | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| First post | 2017-05-11 13:50 +0200 |
| Last post | 2017-05-11 20:30 +0200 |
| Articles | 3 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] bluetooth: hci_ll: add proper SERDEV dependency Arnd Bergmann <arnd@arndb.de> - 2017-05-11 13:50 +0200
Re: [PATCH] bluetooth: hci_ll: add proper SERDEV dependency Rob Herring <robh@kernel.org> - 2017-05-11 17:10 +0200
Re: [PATCH] bluetooth: hci_ll: add proper SERDEV dependency Sebastian Reichel <sre@kernel.org> - 2017-05-11 20:30 +0200
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2017-05-11 13:50 +0200 |
| Subject | [PATCH] bluetooth: hci_ll: add proper SERDEV dependency |
| Message-ID | <tFULv-5Ng-5@gated-at.bofh.it> |
When SERDEV is a loadable module, and the HCI code is built-in, we
get a link error:
drivers/bluetooth/built-in.o: In function `ll_close':
hci_ll.c:(.text+0x278d): undefined reference to `serdev_device_close'
drivers/bluetooth/built-in.o: In function `hci_ti_probe':
hci_ll.c:(.text+0x283c): undefined reference to `hci_uart_register_device'
drivers/bluetooth/built-in.o: In function `ll_setup':
hci_ll.c:(.text+0x289e): undefined reference to `serdev_device_set_flow_control'
hci_ll.c:(.text+0x2b9c): undefined reference to `serdev_device_set_baudrate'
drivers/bluetooth/built-in.o: In function `ll_open':
hci_ll.c:(.text+0x2c77): undefined reference to `serdev_device_open'
drivers/bluetooth/built-in.o: In function `ll_init':
(.init.text+0x10d): undefined reference to `__serdev_device_driver_register'
We already have CONFIG_BT_HCIUART_SERDEV as a Kconfig symbol that is
set when the serdev code is reachable by a driver. Unlike the nokia
driver, this one can also be built when serdev is completely disabled,
so we add a dependency on serdev either being usable or disabled here.
Fixes: 371805522f87 ("bluetooth: hci_uart: add LL protocol serdev driver support")
Cc: Rob Herring <robh@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/bluetooth/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig
index a63130ef2b98..b2cf0ae6b62d 100644
--- a/drivers/bluetooth/Kconfig
+++ b/drivers/bluetooth/Kconfig
@@ -133,6 +133,7 @@ config BT_HCIUART_ATH3K
config BT_HCIUART_LL
bool "HCILL protocol support"
depends on BT_HCIUART
+ depends on BT_HCIUART_SERDEV || SERIAL_DEV_BUS=n
help
HCILL (HCI Low Level) is a serial protocol for communication
between Bluetooth device and host. This protocol is required for
--
2.9.0
[toc] | [next] | [standalone]
| From | Rob Herring <robh@kernel.org> |
|---|---|
| Date | 2017-05-11 17:10 +0200 |
| Message-ID | <tFXT4-7X6-41@gated-at.bofh.it> |
| In reply to | #1639323 |
On Thu, May 11, 2017 at 6:41 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> When SERDEV is a loadable module, and the HCI code is built-in, we
> get a link error:
>
> drivers/bluetooth/built-in.o: In function `ll_close':
> hci_ll.c:(.text+0x278d): undefined reference to `serdev_device_close'
> drivers/bluetooth/built-in.o: In function `hci_ti_probe':
> hci_ll.c:(.text+0x283c): undefined reference to `hci_uart_register_device'
> drivers/bluetooth/built-in.o: In function `ll_setup':
> hci_ll.c:(.text+0x289e): undefined reference to `serdev_device_set_flow_control'
> hci_ll.c:(.text+0x2b9c): undefined reference to `serdev_device_set_baudrate'
> drivers/bluetooth/built-in.o: In function `ll_open':
> hci_ll.c:(.text+0x2c77): undefined reference to `serdev_device_open'
> drivers/bluetooth/built-in.o: In function `ll_init':
> (.init.text+0x10d): undefined reference to `__serdev_device_driver_register'
>
> We already have CONFIG_BT_HCIUART_SERDEV as a Kconfig symbol that is
> set when the serdev code is reachable by a driver. Unlike the nokia
> driver, this one can also be built when serdev is completely disabled,
> so we add a dependency on serdev either being usable or disabled here.
I thought this was okay because of the differences with the nokia
driver, but I should have tested it. In hindsight, serdev as a module
is really a PIA considering that it effectively has to be built-in due
to TTY dependencies.
Acked-by: Rob Herring <robh@kernel.org>
>
> Fixes: 371805522f87 ("bluetooth: hci_uart: add LL protocol serdev driver support")
> Cc: Rob Herring <robh@kernel.org>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> drivers/bluetooth/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
[toc] | [prev] | [next] | [standalone]
| From | Sebastian Reichel <sre@kernel.org> |
|---|---|
| Date | 2017-05-11 20:30 +0200 |
| Message-ID | <tG10C-1rf-17@gated-at.bofh.it> |
| In reply to | #1639323 |
[Multipart message — attachments visible in raw view] — view raw
Hi,
On Thu, May 11, 2017 at 01:41:54PM +0200, Arnd Bergmann wrote:
> When SERDEV is a loadable module, and the HCI code is built-in, we
> get a link error:
>
> drivers/bluetooth/built-in.o: In function `ll_close':
> hci_ll.c:(.text+0x278d): undefined reference to `serdev_device_close'
> drivers/bluetooth/built-in.o: In function `hci_ti_probe':
> hci_ll.c:(.text+0x283c): undefined reference to `hci_uart_register_device'
> drivers/bluetooth/built-in.o: In function `ll_setup':
> hci_ll.c:(.text+0x289e): undefined reference to `serdev_device_set_flow_control'
> hci_ll.c:(.text+0x2b9c): undefined reference to `serdev_device_set_baudrate'
> drivers/bluetooth/built-in.o: In function `ll_open':
> hci_ll.c:(.text+0x2c77): undefined reference to `serdev_device_open'
> drivers/bluetooth/built-in.o: In function `ll_init':
> (.init.text+0x10d): undefined reference to `__serdev_device_driver_register'
>
> We already have CONFIG_BT_HCIUART_SERDEV as a Kconfig symbol that is
> set when the serdev code is reachable by a driver. Unlike the nokia
> driver, this one can also be built when serdev is completely disabled,
> so we add a dependency on serdev either being usable or disabled here.
>
> Fixes: 371805522f87 ("bluetooth: hci_uart: add LL protocol serdev driver support")
> Cc: Rob Herring <robh@kernel.org>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
-- Sebastian
> ---
> drivers/bluetooth/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig
> index a63130ef2b98..b2cf0ae6b62d 100644
> --- a/drivers/bluetooth/Kconfig
> +++ b/drivers/bluetooth/Kconfig
> @@ -133,6 +133,7 @@ config BT_HCIUART_ATH3K
> config BT_HCIUART_LL
> bool "HCILL protocol support"
> depends on BT_HCIUART
> + depends on BT_HCIUART_SERDEV || SERIAL_DEV_BUS=n
> help
> HCILL (HCI Low Level) is a serial protocol for communication
> between Bluetooth device and host. This protocol is required for
> --
> 2.9.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web