* [PATCH 0/2] usb: s3c-hsotg: fixes for maxpacket and TX FIFO handling
@ 2013-12-06 12:03 Robert Baldyga
2013-12-06 12:03 ` [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone Robert Baldyga
2013-12-06 12:03 ` [PATCH 2/2] USB: gadget: s3c-hsotg: add flush TX FIFO when kill all requests Robert Baldyga
0 siblings, 2 replies; 5+ messages in thread
From: Robert Baldyga @ 2013-12-06 12:03 UTC (permalink / raw)
To: balbi
Cc: gregkh, linux-usb, linux-kernel, b.zolnierkie, m.szyprowski,
andrzej.p, Robert Baldyga
Hello,
This patches contains fixes for s3c-hsotg driver. They fix maxpacket sizes set
in s3c_hsotg_irq_enumdone() function, and adds flushing TX FIFO when killing all
requests in dedicated-fifo mode. More info in commit messages.
Best regards
Robert Baldyga
Samsung R&D Institute Poland
Robert Baldyga (2):
USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone
USB: gadget: s3c-hsotg: add flush TX FIFO when kill all requests
drivers/usb/gadget/s3c-hsotg.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
--
1.7.9.5
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone
2013-12-06 12:03 [PATCH 0/2] usb: s3c-hsotg: fixes for maxpacket and TX FIFO handling Robert Baldyga
@ 2013-12-06 12:03 ` Robert Baldyga
2013-12-06 20:35 ` Felipe Balbi
2013-12-06 12:03 ` [PATCH 2/2] USB: gadget: s3c-hsotg: add flush TX FIFO when kill all requests Robert Baldyga
1 sibling, 1 reply; 5+ messages in thread
From: Robert Baldyga @ 2013-12-06 12:03 UTC (permalink / raw)
To: balbi
Cc: gregkh, linux-usb, linux-kernel, b.zolnierkie, m.szyprowski,
andrzej.p, Robert Baldyga, Kyungmin Park
This patch set maximum possible maxpacket value for each speed. Previous
values didn't allow to use maxpacket sizes greater than 64 in full speed
and 512 in high speed, although hardware is able to handle up to 1023 in fs
and 1024 in hs.
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---
drivers/usb/gadget/s3c-hsotg.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/gadget/s3c-hsotg.c b/drivers/usb/gadget/s3c-hsotg.c
index e20bc10..ad9a4ed 100644
--- a/drivers/usb/gadget/s3c-hsotg.c
+++ b/drivers/usb/gadget/s3c-hsotg.c
@@ -2086,13 +2086,13 @@ static void s3c_hsotg_irq_enumdone(struct s3c_hsotg *hsotg)
case DSTS_EnumSpd_FS48:
hsotg->gadget.speed = USB_SPEED_FULL;
ep0_mps = EP0_MPS_LIMIT;
- ep_mps = 64;
+ ep_mps = 1023;
break;
case DSTS_EnumSpd_HS:
hsotg->gadget.speed = USB_SPEED_HIGH;
ep0_mps = EP0_MPS_LIMIT;
- ep_mps = 512;
+ ep_mps = 1024;
break;
case DSTS_EnumSpd_LS:
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] USB: gadget: s3c-hsotg: add flush TX FIFO when kill all requests
2013-12-06 12:03 [PATCH 0/2] usb: s3c-hsotg: fixes for maxpacket and TX FIFO handling Robert Baldyga
2013-12-06 12:03 ` [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone Robert Baldyga
@ 2013-12-06 12:03 ` Robert Baldyga
1 sibling, 0 replies; 5+ messages in thread
From: Robert Baldyga @ 2013-12-06 12:03 UTC (permalink / raw)
To: balbi
Cc: gregkh, linux-usb, linux-kernel, b.zolnierkie, m.szyprowski,
andrzej.p, Robert Baldyga, Kyungmin Park
This patch adds flushing TX FIFO in kill_all_requests() function in
dedicated-fifo mode. It's because when requests are killed (when endpoint is
disabled or in case of device reset/disconnection) in FIFO can stay some
unsent data. In the worst case FIFO can stay full, and then if endpoint will
be back enabled, sending new data will be impossible.
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---
drivers/usb/gadget/s3c-hsotg.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/usb/gadget/s3c-hsotg.c b/drivers/usb/gadget/s3c-hsotg.c
index ad9a4ed..4a085e6 100644
--- a/drivers/usb/gadget/s3c-hsotg.c
+++ b/drivers/usb/gadget/s3c-hsotg.c
@@ -2156,6 +2156,9 @@ static void kill_all_requests(struct s3c_hsotg *hsotg,
s3c_hsotg_complete_request(hsotg, ep, req,
result);
}
+ if(hsotg->dedicated_fifos)
+ if ((readl(hsotg->regs + DTXFSTS(ep->index)) & 0xffff) * 4 < 3072)
+ s3c_hsotg_txfifo_flush(hsotg, ep->index);
}
#define call_gadget(_hs, _entry) \
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone
2013-12-06 12:03 ` [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone Robert Baldyga
@ 2013-12-06 20:35 ` Felipe Balbi
2013-12-12 13:47 ` Matt Porter
0 siblings, 1 reply; 5+ messages in thread
From: Felipe Balbi @ 2013-12-06 20:35 UTC (permalink / raw)
To: Robert Baldyga
Cc: balbi, gregkh, linux-usb, linux-kernel, b.zolnierkie,
m.szyprowski, andrzej.p, Kyungmin Park, Matt Porter
[-- Attachment #1: Type: text/plain, Size: 522 bytes --]
Hi,
On Fri, Dec 06, 2013 at 01:03:44PM +0100, Robert Baldyga wrote:
> This patch set maximum possible maxpacket value for each speed. Previous
> values didn't allow to use maxpacket sizes greater than 64 in full speed
> and 512 in high speed, although hardware is able to handle up to 1023 in fs
> and 1024 in hs.
>
> Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Matt, will this cause any problems for your efforts on Bcom ?
--
balbi
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone
2013-12-06 20:35 ` Felipe Balbi
@ 2013-12-12 13:47 ` Matt Porter
0 siblings, 0 replies; 5+ messages in thread
From: Matt Porter @ 2013-12-12 13:47 UTC (permalink / raw)
To: Felipe Balbi
Cc: Robert Baldyga, gregkh, linux-usb, linux-kernel, b.zolnierkie,
m.szyprowski, andrzej.p, Kyungmin Park, Matt Porter
On Fri, Dec 06, 2013 at 02:35:23PM -0600, Felipe Balbi wrote:
> Hi,
>
> On Fri, Dec 06, 2013 at 01:03:44PM +0100, Robert Baldyga wrote:
> > This patch set maximum possible maxpacket value for each speed. Previous
> > values didn't allow to use maxpacket sizes greater than 64 in full speed
> > and 512 in high speed, although hardware is able to handle up to 1023 in fs
> > and 1024 in hs.
> >
> > Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
> > Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
>
> Matt, will this cause any problems for your efforts on Bcom ?
I tested this patch in both full and high speed mode on my Capri board
and it works fine for me in both cases.
Tested-by: Matt Porter <mporter@linaro.org>
Thanks,
Matt
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-12-12 13:48 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-06 12:03 [PATCH 0/2] usb: s3c-hsotg: fixes for maxpacket and TX FIFO handling Robert Baldyga
2013-12-06 12:03 ` [PATCH 1/2] USB: gadget: s3c-hsotg: fix maxpacket size in s3c_hsotg_irq_enumdone Robert Baldyga
2013-12-06 20:35 ` Felipe Balbi
2013-12-12 13:47 ` Matt Porter
2013-12-06 12:03 ` [PATCH 2/2] USB: gadget: s3c-hsotg: add flush TX FIFO when kill all requests Robert Baldyga
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox