Message ID | 20250419-gpu-acd-v5-3-8dbab23569e0@quicinc.com |
---|---|
State | New |
Headers | show |
Series | Support for GPU ACD feature on Adreno X1-85 | expand |
On Sat, Apr 19, 2025 at 08:21:32PM +0530, Akhil P Oommen wrote: > Fix the following for qmp_get() errors: > > 1. Correctly handle probe defer for A6x GPUs > 2. Ignore other errors because those are okay when GPU ACD is > not required. They are checked again during gpu acd probe. > > Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com> > Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> > Tested-by: Maya Matuszczyk <maccraft123mc@gmail.com> > Tested-by: Anthony Ruhier <aruhier@mailbox.org> > --- > drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) If this a fix for the existing commit, it should come first and have a proper Fixes: tag. If not, please squash it into the first patch. > > diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > index 6bd6d7c67f98b38cb1d23f926b5e6ccbd7f2ec53..48b4ca8894ba38176481b62b7fd1406472369df1 100644 > --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c > @@ -2043,9 +2043,10 @@ int a6xx_gmu_init(struct a6xx_gpu *a6xx_gpu, struct device_node *node) > goto detach_cxpd; > } > > + /* Other errors are handled during GPU ACD probe */ > gmu->qmp = qmp_get(gmu->dev); > - if (IS_ERR(gmu->qmp) && adreno_is_a7xx(adreno_gpu)) { > - ret = PTR_ERR(gmu->qmp); > + if (PTR_ERR_OR_ZERO(gmu->qmp) == -EPROBE_DEFER) { > + ret = -EPROBE_DEFER; > goto detach_gxpd; > } > > > -- > 2.48.1 >
diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c index 6bd6d7c67f98b38cb1d23f926b5e6ccbd7f2ec53..48b4ca8894ba38176481b62b7fd1406472369df1 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.c @@ -2043,9 +2043,10 @@ int a6xx_gmu_init(struct a6xx_gpu *a6xx_gpu, struct device_node *node) goto detach_cxpd; } + /* Other errors are handled during GPU ACD probe */ gmu->qmp = qmp_get(gmu->dev); - if (IS_ERR(gmu->qmp) && adreno_is_a7xx(adreno_gpu)) { - ret = PTR_ERR(gmu->qmp); + if (PTR_ERR_OR_ZERO(gmu->qmp) == -EPROBE_DEFER) { + ret = -EPROBE_DEFER; goto detach_gxpd; }