Skip to content

Commit

Permalink
usb: renesas_usbhs: fixup comment-out
Browse files Browse the repository at this point in the history
This patch add/modify comment-out of renesas_usbhs.
On this process, usbhs_pkt_init was moved because it was placed under
usbhsf_null_handler which has no relationship it

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Kuninori Morimoto authored and Greg Kroah-Hartman committed Jul 8, 2011
1 parent 45304e8 commit 233f519
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 10 deletions.
23 changes: 23 additions & 0 deletions drivers/usb/renesas_usbhs/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,29 @@
#include <linux/sysfs.h>
#include "./common.h"

/*
* image of renesas_usbhs
*
* ex) gadget case
* mod.c
* mod_gadget.c
* mod_host.c pipe.c fifo.c
*
* +-------+ +-----------+
* | pipe0 |------>| fifo pio |
* +------------+ +-------+ +-----------+
* | mod_gadget |=====> | pipe1 |--+
* +------------+ +-------+ | +-----------+
* | pipe2 | | +-| fifo dma0 |
* +------------+ +-------+ | | +-----------+
* | mod_host | | pipe3 |<-|--+
* +------------+ +-------+ | +-----------+
* | .... | +--->| fifo dma1 |
* | .... | +-----------+
*/


#define USBHSF_RUNTIME_PWCTRL (1 << 0)

/* status */
Expand Down
30 changes: 21 additions & 9 deletions drivers/usb/renesas_usbhs/fifo.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,16 @@
#define usbhsf_fifo_is_busy(f) ((f)->pipe) /* see usbhs_pipe_select_fifo */

/*
* packet info function
* packet initialize
*/
void usbhs_pkt_init(struct usbhs_pkt *pkt)
{
pkt->dma = DMA_ADDR_INVALID;
INIT_LIST_HEAD(&pkt->node);
}

/*
* packet control function
*/
static int usbhsf_null_handle(struct usbhs_pkt *pkt, int *is_done)
{
Expand All @@ -43,12 +52,6 @@ static struct usbhs_pkt_handle usbhsf_null_handler = {
.try_run = usbhsf_null_handle,
};

void usbhs_pkt_init(struct usbhs_pkt *pkt)
{
pkt->dma = DMA_ADDR_INVALID;
INIT_LIST_HEAD(&pkt->node);
}

void usbhs_pkt_push(struct usbhs_pipe *pipe, struct usbhs_pkt *pkt,
struct usbhs_pkt_handle *handler,
void *buf, int len, int zero)
Expand Down Expand Up @@ -293,7 +296,7 @@ static int usbhsf_fifo_select(struct usbhs_pipe *pipe,
}

/*
* PIO fifo functions
* PIO push handler
*/
static int usbhsf_pio_try_push(struct usbhs_pkt *pkt, int *is_done)
{
Expand Down Expand Up @@ -395,6 +398,9 @@ struct usbhs_pkt_handle usbhs_fifo_pio_push_handler = {
.try_run = usbhsf_pio_try_push,
};

/*
* PIO pop handler
*/
static int usbhsf_prepare_pop(struct usbhs_pkt *pkt, int *is_done)
{
struct usbhs_pipe *pipe = pkt->pipe;
Expand Down Expand Up @@ -497,7 +503,7 @@ struct usbhs_pkt_handle usbhs_fifo_pio_pop_handler = {
};

/*
* handler function
* DCP ctrol statge handler
*/
static int usbhsf_ctrl_stage_end(struct usbhs_pkt *pkt, int *is_done)
{
Expand Down Expand Up @@ -614,6 +620,9 @@ static void usbhsf_dma_prepare_tasklet(unsigned long data)
dma_async_issue_pending(chan);
}

/*
* DMA push handler
*/
static int usbhsf_dma_prepare_push(struct usbhs_pkt *pkt, int *is_done)
{
struct usbhs_pipe *pipe = pkt->pipe;
Expand Down Expand Up @@ -686,6 +695,9 @@ struct usbhs_pkt_handle usbhs_fifo_dma_push_handler = {
.dma_done = usbhsf_dma_push_done,
};

/*
* DMA pop handler
*/
static int usbhsf_dma_try_pop(struct usbhs_pkt *pkt, int *is_done)
{
struct usbhs_pipe *pipe = pkt->pipe;
Expand Down
10 changes: 9 additions & 1 deletion drivers/usb/renesas_usbhs/mod_gadget.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ struct usbhsg_recip_handle {
#define usbhsg_status_has(gp, b) (gp->status & b)

/*
* list push/pop
* queue push/pop
*/
static void usbhsg_queue_push(struct usbhsg_uep *uep,
struct usbhsg_request *ureq)
Expand Down Expand Up @@ -160,6 +160,9 @@ static void usbhsg_queue_done(struct usbhs_pkt *pkt)
usbhsg_queue_pop(uep, ureq, 0);
}

/*
* dma map/unmap
*/
static int usbhsg_dma_map(struct device *dev,
struct usbhs_pkt *pkt,
enum dma_data_direction dir)
Expand Down Expand Up @@ -473,6 +476,11 @@ static int usbhsg_ep_enable(struct usb_ep *ep,
uep->pipe = pipe;
pipe->mod_private = uep;

/*
* usbhs_fifo_dma_push/pop_handler try to
* use dmaengine if possible.
* It will use pio handler if impossible.
*/
if (usb_endpoint_dir_in(desc))
uep->handler = &usbhs_fifo_dma_push_handler;
else
Expand Down

0 comments on commit 233f519

Please sign in to comment.