2.5.54 -- ohci-dbg.c: 358: In function `show_list': `data1' undeclared (first use in this function)
Subsystems (2)
gcc -Wp,-MD,drivers/usb/host/.ohci-hcd.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=ohci_hcd
-DKBUILD_MODNAME=ohci_hcd -c -o drivers/usb/host/ohci-hcd.o drivers/usb/host/ohci-hcd.c
In file included from drivers/usb/host/ohci-hcd.c:137:drivers/usb/host/ohci-dbg.c: In function `show_list':drivers/usb/host/ohci-dbg.c:358: `data1' undeclared (first use in this function) drivers/usb/host/ohci-dbg.c:358: (Each undeclared identifier is reported only once drivers/usb/host/ohci-dbg.c:358: for each function it appears in.) drivers/usb/host/ohci-dbg.c:358: `data0' undeclared (first use in this function) make[3]: *** [drivers/usb/host/ohci-hcd.o] Error 1
# USB Options
#CONFIG_USB=y
#
# Miscellaneous USB options
#CONFIG_USB_DEVICEFS=y
#
# USB Host Controller Drivers
#CONFIG_USB_EHCI_HCD=yCONFIG_USB_OHCI_HCD=y
Quoted 9 lines · Miles Lane
gcc -Wp,-MD,drivers/usb/host/.ohci-hcd.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=ohci_hcd
-DKBUILD_MODNAME=ohci_hcd -c -odrivers/usb/host/ohci-hcd.odrivers/usb/host/ohci-hcd.c
In file included fromdrivers/usb/host/ohci-hcd.c:137:drivers/usb/host/ohci-dbg.c: In function `show_list':drivers/usb/host/ohci-dbg.c:358: `data1' undeclared (first use in this function)drivers/usb/host/ohci-dbg.c:358: (Each undeclared identifier is reported only oncedrivers/usb/host/ohci-dbg.c:358: for each function it appears in.)drivers/usb/host/ohci-dbg.c:358: `data0' undeclared (first use in this function) make[3]: *** [drivers/usb/host/ohci-hcd.o] Error 1
Looks like Greg's patch to use more dev_*() debug macros changed some conditional structures too ... so the sysfs debug files are always compiled in, rather than only with CONFIG_USB_DEBUG which is what defines them.
Workaround by enabling USB debugging in your configuration.
I'll send some patch around later, likely to just revert that part of his patch since I actually like having "production" OHCI modules be less than 12K. Though maybe those files should be enabled with some other Kconfig option. Thoughts?
- Dave
The attached patch just reverts the "always provide sysfs debug files" part of Greg's patch. Gets rid of that compile error as well as keeping the driver object size smaller.
If we want to have debug files without CONFIG_USB_DEBUG, I'd rather have them controlled by some other Kconfig option.
- Dave
drivers/usb/host/ohci-dbg.c renamed from drivers/usb-dist/host/ohci-dbg.c +13 -0
@@ -318,6 +318,10 @@ } } +#if LINUX_VERSION_CODE >KERNEL_VERSION (2 ,5 ,32 ) +# define DRIVERFS_DEBUG_FILES +#endif +#else static inline void ohci_dump (struct ohci_hcd *controller,int verbose) {}
@@ -325,6 +329,8 @@/*-------------------------------------------------------------------------*/ +#ifdef DRIVERFS_DEBUG_FILES +static ssize_t show_list (struct ohci_hcd *ohci,char *buf,size_t count,struct ed *ed) {
@@ -522,5 +528,12 @@ device_remove_file (bus->hcd.controller, &dev_attr_periodic); } +#else /* empty stubs for creating those files */ + +static inline void create_debug_files (struct ohci_hcd *bus) { } +static inline void remove_debug_files (struct ohci_hcd *bus) { } + +#endif /* DRIVERFS_DEBUG_FILES */ +/*-------------------------------------------------------------------------*/
drivers/usb/host/ohci-dbg.c line 323
Quoted 3 lines · David Brownell
drivers/usb/host/ohci-dbg.c renamed from drivers/usb-dist/host/ohci-dbg.c +3
-0+#if LINUX_VERSION_CODE >KERNEL_VERSION (2 ,5 ,32 ) +# define DRIVERFS_DEBUG_FILES +#endif
No, this is wrong, don't put this dependant on a specific kernel version that is long gone, that's why I took this portion out.
thanks,
greg k-h
Quoted 8 lines · Greg KH
drivers/usb/host/ohci-dbg.c line 323
Quoted 3 lines · David Brownell
drivers/usb/host/ohci-dbg.c renamed from drivers/usb-dist/host/ohci-dbg.c +3
-0+#if LINUX_VERSION_CODE >KERNEL_VERSION (2 ,5 ,32 ) +# define DRIVERFS_DEBUG_FILES +#endif No, this is wrong, don't put this dependant on a specific kernel version that is long gone, that's why I took this portion out.
Actually it originally there to support a backport of that version to the 2.4 kernel, which has periodically worked. That was the downside of that particular patch of yours ... it didn't wrap the dev_* calls as ohci_* calls, so the backport effort went up.
But OK, I'll remove that for now and resend.
- Dave