From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yakir Yang Subject: Re: [PATCH v10 01/17] drm: bridge: analogix/dp: split exynos dp driver to bridge directory Date: Mon, 7 Dec 2015 15:37:42 +0800 Message-ID: <56653746.5040306@rock-chips.com> References: <1449470239-30667-1-git-send-email-ykk@rock-chips.com> <1449470312-30880-1-git-send-email-ykk@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1449470312-30880-1-git-send-email-ykk@rock-chips.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Inki Dae , Mark Yao , Jingoo Han , Heiko Stuebner Cc: devicetree@vger.kernel.org, Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, Russell King , javier@osg.samsung.com, emil.l.velikov@gmail.com, Seung-Woo Kim , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Kishon Vijay Abraham I , linux-rockchip@lists.infradead.org, Andrzej Hajda , Kyungmin Park , Rob Herring , ajaynumb@gmail.com, Andy Yan , Thierry Reding , Gustavo Padovan , linux-arm-kernel@lists.infradead.org List-Id: linux-rockchip.vger.kernel.org CgpPbiAxMi8wNy8yMDE1IDAyOjM4IFBNLCBZYWtpciBZYW5nIHdyb3RlOgo+IFNwbGl0IHRoZSBk cCBjb3JlIGRyaXZlciBmcm9tIGV4eW5vcyBkaXJlY3RvcnkgdG8gYnJpZGdlIGRpcmVjdG9yeSwK PiBhbmQgcmVuYW1lIHRoZSBjb3JlIGRyaXZlciB0byBhbmFsb2dpeF9kcF8qLCByZW5hbWUgdGhl IHBsYXRmb3JtCj4gY29kZSB0byBleHlub3NfZHAuCj4KPiBCZXNpZGUgdGhlIG5ldyBhbmFsb2dp eF9kcCBkcml2ZXIgd291bGQgZXhwb3J0IHNpeCBob29rcy4KPiAiYW5hbG9naXhfZHBfYmluZCgp IiBhbmQgImFuYWxvZ2l4X2RwX3VuYmluZCgpIgo+ICJhbmFsb2dpeF9kcF9zdXNwbmVkKCkiIGFu ZCAiYW5hbG9naXhfZHBfcmVzdW1lKCkiCj4gImFuYWxvZ2l4X2RwX2RldGVjdCgpIiBhbmQgImFu YWxvZ2l4X2RwX2dldF9tb2RlcygpIgo+Cj4gVGhlIGJpbmQvdW5iaW5kIHN5bWJvbHMgaXMgdXNl ZCBmb3IgYW5hbG9naXggcGxhdGZvcm0gZHJpdmVyIHRvIGNvbm5lY3QKPiB3aXRoIGFuYWxvZ2l4 X2RwIGNvcmUgZHJpdmVyLiBBbmQgdGhlIGRldGVjdC9nZXRfbW9kZXMgaXMgdXNlZCBmb3IgYW5h bG9naXgKPiBwbGF0Zm9ybSBkcml2ZXIgdG8gaW5pdCB0aGUgY29ubmVjdG9yLgo+Cj4gVGhleSBy ZWFzb24gd2h5IGNvbm5lY3RvciBuZWVkIHJlZ2lzdGVyIGluIGhlbHBlciBkcml2ZXIgaXMgcm9j a2NoaXAgZHJtCj4gaGF2ZW4ndCBpbXBsZW1lbnQgdGhlIGF0b21pYyBBUEksIGJ1dCBFeHlub3Mg ZHJtIGhhdmUgaW1wbGVtZW50IGl0LCBzbwo+IHRoZXJlIHdvdWxkIG5lZWQgdHdvIGRpZmZlcmVu dCBjb25uZWN0b3IgaGVscGVyIGZ1bmN0aW9ucywgdGhhdCdzIHdoeSB3ZQo+IGxlYXZlIHRoZSBj b25uZWN0b3IgcmVnaXN0ZXIgaW4gaGVscGVyIGRyaXZlci4KPgo+IFNpZ25lZC1vZmYtYnk6IFlh a2lyIFlhbmcgPHlra0Byb2NrLWNoaXBzLmNvbT4KPiBUZXN0ZWQtYnk6IEphdmllciBNYXJ0aW5l eiBDYW5pbGxhcyA8amF2aWVyQG9zZy5zYW1zdW5nLmNvbT4KPiAtLS0KPgo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcF9jb3JlLmMgYi9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYwo+IHNpbWlsYXJpdHkgaW5kZXgg NTAlCj4gcmVuYW1lIGZyb20gZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHBfY29yZS5j Cj4gcmVuYW1lIHRvIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXhfZHBf Y29yZS5jCj4gaW5kZXggYWVlMzI2Mi4uY2Q4NjQxMyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vZXh5bm9zL2V4eW5vc19kcF9jb3JlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYwo+ICAgCj4gLXN0YXRpYyBpbnQgZXh5bm9z X2RwX3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICt2b2lkIGFuYWxvZ2l4 X2RwX3VuYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1hc3RlciwKPiAr CQkJdm9pZCAqZGF0YSkKPiAgIHsKPiAtCXBtX3J1bnRpbWVfZGlzYWJsZSgmcGRldi0+ZGV2KTsK PiAtCWNvbXBvbmVudF9kZWwoJnBkZXYtPmRldiwgJmV4eW5vc19kcF9vcHMpOwo+ICsJc3RydWN0 IGFuYWxvZ2l4X2RwX2RldmljZSAqZHAgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiAgIAo+IC0J cmV0dXJuIDA7Cj4gKwlhbmFsb2dpeF9kcF9icmlkZ2VfZGlzYWJsZShkcC0+YnJpZGdlKTsKPiAr CXBtX3J1bnRpbWVfZGlzYWJsZSgmcGRldi0+ZGV2KTsKPiAgIH0KPiArRVhQT1JUX1NZTUJPTF9H UEwoYW5hbG9naXhfZHBfdW5iaW5kKTsKPiAgIAoKU29ycnkgdG8gaW50cm9kdWNlIGFuIGNvbXBp bGVkIGVycm9yLCBteSB0ZXN0IDQuNC1yYzMga2VybmVsIGhhdmUgc29tZQpkaWZmZXJlbnQgd2l0 aCBsaW51eC1uZXh0IGtlcm5lbCwgc28gaSB1c2VkIHRvIHdyaXRlIHRoZSBwYXRjaGVzIG9uIG5l eHQgCmtlcm5lbCwKYW5kIGJhY2sgdGhlIGNoYW5nZXMgdG8gbXkgNC40IGtlcm5lbCB0byB0ZXN0 LgoKSSBhbHJlYWR5IGZvdW5kIHRoaXMgZXJyb3Igd2hlbiBJJ20gdGVzdGluZywgYnV0IGZvcmdl dCB0byByZXNlcnZlciB0aGlzIApjaGFuZ2VzCnRvIGxpbnV4LW5leHQga2VybmVsLCBJIHdvdWxk IHNlbmQgYSBuZXcgdmVyc2lvbiB0byBmaXggdGhpcy4KCi0gWWFraXIKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: ykk@rock-chips.com (Yakir Yang) Date: Mon, 7 Dec 2015 15:37:42 +0800 Subject: [PATCH v10 01/17] drm: bridge: analogix/dp: split exynos dp driver to bridge directory In-Reply-To: <1449470312-30880-1-git-send-email-ykk@rock-chips.com> References: <1449470239-30667-1-git-send-email-ykk@rock-chips.com> <1449470312-30880-1-git-send-email-ykk@rock-chips.com> Message-ID: <56653746.5040306@rock-chips.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 12/07/2015 02:38 PM, Yakir Yang wrote: > Split the dp core driver from exynos directory to bridge directory, > and rename the core driver to analogix_dp_*, rename the platform > code to exynos_dp. > > Beside the new analogix_dp driver would export six hooks. > "analogix_dp_bind()" and "analogix_dp_unbind()" > "analogix_dp_suspned()" and "analogix_dp_resume()" > "analogix_dp_detect()" and "analogix_dp_get_modes()" > > The bind/unbind symbols is used for analogix platform driver to connect > with analogix_dp core driver. And the detect/get_modes is used for analogix > platform driver to init the connector. > > They reason why connector need register in helper driver is rockchip drm > haven't implement the atomic API, but Exynos drm have implement it, so > there would need two different connector helper functions, that's why we > leave the connector register in helper driver. > > Signed-off-by: Yakir Yang > Tested-by: Javier Martinez Canillas > --- > > diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > similarity index 50% > rename from drivers/gpu/drm/exynos/exynos_dp_core.c > rename to drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > index aee3262..cd86413 100644 > --- a/drivers/gpu/drm/exynos/exynos_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > > -static int exynos_dp_remove(struct platform_device *pdev) > +void analogix_dp_unbind(struct device *dev, struct device *master, > + void *data) > { > - pm_runtime_disable(&pdev->dev); > - component_del(&pdev->dev, &exynos_dp_ops); > + struct analogix_dp_device *dp = dev_get_drvdata(dev); > > - return 0; > + analogix_dp_bridge_disable(dp->bridge); > + pm_runtime_disable(&pdev->dev); > } > +EXPORT_SYMBOL_GPL(analogix_dp_unbind); > Sorry to introduce an compiled error, my test 4.4-rc3 kernel have some different with linux-next kernel, so i used to write the patches on next kernel, and back the changes to my 4.4 kernel to test. I already found this error when I'm testing, but forget to reserver this changes to linux-next kernel, I would send a new version to fix this. - Yakir From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753626AbbLGHif (ORCPT ); Mon, 7 Dec 2015 02:38:35 -0500 Received: from lucky1.263xmail.com ([211.157.147.133]:50416 "EHLO lucky1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752185AbbLGHid (ORCPT ); Mon, 7 Dec 2015 02:38:33 -0500 X-263anti-spam: KSV:0; X-MAIL-GRAY: 1 X-MAIL-DELIVERY: 0 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 X-RL-SENDER: ykk@rock-chips.com X-FST-TO: linux-arm-kernel@lists.infradead.org X-SENDER-IP: 103.29.142.67 X-LOGIN-NAME: ykk@rock-chips.com X-UNIQUE-TAG: X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Subject: Re: [PATCH v10 01/17] drm: bridge: analogix/dp: split exynos dp driver to bridge directory To: Inki Dae , Mark Yao , Jingoo Han , Heiko Stuebner References: <1449470239-30667-1-git-send-email-ykk@rock-chips.com> <1449470312-30880-1-git-send-email-ykk@rock-chips.com> Cc: Thierry Reding , Krzysztof Kozlowski , Rob Herring , Andrzej Hajda , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Russell King , emil.l.velikov@gmail.com, Gustavo Padovan , Kishon Vijay Abraham I , ajaynumb@gmail.com, javier@osg.samsung.com, Andy Yan , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org From: Yakir Yang Message-ID: <56653746.5040306@rock-chips.com> Date: Mon, 7 Dec 2015 15:37:42 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <1449470312-30880-1-git-send-email-ykk@rock-chips.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 12/07/2015 02:38 PM, Yakir Yang wrote: > Split the dp core driver from exynos directory to bridge directory, > and rename the core driver to analogix_dp_*, rename the platform > code to exynos_dp. > > Beside the new analogix_dp driver would export six hooks. > "analogix_dp_bind()" and "analogix_dp_unbind()" > "analogix_dp_suspned()" and "analogix_dp_resume()" > "analogix_dp_detect()" and "analogix_dp_get_modes()" > > The bind/unbind symbols is used for analogix platform driver to connect > with analogix_dp core driver. And the detect/get_modes is used for analogix > platform driver to init the connector. > > They reason why connector need register in helper driver is rockchip drm > haven't implement the atomic API, but Exynos drm have implement it, so > there would need two different connector helper functions, that's why we > leave the connector register in helper driver. > > Signed-off-by: Yakir Yang > Tested-by: Javier Martinez Canillas > --- > > diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > similarity index 50% > rename from drivers/gpu/drm/exynos/exynos_dp_core.c > rename to drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > index aee3262..cd86413 100644 > --- a/drivers/gpu/drm/exynos/exynos_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > > -static int exynos_dp_remove(struct platform_device *pdev) > +void analogix_dp_unbind(struct device *dev, struct device *master, > + void *data) > { > - pm_runtime_disable(&pdev->dev); > - component_del(&pdev->dev, &exynos_dp_ops); > + struct analogix_dp_device *dp = dev_get_drvdata(dev); > > - return 0; > + analogix_dp_bridge_disable(dp->bridge); > + pm_runtime_disable(&pdev->dev); > } > +EXPORT_SYMBOL_GPL(analogix_dp_unbind); > Sorry to introduce an compiled error, my test 4.4-rc3 kernel have some different with linux-next kernel, so i used to write the patches on next kernel, and back the changes to my 4.4 kernel to test. I already found this error when I'm testing, but forget to reserver this changes to linux-next kernel, I would send a new version to fix this. - Yakir