From: Valentin Schneider <valentin.schneider@arm.com>
To: Yu Chen <chenyu56@huawei.com>,
linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: john.stultz@linaro.org, suzhuangluan@hisilicon.com,
kongfei@hisilicon.com, liuyu712@hisilicon.com,
wanghu17@hisilicon.com, butao@hisilicon.com,
chenyao11@huawei.com, fangshengzhou@hisilicon.com,
lipengcheng8@huawei.com, songxiaowei@hisilicon.com,
xuyiping@hisilicon.com, xuyoujun4@huawei.com,
yudongbin@hisilicon.com, zangleigang@hisilicon.com,
Felipe Balbi <balbi@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>
Subject: Re: [PATCH v2 07/10] usb: dwc3: Registering a role switch in the DRD code.
Date: Mon, 18 Feb 2019 17:30:32 +0000 [thread overview]
Message-ID: <8162929c-0d1b-1081-4be0-d40ed6f752d6@arm.com> (raw)
In-Reply-To: <20190218112310.17860-8-chenyu56@huawei.com>
Hi,
On 18/02/2019 11:23, Yu Chen wrote:
[...]
> @@ -522,6 +556,15 @@ int dwc3_drd_init(struct dwc3 *dwc)
> dwc3_set_mode(dwc, DWC3_GCTL_PRTCAP_OTG);
> }
>
> + dwc3_role_switch.fwnode = dev_fwnode(dwc->dev);
> + dwc3_role_switch.set = dwc3_usb_role_switch_set;
> + dwc3_role_switch.get = dwc3_usb_role_switch_get;
> + dwc->role_sw = usb_role_switch_register(dwc->dev, &dwc3_role_switch);
Building arm64 defconfig gives me this:
drivers/usb/dwc3/drd.o: In function `dwc3_drd_exit':
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:604: undefined reference to `usb_role_switch_unregister'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:604:(.text+0x814): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `usb_role_switch_unregister'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:604: undefined reference to `usb_role_switch_unregister'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:604:(.text+0x844): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `usb_role_switch_unregister'
drivers/usb/dwc3/drd.o: In function `dwc3_drd_init':
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:562: undefined reference to `usb_role_switch_register'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:562:(.text+0xa20): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `usb_role_switch_register'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:562: undefined reference to `usb_role_switch_register'
/home/valsch01/Work/kernel/drivers/usb/dwc3/drd.c:562:(.text+0xb4c): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `usb_role_switch_register'
Makefile:1024: recipe for target 'vmlinux' failed
make: *** [vmlinux] Error 1
This has CONFIG_USB_ROLE_SWITCH=m, setting it as a built-in makes the thing
linkable.
I suppose that's because defconfig gives us
CONFIG_USB_DWC3_DUAL_ROLE=y
but then that should probably force a CONFIG_USB_ROLE_SWITCH=y. My
immediate reaction to this would be to add:
---
diff --git a/drivers/usb/dwc3/Kconfig b/drivers/usb/dwc3/Kconfig
index 2b1494460d0c..661b1d2efc8b 100644
--- a/drivers/usb/dwc3/Kconfig
+++ b/drivers/usb/dwc3/Kconfig
@@ -44,6 +44,7 @@ config USB_DWC3_DUAL_ROLE
bool "Dual Role mode"
depends on ((USB=y || USB=USB_DWC3) && (USB_GADGET=y || USB_GADGET=USB_DWC3))
depends on (EXTCON=y || EXTCON=USB_DWC3)
+ select USB_ROLE_SWITCH
help
This is the default mode of working of DWC3 controller where
both host and gadget features are enabled.
---
Not sure how acceptable that is though.
> + if (ret) {
> + dwc3_drd_exit(dwc);
> + return PTR_ERR(dwc->role_sw);
> + }
> +
> return 0;
> }
>
> @@ -557,4 +600,6 @@ void dwc3_drd_exit(struct dwc3 *dwc)
>
> if (!dwc->edev)
> free_irq(dwc->otg_irq, dwc);
> +
> + usb_role_switch_unregister(dwc->role_sw);
> }
>
next prev parent reply other threads:[~2019-02-18 17:30 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-18 11:23 [PATCH v2 00/10] Add support for usb on Hikey960 Yu Chen
2019-02-18 11:23 ` [PATCH v2 01/10] dt-bindings: phy: Add support for HiSilicon's hi3660 USB PHY Yu Chen
2019-02-18 20:18 ` Rob Herring
2019-02-19 1:50 ` Chen Yu
2019-02-19 3:03 ` Chunfeng Yun
2019-02-19 3:55 ` Chen Yu
2019-02-19 14:22 ` Rob Herring
2019-02-18 11:23 ` [PATCH v2 02/10] dt-bindings: misc: Add bindings for HiSilicon usb hub and data role switch functionality on HiKey960 Yu Chen
2019-02-19 8:25 ` Sergei Shtylyov
2019-02-20 2:34 ` Chen Yu
2019-02-18 11:23 ` [PATCH v2 03/10] usb: dwc3: dwc3-of-simple: Add support for dwc3 of Hisilicon Soc Platform Yu Chen
2019-02-18 11:23 ` [PATCH v2 04/10] usb: dwc3: Add two quirks for Hisilicon Kirin " Yu Chen
2019-02-18 12:21 ` Andy Shevchenko
2019-02-18 12:31 ` Chen Yu
2019-02-18 11:23 ` [PATCH v2 05/10] phy: Add usb phy support for hi3660 Soc of Hisilicon Yu Chen
2019-02-18 11:23 ` [PATCH v2 06/10] usb: roles: Add usb role switch notifier Yu Chen
2019-02-18 11:23 ` [PATCH v2 07/10] usb: dwc3: Registering a role switch in the DRD code Yu Chen
2019-02-18 17:30 ` Valentin Schneider [this message]
2019-02-19 1:40 ` Chen Yu
2019-02-19 2:57 ` Jun Li
2019-02-19 3:37 ` Chen Yu
2019-02-18 11:23 ` [PATCH v2 08/10] hikey960: Support usb functionality of Hikey960 Yu Chen
2019-02-19 2:50 ` Chunfeng Yun
2019-02-19 3:20 ` Chen Yu
2019-02-22 7:32 ` Chunfeng Yun
2019-03-02 1:02 ` Chen Yu
2019-02-18 11:23 ` [PATCH v2 09/10] usb: gadget: Add configfs attribuite for controling match_existing_only Yu Chen
2019-02-18 11:23 ` [PATCH v2 10/10] dts: hi3660: Add support for usb on Hikey960 Yu Chen
2019-02-18 17:30 ` [PATCH v2 00/10] " Valentin Schneider
2019-02-19 1:34 ` Chen Yu
2019-02-19 11:31 ` Valentin Schneider
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8162929c-0d1b-1081-4be0-d40ed6f752d6@arm.com \
--to=valentin.schneider@arm.com \
--cc=balbi@kernel.org \
--cc=butao@hisilicon.com \
--cc=chenyao11@huawei.com \
--cc=chenyu56@huawei.com \
--cc=devicetree@vger.kernel.org \
--cc=fangshengzhou@hisilicon.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=john.stultz@linaro.org \
--cc=kongfei@hisilicon.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=lipengcheng8@huawei.com \
--cc=liuyu712@hisilicon.com \
--cc=songxiaowei@hisilicon.com \
--cc=suzhuangluan@hisilicon.com \
--cc=wanghu17@hisilicon.com \
--cc=xuyiping@hisilicon.com \
--cc=xuyoujun4@huawei.com \
--cc=yudongbin@hisilicon.com \
--cc=zangleigang@hisilicon.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®