diff options
-rw-r--r-- | drivers/usb/gadget/r8a66597-udc.c | 6 | ||||
-rw-r--r-- | include/linux/usb/r8a66597.h | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/drivers/usb/gadget/r8a66597-udc.c b/drivers/usb/gadget/r8a66597-udc.c index 4f3f1ce0424b..834a0202ae3f 100644 --- a/drivers/usb/gadget/r8a66597-udc.c +++ b/drivers/usb/gadget/r8a66597-udc.c | |||
@@ -576,7 +576,11 @@ static void init_controller(struct r8a66597 *r8a66597) | |||
576 | u16 endian = r8a66597->pdata->endian ? BIGEND : 0; | 576 | u16 endian = r8a66597->pdata->endian ? BIGEND : 0; |
577 | 577 | ||
578 | if (r8a66597->pdata->on_chip) { | 578 | if (r8a66597->pdata->on_chip) { |
579 | r8a66597_bset(r8a66597, 0x04, SYSCFG1); | 579 | if (r8a66597->pdata->buswait) |
580 | r8a66597_write(r8a66597, r8a66597->pdata->buswait, | ||
581 | SYSCFG1); | ||
582 | else | ||
583 | r8a66597_write(r8a66597, 0x0f, SYSCFG1); | ||
580 | r8a66597_bset(r8a66597, HSE, SYSCFG0); | 584 | r8a66597_bset(r8a66597, HSE, SYSCFG0); |
581 | 585 | ||
582 | r8a66597_bclr(r8a66597, USBE, SYSCFG0); | 586 | r8a66597_bclr(r8a66597, USBE, SYSCFG0); |
diff --git a/include/linux/usb/r8a66597.h b/include/linux/usb/r8a66597.h index 26d216734057..6e1bfaedb6ca 100644 --- a/include/linux/usb/r8a66597.h +++ b/include/linux/usb/r8a66597.h | |||
@@ -31,6 +31,9 @@ struct r8a66597_platdata { | |||
31 | /* This callback can control port power instead of DVSTCTR register. */ | 31 | /* This callback can control port power instead of DVSTCTR register. */ |
32 | void (*port_power)(int port, int power); | 32 | void (*port_power)(int port, int power); |
33 | 33 | ||
34 | /* This parameter is for BUSWAIT */ | ||
35 | u16 buswait; | ||
36 | |||
34 | /* set one = on chip controller, set zero = external controller */ | 37 | /* set one = on chip controller, set zero = external controller */ |
35 | unsigned on_chip:1; | 38 | unsigned on_chip:1; |
36 | 39 | ||