Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp4009287pxf; Mon, 29 Mar 2021 18:36:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwXRmRUZkogbUfflVH2x9AYpv+LyXiPtBTbprtm6uubifV59Yd4I/3/NKUaehReMebqjfjZ X-Received: by 2002:aa7:dd98:: with SMTP id g24mr31239745edv.75.1617068204678; Mon, 29 Mar 2021 18:36:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617068204; cv=none; d=google.com; s=arc-20160816; b=JnRZ4T6bDmCU4x1YxHhp9Rv6kzyDfVhzJE+pJw96RfbA/hlzZRb4I90ZyQvUnzVYRW OgDTUItXBIygFF2V4vlZXcntr8nrJdvEkb1nWJCgW5tkKVAzsxHFETrCV5XSyaSLQK7I lc8ICY1z//NQz2K9JBSLdaerfIfKbLAyOSD6xgyj0WX8L7fDR6uv/0xYVhmHV07yRH+P XsRqSHKsSdx5B4VI3ErnwIZz2dv8gvQOft7KwNIJYWvi/bmKVfNJQbB31A5C6oNlBrTe ZsO6LnFcaMYcuIFSasijhqru48Q751jq5Jo09SuJSTZWTis3DGCFoZ5oFv8oJJivJni/ KlEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=8A8If7oybmQFoEyCFbbgw0aizc2xKMTrL9mIp4UPDLA=; b=ooV/MsPZXWSpvoczEflkpYOgk8pdNpPfml/zEmYeOtAEVtDm8fEfdKXhbfqjDMaTmt 8AtmP5HzCet1wTZGDpKKoYny7rpGja3eXynpu1f6WeTDn5gVrVqcYo7xxcmw8u5wPqfp ZsgtKUtvXebjYt6XaBJXdC3MMOKRW8RLzN2PG/9QkOFStcW3wMxCPnPvZubhg1oJFAG9 HtrzEYt+QZMdAjYFud8al34Y1Af0UiOq88MbuJoOk3A5b5gly5U5veqa30ZDvfSwNfRc PJDNUlkgAft7lfCFOWG8IUvYGITDGWBdctkJslKdh9zrMKKwPZK1xatZTjfFjIfqfmyH /Ksw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=jitl4f2X; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u16si15176882eje.499.2021.03.29.18.36.22; Mon, 29 Mar 2021 18:36:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=jitl4f2X; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229709AbhC3Beq (ORCPT + 99 others); Mon, 29 Mar 2021 21:34:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47458 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229655AbhC3BeP (ORCPT ); Mon, 29 Mar 2021 21:34:15 -0400 Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 55DD2C061762 for ; Mon, 29 Mar 2021 18:34:15 -0700 (PDT) Received: by mail-pl1-x629.google.com with SMTP id g10so5306103plt.8 for ; Mon, 29 Mar 2021 18:34:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=8A8If7oybmQFoEyCFbbgw0aizc2xKMTrL9mIp4UPDLA=; b=jitl4f2XQUctjdUPCCbZajr3dY4HcAUyftf12BZnk9gT+ExyOyrfn1aeoQJ97WZv0F OziPeisSf7nfUL7Vir9BOCH2pJ0XxVwB1H8xsIXQFZDnO6OkQaoxXASHwwKGvO2wAjMm FPgUiUBYn8zXhTWWhrZ1y2FlZIk7LUO6kXJ4vzAp+pxcg48qeGgblFHxoorxNK5OTqDa Ar76TxInftkgSBm46CJTsBm13wEPwKxMK42wjPYLc84bsm3TsVTGaSD88tANdPWVNzT/ 34zNyPZ5NkE8fqvKkZ/LalogOaGJB456iDWehYkIyhzq495DhRaEeJd5KxIRH928s9LT Cyrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=8A8If7oybmQFoEyCFbbgw0aizc2xKMTrL9mIp4UPDLA=; b=g3RQ5l4TOs9o35rZl0cfZENHbGA6qUhOHZ6G/QwVMBXhs7XAANrumgj1t1DGJUzfks SHSPkUYPWVzNfH0aBKTl0exF5gekzZ1j5KNl71755ETtBX452OdRbaEbZu+PMplAzcr8 hHZuOhugrpRYTmBUIQ2fDyXclgWznmpeFq2mjsXXr6pwFuFlrTVl7igHDI53axvD7qNK jznlDG01El4TgH54tZc1v/kMHzI+Ace8VYVNWmIxfYh3HZLU0ZMvbYSLCgmY9KMBLePb LIGDgR/Vum+zh+m9yiWBul8cTaY9LwWHhiD+H8024slsDPeCh4gO0xOnS5Mk7KpfO6/w Ku1A== X-Gm-Message-State: AOAM532uILNqOnORlPZnjLNXwcbu/aFYFhHx2O+4MchXY+xjoTcI1ANV eS0NaYPoAvtGT1jF3JIwQ3HBEV2RB5Duvg== X-Received: by 2002:a17:90a:a603:: with SMTP id c3mr1821365pjq.107.1617068054533; Mon, 29 Mar 2021 18:34:14 -0700 (PDT) Received: from localhost.localdomain ([2601:1c2:680:1319:692:26ff:feda:3a81]) by smtp.gmail.com with ESMTPSA id k27sm16752258pfg.95.2021.03.29.18.34.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Mar 2021 18:34:13 -0700 (PDT) From: John Stultz To: lkml Cc: John Stultz , Rob Clark , Sean Paul , Jordan Crouse , Eric Anholt , Douglas Anderson , linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, Bjorn Andersson , YongQin Liu Subject: [PATCH] drm/msm: Fix removal of valid error case when checking speed_bin Date: Tue, 30 Mar 2021 01:34:08 +0000 Message-Id: <20210330013408.2532048-1-john.stultz@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit 7bf168c8fe8c ("drm/msm: Fix speed-bin support not to access outside valid memory"), reworked the nvmem reading of "speed_bin", but in doing so dropped handling of the -ENOENT case which was previously documented as "fine". That change resulted in the db845c board display to fail to start, with the following error: adreno 5000000.gpu: [drm:a6xx_gpu_init] *ERROR* failed to read speed-bin (-2). Some OPPs may not be supported by hardware Thus, this patch simply re-adds the ENOENT handling so the lack of the speed_bin entry isn't fatal for display, and gets things working on db845c. Cc: Rob Clark Cc: Sean Paul Cc: Jordan Crouse Cc: Eric Anholt Cc: Douglas Anderson Cc: linux-arm-msm@vger.kernel.org Cc: freedreno@lists.freedesktop.org Cc: Bjorn Andersson Cc: YongQin Liu Reported-by: YongQin Liu Fixes: 7bf168c8fe8c ("drm/msm: Fix speed-bin support not to access outside valid memory") Signed-off-by: John Stultz --- drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c index 690409ca8a186..cb2df8736ca85 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c @@ -1406,7 +1406,13 @@ static int a6xx_set_supported_hw(struct device *dev, struct a6xx_gpu *a6xx_gpu, int ret; ret = nvmem_cell_read_u16(dev, "speed_bin", &speedbin); - if (ret) { + /* + * -ENOENT means that the platform doesn't support speedbin which is + * fine + */ + if (ret == -ENOENT) { + return 0; + } else if (ret) { DRM_DEV_ERROR(dev, "failed to read speed-bin (%d). Some OPPs may not be supported by hardware", ret); -- 2.25.1