Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3190909pxu; Tue, 15 Dec 2020 00:30:03 -0800 (PST) X-Google-Smtp-Source: ABdhPJwjp0jAQclJ2o6H3FzYNMrrrjXqd0PETd53EDjeDmT+srsww5ELKYnH7ZQ3NXcE4cec5l6b X-Received: by 2002:a17:907:20f1:: with SMTP id rh17mr25534857ejb.147.1608021003261; Tue, 15 Dec 2020 00:30:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608021003; cv=none; d=google.com; s=arc-20160816; b=kkpdP4QBRrNCRlj5rldWPwRSvetbq93aoPtbo5L7vCbqijuXDyjicKgYbwq4olMfVW 4+aj2mMZcL5P3EO1e7LYiVQKMSPbjzk/qkZ4tXnY6/ARELsSlR9/o0UXHFVMYjOh+gY8 Wtqb3PBkJUfAgoRfUDW5gTJA+g+xivGPKHrdLu8rk1Jc00vtwERdXn7oTIVZ0Z6+Tk8B LQc6p9xzPYGy/TS1DoakT7fQYU1M3HO05RRIcbCbi5M2wE29DDrn9I+PEkirde++YX8v cBv5lZJ25t7lHrSH5sDuGTNNv1hFhZ58I5D8Z6ejQi+GvPf7ubxdqurDhUa3vFVQInZ/ U38Q== 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 :references:in-reply-to:message-id:date:subject:to:from; bh=Aug+dtxGQ2MNYh128SNmCRf7y3P+bkBDqCgbG8gQ9GY=; b=hO0xIvrGsdiRzNG8Z/eO4Yua1U+UudDs4hMhN3gEZ7GHppG5aMS4q4fkOpS14E7X/y C0NOxOW8J6+wQD7FtcmZZsz3pwuiy2z/GNOeYXkyQVGmaTbJ0MrtxwaFD+yCSAVHECSg cO0ESeflIHf5yu0m8vEJ81E8/8mNFdCC6eSVAEei5iO2Hl03T4ytyZzDijGI0MZB0AB7 UqZWX8UbGZENhkqsTLMkswCdEb7vx+amtMG9w15ScIO8ogQpfzRkVFqaIMoyGDczvw3B WDCkshq18ZLDlcTuNk/uRXf/UDZJ9CQrsDxvJfwfGKupxryzQ3umu22wSup5l58uHNW7 Qi/g== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d21si534827edy.92.2020.12.15.00.29.40; Tue, 15 Dec 2020 00:30:03 -0800 (PST) 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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726512AbgLOIYv (ORCPT + 99 others); Tue, 15 Dec 2020 03:24:51 -0500 Received: from honk.sigxcpu.org ([24.134.29.49]:57368 "EHLO honk.sigxcpu.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726176AbgLOIYa (ORCPT ); Tue, 15 Dec 2020 03:24:30 -0500 Received: from localhost (localhost [127.0.0.1]) by honk.sigxcpu.org (Postfix) with ESMTP id 6B601FB02; Tue, 15 Dec 2020 09:23:41 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at honk.sigxcpu.org Received: from honk.sigxcpu.org ([127.0.0.1]) by localhost (honk.sigxcpu.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NTYryB4XnR6q; Tue, 15 Dec 2020 09:23:39 +0100 (CET) Received: by bogon.sigxcpu.org (Postfix, from userid 1000) id A05ED40261; Tue, 15 Dec 2020 09:23:38 +0100 (CET) From: =?UTF-8?q?Guido=20G=C3=BCnther?= To: Marek Vasut , Stefan Agner , David Airlie , Daniel Vetter , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Emil Velikov , Laurent Pinchart , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 1/1] drm: mxsfb: Silence -EPROBE_DEFER while waiting for bridge Date: Tue, 15 Dec 2020 09:23:38 +0100 Message-Id: X-Mailer: git-send-email 2.29.2 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org It can take multiple iterations until all components for an attached DSI bridge are up leading to several: [ 3.796425] mxsfb 30320000.lcd-controller: Cannot connect bridge: -517 [ 3.816952] mxsfb 30320000.lcd-controller: [drm:mxsfb_probe [mxsfb]] *ERROR* failed to attach bridge: -517 Silence this by checking for -EPROBE_DEFER and using dev_err_probe() so we set a deferred reason in case a dependency fails to probe (which quickly happens on small config/DT changes due to the rather long probe chain which can include bridges, phys, panels, backights, leds, etc.). This also removes the only DRM_DEV_ERROR() usage, the rest of the driver uses dev_err(). Signed-off-by: Guido Günther Fixes: c42001e357f7 ("drm: mxsfb: Use drm_panel_bridge") --- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c index 6faf17b6408d..6da93551e2e5 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c @@ -134,11 +134,8 @@ static int mxsfb_attach_bridge(struct mxsfb_drm_private *mxsfb) return -ENODEV; ret = drm_bridge_attach(&mxsfb->encoder, bridge, NULL, 0); - if (ret) { - DRM_DEV_ERROR(drm->dev, - "failed to attach bridge: %d\n", ret); - return ret; - } + if (ret) + return dev_err_probe(drm->dev, ret, "Failed to attach bridge\n"); mxsfb->bridge = bridge; @@ -212,7 +209,8 @@ static int mxsfb_load(struct drm_device *drm, ret = mxsfb_attach_bridge(mxsfb); if (ret) { - dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); + if (ret != -EPROBE_DEFER) + dev_err(drm->dev, "Cannot connect bridge: %d\n", ret); goto err_vblank; } -- 2.29.2