From mboxrd@z Thu Jan 1 00:00:00 1970 From: alexander.stein@systec-electronic.com (Alexander Stein) Date: Tue, 29 Mar 2016 08:45:33 +0200 Subject: [PATCH v2 6/8] drm/fsl-dcu: add TCON driver In-Reply-To: <1459216802-32094-7-git-send-email-stefan@agner.ch> References: <1459216802-32094-1-git-send-email-stefan@agner.ch> <1459216802-32094-7-git-send-email-stefan@agner.ch> Message-ID: <2234894.ri36D5MRrN@ws-stein> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, some comments below. On Monday 28 March 2016 19:00:00, Stefan Agner wrote: > Add driver for the TCON (timing controller) module. The TCON module > is a separate module attached after the DCU (display controller > unit). Each DCU instance has its own, directly connected TCON > instance. The DCU's RGB and timing signals are passing through > the TCON module. TCON can provide timing signals for raw TFT panels > or operate in a bypass mode which leaves all signals unaltered. > > The driver currently only supports the bypass mode. > > Signed-off-by: Stefan Agner > --- a/Documentation/devicetree/bindings/display/fsl,dcu.txt > +++ b/Documentation/devicetree/bindings/display/fsl,dcu.txt > @@ -14,6 +14,7 @@ Required properties: > Optional properties: > - clocks: Second handle for pixel clock. > - clock-names: Second name "pix" for pixel clock. > +- fsl,tcon: The phandle to the timing controller node. Maybe a comment this is (currently) only for Vybrid, but not LS1021A. > --- /dev/null > +++ b/drivers/gpu/drm/fsl-dcu/fsl_tcon.c > [...] > +struct fsl_tcon *fsl_tcon_init(struct device *dev) > +{ > + struct fsl_tcon *tcon; > + struct device_node *np; > + int ret; > + > + tcon = devm_kzalloc(dev, sizeof(*tcon), GFP_KERNEL); > + if (!tcon) > + return NULL; > + > + np = of_parse_phandle(dev->of_node, "fsl,tcon", 0); > + if (!np) { > + dev_warn(dev, "Couldn't find the tcon node\n"); > + return NULL; > + } Maybe check for device tree node before allocating struct fsl_tcon? Also this should not be a warning, as on LS1021A this is to be expected. Best regards, Alexander From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Stein Subject: Re: [PATCH v2 6/8] drm/fsl-dcu: add TCON driver Date: Tue, 29 Mar 2016 08:45:33 +0200 Message-ID: <2234894.ri36D5MRrN@ws-stein> References: <1459216802-32094-1-git-send-email-stefan@agner.ch> <1459216802-32094-7-git-send-email-stefan@agner.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1459216802-32094-7-git-send-email-stefan@agner.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Stefan Agner Cc: meng.yi@nxp.com, pawel.moll@arm.com, alison.wang@freescale.com, daniel.vetter@ffwll.ch, mturquette@baylibre.com, ijc+devicetree@hellion.org.uk, sboyd@codeaurora.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, robh+dt@kernel.org, kernel@pengutronix.de, galak@codeaurora.org, mark.rutland@arm.com, shawnguo@kernel.org, linux-arm-kernel@lists.infradead.org List-Id: devicetree@vger.kernel.org SGksCgpzb21lIGNvbW1lbnRzIGJlbG93LgoKT24gTW9uZGF5IDI4IE1hcmNoIDIwMTYgMTk6MDA6 MDAsIFN0ZWZhbiBBZ25lciB3cm90ZToKPiBBZGQgZHJpdmVyIGZvciB0aGUgVENPTiAodGltaW5n IGNvbnRyb2xsZXIpIG1vZHVsZS4gVGhlIFRDT04gbW9kdWxlCj4gaXMgYSBzZXBhcmF0ZSBtb2R1 bGUgYXR0YWNoZWQgYWZ0ZXIgdGhlIERDVSAoZGlzcGxheSBjb250cm9sbGVyCj4gdW5pdCkuIEVh Y2ggRENVIGluc3RhbmNlIGhhcyBpdHMgb3duLCBkaXJlY3RseSBjb25uZWN0ZWQgVENPTgo+IGlu c3RhbmNlLiBUaGUgRENVJ3MgUkdCIGFuZCB0aW1pbmcgc2lnbmFscyBhcmUgcGFzc2luZyB0aHJv dWdoCj4gdGhlIFRDT04gbW9kdWxlLiBUQ09OIGNhbiBwcm92aWRlIHRpbWluZyBzaWduYWxzIGZv ciByYXcgVEZUIHBhbmVscwo+IG9yIG9wZXJhdGUgaW4gYSBieXBhc3MgbW9kZSB3aGljaCBsZWF2 ZXMgYWxsIHNpZ25hbHMgdW5hbHRlcmVkLgo+IAo+IFRoZSBkcml2ZXIgY3VycmVudGx5IG9ubHkg c3VwcG9ydHMgdGhlIGJ5cGFzcyBtb2RlLgo+IAo+IFNpZ25lZC1vZmYtYnk6IFN0ZWZhbiBBZ25l ciA8c3RlZmFuQGFnbmVyLmNoPgoKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmlu ZGluZ3MvZGlzcGxheS9mc2wsZGN1LnR4dAo+ICsrKyBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJl ZS9iaW5kaW5ncy9kaXNwbGF5L2ZzbCxkY3UudHh0Cj4gQEAgLTE0LDYgKzE0LDcgQEAgUmVxdWly ZWQgcHJvcGVydGllczoKPiAgT3B0aW9uYWwgcHJvcGVydGllczoKPiAgLSBjbG9ja3M6CQlTZWNv bmQgaGFuZGxlIGZvciBwaXhlbCBjbG9jay4KPiAgLSBjbG9jay1uYW1lczoJCVNlY29uZCBuYW1l ICJwaXgiIGZvciBwaXhlbCBjbG9jay4KPiArLSBmc2wsdGNvbjoJCVRoZSBwaGFuZGxlIHRvIHRo ZSB0aW1pbmcgY29udHJvbGxlciBub2RlLgoKTWF5YmUgYSBjb21tZW50IHRoaXMgaXMgKGN1cnJl bnRseSkgb25seSBmb3IgVnlicmlkLCBidXQgbm90IExTMTAyMUEuCgo+IC0tLSAvZGV2L251bGwK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfdGNvbi5jCj4gWy4uLl0KPiArc3Ry dWN0IGZzbF90Y29uICpmc2xfdGNvbl9pbml0KHN0cnVjdCBkZXZpY2UgKmRldikKPiArewo+ICsJ c3RydWN0IGZzbF90Y29uICp0Y29uOwo+ICsJc3RydWN0IGRldmljZV9ub2RlICpucDsKPiArCWlu dCByZXQ7Cj4gKwo+ICsJdGNvbiA9IGRldm1fa3phbGxvYyhkZXYsIHNpemVvZigqdGNvbiksIEdG UF9LRVJORUwpOwo+ICsJaWYgKCF0Y29uKQo+ICsJCXJldHVybiBOVUxMOwo+ICsKPiArCW5wID0g b2ZfcGFyc2VfcGhhbmRsZShkZXYtPm9mX25vZGUsICJmc2wsdGNvbiIsIDApOwo+ICsJaWYgKCFu cCkgewo+ICsJCWRldl93YXJuKGRldiwgIkNvdWxkbid0IGZpbmQgdGhlIHRjb24gbm9kZVxuIik7 Cj4gKwkJcmV0dXJuIE5VTEw7Cj4gKwl9CgpNYXliZSBjaGVjayBmb3IgZGV2aWNlIHRyZWUgbm9k ZSBiZWZvcmUgYWxsb2NhdGluZyBzdHJ1Y3QgZnNsX3Rjb24/IEFsc28gdGhpcyAKc2hvdWxkIG5v dCBiZSBhIHdhcm5pbmcsIGFzIG9uIExTMTAyMUEgdGhpcyBpcyB0byBiZSBleHBlY3RlZC4KCkJl c3QgcmVnYXJkcywKQWxleGFuZGVyCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753108AbcC2Gpn (ORCPT ); Tue, 29 Mar 2016 02:45:43 -0400 Received: from webbox1416.server-home.net ([77.236.96.61]:45800 "EHLO webbox1416.server-home.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752560AbcC2Gpl (ORCPT ); Tue, 29 Mar 2016 02:45:41 -0400 From: Alexander Stein To: Stefan Agner Cc: dri-devel@lists.freedesktop.org, shawnguo@kernel.org, kernel@pengutronix.de, airlied@linux.ie, daniel.vetter@ffwll.ch, jianwei.wang.chn@gmail.com, alison.wang@freescale.com, meng.yi@nxp.com, mturquette@baylibre.com, sboyd@codeaurora.org, mark.rutland@arm.com, robh+dt@kernel.org, pawel.moll@arm.com, ijc+devicetree@hellion.org.uk, galak@codeaurora.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v2 6/8] drm/fsl-dcu: add TCON driver Date: Tue, 29 Mar 2016 08:45:33 +0200 Message-ID: <2234894.ri36D5MRrN@ws-stein> User-Agent: KMail/4.14.10 (Linux/4.1.15-gentoo-r1; KDE/4.14.16; x86_64; ; ) In-Reply-To: <1459216802-32094-7-git-send-email-stefan@agner.ch> References: <1459216802-32094-1-git-send-email-stefan@agner.ch> <1459216802-32094-7-git-send-email-stefan@agner.ch> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, some comments below. On Monday 28 March 2016 19:00:00, Stefan Agner wrote: > Add driver for the TCON (timing controller) module. The TCON module > is a separate module attached after the DCU (display controller > unit). Each DCU instance has its own, directly connected TCON > instance. The DCU's RGB and timing signals are passing through > the TCON module. TCON can provide timing signals for raw TFT panels > or operate in a bypass mode which leaves all signals unaltered. > > The driver currently only supports the bypass mode. > > Signed-off-by: Stefan Agner > --- a/Documentation/devicetree/bindings/display/fsl,dcu.txt > +++ b/Documentation/devicetree/bindings/display/fsl,dcu.txt > @@ -14,6 +14,7 @@ Required properties: > Optional properties: > - clocks: Second handle for pixel clock. > - clock-names: Second name "pix" for pixel clock. > +- fsl,tcon: The phandle to the timing controller node. Maybe a comment this is (currently) only for Vybrid, but not LS1021A. > --- /dev/null > +++ b/drivers/gpu/drm/fsl-dcu/fsl_tcon.c > [...] > +struct fsl_tcon *fsl_tcon_init(struct device *dev) > +{ > + struct fsl_tcon *tcon; > + struct device_node *np; > + int ret; > + > + tcon = devm_kzalloc(dev, sizeof(*tcon), GFP_KERNEL); > + if (!tcon) > + return NULL; > + > + np = of_parse_phandle(dev->of_node, "fsl,tcon", 0); > + if (!np) { > + dev_warn(dev, "Couldn't find the tcon node\n"); > + return NULL; > + } Maybe check for device tree node before allocating struct fsl_tcon? Also this should not be a warning, as on LS1021A this is to be expected. Best regards, Alexander