From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: omap4: support for manually updated display Date: Wed, 31 Oct 2018 15:10:00 +0200 Message-ID: <2348762.PvrRPAx0JW@avalon> References: <20180830090456.GA17277@amd> <20181019225827.s76wapp3cxrmp5af@earth.universe> <20181020003812.GE43338@atomide.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181020003812.GE43338@atomide.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Tony Lindgren Cc: mpartap@gmx.net, merlijn@wizzup.org, Sebastian Reichel , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, nekit1000@gmail.com, Tomi Valkeinen , Pavel Machek , linux-omap@vger.kernel.org, linux-arm-kernel List-Id: linux-omap@vger.kernel.org SGkgVG9ueSwKCk9uIFNhdHVyZGF5LCAyMCBPY3RvYmVyIDIwMTggMDM6Mzg6MTIgRUVUIFRvbnkg TGluZGdyZW4gd3JvdGU6Cj4gKiBTZWJhc3RpYW4gUmVpY2hlbCA8c3JlQGtlcm5lbC5vcmc+IFsx ODEwMTkgMTU6NThdOgo+ID4gSSB1cGxvYWRlZCBteSBjdXJyZW50IHN0YXR1cyBoZXJlLiBJdCdz IG5vdCBiYXNlZCBvbiB0aGUgbmV3ZXN0Cj4gPiAtbmV4dCwgYnV0IGNvbnRhaW5zIHRoZSBpbnRl cmVzdGluZyBwYXRjaGVzIGZyb20gTGF1cmVudC4gQWxzbwo+ID4gdGhlIGxhc3QgZmV3IHBhdGNo ZXMgYXJlIG5vdCB5ZXQgY2xlYW5lZCB1cCwgc29ycnkgZm9yIHRoZSBtZXNzLgo+IAo+IFdheSB0 byBnbywgdGhhbmtzIDopIEhlcmUncyBhIHF1aWNrIGZpeCBmb3IgaXNzdWVzIHdpdGggbG9hZGlu Zwo+IGFuZCB1bmxvYWRpbmcgbW9kdWxlcywgc2VlbXMgbGlrZSB0aGlzIHNob3VsZCBiZSBmaXhl ZCBzb21ld2hlcmUKPiBlbHNlIHRob3VnaD8KClRoYW5rcyBmb3IgdGhlIHJlcG9ydCwgSSdsbCBo YXZlIGEgbG9vayBhdCB0aGlzLgoKPiA4PCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+IFVubG9h ZCBvZiBoZG1pOgo+IAo+IFVuYWJsZSB0byBoYW5kbGUga2VybmVsIE5VTEwgcG9pbnRlciBkZXJl ZmVyZW5jZSBhdCB2aXJ0dWFsIGFkZHJlc3MgMDAwMDAyNzgKPiAoaGRtaV9ydW50aW1lX3Jlc3Vt ZSBbb21hcGRzc10pIGZyb20gWzxjMDYwZDk0ND5dCj4gKF9fcnBtX2NhbGxiYWNrKzB4MTQ0LzB4 MWQ4KSAoX19ycG1fY2FsbGJhY2spIGZyb20gWzxjMDYwZDlmOD5dCj4gKHJwbV9jYWxsYmFjaysw eDIwLzB4ODApCj4gKHJwbV9jYWxsYmFjaykgZnJvbSBbPGMwNjBkNTgwPl0gKHJwbV9yZXN1bWUr MHg2MGMvMHg4MjgpCj4gKHJwbV9yZXN1bWUpIGZyb20gWzxjMDYwZDdlOD5dIChfX3BtX3J1bnRp bWVfcmVzdW1lKzB4NGMvMHg2NCkKPiAoX19wbV9ydW50aW1lX3Jlc3VtZSkgZnJvbSBbPGMwNjAy N2FjPl0KPiAoZGV2aWNlX3JlbGVhc2VfZHJpdmVyX2ludGVybmFsKzB4MTMwLzB4MjM0KQo+IChk ZXZpY2VfcmVsZWFzZV9kcml2ZXJfaW50ZXJuYWwpIGZyb20gWzxjMDYwMjhmND5dCj4gKGRyaXZl cl9kZXRhY2grMHgzOC8weDZjKSAoZHJpdmVyX2RldGFjaCkgZnJvbSBbPGMwNjAxNjU4Pl0KPiAo YnVzX3JlbW92ZV9kcml2ZXIrMHg0Yy8weGE0KQo+IChidXNfcmVtb3ZlX2RyaXZlcikgZnJvbSBb PGMwNjA0MWZjPl0KPiAocGxhdGZvcm1fdW5yZWdpc3Rlcl9kcml2ZXJzKzB4MjAvMHgyYykgKHBs YXRmb3JtX3VucmVnaXN0ZXJfZHJpdmVycykgZnJvbQo+IFs8YzAxZjBlZjg+XSAoc3lzX2RlbGV0 ZV9tb2R1bGUrMHgxYzAvMHgyMzApIChzeXNfZGVsZXRlX21vZHVsZSkgZnJvbQo+IFs8YzAxMDEw MDA+XSAocmV0X2Zhc3Rfc3lzY2FsbCsweDAvMHgyOCkKPiAKPiAKPiBVbmxvYWQgb2YgZHNpOgo+ IAo+IFVuYWJsZSB0byBoYW5kbGUga2VybmVsIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZSBhdCB2 aXJ0dWFsIGFkZHJlc3MgMDAwMDAyNzgKPiAoZHNpX3J1bnRpbWVfcmVzdW1lIFtvbWFwZHNzXSkg ZnJvbSBbPGMwNjBkOTQ0Pl0KPiAoX19ycG1fY2FsbGJhY2srMHgxNDQvMHgxZDgpIChfX3JwbV9j YWxsYmFjaykgZnJvbSBbPGMwNjBkOWY4Pl0KPiAocnBtX2NhbGxiYWNrKzB4MjAvMHg4MCkKPiAo cnBtX2NhbGxiYWNrKSBmcm9tIFs8YzA2MGQ1ODA+XSAocnBtX3Jlc3VtZSsweDYwYy8weDgyOCkK PiAocnBtX3Jlc3VtZSkgZnJvbSBbPGMwNjBkN2U4Pl0gKF9fcG1fcnVudGltZV9yZXN1bWUrMHg0 Yy8weDY0KQo+IChfX3BtX3J1bnRpbWVfcmVzdW1lKSBmcm9tIFs8YzA2MDIzNjQ+XSAoZHJpdmVy X3Byb2JlX2RldmljZSsweDM4LzB4MTY0KQo+IChkcml2ZXJfcHJvYmVfZGV2aWNlKSBmcm9tIFs8 YzA2MDI1NzQ+XSAoX19kcml2ZXJfYXR0YWNoKzB4ZTQvMHhlOCkKPiAoX19kcml2ZXJfYXR0YWNo KSBmcm9tIFs8YzA2MDA0MTg+XSAoYnVzX2Zvcl9lYWNoX2RldisweDcwLzB4YjQpCj4gKGJ1c19m b3JfZWFjaF9kZXYpIGZyb20gWzxjMDYwMTVhOD5dIChidXNfYWRkX2RyaXZlcisweDE5OC8weDFm YykKPiAoYnVzX2FkZF9kcml2ZXIpIGZyb20gWzxjMDYwMzJlYz5dIChkcml2ZXJfcmVnaXN0ZXIr MHg3NC8weDEwOCkKPiAoZHJpdmVyX3JlZ2lzdGVyKSBmcm9tIFs8YzAxMDJmZTQ+XSAoZG9fb25l X2luaXRjYWxsKzB4ODAvMHgzMWMpCj4gKGRvX29uZV9pbml0Y2FsbCkgZnJvbSBbPGMwMWYwZmM0 Pl0gKGRvX2luaXRfbW9kdWxlKzB4NWMvMHgxZjgpCj4gKGRvX2luaXRfbW9kdWxlKSBmcm9tIFs8 YzAxZjJlMGM+XSAobG9hZF9tb2R1bGUrMHgxMzYwLzB4MTZjMCkKPiAobG9hZF9tb2R1bGUpIGZy b20gWzxjMDFmMzNkND5dIChzeXNfZmluaXRfbW9kdWxlKzB4YmMvMHhkYykKPiAoc3lzX2Zpbml0 X21vZHVsZSkgZnJvbSBbPGMwMTAxMDAwPl0gKHJldF9mYXN0X3N5c2NhbGwrMHgwLzB4MjgpCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kc2kuYwo+IGIvZHJp dmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2RzaS5jIC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFw ZHJtL2Rzcy9kc2kuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kc2kuYwo+ IEBAIC01NDg0LDYgKzU0ODQsOSBAQCBzdGF0aWMgaW50IGRzaV9ydW50aW1lX3Jlc3VtZShzdHJ1 Y3QgZGV2aWNlICpkZXYpCj4gIAlzdHJ1Y3QgZHNpX2RhdGEgKmRzaSA9IGRldl9nZXRfZHJ2ZGF0 YShkZXYpOwo+ICAJaW50IHI7Cj4gCj4gKwlpZiAoIWRzaSB8fCAhZHNpLT5kc3MgfHwgIWRzaS0+ ZHNzLT5kaXNwYykKPiArCQlyZXR1cm4gLUVOT0RFVjsKPiArCj4gIAlyID0gZGlzcGNfcnVudGlt ZV9nZXQoZHNpLT5kc3MtPmRpc3BjKTsKPiAgCWlmIChyKQo+ICAJCXJldHVybiByOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9kc3MvaGRtaTQuYwo+IGIvZHJpdmVycy9n cHUvZHJtL29tYXBkcm0vZHNzL2hkbWk0LmMgLS0tCj4gYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRy bS9kc3MvaGRtaTQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9oZG1pNC5j Cj4gQEAgLTg0Nyw2ICs4NDcsOSBAQCBzdGF0aWMgaW50IGhkbWlfcnVudGltZV9yZXN1bWUoc3Ry dWN0IGRldmljZSAqZGV2KQo+ICAJc3RydWN0IG9tYXBfaGRtaSAqaGRtaSA9IGRldl9nZXRfZHJ2 ZGF0YShkZXYpOwo+ICAJaW50IHI7Cj4gCj4gKwlpZiAoIWhkbWkgfHwgIWhkbWktPmRzcyB8fCAh aGRtaS0+ZHNzLT5kaXNwYykKPiArCQlyZXR1cm4gLUVOT0RFVjsKPiArCj4gIAlyID0gZGlzcGNf cnVudGltZV9nZXQoaGRtaS0+ZHNzLT5kaXNwYyk7Cj4gIAlpZiAociA8IDApCj4gIAkJcmV0dXJu IHI7CgotLSAKUmVnYXJkcywKCkxhdXJlbnQgUGluY2hhcnQKCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: laurent.pinchart@ideasonboard.com (Laurent Pinchart) Date: Wed, 31 Oct 2018 15:10:00 +0200 Subject: omap4: support for manually updated display In-Reply-To: <20181020003812.GE43338@atomide.com> References: <20180830090456.GA17277@amd> <20181019225827.s76wapp3cxrmp5af@earth.universe> <20181020003812.GE43338@atomide.com> Message-ID: <2348762.PvrRPAx0JW@avalon> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Tony, On Saturday, 20 October 2018 03:38:12 EET Tony Lindgren wrote: > * Sebastian Reichel [181019 15:58]: > > I uploaded my current status here. It's not based on the newest > > -next, but contains the interesting patches from Laurent. Also > > the last few patches are not yet cleaned up, sorry for the mess. > > Way to go, thanks :) Here's a quick fix for issues with loading > and unloading modules, seems like this should be fixed somewhere > else though? Thanks for the report, I'll have a look at this. > 8< ----------------------- > Unload of hdmi: > > Unable to handle kernel NULL pointer dereference at virtual address 00000278 > (hdmi_runtime_resume [omapdss]) from [] > (__rpm_callback+0x144/0x1d8) (__rpm_callback) from [] > (rpm_callback+0x20/0x80) > (rpm_callback) from [] (rpm_resume+0x60c/0x828) > (rpm_resume) from [] (__pm_runtime_resume+0x4c/0x64) > (__pm_runtime_resume) from [] > (device_release_driver_internal+0x130/0x234) > (device_release_driver_internal) from [] > (driver_detach+0x38/0x6c) (driver_detach) from [] > (bus_remove_driver+0x4c/0xa4) > (bus_remove_driver) from [] > (platform_unregister_drivers+0x20/0x2c) (platform_unregister_drivers) from > [] (sys_delete_module+0x1c0/0x230) (sys_delete_module) from > [] (ret_fast_syscall+0x0/0x28) > > > Unload of dsi: > > Unable to handle kernel NULL pointer dereference at virtual address 00000278 > (dsi_runtime_resume [omapdss]) from [] > (__rpm_callback+0x144/0x1d8) (__rpm_callback) from [] > (rpm_callback+0x20/0x80) > (rpm_callback) from [] (rpm_resume+0x60c/0x828) > (rpm_resume) from [] (__pm_runtime_resume+0x4c/0x64) > (__pm_runtime_resume) from [] (driver_probe_device+0x38/0x164) > (driver_probe_device) from [] (__driver_attach+0xe4/0xe8) > (__driver_attach) from [] (bus_for_each_dev+0x70/0xb4) > (bus_for_each_dev) from [] (bus_add_driver+0x198/0x1fc) > (bus_add_driver) from [] (driver_register+0x74/0x108) > (driver_register) from [] (do_one_initcall+0x80/0x31c) > (do_one_initcall) from [] (do_init_module+0x5c/0x1f8) > (do_init_module) from [] (load_module+0x1360/0x16c0) > (load_module) from [] (sys_finit_module+0xbc/0xdc) > (sys_finit_module) from [] (ret_fast_syscall+0x0/0x28) > > diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c > b/drivers/gpu/drm/omapdrm/dss/dsi.c --- a/drivers/gpu/drm/omapdrm/dss/dsi.c > +++ b/drivers/gpu/drm/omapdrm/dss/dsi.c > @@ -5484,6 +5484,9 @@ static int dsi_runtime_resume(struct device *dev) > struct dsi_data *dsi = dev_get_drvdata(dev); > int r; > > + if (!dsi || !dsi->dss || !dsi->dss->dispc) > + return -ENODEV; > + > r = dispc_runtime_get(dsi->dss->dispc); > if (r) > return r; > diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi4.c > b/drivers/gpu/drm/omapdrm/dss/hdmi4.c --- > a/drivers/gpu/drm/omapdrm/dss/hdmi4.c > +++ b/drivers/gpu/drm/omapdrm/dss/hdmi4.c > @@ -847,6 +847,9 @@ static int hdmi_runtime_resume(struct device *dev) > struct omap_hdmi *hdmi = dev_get_drvdata(dev); > int r; > > + if (!hdmi || !hdmi->dss || !hdmi->dss->dispc) > + return -ENODEV; > + > r = dispc_runtime_get(hdmi->dss->dispc); > if (r < 0) > return r; -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DF98FC0044C for ; Wed, 31 Oct 2018 13:10:00 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id A33EE20664 for ; Wed, 31 Oct 2018 13:10:00 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="QIoQFCI8" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A33EE20664 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729278AbeJaWH4 (ORCPT ); Wed, 31 Oct 2018 18:07:56 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:57766 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729187AbeJaWH4 (ORCPT ); Wed, 31 Oct 2018 18:07:56 -0400 Received: from avalon.localnet (dfj612ybrt5fhg77mgycy-3.rev.dnainternet.fi [IPv6:2001:14ba:21f5:5b00:2e86:4862:ef6a:2804]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 857B411F2; Wed, 31 Oct 2018 14:09:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1540991396; bh=AJC2ob2MAZ/LXBIJm6bsSMUaaUmuMpxYcyDVBhVBS98=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QIoQFCI8S50dD80qP29B34a4kw6qqrGOen+fyoC2tFnYSYEFDXGLdspADcc6T0aQ7 kGd2yYx/P8Fhvfp5LHx6h5j32KgpzqKhFuC6P2StVfGKniYMshU7+ZhNeDq8uGwFmB y8fDUel8CQBGOqdBm558LUka+knecsQLu1Mv1MFk= From: Laurent Pinchart To: Tony Lindgren Cc: Sebastian Reichel , Pavel Machek , Tomi Valkeinen , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-kernel , linux-omap@vger.kernel.org, nekit1000@gmail.com, mpartap@gmx.net, merlijn@wizzup.org Subject: Re: omap4: support for manually updated display Date: Wed, 31 Oct 2018 15:10:00 +0200 Message-ID: <2348762.PvrRPAx0JW@avalon> Organization: Ideas on Board Oy In-Reply-To: <20181020003812.GE43338@atomide.com> References: <20180830090456.GA17277@amd> <20181019225827.s76wapp3cxrmp5af@earth.universe> <20181020003812.GE43338@atomide.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Tony, On Saturday, 20 October 2018 03:38:12 EET Tony Lindgren wrote: > * Sebastian Reichel [181019 15:58]: > > I uploaded my current status here. It's not based on the newest > > -next, but contains the interesting patches from Laurent. Also > > the last few patches are not yet cleaned up, sorry for the mess. > > Way to go, thanks :) Here's a quick fix for issues with loading > and unloading modules, seems like this should be fixed somewhere > else though? Thanks for the report, I'll have a look at this. > 8< ----------------------- > Unload of hdmi: > > Unable to handle kernel NULL pointer dereference at virtual address 00000278 > (hdmi_runtime_resume [omapdss]) from [] > (__rpm_callback+0x144/0x1d8) (__rpm_callback) from [] > (rpm_callback+0x20/0x80) > (rpm_callback) from [] (rpm_resume+0x60c/0x828) > (rpm_resume) from [] (__pm_runtime_resume+0x4c/0x64) > (__pm_runtime_resume) from [] > (device_release_driver_internal+0x130/0x234) > (device_release_driver_internal) from [] > (driver_detach+0x38/0x6c) (driver_detach) from [] > (bus_remove_driver+0x4c/0xa4) > (bus_remove_driver) from [] > (platform_unregister_drivers+0x20/0x2c) (platform_unregister_drivers) from > [] (sys_delete_module+0x1c0/0x230) (sys_delete_module) from > [] (ret_fast_syscall+0x0/0x28) > > > Unload of dsi: > > Unable to handle kernel NULL pointer dereference at virtual address 00000278 > (dsi_runtime_resume [omapdss]) from [] > (__rpm_callback+0x144/0x1d8) (__rpm_callback) from [] > (rpm_callback+0x20/0x80) > (rpm_callback) from [] (rpm_resume+0x60c/0x828) > (rpm_resume) from [] (__pm_runtime_resume+0x4c/0x64) > (__pm_runtime_resume) from [] (driver_probe_device+0x38/0x164) > (driver_probe_device) from [] (__driver_attach+0xe4/0xe8) > (__driver_attach) from [] (bus_for_each_dev+0x70/0xb4) > (bus_for_each_dev) from [] (bus_add_driver+0x198/0x1fc) > (bus_add_driver) from [] (driver_register+0x74/0x108) > (driver_register) from [] (do_one_initcall+0x80/0x31c) > (do_one_initcall) from [] (do_init_module+0x5c/0x1f8) > (do_init_module) from [] (load_module+0x1360/0x16c0) > (load_module) from [] (sys_finit_module+0xbc/0xdc) > (sys_finit_module) from [] (ret_fast_syscall+0x0/0x28) > > diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c > b/drivers/gpu/drm/omapdrm/dss/dsi.c --- a/drivers/gpu/drm/omapdrm/dss/dsi.c > +++ b/drivers/gpu/drm/omapdrm/dss/dsi.c > @@ -5484,6 +5484,9 @@ static int dsi_runtime_resume(struct device *dev) > struct dsi_data *dsi = dev_get_drvdata(dev); > int r; > > + if (!dsi || !dsi->dss || !dsi->dss->dispc) > + return -ENODEV; > + > r = dispc_runtime_get(dsi->dss->dispc); > if (r) > return r; > diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi4.c > b/drivers/gpu/drm/omapdrm/dss/hdmi4.c --- > a/drivers/gpu/drm/omapdrm/dss/hdmi4.c > +++ b/drivers/gpu/drm/omapdrm/dss/hdmi4.c > @@ -847,6 +847,9 @@ static int hdmi_runtime_resume(struct device *dev) > struct omap_hdmi *hdmi = dev_get_drvdata(dev); > int r; > > + if (!hdmi || !hdmi->dss || !hdmi->dss->dispc) > + return -ENODEV; > + > r = dispc_runtime_get(hdmi->dss->dispc); > if (r < 0) > return r; -- Regards, Laurent Pinchart