Re: [PATCH 09/15] media: s5p-mfc: Allocate firmware with internal private buffer alloc function

2017-02-17 Thread Javier Martinez Canillas
Hell Marek,

On 02/14/2017 04:52 AM, Marek Szyprowski wrote:
> Once firmware buffer has been converted to use s5p_mfc_priv_buf structure,
> it is possible to allocate it with existing s5p_mfc_alloc_priv_buf()
> function. This change will help to reduce code variants in the next
> patches.
> 
> Signed-off-by: Marek Szyprowski 
> ---

Reviewed-by: Javier Martinez Canillas 

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America


[PATCH 09/15] media: s5p-mfc: Allocate firmware with internal private buffer alloc function

2017-02-13 Thread Marek Szyprowski
Once firmware buffer has been converted to use s5p_mfc_priv_buf structure,
it is possible to allocate it with existing s5p_mfc_alloc_priv_buf()
function. This change will help to reduce code variants in the next
patches.

Signed-off-by: Marek Szyprowski 
---
 drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c | 14 +-
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c 
b/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
index b0cf3970117a..a1811ee538bd 100644
--- a/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
+++ b/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
@@ -27,6 +27,7 @@
 int s5p_mfc_alloc_firmware(struct s5p_mfc_dev *dev)
 {
struct s5p_mfc_priv_buf *fw_buf = >fw_buf;
+   int err;
 
fw_buf->size = dev->variant->buf_size->fw;
 
@@ -35,11 +36,10 @@ int s5p_mfc_alloc_firmware(struct s5p_mfc_dev *dev)
return -ENOMEM;
}
 
-   fw_buf->virt = dma_alloc_coherent(dev->mem_dev[BANK1_CTX], fw_buf->size,
-_buf->dma, GFP_KERNEL);
-   if (!fw_buf->virt) {
+   err = s5p_mfc_alloc_priv_buf(dev, BANK1_CTX, >fw_buf);
+   if (err) {
mfc_err("Allocating bitprocessor buffer failed\n");
-   return -ENOMEM;
+   return err;
}
 
return 0;
@@ -92,11 +92,7 @@ int s5p_mfc_release_firmware(struct s5p_mfc_dev *dev)
 {
/* Before calling this function one has to make sure
 * that MFC is no longer processing */
-   if (!dev->fw_buf.virt)
-   return -EINVAL;
-   dma_free_coherent(dev->mem_dev[BANK1_CTX], dev->fw_buf.size,
- dev->fw_buf.virt, dev->fw_buf.dma);
-   dev->fw_buf.virt = NULL;
+   s5p_mfc_release_priv_buf(dev, >fw_buf);
return 0;
 }
 
-- 
1.9.1