All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Senna Tschudin <peter.senna@collabora.com>
To: Romain Perier <romain.perier@collabora.com>
Cc: Dan Williams <dan.j.williams@intel.com>,
	Doug Ledford <dledford@redhat.com>,
	Sean Hefty <sean.hefty@intel.com>,
	Hal Rosenstock <hal.rosenstock@gmail.com>,
	jeffrey.t.kirsher@intel.com,
	"David S. Miller" <davem@davemloft.net>,
	stas.yakovlev@gmail.com,
	"James E.J. Bottomley" <jejb@linux.vnet.ibm.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	Felipe Balbi <balbi@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-rdma@vger.kernel.org, netdev@vger.kernel.org,
	linux-usb@vger.kernel.org, linux-scsi@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Peter Senna Tschudin <peter.senna@collabora.co.uk>
Subject: Re: [RFC 17/19] usb: gadget: pch_udc: Replace PCI pool old API
Date: Wed, 8 Feb 2017 19:45:58 +0100	[thread overview]
Message-ID: <20170208184558.GQ16878@collabora.com> (raw)
In-Reply-To: <20170208163457.28853-18-romain.perier@collabora.com>

On Wed, Feb 08, 2017 at 05:34:55PM +0100, Romain Perier wrote:
> The PCI pool API is deprecated. This commits replaces the PCI pool old
> API by the appropriated function with the DMA pool API.
> 
> Signed-off-by: Romain Perier <romain.perier@collabora.com>
> ---
>  drivers/usb/gadget/udc/pch_udc.c | 28 ++++++++++++++--------------
>  1 file changed, 14 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/usb/gadget/udc/pch_udc.c b/drivers/usb/gadget/udc/pch_udc.c
> index a97da64..37045fc 100644
> --- a/drivers/usb/gadget/udc/pch_udc.c
> +++ b/drivers/usb/gadget/udc/pch_udc.c
> @@ -355,8 +355,8 @@ struct pch_udc_dev {
>  			vbus_session:1,
>  			set_cfg_not_acked:1,
>  			waiting_zlp_ack:1;
> -	struct pci_pool		*data_requests;
> -	struct pci_pool		*stp_requests;
> +	struct dma_pool		*data_requests;
> +	struct dma_pool		*stp_requests;
>  	dma_addr_t			dma_addr;
>  	struct usb_ctrlrequest		setup_data;
>  	void __iomem			*base_addr;
> @@ -1522,7 +1522,7 @@ static void pch_udc_free_dma_chain(struct pch_udc_dev *dev,
>  		/* do not free first desc., will be done by free for request */
>  		td = phys_to_virt(addr);
>  		addr2 = (dma_addr_t)td->next;
> -		pci_pool_free(dev->data_requests, td, addr);
> +		dma_pool_free(dev->data_requests, td, addr);
>  		td->next = 0x00;
>  		addr = addr2;
>  	}
> @@ -1565,7 +1565,7 @@ static int pch_udc_create_dma_chain(struct pch_udc_ep *ep,
>  		if (bytes <= buf_len)
>  			break;
>  		last = td;
> -		td = pci_pool_alloc(ep->dev->data_requests, gfp_flags,
> +		td = dma_pool_alloc(ep->dev->data_requests, gfp_flags,
>  				    &dma_addr);
>  		if (!td)
>  			goto nomem;
> @@ -1770,7 +1770,7 @@ static struct usb_request *pch_udc_alloc_request(struct usb_ep *usbep,
>  	if (!ep->dev->dma_addr)
>  		return &req->req;
>  	/* ep0 in requests are allocated from data pool here */
> -	dma_desc = pci_pool_alloc(ep->dev->data_requests, gfp,
> +	dma_desc = dma_pool_alloc(ep->dev->data_requests, gfp,
>  				  &req->td_data_phys);
>  	if (NULL == dma_desc) {
>  		kfree(req);
> @@ -1809,7 +1809,7 @@ static void pch_udc_free_request(struct usb_ep *usbep,
>  	if (req->td_data != NULL) {
>  		if (req->chain_len > 1)
>  			pch_udc_free_dma_chain(ep->dev, req);
> -		pci_pool_free(ep->dev->data_requests, req->td_data,
> +		dma_pool_free(ep->dev->data_requests, req->td_data,
>  			      req->td_data_phys);
>  	}
>  	kfree(req);
> @@ -2914,7 +2914,7 @@ static int init_dma_pools(struct pch_udc_dev *dev)
>  	void				*ep0out_buf;
>  
>  	/* DMA setup */
> -	dev->data_requests = pci_pool_create("data_requests", dev->pdev,
> +	dev->data_requests = dma_pool_create("data_requests", &dev->pdev->dev,
>  		sizeof(struct pch_udc_data_dma_desc), 0, 0);
>  	if (!dev->data_requests) {
>  		dev_err(&dev->pdev->dev, "%s: can't get request data pool\n",
> @@ -2923,7 +2923,7 @@ static int init_dma_pools(struct pch_udc_dev *dev)
>  	}
>  
>  	/* dma desc for setup data */
> -	dev->stp_requests = pci_pool_create("setup requests", dev->pdev,
> +	dev->stp_requests = dma_pool_create("setup requests", &dev->pdev->dev,
>  		sizeof(struct pch_udc_stp_dma_desc), 0, 0);
>  	if (!dev->stp_requests) {
>  		dev_err(&dev->pdev->dev, "%s: can't get setup request pool\n",
> @@ -2931,7 +2931,7 @@ static int init_dma_pools(struct pch_udc_dev *dev)
>  		return -ENOMEM;
>  	}
>  	/* setup */
> -	td_stp = pci_pool_alloc(dev->stp_requests, GFP_KERNEL,
> +	td_stp = dma_pool_alloc(dev->stp_requests, GFP_KERNEL,
>  				&dev->ep[UDC_EP0OUT_IDX].td_stp_phys);
>  	if (!td_stp) {
>  		dev_err(&dev->pdev->dev,
> @@ -2941,7 +2941,7 @@ static int init_dma_pools(struct pch_udc_dev *dev)
>  	dev->ep[UDC_EP0OUT_IDX].td_stp = td_stp;
>  
>  	/* data: 0 packets !? */
> -	td_data = pci_pool_alloc(dev->data_requests, GFP_KERNEL,
> +	td_data = dma_pool_alloc(dev->data_requests, GFP_KERNEL,
>  				&dev->ep[UDC_EP0OUT_IDX].td_data_phys);
>  	if (!td_data) {
>  		dev_err(&dev->pdev->dev,
> @@ -3022,21 +3022,21 @@ static void pch_udc_remove(struct pci_dev *pdev)
>  			"%s: gadget driver still bound!!!\n", __func__);
>  	/* dma pool cleanup */
>  	if (dev->data_requests)
dma_pool_destroy(NULL) is safe and this check is probably not required.
Other than that looks good. Tested by compiling it.

> -		pci_pool_destroy(dev->data_requests);
> +		dma_pool_destroy(dev->data_requests);
>  
>  	if (dev->stp_requests) {
>  		/* cleanup DMA desc's for ep0in */
>  		if (dev->ep[UDC_EP0OUT_IDX].td_stp) {
> -			pci_pool_free(dev->stp_requests,
> +			dma_pool_free(dev->stp_requests,
>  				dev->ep[UDC_EP0OUT_IDX].td_stp,
>  				dev->ep[UDC_EP0OUT_IDX].td_stp_phys);
>  		}
>  		if (dev->ep[UDC_EP0OUT_IDX].td_data) {
> -			pci_pool_free(dev->stp_requests,
> +			dma_pool_free(dev->stp_requests,
>  				dev->ep[UDC_EP0OUT_IDX].td_data,
>  				dev->ep[UDC_EP0OUT_IDX].td_data_phys);
>  		}
> -		pci_pool_destroy(dev->stp_requests);
> +		dma_pool_destroy(dev->stp_requests);
>  	}
>  
>  	if (dev->dma_addr)
> -- 
> 2.9.3
> 

  parent reply	other threads:[~2017-02-08 18:45 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20170208163457.28853-1-romain.perier@collabora.com>
     [not found] ` <20170208163457.28853-2-romain.perier@collabora.com>
2017-02-08 18:20   ` [RFC 01/19] block: DAC960: Replace PCI pool old API Peter Senna Tschudin
     [not found] ` <20170208163457.28853-3-romain.perier@collabora.com>
2017-02-08 18:21   ` [RFC 02/19] dmaengine: pch_dma: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-4-romain.perier@collabora.com>
     [not found]   ` <20170208163457.28853-4-romain.perier-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2017-02-08 18:22     ` [RFC 03/19] IB/mthca: " Peter Senna Tschudin
2017-02-08 18:22       ` Peter Senna Tschudin
     [not found] ` <20170208163457.28853-5-romain.perier@collabora.com>
     [not found]   ` <20170208163457.28853-5-romain.perier-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2017-02-08 18:23     ` [RFC 04/19] net: e100: " Peter Senna Tschudin
2017-02-08 18:23       ` Peter Senna Tschudin
     [not found] ` <20170208163457.28853-6-romain.perier@collabora.com>
2017-02-08 18:24   ` [RFC 05/19] mlx4: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-7-romain.perier@collabora.com>
2017-02-08 18:26   ` [RFC 06/19] mlx5: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-8-romain.perier@collabora.com>
2017-02-08 18:27   ` [RFC 07/19] wireless: ipw2200: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-9-romain.perier@collabora.com>
2017-02-08 18:28   ` [RFC 08/19] scsi: be2iscsi: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-10-romain.perier@collabora.com>
2017-02-08 18:29   ` [RFC 09/19] scsi: csiostor: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-11-romain.perier@collabora.com>
2017-02-08 18:32   ` [RFC 10/19] scsi: lpfc: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-12-romain.perier@collabora.com>
2017-02-08 18:37   ` [RFC 11/19] scsi: megaraid: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-13-romain.perier@collabora.com>
2017-02-08 18:40   ` [RFC 12/19] scsi: mpt3sas: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-14-romain.perier@collabora.com>
2017-02-08 18:42   ` [RFC 13/19] scsi: mvsas: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-15-romain.perier@collabora.com>
2017-02-08 18:42   ` [RFC 14/19] scsi: pmcraid: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-16-romain.perier@collabora.com>
2017-02-08 18:43   ` [RFC 15/19] usb: gadget: amd5536udc: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-17-romain.perier@collabora.com>
2017-02-08 18:45   ` [RFC 16/19] usb: gadget: net2280: " Peter Senna Tschudin
     [not found] ` <20170208163457.28853-18-romain.perier@collabora.com>
2017-02-08 18:45   ` Peter Senna Tschudin [this message]
     [not found] ` <20170208163457.28853-19-romain.perier@collabora.com>
2017-02-08 18:49   ` [RFC 18/19] PCI: Remove PCI pool macro functions Peter Senna Tschudin
     [not found] ` <20170208163457.28853-20-romain.perier@collabora.com>
2017-02-08 18:55   ` [RFC 19/19] checkpatch: warn for use of old PCI pool API Peter Senna Tschudin
2017-02-08 19:53     ` Joe Perches
     [not found] ` <20170208163457.28853-1-romain.perier-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2017-02-08 19:00   ` [RFC 00/19] Replace PCI pool by DMA " Peter Senna Tschudin
2017-02-08 19:00     ` Peter Senna Tschudin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170208184558.GQ16878@collabora.com \
    --to=peter.senna@collabora.com \
    --cc=balbi@kernel.org \
    --cc=dan.j.williams@intel.com \
    --cc=davem@davemloft.net \
    --cc=dledford@redhat.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hal.rosenstock@gmail.com \
    --cc=jeffrey.t.kirsher@intel.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=netdev@vger.kernel.org \
    --cc=peter.senna@collabora.co.uk \
    --cc=romain.perier@collabora.com \
    --cc=sean.hefty@intel.com \
    --cc=stas.yakovlev@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.