[PATCH] net/9p/usbg: fix CONFIG_USB_GADGET dependency

From: Arnd Bergmann
Date: Mon Sep 09 2024 - 05:17:57 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

When USB gadget support is in a loadable module, 9pfs cannot
link to it as a built-in driver:

x86_64-linux-ld: vmlinux.o: in function `usb9pfs_free_func':
trans_usbg.c:(.text+0x1070012): undefined reference to `usb_free_all_descriptors'
x86_64-linux-ld: vmlinux.o: in function `disable_ep':
trans_usbg.c:(.text+0x1070528): undefined reference to `usb_ep_disable'
x86_64-linux-ld: vmlinux.o: in function `usb9pfs_func_unbind':
trans_usbg.c:(.text+0x10705df): undefined reference to `usb_ep_free_request'
x86_64-linux-ld: trans_usbg.c:(.text+0x107061f): undefined reference to `usb_ep_free_request'
x86_64-linux-ld: vmlinux.o: in function `usb9pfs_func_bind':
trans_usbg.c:(.text+0x107069f): undefined reference to `usb_interface_id'
x86_64-linux-ld: trans_usbg.c:(.text+0x10706b5): undefined reference to `usb_string_id'

Change the Kconfig dependency to only allow this to be enabled
when it can successfully link and work.

Fixes: a3be076dc174 ("net/9p/usbg: Add new usb gadget function transport")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
net/9p/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/9p/Kconfig b/net/9p/Kconfig
index 2d7e596e22c3..63f988f0c9e8 100644
--- a/net/9p/Kconfig
+++ b/net/9p/Kconfig
@@ -42,7 +42,7 @@ config NET_9P_XEN

config NET_9P_USBG
bool "9P USB Gadget Transport"
- depends on USB_GADGET
+ depends on USB_GADGET=y || USB_GADGET=NET_9P
help
This builds support for a transport for 9pfs over
usb gadget.
--
2.39.2