usb: gadget: renesas_usbhs: add usbhs_dcp_dir_for_host()
renesas_usbhs device needs special bit settings if it was mod_host and dcp pipe. This patch support it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Родитель
0deb3e7702
Коммит
923520715b
|
@ -291,9 +291,13 @@ static int usbhsf_fifo_select(struct usbhs_pipe *pipe,
|
||||||
usbhsf_fifo_is_busy(fifo))
|
usbhsf_fifo_is_busy(fifo))
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
|
|
||||||
if (usbhs_pipe_is_dcp(pipe))
|
if (usbhs_pipe_is_dcp(pipe)) {
|
||||||
base |= (1 == write) << 5; /* ISEL */
|
base |= (1 == write) << 5; /* ISEL */
|
||||||
|
|
||||||
|
if (usbhs_mod_is_host(priv))
|
||||||
|
usbhs_dcp_dir_for_host(pipe, write);
|
||||||
|
}
|
||||||
|
|
||||||
/* "base" will be used below */
|
/* "base" will be used below */
|
||||||
usbhs_write(priv, fifo->sel, base | MBW_32);
|
usbhs_write(priv, fifo->sel, base | MBW_32);
|
||||||
|
|
||||||
|
|
|
@ -630,6 +630,12 @@ void usbhs_dcp_control_transfer_done(struct usbhs_pipe *pipe)
|
||||||
usbhsp_pipectrl_set(pipe, CCPL, CCPL);
|
usbhsp_pipectrl_set(pipe, CCPL, CCPL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void usbhs_dcp_dir_for_host(struct usbhs_pipe *pipe, int dir_out)
|
||||||
|
{
|
||||||
|
usbhsp_pipe_cfg_set(pipe, DIR_OUT,
|
||||||
|
dir_out ? DIR_OUT : 0);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* pipe module function
|
* pipe module function
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -106,5 +106,6 @@ void usbhs_pipe_config_update(struct usbhs_pipe *pipe, u16 epnum, u16 maxp);
|
||||||
*/
|
*/
|
||||||
struct usbhs_pipe *usbhs_dcp_malloc(struct usbhs_priv *priv);
|
struct usbhs_pipe *usbhs_dcp_malloc(struct usbhs_priv *priv);
|
||||||
void usbhs_dcp_control_transfer_done(struct usbhs_pipe *pipe);
|
void usbhs_dcp_control_transfer_done(struct usbhs_pipe *pipe);
|
||||||
|
void usbhs_dcp_dir_for_host(struct usbhs_pipe *pipe, int dir_out);
|
||||||
|
|
||||||
#endif /* RENESAS_USB_PIPE_H */
|
#endif /* RENESAS_USB_PIPE_H */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче