Re: [PATCH] drm/panfrost: Skip speed binning on EOPNOTSUPP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 16/08/2023 02:42, David Michael wrote:
> Encountered on an ARM Mali-T760 MP4, attempting to read the nvmem
> variable can also return EOPNOTSUPP instead of ENOENT when speed
> binning is unsupported.
> 
> Cc: <stable@xxxxxxxxxxxxxxx>
> Fixes: 7d690f936e9b ("drm/panfrost: Add basic support for speed binning")
> Signed-off-by: David Michael <fedora.dm0@xxxxxxxxx>

Reviewed-by: Steven Price <steven.price@xxxxxxx>

> ---
> 
> Hi,
> 
> I upgraded an old Chromebook (veyron-minnie) to 6.4, and it fell back to
> software rendering with "Cannot read speed-bin (-95)." in dmesg.  Does
> this error code also make sense to skip?  Hardware acceleration seems to
> work as it did previously with this change.

I believe this is because the kernel is compiled without CONFIG_NVMEM so
the stub function is returning EOPNOTSUPP.

Since most platforms don't support speed binning just continuing is the
correct approach on those. For platforms with speed binning this means
the binning won't be applied if !CONFIG_NVMEM - but I don't think
there's much we can do about that.

Steve

> 
> Thanks.
> 
> David
> 
>  drivers/gpu/drm/panfrost/panfrost_devfreq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/panfrost/panfrost_devfreq.c b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
> index 58dfb15a8757..e78de99e9933 100644
> --- a/drivers/gpu/drm/panfrost/panfrost_devfreq.c
> +++ b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
> @@ -96,7 +96,7 @@ static int panfrost_read_speedbin(struct device *dev)
>  		 * keep going without it; any other error means that we are
>  		 * supposed to read the bin value, but we failed doing so.
>  		 */
> -		if (ret != -ENOENT) {
> +		if (ret != -ENOENT && ret != -EOPNOTSUPP) {
>  			DRM_DEV_ERROR(dev, "Cannot read speed-bin (%d).", ret);
>  			return ret;
>  		}




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux