[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161102060342.GE28525@b29397-desktop>
Date: Wed, 2 Nov 2016 14:03:42 +0800
From: Peter Chen <hzpeterchen@...il.com>
To: Sriram Dash <sriram.dash@....com>
Cc: linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org,
mathias.nyman@...el.com, gregkh@...uxfoundation.org,
suresh.gupta@....com, felipe.balbi@...ux.intel.com,
stern@...land.harvard.edu, pku.leo@...il.com,
Arnd Bergmann <arnd@...db.de>
Subject: Re: [PATCH v2 2/6] usb: chipidea: use bus->sysdev for DMA
configuration
On Wed, Nov 02, 2016 at 11:08:09AM +0530, Sriram Dash wrote:
> From: Arnd Bergmann <arnd@...db.de>
>
> Set the dma for chipidea from sysdev. This is inherited from its
> parent node. Also, do not set dma mask for child as it is not required
> now.
>
> Signed-off-by: Arnd Bergmann <arnd@...db.de>
> Signed-off-by: Sriram Dash <sriram.dash@....com>
> ---
> Changes in v2:
> - integrate chipidea driver changes together.
>
> drivers/usb/chipidea/core.c | 3 ---
> drivers/usb/chipidea/host.c | 3 ++-
> drivers/usb/chipidea/udc.c | 10 ++++++----
> 3 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c
> index 69426e6..8917a03 100644
> --- a/drivers/usb/chipidea/core.c
> +++ b/drivers/usb/chipidea/core.c
> @@ -833,9 +833,6 @@ struct platform_device *ci_hdrc_add_device(struct device *dev,
> }
>
> pdev->dev.parent = dev;
> - pdev->dev.dma_mask = dev->dma_mask;
> - pdev->dev.dma_parms = dev->dma_parms;
> - dma_set_coherent_mask(&pdev->dev, dev->coherent_dma_mask);
>
> ret = platform_device_add_resources(pdev, res, nres);
> if (ret)
> diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c
> index 96ae695..ca27893 100644
> --- a/drivers/usb/chipidea/host.c
> +++ b/drivers/usb/chipidea/host.c
> @@ -116,7 +116,8 @@ static int host_start(struct ci_hdrc *ci)
> if (usb_disabled())
> return -ENODEV;
>
> - hcd = usb_create_hcd(&ci_ehci_hc_driver, ci->dev, dev_name(ci->dev));
> + hcd = __usb_create_hcd(&ci_ehci_hc_driver, ci->dev->parent,
> + ci->dev, dev_name(ci->dev), NULL);
> if (!hcd)
> return -ENOMEM;
>
> diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c
> index 661f43f..bc55922 100644
> --- a/drivers/usb/chipidea/udc.c
> +++ b/drivers/usb/chipidea/udc.c
> @@ -423,7 +423,8 @@ static int _hardware_enqueue(struct ci_hw_ep *hwep, struct ci_hw_req *hwreq)
>
> hwreq->req.status = -EALREADY;
>
> - ret = usb_gadget_map_request(&ci->gadget, &hwreq->req, hwep->dir);
> + ret = usb_gadget_map_request_by_dev(ci->dev->parent,
> + &hwreq->req, hwep->dir);
> if (ret)
> return ret;
>
> @@ -603,7 +604,8 @@ static int _hardware_dequeue(struct ci_hw_ep *hwep, struct ci_hw_req *hwreq)
> list_del_init(&node->td);
> }
>
> - usb_gadget_unmap_request(&hwep->ci->gadget, &hwreq->req, hwep->dir);
> + usb_gadget_unmap_request_by_dev(hwep->ci->dev->parent,
> + &hwreq->req, hwep->dir);
>
> hwreq->req.actual += actual;
>
> @@ -1904,13 +1906,13 @@ static int udc_start(struct ci_hdrc *ci)
> INIT_LIST_HEAD(&ci->gadget.ep_list);
>
> /* alloc resources */
> - ci->qh_pool = dma_pool_create("ci_hw_qh", dev,
> + ci->qh_pool = dma_pool_create("ci_hw_qh", dev->parent,
> sizeof(struct ci_hw_qh),
> 64, CI_HDRC_PAGE_SIZE);
> if (ci->qh_pool == NULL)
> return -ENOMEM;
>
> - ci->td_pool = dma_pool_create("ci_hw_td", dev,
> + ci->td_pool = dma_pool_create("ci_hw_td", dev->parent,
> sizeof(struct ci_hw_td),
> 64, CI_HDRC_PAGE_SIZE);
> if (ci->td_pool == NULL) {
> --
Acked-by: Peter Chen <peter.chen@....com>
--
Best Regards,
Peter Chen
Powered by blists - more mailing lists