* [PATCH 1/3] drm/amdgpu: move check from cpu address to bo
@ 2017-07-04 6:10 Huang Rui
[not found] ` <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Huang Rui @ 2017-07-04 6:10 UTC (permalink / raw)
To: Alex Deucher, Christian König,
amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
Cc: Ken Wang, Huang Rui
Signed-off-by: Huang Rui <ray.huang@amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 4 ++--
drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
index 79db294..1469e6d 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
@@ -435,10 +435,10 @@ static int psp_hw_fini(void *handle)
psp_ring_destroy(psp, PSP_RING_TYPE__KM);
- if (psp->tmr_buf)
+ if (psp->tmr_bo)
amdgpu_bo_free_kernel(&psp->tmr_bo, &psp->tmr_mc_addr, &psp->tmr_buf);
- if (psp->fw_pri_buf)
+ if (psp->fw_pri_bo)
amdgpu_bo_free_kernel(&psp->fw_pri_bo,
&psp->fw_pri_mc_addr, &psp->fw_pri_buf);
diff --git a/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c b/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c
index 988ebd9..3d057d8 100644
--- a/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c
@@ -341,7 +341,7 @@ int psp_v3_1_ring_destroy(struct psp_context *psp, enum psp_ring_type ring_type)
ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64),
0x80000000, 0x80000000, false);
- if (ring->ring_mem)
+ if (adev->firmware.rbuf)
amdgpu_bo_free_kernel(&adev->firmware.rbuf,
&ring->ring_mem_mc_addr,
(void **)&ring->ring_mem);
--
2.7.4
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
^ permalink raw reply related [flat|nested] 8+ messages in thread[parent not found: <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>]
* [PATCH 2/3] drm/amdgpu: fix missed asd bo free when hw_fini [not found] ` <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> @ 2017-07-04 6:10 ` Huang Rui [not found] ` <1499148650-22409-2-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> 2017-07-04 6:10 ` [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory Huang Rui 2017-07-04 7:19 ` [PATCH 1/3] drm/amdgpu: move check from cpu address to bo Christian König 2 siblings, 1 reply; 8+ messages in thread From: Huang Rui @ 2017-07-04 6:10 UTC (permalink / raw) To: Alex Deucher, Christian König, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: Ken Wang, Huang Rui Signed-off-by: Huang Rui <ray.huang@amd.com> --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 1469e6d..7b43c60 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -446,6 +446,11 @@ static int psp_hw_fini(void *handle) amdgpu_bo_free_kernel(&psp->fence_buf_bo, &psp->fence_buf_mc_addr, &psp->fence_buf); + if (psp->asd_shared_bo) + amdgpu_bo_free_kernel(&psp->asd_shared_bo, + &psp->asd_shared_mc_addr, + &psp->asd_shared_buf); + kfree(psp->cmd); psp->cmd = NULL; -- 2.7.4 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 8+ messages in thread
[parent not found: <1499148650-22409-2-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>]
* Re: [PATCH 2/3] drm/amdgpu: fix missed asd bo free when hw_fini [not found] ` <1499148650-22409-2-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> @ 2017-07-04 7:20 ` Christian König 0 siblings, 0 replies; 8+ messages in thread From: Christian König @ 2017-07-04 7:20 UTC (permalink / raw) To: Huang Rui, Alex Deucher, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: Ken Wang Am 04.07.2017 um 08:10 schrieb Huang Rui: > Signed-off-by: Huang Rui <ray.huang@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > index 1469e6d..7b43c60 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > @@ -446,6 +446,11 @@ static int psp_hw_fini(void *handle) > amdgpu_bo_free_kernel(&psp->fence_buf_bo, > &psp->fence_buf_mc_addr, &psp->fence_buf); > > + if (psp->asd_shared_bo) > + amdgpu_bo_free_kernel(&psp->asd_shared_bo, > + &psp->asd_shared_mc_addr, > + &psp->asd_shared_buf); > + Good catch, but again please remove the "if". With that fixed the patch is Reviewed-by: Christian König <christian.koenig@amd.com>. Regards, Christian. > kfree(psp->cmd); > psp->cmd = NULL; > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory [not found] ` <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> 2017-07-04 6:10 ` [PATCH 2/3] drm/amdgpu: fix missed asd bo free when hw_fini Huang Rui @ 2017-07-04 6:10 ` Huang Rui [not found] ` <1499148650-22409-3-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> 2017-07-04 7:19 ` [PATCH 1/3] drm/amdgpu: move check from cpu address to bo Christian König 2 siblings, 1 reply; 8+ messages in thread From: Huang Rui @ 2017-07-04 6:10 UTC (permalink / raw) To: Alex Deucher, Christian König, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: Ken Wang, Huang Rui We would like to use a reserve vram to store all non-psp firmware data when it is submmited. And needn't alloc/free when each firmware submits again and again, we can reuse that just one page size buffer. Signed-off-by: Huang Rui <ray.huang@amd.com> --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 39 +++++++++++++++++---------------- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 5 +++++ 2 files changed, 25 insertions(+), 19 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 7b43c60..59700a2 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -118,33 +118,18 @@ psp_cmd_submit_buf(struct psp_context *psp, int index) { int ret; - struct amdgpu_bo *cmd_buf_bo; - uint64_t cmd_buf_mc_addr; - struct psp_gfx_cmd_resp *cmd_buf_mem; - struct amdgpu_device *adev = psp->adev; - ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, - AMDGPU_GEM_DOMAIN_VRAM, - &cmd_buf_bo, &cmd_buf_mc_addr, - (void **)&cmd_buf_mem); - if (ret) - return ret; - - memset(cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); + memset(psp->cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); - memcpy(cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); + memcpy(psp->cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); - ret = psp_cmd_submit(psp, ucode, cmd_buf_mc_addr, + ret = psp_cmd_submit(psp, ucode, psp->cmd_buf_mc_addr, fence_mc_addr, index); while (*((unsigned int *)psp->fence_buf) != index) { msleep(1); } - amdgpu_bo_free_kernel(&cmd_buf_bo, - &cmd_buf_mc_addr, - (void **)&cmd_buf_mem); - return ret; } @@ -352,6 +337,13 @@ static int psp_load_fw(struct amdgpu_device *adev) &psp->fence_buf_mc_addr, &psp->fence_buf); if (ret) + goto failed_mem2; + + ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, + AMDGPU_GEM_DOMAIN_VRAM, + &psp->cmd_buf_bo, &psp->cmd_buf_mc_addr, + (void **)&psp->cmd_buf_mem); + if (ret) goto failed_mem1; memset(psp->fence_buf, 0, PSP_FENCE_BUFFER_SIZE); @@ -379,9 +371,13 @@ static int psp_load_fw(struct amdgpu_device *adev) return 0; failed_mem: + amdgpu_bo_free_kernel(&psp->cmd_buf_bo, + &psp->cmd_buf_mc_addr, + (void **)&psp->cmd_buf_mem); +failed_mem1: amdgpu_bo_free_kernel(&psp->fence_buf_bo, &psp->fence_buf_mc_addr, &psp->fence_buf); -failed_mem1: +failed_mem2: amdgpu_bo_free_kernel(&psp->fw_pri_bo, &psp->fw_pri_mc_addr, &psp->fw_pri_buf); failed: @@ -451,6 +447,11 @@ static int psp_hw_fini(void *handle) &psp->asd_shared_mc_addr, &psp->asd_shared_buf); + if (psp->cmd_buf_bo) + amdgpu_bo_free_kernel(&psp->cmd_buf_bo, + &psp->cmd_buf_mc_addr, + (void **)&psp->cmd_buf_mem); + kfree(psp->cmd); psp->cmd = NULL; diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h index 1a1c8b4..538fa9d 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h @@ -108,6 +108,11 @@ struct psp_context struct amdgpu_bo *fence_buf_bo; uint64_t fence_buf_mc_addr; void *fence_buf; + + /* cmd buffer */ + struct amdgpu_bo *cmd_buf_bo; + uint64_t cmd_buf_mc_addr; + struct psp_gfx_cmd_resp *cmd_buf_mem; }; struct amdgpu_psp_funcs { -- 2.7.4 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 8+ messages in thread
[parent not found: <1499148650-22409-3-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>]
* Re: [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory [not found] ` <1499148650-22409-3-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> @ 2017-07-04 8:25 ` Zhang, Jerry (Junwei) [not found] ` <595B50F5.6050509-5C7GfCeVMHo@public.gmane.org> 0 siblings, 1 reply; 8+ messages in thread From: Zhang, Jerry (Junwei) @ 2017-07-04 8:25 UTC (permalink / raw) To: Huang Rui, Alex Deucher, Christian König, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: Ken Wang Yeah, when I had a glance at this func, flashed a similar idea. A little comment inline, please confirm it. Regards, Jerry On 07/04/2017 02:10 PM, Huang Rui wrote: > We would like to use a reserve vram to store all non-psp firmware data when it > is submmited. And needn't alloc/free when each firmware submits again and again, > we can reuse that just one page size buffer. > > Signed-off-by: Huang Rui <ray.huang@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 39 +++++++++++++++++---------------- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 5 +++++ > 2 files changed, 25 insertions(+), 19 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > index 7b43c60..59700a2 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > @@ -118,33 +118,18 @@ psp_cmd_submit_buf(struct psp_context *psp, > int index) > { > int ret; > - struct amdgpu_bo *cmd_buf_bo; > - uint64_t cmd_buf_mc_addr; > - struct psp_gfx_cmd_resp *cmd_buf_mem; > - struct amdgpu_device *adev = psp->adev; > > - ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, > - AMDGPU_GEM_DOMAIN_VRAM, > - &cmd_buf_bo, &cmd_buf_mc_addr, > - (void **)&cmd_buf_mem); > - if (ret) > - return ret; > - > - memset(cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); > + memset(psp->cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); > > - memcpy(cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); > + memcpy(psp->cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); > > - ret = psp_cmd_submit(psp, ucode, cmd_buf_mc_addr, > + ret = psp_cmd_submit(psp, ucode, psp->cmd_buf_mc_addr, > fence_mc_addr, index); > > while (*((unsigned int *)psp->fence_buf) != index) { > msleep(1); > } > > - amdgpu_bo_free_kernel(&cmd_buf_bo, > - &cmd_buf_mc_addr, > - (void **)&cmd_buf_mem); > - > return ret; > } > > @@ -352,6 +337,13 @@ static int psp_load_fw(struct amdgpu_device *adev) > &psp->fence_buf_mc_addr, > &psp->fence_buf); > if (ret) > + goto failed_mem2; > + > + ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, > + AMDGPU_GEM_DOMAIN_VRAM, > + &psp->cmd_buf_bo, &psp->cmd_buf_mc_addr, > + (void **)&psp->cmd_buf_mem); > + if (ret) > goto failed_mem1; > > memset(psp->fence_buf, 0, PSP_FENCE_BUFFER_SIZE); > @@ -379,9 +371,13 @@ static int psp_load_fw(struct amdgpu_device *adev) > return 0; We may also need to update the error handling for psp_ring_init() as "goto failed_mem;" > > failed_mem: > + amdgpu_bo_free_kernel(&psp->cmd_buf_bo, > + &psp->cmd_buf_mc_addr, > + (void **)&psp->cmd_buf_mem); > +failed_mem1: > amdgpu_bo_free_kernel(&psp->fence_buf_bo, > &psp->fence_buf_mc_addr, &psp->fence_buf); > -failed_mem1: > +failed_mem2: > amdgpu_bo_free_kernel(&psp->fw_pri_bo, > &psp->fw_pri_mc_addr, &psp->fw_pri_buf); > failed: > @@ -451,6 +447,11 @@ static int psp_hw_fini(void *handle) > &psp->asd_shared_mc_addr, > &psp->asd_shared_buf); > > + if (psp->cmd_buf_bo) > + amdgpu_bo_free_kernel(&psp->cmd_buf_bo, > + &psp->cmd_buf_mc_addr, > + (void **)&psp->cmd_buf_mem); > + > kfree(psp->cmd); > psp->cmd = NULL; > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h > index 1a1c8b4..538fa9d 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h > @@ -108,6 +108,11 @@ struct psp_context > struct amdgpu_bo *fence_buf_bo; > uint64_t fence_buf_mc_addr; > void *fence_buf; > + > + /* cmd buffer */ > + struct amdgpu_bo *cmd_buf_bo; > + uint64_t cmd_buf_mc_addr; > + struct psp_gfx_cmd_resp *cmd_buf_mem; > }; > > struct amdgpu_psp_funcs { > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <595B50F5.6050509-5C7GfCeVMHo@public.gmane.org>]
* Re: [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory [not found] ` <595B50F5.6050509-5C7GfCeVMHo@public.gmane.org> @ 2017-07-04 10:11 ` Huang Rui 0 siblings, 0 replies; 8+ messages in thread From: Huang Rui @ 2017-07-04 10:11 UTC (permalink / raw) To: Zhang, Jerry (Junwei) Cc: Alex Deucher, Ken Wang, Christian König, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW On Tue, Jul 04, 2017 at 04:25:25PM +0800, Zhang, Jerry (Junwei) wrote: > Yeah, when I had a glance at this func, flashed a similar idea. > A little comment inline, please confirm it. > > Regards, > Jerry > > On 07/04/2017 02:10 PM, Huang Rui wrote: > >We would like to use a reserve vram to store all non-psp firmware data when it > >is submmited. And needn't alloc/free when each firmware submits again and again, > >we can reuse that just one page size buffer. > > > >Signed-off-by: Huang Rui <ray.huang@amd.com> > >--- > > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 39 +++++++++++++++++---------------- > > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 5 +++++ > > 2 files changed, 25 insertions(+), 19 deletions(-) > > > >diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > >index 7b43c60..59700a2 100644 > >--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > >+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > >@@ -118,33 +118,18 @@ psp_cmd_submit_buf(struct psp_context *psp, > > int index) > > { > > int ret; > >- struct amdgpu_bo *cmd_buf_bo; > >- uint64_t cmd_buf_mc_addr; > >- struct psp_gfx_cmd_resp *cmd_buf_mem; > >- struct amdgpu_device *adev = psp->adev; > > > >- ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, > >- AMDGPU_GEM_DOMAIN_VRAM, > >- &cmd_buf_bo, &cmd_buf_mc_addr, > >- (void **)&cmd_buf_mem); > >- if (ret) > >- return ret; > >- > >- memset(cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); > >+ memset(psp->cmd_buf_mem, 0, PSP_CMD_BUFFER_SIZE); > > > >- memcpy(cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); > >+ memcpy(psp->cmd_buf_mem, cmd, sizeof(struct psp_gfx_cmd_resp)); > > > >- ret = psp_cmd_submit(psp, ucode, cmd_buf_mc_addr, > >+ ret = psp_cmd_submit(psp, ucode, psp->cmd_buf_mc_addr, > > fence_mc_addr, index); > > > > while (*((unsigned int *)psp->fence_buf) != index) { > > msleep(1); > > } > > > >- amdgpu_bo_free_kernel(&cmd_buf_bo, > >- &cmd_buf_mc_addr, > >- (void **)&cmd_buf_mem); > >- > > return ret; > > } > > > >@@ -352,6 +337,13 @@ static int psp_load_fw(struct amdgpu_device *adev) > > &psp->fence_buf_mc_addr, > > &psp->fence_buf); > > if (ret) > >+ goto failed_mem2; > >+ > >+ ret = amdgpu_bo_create_kernel(adev, PSP_CMD_BUFFER_SIZE, PAGE_SIZE, > >+ AMDGPU_GEM_DOMAIN_VRAM, > >+ &psp->cmd_buf_bo, &psp->cmd_buf_mc_addr, > >+ (void **)&psp->cmd_buf_mem); > >+ if (ret) > > goto failed_mem1; > > > > memset(psp->fence_buf, 0, PSP_FENCE_BUFFER_SIZE); > >@@ -379,9 +371,13 @@ static int psp_load_fw(struct amdgpu_device *adev) > > return 0; > > We may also need to update the error handling for psp_ring_init() > as "goto failed_mem;" > Right, nice catch. Will update it. Thanks, Ray _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] drm/amdgpu: move check from cpu address to bo [not found] ` <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org> 2017-07-04 6:10 ` [PATCH 2/3] drm/amdgpu: fix missed asd bo free when hw_fini Huang Rui 2017-07-04 6:10 ` [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory Huang Rui @ 2017-07-04 7:19 ` Christian König [not found] ` <f4402921-1085-5e4a-c6aa-582534f842eb-5C7GfCeVMHo@public.gmane.org> 2 siblings, 1 reply; 8+ messages in thread From: Christian König @ 2017-07-04 7:19 UTC (permalink / raw) To: Huang Rui, Alex Deucher, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Cc: Ken Wang Actually amdgpu_bo_free_kernel is NULL save, so you should rather remove the "if"s here altogether. Christian. Am 04.07.2017 um 08:10 schrieb Huang Rui: > Signed-off-by: Huang Rui <ray.huang@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 2 +- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > index 79db294..1469e6d 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > @@ -435,10 +435,10 @@ static int psp_hw_fini(void *handle) > > psp_ring_destroy(psp, PSP_RING_TYPE__KM); > > - if (psp->tmr_buf) > + if (psp->tmr_bo) > amdgpu_bo_free_kernel(&psp->tmr_bo, &psp->tmr_mc_addr, &psp->tmr_buf); > > - if (psp->fw_pri_buf) > + if (psp->fw_pri_bo) > amdgpu_bo_free_kernel(&psp->fw_pri_bo, > &psp->fw_pri_mc_addr, &psp->fw_pri_buf); > > diff --git a/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c b/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c > index 988ebd9..3d057d8 100644 > --- a/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c > +++ b/drivers/gpu/drm/amd/amdgpu/psp_v3_1.c > @@ -341,7 +341,7 @@ int psp_v3_1_ring_destroy(struct psp_context *psp, enum psp_ring_type ring_type) > ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), > 0x80000000, 0x80000000, false); > > - if (ring->ring_mem) > + if (adev->firmware.rbuf) > amdgpu_bo_free_kernel(&adev->firmware.rbuf, > &ring->ring_mem_mc_addr, > (void **)&ring->ring_mem); _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <f4402921-1085-5e4a-c6aa-582534f842eb-5C7GfCeVMHo@public.gmane.org>]
* Re: [PATCH 1/3] drm/amdgpu: move check from cpu address to bo [not found] ` <f4402921-1085-5e4a-c6aa-582534f842eb-5C7GfCeVMHo@public.gmane.org> @ 2017-07-04 7:53 ` Huang Rui 0 siblings, 0 replies; 8+ messages in thread From: Huang Rui @ 2017-07-04 7:53 UTC (permalink / raw) To: Koenig, Christian Cc: Deucher, Alexander, Wang, Ken, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org On Tue, Jul 04, 2017 at 03:19:17PM +0800, Koenig, Christian wrote: > Actually amdgpu_bo_free_kernel is NULL save, so you should rather remove > the "if"s here altogether. > I see, will remove all "if" in front of bo free. Thanks, Rui _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-07-04 10:11 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-04 6:10 [PATCH 1/3] drm/amdgpu: move check from cpu address to bo Huang Rui
[not found] ` <1499148650-22409-1-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>
2017-07-04 6:10 ` [PATCH 2/3] drm/amdgpu: fix missed asd bo free when hw_fini Huang Rui
[not found] ` <1499148650-22409-2-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>
2017-07-04 7:20 ` Christian König
2017-07-04 6:10 ` [PATCH 3/3] drm/amdgpu: make psp cmd buffer as a reserve memory Huang Rui
[not found] ` <1499148650-22409-3-git-send-email-ray.huang-5C7GfCeVMHo@public.gmane.org>
2017-07-04 8:25 ` Zhang, Jerry (Junwei)
[not found] ` <595B50F5.6050509-5C7GfCeVMHo@public.gmane.org>
2017-07-04 10:11 ` Huang Rui
2017-07-04 7:19 ` [PATCH 1/3] drm/amdgpu: move check from cpu address to bo Christian König
[not found] ` <f4402921-1085-5e4a-c6aa-582534f842eb-5C7GfCeVMHo@public.gmane.org>
2017-07-04 7:53 ` Huang Rui
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.