From mboxrd@z Thu Jan 1 00:00:00 1970 From: mkl@pengutronix.de (Marc Kleine-Budde) Date: Thu, 21 Jun 2012 22:42:52 +0200 Subject: [PATCH v7] usb: chipidea: permit driver bindings pass phy pointer In-Reply-To: <1340268682-14654-1-git-send-email-richard.zhao@freescale.com> References: <4FE2CABE.7050708@pengutronix.de> <1340268682-14654-1-git-send-email-richard.zhao@freescale.com> Message-ID: <4FE3874C.2040504@pengutronix.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 06/21/2012 10:51 AM, Richard Zhao wrote: > Sometimes, the driver bindings may know what phy they use. > For example, when using device tree, the usb controller may have a > phandler pointing to usb phy. Remove the module doesn't remove the platform device. A subsequent modprobe fails with: ------------[ cut here ]------------ WARNING: at fs/sysfs/dir.c:529 sysfs_add_one+0x8c/0xbc() sysfs: cannot create duplicate filename '/devices/80080000.ahb/80080000.usb/ci_hdrc.0' Modules linked in: ci13xxx_imx(+) ci_hdrc udc_core [last unloaded: ci13xxx_imx] [] (unwind_backtrace+0x0/0xf0) from [] (warn_slowpath_common+0x4c/0x64) [] (warn_slowpath_common+0x4c/0x64) from [] (warn_slowpath_fmt+0x30/0x40) [] (warn_slowpath_fmt+0x30/0x40) from [] (sysfs_add_one+0x8c/0xbc) [] (sysfs_add_one+0x8c/0xbc) from [] (create_dir+0x60/0xc0) [] (create_dir+0x60/0xc0) from [] (sysfs_create_dir+0x64/0xa8) [] (sysfs_create_dir+0x64/0xa8) from [] (kobject_add_internal+0xa4/0x1e8) [] (kobject_add_internal+0xa4/0x1e8) from [] (kobject_add+0x50/0x98) [] (kobject_add+0x50/0x98) from [] (device_add+0xb8/0x358) [] (device_add+0xb8/0x358) from [] (platform_device_add+0xf8/0x1a0) [] (platform_device_add+0xf8/0x1a0) from [] (ci13xxx_add_device+0xd4/0x114 [ci_hdrc]) [] (ci13xxx_add_device+0xd4/0x114 [ci_hdrc]) from [] (ci13xxx_imx_probe+0x1e0/0x288 [ci13xxx_imx]) [] (ci13xxx_imx_probe+0x1e0/0x288 [ci13xxx_imx]) from [] (platform_drv_probe+0x14/0x18) [] (platform_drv_probe+0x14/0x18) from [] (really_probe+0x68/0x1e0) [] (really_probe+0x68/0x1e0) from [] (__driver_attach+0x8c/0x90) [] (__driver_attach+0x8c/0x90) from [] (bus_for_each_dev+0x54/0x7c) [] (bus_for_each_dev+0x54/0x7c) from [] (bus_add_driver+0x17c/0x248) [] (bus_add_driver+0x17c/0x248) from [] (driver_register+0x78/0x12c) [] (driver_register+0x78/0x12c) from [] (do_one_initcall+0x30/0x168) [] (do_one_initcall+0x30/0x168) from [] (sys_init_module+0x74/0x198) [] (sys_init_module+0x74/0x198) from [] (ret_fast_syscall+0x0/0x2c) ---[ end trace e152599aa12f31d8 ]--- ------------[ cut here ]------------ WARNING: at lib/kobject.c:196 kobject_add_internal+0x1cc/0x1e8() kobject_add_internal failed for ci_hdrc.0 with -EEXIST, don't try to register things with the same name in the same directory. Modules linked in: ci13xxx_imx(+) ci_hdrc udc_core [last unloaded: ci13xxx_imx] [] (unwind_backtrace+0x0/0xf0) from [] (warn_slowpath_common+0x4c/0x64) [] (warn_slowpath_common+0x4c/0x64) from [] (warn_slowpath_fmt+0x30/0x40) [] (warn_slowpath_fmt+0x30/0x40) from [] (kobject_add_internal+0x1cc/0x1e8) [] (kobject_add_internal+0x1cc/0x1e8) from [] (kobject_add+0x50/0x98) [] (kobject_add+0x50/0x98) from [] (device_add+0xb8/0x358) [] (device_add+0xb8/0x358) from [] (platform_device_add+0xf8/0x1a0) [] (platform_device_add+0xf8/0x1a0) from [] (ci13xxx_add_device+0xd4/0x114 [ci_hdrc]) [] (ci13xxx_add_device+0xd4/0x114 [ci_hdrc]) from [] (ci13xxx_imx_probe+0x1e0/0x288 [ci13xxx_imx]) [] (ci13xxx_imx_probe+0x1e0/0x288 [ci13xxx_imx]) from [] (platform_drv_probe+0x14/0x18) [] (platform_drv_probe+0x14/0x18) from [] (really_probe+0x68/0x1e0) [] (really_probe+0x68/0x1e0) from [] (__driver_attach+0x8c/0x90) [] (__driver_attach+0x8c/0x90) from [] (bus_for_each_dev+0x54/0x7c) [] (bus_for_each_dev+0x54/0x7c) from [] (bus_add_driver+0x17c/0x248) [] (bus_add_driver+0x17c/0x248) from [] (driver_register+0x78/0x12c) [] (driver_register+0x78/0x12c) from [] (do_one_initcall+0x30/0x168) [] (do_one_initcall+0x30/0x168) from [] (sys_init_module+0x74/0x198) [] (sys_init_module+0x74/0x198) from [] (ret_fast_syscall+0x0/0x2c) ---[ end trace e152599aa12f31d9 ]--- imx_usb 80080000.usb: Can't register ci_hdrc platform device, err=-17 imx_usb: probe of 80080000.usb failed with error -17 Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de | -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 262 bytes Desc: OpenPGP digital signature URL: