[ARM] 5446/1: ohci-at91: Limit vbus_pin assignment to the size of the array
authorJustin Waters <justin.waters@timesys.com>
Fri, 3 Apr 2009 20:06:53 +0000 (21:06 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 8 Apr 2009 19:36:18 +0000 (20:36 +0100)
Currently, the vbus_pin assignment loop is limited by the value of the "ports"
variable in the platform data.  Now that the vbus_pin array is no longer
flexible, we can use its actual size.

Signed-off-by: Justin Waters <justin.waters@timesys.com>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/usb/host/ohci-at91.c

index 4ed228a899435a91bc1428daa37a9eb54f283b14..bb5e6f67157837691f4b22130133c4dc1283469e 100644 (file)
@@ -280,7 +280,7 @@ static int ohci_hcd_at91_drv_probe(struct platform_device *pdev)
                 * are always powered while this driver is active, and use
                 * active-low power switches.
                 */
-               for (i = 0; i < pdata->ports; i++) {
+               for (i = 0; i < ARRAY_SIZE(pdata->vbus_pin); i++) {
                        if (pdata->vbus_pin[i] <= 0)
                                continue;
                        gpio_request(pdata->vbus_pin[i], "ohci_vbus");
@@ -298,7 +298,7 @@ static int ohci_hcd_at91_drv_remove(struct platform_device *pdev)
        int                     i;
 
        if (pdata) {
-               for (i = 0; i < pdata->ports; i++) {
+               for (i = 0; i < ARRAY_SIZE(pdata->vbus_pin); i++) {
                        if (pdata->vbus_pin[i] <= 0)
                                continue;
                        gpio_direction_output(pdata->vbus_pin[i], 1);