mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-04 01:24:12 +08:00
usb: dwc2: Update DMA descriptor structure
Rename DMA descriptor structure from dwc2_hcd_dma_desc to dwc2_dma_desc as it is applies to both host and gadget. Signed-off-by: Vahram Aharonyan <vahrama@synopsys.com> Signed-off-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
This commit is contained in:
parent
9962b62f1b
commit
ec70325128
@ -5105,7 +5105,7 @@ int dwc2_hcd_init(struct dwc2_hsotg *hsotg, int irq)
|
||||
if (hsotg->params.dma_desc_enable ||
|
||||
hsotg->params.dma_desc_fs_enable) {
|
||||
hsotg->desc_gen_cache = kmem_cache_create("dwc2-gen-desc",
|
||||
sizeof(struct dwc2_hcd_dma_desc) *
|
||||
sizeof(struct dwc2_dma_desc) *
|
||||
MAX_DMA_DESC_NUM_GENERIC, 512, SLAB_CACHE_DMA,
|
||||
NULL);
|
||||
if (!hsotg->desc_gen_cache) {
|
||||
@ -5121,7 +5121,7 @@ int dwc2_hcd_init(struct dwc2_hsotg *hsotg, int irq)
|
||||
}
|
||||
|
||||
hsotg->desc_hsisoc_cache = kmem_cache_create("dwc2-hsisoc-desc",
|
||||
sizeof(struct dwc2_hcd_dma_desc) *
|
||||
sizeof(struct dwc2_dma_desc) *
|
||||
MAX_DMA_DESC_NUM_HS_ISOC, 512, 0, NULL);
|
||||
if (!hsotg->desc_hsisoc_cache) {
|
||||
dev_err(hsotg->dev,
|
||||
|
@ -348,7 +348,7 @@ struct dwc2_qh {
|
||||
struct list_head qtd_list;
|
||||
struct dwc2_host_chan *channel;
|
||||
struct list_head qh_list_entry;
|
||||
struct dwc2_hcd_dma_desc *desc_list;
|
||||
struct dwc2_dma_desc *desc_list;
|
||||
dma_addr_t desc_list_dma;
|
||||
u32 desc_list_sz;
|
||||
u32 *n_bytes;
|
||||
|
@ -95,7 +95,7 @@ static int dwc2_desc_list_alloc(struct dwc2_hsotg *hsotg, struct dwc2_qh *qh,
|
||||
else
|
||||
desc_cache = hsotg->desc_gen_cache;
|
||||
|
||||
qh->desc_list_sz = sizeof(struct dwc2_hcd_dma_desc) *
|
||||
qh->desc_list_sz = sizeof(struct dwc2_dma_desc) *
|
||||
dwc2_max_desc_num(qh);
|
||||
|
||||
qh->desc_list = kmem_cache_zalloc(desc_cache, flags | GFP_DMA);
|
||||
@ -322,7 +322,7 @@ static void dwc2_release_channel_ddma(struct dwc2_hsotg *hsotg,
|
||||
qh->ntd = 0;
|
||||
|
||||
if (qh->desc_list)
|
||||
memset(qh->desc_list, 0, sizeof(struct dwc2_hcd_dma_desc) *
|
||||
memset(qh->desc_list, 0, sizeof(struct dwc2_dma_desc) *
|
||||
dwc2_max_desc_num(qh));
|
||||
}
|
||||
|
||||
@ -542,7 +542,7 @@ static void dwc2_fill_host_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
struct dwc2_qh *qh, u32 max_xfer_size,
|
||||
u16 idx)
|
||||
{
|
||||
struct dwc2_hcd_dma_desc *dma_desc = &qh->desc_list[idx];
|
||||
struct dwc2_dma_desc *dma_desc = &qh->desc_list[idx];
|
||||
struct dwc2_hcd_iso_packet_desc *frame_desc;
|
||||
|
||||
memset(dma_desc, 0, sizeof(*dma_desc));
|
||||
@ -571,8 +571,8 @@ static void dwc2_fill_host_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma +
|
||||
(idx * sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
(idx * sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
}
|
||||
|
||||
@ -645,8 +645,8 @@ static void dwc2_init_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
qh->desc_list[idx].status |= HOST_DMA_IOC;
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma + (idx *
|
||||
sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
}
|
||||
#else
|
||||
@ -679,8 +679,8 @@ static void dwc2_init_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
qh->desc_list[idx].status |= HOST_DMA_IOC;
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma +
|
||||
(idx * sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
(idx * sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
#endif
|
||||
}
|
||||
@ -690,7 +690,7 @@ static void dwc2_fill_host_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
struct dwc2_qtd *qtd, struct dwc2_qh *qh,
|
||||
int n_desc)
|
||||
{
|
||||
struct dwc2_hcd_dma_desc *dma_desc = &qh->desc_list[n_desc];
|
||||
struct dwc2_dma_desc *dma_desc = &qh->desc_list[n_desc];
|
||||
int len = chan->xfer_len;
|
||||
|
||||
if (len > MAX_DMA_DESC_SIZE - (chan->max_packet - 1))
|
||||
@ -721,8 +721,8 @@ static void dwc2_fill_host_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma +
|
||||
(n_desc * sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
(n_desc * sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
|
||||
/*
|
||||
@ -778,8 +778,8 @@ static void dwc2_init_non_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma +
|
||||
((n_desc - 1) *
|
||||
sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
}
|
||||
dwc2_fill_host_dma_desc(hsotg, chan, qtd, qh, n_desc);
|
||||
@ -808,8 +808,8 @@ static void dwc2_init_non_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
n_desc - 1, &qh->desc_list[n_desc - 1]);
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma + (n_desc - 1) *
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
if (n_desc > 1) {
|
||||
qh->desc_list[0].status |= HOST_DMA_A;
|
||||
@ -817,7 +817,7 @@ static void dwc2_init_non_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
&qh->desc_list[0]);
|
||||
dma_sync_single_for_device(hsotg->dev,
|
||||
qh->desc_list_dma,
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_TO_DEVICE);
|
||||
}
|
||||
chan->ntd = n_desc;
|
||||
@ -893,7 +893,7 @@ static int dwc2_cmpl_host_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
struct dwc2_qtd *qtd,
|
||||
struct dwc2_qh *qh, u16 idx)
|
||||
{
|
||||
struct dwc2_hcd_dma_desc *dma_desc;
|
||||
struct dwc2_dma_desc *dma_desc;
|
||||
struct dwc2_hcd_iso_packet_desc *frame_desc;
|
||||
u16 remain = 0;
|
||||
int rc = 0;
|
||||
@ -902,8 +902,8 @@ static int dwc2_cmpl_host_isoc_dma_desc(struct dwc2_hsotg *hsotg,
|
||||
return -EINVAL;
|
||||
|
||||
dma_sync_single_for_cpu(hsotg->dev, qh->desc_list_dma + (idx *
|
||||
sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_FROM_DEVICE);
|
||||
|
||||
dma_desc = &qh->desc_list[idx];
|
||||
@ -1066,7 +1066,7 @@ stop_scan:
|
||||
static int dwc2_update_non_isoc_urb_state_ddma(struct dwc2_hsotg *hsotg,
|
||||
struct dwc2_host_chan *chan,
|
||||
struct dwc2_qtd *qtd,
|
||||
struct dwc2_hcd_dma_desc *dma_desc,
|
||||
struct dwc2_dma_desc *dma_desc,
|
||||
enum dwc2_halt_status halt_status,
|
||||
u32 n_bytes, int *xfer_done)
|
||||
{
|
||||
@ -1154,7 +1154,7 @@ static int dwc2_process_non_isoc_desc(struct dwc2_hsotg *hsotg,
|
||||
{
|
||||
struct dwc2_qh *qh = chan->qh;
|
||||
struct dwc2_hcd_urb *urb = qtd->urb;
|
||||
struct dwc2_hcd_dma_desc *dma_desc;
|
||||
struct dwc2_dma_desc *dma_desc;
|
||||
u32 n_bytes;
|
||||
int failed;
|
||||
|
||||
@ -1165,8 +1165,8 @@ static int dwc2_process_non_isoc_desc(struct dwc2_hsotg *hsotg,
|
||||
|
||||
dma_sync_single_for_cpu(hsotg->dev,
|
||||
qh->desc_list_dma + (desc_num *
|
||||
sizeof(struct dwc2_hcd_dma_desc)),
|
||||
sizeof(struct dwc2_hcd_dma_desc),
|
||||
sizeof(struct dwc2_dma_desc)),
|
||||
sizeof(struct dwc2_dma_desc),
|
||||
DMA_FROM_DEVICE);
|
||||
|
||||
dma_desc = &qh->desc_list[desc_num];
|
||||
|
@ -790,7 +790,8 @@
|
||||
#define HCFIFO(_ch) HSOTG_REG(0x1000 + 0x1000 * (_ch))
|
||||
|
||||
/**
|
||||
* struct dwc2_hcd_dma_desc - Host-mode DMA descriptor structure
|
||||
* struct dwc2_dma_desc - DMA descriptor structure,
|
||||
* used for both host and gadget modes
|
||||
*
|
||||
* @status: DMA descriptor status quadlet
|
||||
* @buf: DMA descriptor data buffer pointer
|
||||
@ -798,7 +799,7 @@
|
||||
* DMA Descriptor structure contains two quadlets:
|
||||
* Status quadlet and Data buffer pointer.
|
||||
*/
|
||||
struct dwc2_hcd_dma_desc {
|
||||
struct dwc2_dma_desc {
|
||||
u32 status;
|
||||
u32 buf;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user