From: Adrian Bunk - make the needlessly global ftdi_release_platform_dev() static - remove the unused usb_ftdi_elan_read_reg() - proper prototypes for the following functions: - usb_ftdi_elan_read_pcimem() - usb_ftdi_elan_write_pcimem() Note that the misplaced prototypes for the latter ones in drivers/usb/host/u132-hcd.c were buggy. Depending on the calling convention of the architecture calling one of them could have turned your stack into garbage. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton --- drivers/usb/host/u132-hcd.c | 6 +----- drivers/usb/misc/ftdi-elan.c | 10 +--------- drivers/usb/misc/usb_u132.h | 4 ++++ 3 files changed, 6 insertions(+), 14 deletions(-) diff -puN drivers/usb/host/u132-hcd.c~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups drivers/usb/host/u132-hcd.c --- a/drivers/usb/host/u132-hcd.c~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups +++ a/drivers/usb/host/u132-hcd.c @@ -205,11 +205,7 @@ struct u132 { struct u132_port port[MAX_U132_PORTS]; struct u132_endp *endp[MAX_U132_ENDPS]; }; -int usb_ftdi_elan_read_reg(struct platform_device *pdev, u32 *data); -int usb_ftdi_elan_read_pcimem(struct platform_device *pdev, u8 addressofs, - u8 width, u32 *data); -int usb_ftdi_elan_write_pcimem(struct platform_device *pdev, u8 addressofs, - u8 width, u32 data); + /* * these can not be inlines because we need the structure offset!! * Does anyone have a better way????? diff -puN drivers/usb/misc/ftdi-elan.c~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups drivers/usb/misc/ftdi-elan.c --- a/drivers/usb/misc/ftdi-elan.c~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups +++ a/drivers/usb/misc/ftdi-elan.c @@ -303,7 +303,7 @@ void ftdi_elan_gone_away(struct platform EXPORT_SYMBOL_GPL(ftdi_elan_gone_away); -void ftdi_release_platform_dev(struct device *dev) +static void ftdi_release_platform_dev(struct device *dev) { dev->parent = NULL; } @@ -1426,14 +1426,6 @@ static int ftdi_elan_read_reg(struct usb } } -int usb_ftdi_elan_read_reg(struct platform_device *pdev, u32 *data) -{ - struct usb_ftdi *ftdi = platform_device_to_usb_ftdi(pdev); - return ftdi_elan_read_reg(ftdi, data); -} - - -EXPORT_SYMBOL_GPL(usb_ftdi_elan_read_reg); static int ftdi_elan_read_config(struct usb_ftdi *ftdi, int config_offset, u8 width, u32 *data) { diff -puN drivers/usb/misc/usb_u132.h~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups drivers/usb/misc/usb_u132.h --- a/drivers/usb/misc/usb_u132.h~drivers-usb-misc-ftdi-elanc-fixes-and-cleanups +++ a/drivers/usb/misc/usb_u132.h @@ -95,3 +95,7 @@ int usb_ftdi_elan_edset_setup(struct pla int halted, int skipped, int actual, int non_null)); int usb_ftdi_elan_edset_flush(struct platform_device *pdev, u8 ed_number, void *endp); +int usb_ftdi_elan_read_pcimem(struct platform_device *pdev, int mem_offset, + u8 width, u32 *data); +int usb_ftdi_elan_write_pcimem(struct platform_device *pdev, int mem_offset, + u8 width, u32 data); _