From 8e4087e9ae42c41a87e716923ca03dd699bf9bdf Mon Sep 17 00:00:00 2001 From: Yoshihiro Shimoda Date: Fri, 8 Jul 2011 14:51:27 +0900 Subject: [PATCH] --- yaml --- r: 259300 b: refs/heads/master c: 5154e9f126c1d2ee8f5f93d9954f83d82b2d5e64 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/usb/gadget/r8a66597-udc.c | 6 +++++- trunk/include/linux/usb/r8a66597.h | 3 +++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index e67b55485760..bf2a345c3ca9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: deafeb24e8a846da8555e68f4bcf651daa8a4ed1 +refs/heads/master: 5154e9f126c1d2ee8f5f93d9954f83d82b2d5e64 diff --git a/trunk/drivers/usb/gadget/r8a66597-udc.c b/trunk/drivers/usb/gadget/r8a66597-udc.c index 4f3f1ce0424b..834a0202ae3f 100644 --- a/trunk/drivers/usb/gadget/r8a66597-udc.c +++ b/trunk/drivers/usb/gadget/r8a66597-udc.c @@ -576,7 +576,11 @@ static void init_controller(struct r8a66597 *r8a66597) u16 endian = r8a66597->pdata->endian ? BIGEND : 0; if (r8a66597->pdata->on_chip) { - r8a66597_bset(r8a66597, 0x04, SYSCFG1); + if (r8a66597->pdata->buswait) + r8a66597_write(r8a66597, r8a66597->pdata->buswait, + SYSCFG1); + else + r8a66597_write(r8a66597, 0x0f, SYSCFG1); r8a66597_bset(r8a66597, HSE, SYSCFG0); r8a66597_bclr(r8a66597, USBE, SYSCFG0); diff --git a/trunk/include/linux/usb/r8a66597.h b/trunk/include/linux/usb/r8a66597.h index 26d216734057..6e1bfaedb6ca 100644 --- a/trunk/include/linux/usb/r8a66597.h +++ b/trunk/include/linux/usb/r8a66597.h @@ -31,6 +31,9 @@ struct r8a66597_platdata { /* This callback can control port power instead of DVSTCTR register. */ void (*port_power)(int port, int power); + /* This parameter is for BUSWAIT */ + u16 buswait; + /* set one = on chip controller, set zero = external controller */ unsigned on_chip:1;