[PATCH v1] atomisp:pci/runtime/queue: modify the return error value

2020-09-16 Thread Xiaoliang Pang
modify the return error value is -EDOM

Fixes: 2cac05dee6e30("drm/amd/powerplay: add the hw manager for vega12 (v4)")
Cc: Evan Quan 
Signed-off-by: Xiaoliang Pang 
---
 .../staging/media/atomisp/pci/runtime/queue/src/queue_access.c  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.c 
b/drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.c
index fdca743c4ab7..424e7a15a389 100644
--- a/drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.c
+++ b/drivers/staging/media/atomisp/pci/runtime/queue/src/queue_access.c
@@ -44,7 +44,7 @@ int ia_css_queue_load(
   the value as zero. This causes division by 0
   exception as the size is used in a modular
   division operation. */
-   return EDOM;
+   return -EDOM;
}
}
 
-- 
2.17.1



[PATCH v1] powerplay:hwmgr - modify the return value

2020-09-16 Thread Xiaoliang Pang
modify the return value is -EINVAL

Fixes: f83a9991648bb("drm/amd/powerplay: add Vega10 powerplay support (v5)")
Fixes: 2cac05dee6e30("drm/amd/powerplay: add the hw manager for vega12 (v4)")
Cc: Eric Huang 
Cc: Evan Quan 
Signed-off-by: Xiaoliang Pang 
---
 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 2 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c 
b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
index c378a000c934..7eada3098ffc 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c
@@ -4659,7 +4659,7 @@ static int 
vega10_display_configuration_changed_task(struct pp_hwmgr *hwmgr)
if ((data->water_marks_bitmap & WaterMarksExist) &&
!(data->water_marks_bitmap & WaterMarksLoaded)) {
result = smum_smc_table_manager(hwmgr, (uint8_t *)wm_table, 
WMTABLE, false);
-   PP_ASSERT_WITH_CODE(result, "Failed to update WMTABLE!", return 
EINVAL);
+   PP_ASSERT_WITH_CODE(result, "Failed to update WMTABLE!", return 
-EINVAL);
data->water_marks_bitmap |= WaterMarksLoaded;
}
 
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c 
b/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c
index a678a67f1c0d..04da52cea824 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c
@@ -2390,7 +2390,7 @@ static int 
vega12_display_configuration_changed_task(struct pp_hwmgr *hwmgr)
!(data->water_marks_bitmap & WaterMarksLoaded)) {
result = smum_smc_table_manager(hwmgr,
(uint8_t *)wm_table, 
TABLE_WATERMARKS, false);
-   PP_ASSERT_WITH_CODE(result, "Failed to update WMTABLE!", return 
EINVAL);
+   PP_ASSERT_WITH_CODE(result, "Failed to update WMTABLE!", return 
-EINVAL);
data->water_marks_bitmap |= WaterMarksLoaded;
}
 
-- 
2.17.1



[PATCH v6] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-13 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section, after run i--,
in the array ring, the struct mtk_ring with index i will not be released,
causing memory leaks

Fixes: 785e5c616c849 ("crypto: mediatek - Add crypto driver support for some 
MediaTek chips")
Cc: Ryder Lee 
Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..f83cead30d8f 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   } while (i--);
return err;
 }
 
-- 
2.17.1



[PATCH v5] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-11 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop, after run i--,
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..f83cead30d8f 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   } while (i--);
return err;
 }
 
-- 
2.17.1



[PATCH v4] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-11 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop, after run i--,
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..654a6ba4bf17 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   } while(i--);
return err;
 }
 
-- 
2.17.1



[PATCH v3] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-10 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop, after run i--,
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..ebb3bdef0dbe 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   }while(i--);
return err;
 }
 
-- 
2.17.1



[PATCH v3] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-06 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop, after run i--,
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..ebb3bdef0dbe 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   }while(i--);
return err;
 }
 
-- 
2.17.1



[PATCH v2] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-04 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop,
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 05d341e4a696..ebb3bdef0dbe 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,13 +469,13 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i >= 0; --i) {
+   do {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->cmd_base, ring[i]->cmd_dma);
kfree(ring[i]);
-   }
+   }while(i--);
return err;
 }
 
-- 
2.17.1



[PATCH] cypto: mediatek - fix leaks in mtk_desc_ring_alloc

2020-09-03 Thread Xiaoliang Pang
In the init loop, if an error occurs in function 'dma_alloc_coherent',
then goto the err_cleanup section,
in the cleanup loop, after run i--, 
the struct mtk_ring rising[i] will not be released,
causing a memory leak

Signed-off-by: Xiaoliang Pang 
---
 drivers/crypto/mediatek/mtk-platform.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/crypto/mediatek/mtk-platform.c 
b/drivers/crypto/mediatek/mtk-platform.c
index 7e3ad085b5bd..05d341e4a696 100644
--- a/drivers/crypto/mediatek/mtk-platform.c
+++ b/drivers/crypto/mediatek/mtk-platform.c
@@ -469,7 +469,7 @@ static int mtk_desc_ring_alloc(struct mtk_cryp *cryp)
return 0;
 
 err_cleanup:
-   for (; i--; ) {
+   for (; i >= 0; --i) {
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
  ring[i]->res_base, ring[i]->res_dma);
dma_free_coherent(cryp->dev, MTK_DESC_RING_SZ,
-- 
2.17.1