aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/include/mach/board.h
diff options
context:
space:
mode:
authorJustin Waters <justin.waters@timesys.com>2009-04-03 21:03:59 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-04-08 20:36:16 +0100
commitd0176f612f5c3edca00b9d0cc65555ad34843ec7 (patch)
tree10ce61783c3a53db00e82299762b090c72a96df5 /arch/arm/mach-at91/include/mach/board.h
parent8bd239d2ef00ed3319bf7384acd19c8253f0bb68 (diff)
downloadkernel_samsung_smdk4412-d0176f612f5c3edca00b9d0cc65555ad34843ec7.zip
kernel_samsung_smdk4412-d0176f612f5c3edca00b9d0cc65555ad34843ec7.tar.gz
kernel_samsung_smdk4412-d0176f612f5c3edca00b9d0cc65555ad34843ec7.tar.bz2
[ARM] 5445/1: AT91: Remove flexible array from USBH platform data
The flexible array in the USBH platform data is not safe to copy. The compiler will not allocate any extra memory for the non-init platform data structure (in the *_devices.c files) since it isn't given any defaults at compile time. When the probe function attempts to address that array, it will actually attempt to access data in an adjacent structure. Since there are currently no (known) implementations of the at91 USBH IP with more than 2 vbus pins, I am capping the value at 2. If somebody tries to assign more, then the compiler will produce a warning. Signed-off-by: Justin Waters <justin.waters@timesys.com> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Andrew Victor <linux@maxim.org.za> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-at91/include/mach/board.h')
-rw-r--r--arch/arm/mach-at91/include/mach/board.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-at91/include/mach/board.h b/arch/arm/mach-at91/include/mach/board.h
index 793fe7b..e6afff8 100644
--- a/arch/arm/mach-at91/include/mach/board.h
+++ b/arch/arm/mach-at91/include/mach/board.h
@@ -87,7 +87,7 @@ extern void __init at91_add_device_eth(struct at91_eth_data *data);
/* USB Host */
struct at91_usbh_data {
u8 ports; /* number of ports on root hub */
- u8 vbus_pin[]; /* port power-control pin */
+ u8 vbus_pin[2]; /* port power-control pin */
};
extern void __init at91_add_device_usbh(struct at91_usbh_data *data);