From mboxrd@z Thu Jan 1 00:00:00 1970 From: Inki Dae Subject: Re: [PATCH 4/7] drm/exynos/hdmi: add bridge support Date: Wed, 01 Feb 2017 16:44:27 +0900 Message-ID: <589191DB.5000304@samsung.com> References: <1484895145-511-1-git-send-email-a.hajda@samsung.com> <1484895145-511-5-git-send-email-a.hajda@samsung.com> <58918ED0.3020406@samsung.com> <53bb68fd-5de0-6b3d-df3e-e961ba3fd0fb@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <53bb68fd-5de0-6b3d-df3e-e961ba3fd0fb@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Andrzej Hajda , dri-devel@lists.freedesktop.org, Krzysztof Kozlowski Cc: linux-samsung-soc@vger.kernel.org, Kyungmin Park , Marek Szyprowski , linux-kernel@vger.kernel.org, Bartlomiej Zolnierkiewicz List-Id: linux-samsung-soc@vger.kernel.org CgoyMDE364WEIDAy7JuUIDAx7J28IDE2OjM07JeQIEFuZHJ6ZWogSGFqZGEg7J20KOqwgCkg7JO0 IOq4gDoKPiBPbiAwMS4wMi4yMDE3IDA4OjMxLCBJbmtpIERhZSB3cm90ZToKPj4KPj4gMjAxN+uF hCAwMeyblCAyMOydvCAxNTo1MuyXkCBBbmRyemVqIEhhamRhIOydtCjqsIApIOyTtCDquIA6Cj4+ PiBJbiBzb21lIHBsYXRmb3JtcyB0aGVyZSBpcyBhdHRhY2hlZCBhbm90aGVyIGRldmljZSB0byB0 aGUgZW5kIG9mIEhETUkuCj4+PiBUaGUgcGF0Y2ggYWRkcyBzdXBwb3J0IGZvciBpdC4KPj4gQW5k cnplaiwgY2FuIHlvdSBjbGFyaWZ5IHdoYXQgYnJpZGdlIGRldmljZSBjYW4gYmUgYXR0YWNoZWQg YW5kIGFjdHVhbGx5IGlzIG5vdyBhdHRhY2hlZCB0byB0aGUgZW5kIG9mIEhETUk/Cj4+IEFuZCBJ IHdvbmRlciBpZiB3ZSBoYXZlIHRoZSBkZXZpY2UgdHJlZSBmaWxlIHdoaWNoIGRlZmluZXMgdGhl IGJyaWRnZSBkZXZpY2UgaW4gbWFpbmxpbmUuIFNlZW1zIHdlIGhhdmUgbm8gdGhlIGRldmljZSB0 cmVlIGZpbGUuCj4+Cj4+IElmIG5vdGhpbmcsIHRoZW4gdGhpcyBwYXRjaCBzaG91bGQgYmUgbWVy Z2VkIHdpdGggcmVhbCB1c2UgY2FzZS4KPiAKPiBTaUk4NjIwIE1ITCBicmlkZ2UgaW4gdG0yL3Rt MmUuCgpEaWQgeW91IHBvc3QgZHQgcGF0Y2ggdG8gYWRkIHRoZSBwcm9wZXJ0aWVzIHJlbGF0ZWQg dG8gU2lJODYyMCBNSEwgYnJpZGdlIGRldmljZT8KCkkgc2VlIGJlbG93IHBhdGNoIHNlcmllcywK W1BBVENIIDAwLzI0XSBkcm0vYnJpZGdlL3NpaTg2MjA6IGFkZCBVbHRyYSBIRCBtb2RlcyBzdXBw b3J0CgpidXQgSSBjb3VsZG4ndCBmaW5kIGR0IHBhdGNoIGZvciBpdC4gQW5kIHNwZWNpZnlpbmcg U2lJODYyMCBNSEwgYnJpZGdlIGRldmljZSBhcyBkZXNjcmlwdGlvbiB3b3VsZCBiZSBuZWVkZWQu CgpUaGFua3MuCgo+IAo+IFJlZ2FyZHMKPiBBbmRyemVqCj4gCj4+Cj4+IFRoYW5rcy4KPj4KPj4+ IFNpZ25lZC1vZmYtYnk6IEFuZHJ6ZWogSGFqZGEgPGEuaGFqZGFAc2Ftc3VuZy5jb20+Cj4+PiAt LS0KPj4+ICBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19oZG1pLmMgfCA1NiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KPj4+ICAxIGZpbGUgY2hhbmdlZCwgNDYgaW5z ZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCj4+Pgo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9leHlub3MvZXh5bm9zX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2hkbWkuYwo+Pj4gaW5kZXggYTczYjE5Mi4uNDFmYjg5NCAxMDA2NDQKPj4+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2hkbWkuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jCj4+PiBAQCAtMzUsNiArMzUsNyBAQAo+Pj4gICNpbmNs dWRlIDxsaW51eC9pby5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9vZl9hZGRyZXNzLmg+Cj4+PiAg I2luY2x1ZGUgPGxpbnV4L29mX2RldmljZS5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9vZl9ncmFw aC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9oZG1pLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2Nv bXBvbmVudC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9tZmQvc3lzY29uLmg+Cj4+PiBAQCAtMTMz LDYgKzEzNCw3IEBAIHN0cnVjdCBoZG1pX2NvbnRleHQgewo+Pj4gIAlzdHJ1Y3QgcmVndWxhdG9y X2J1bGtfZGF0YQlyZWd1bF9idWxrW0FSUkFZX1NJWkUoc3VwcGx5KV07Cj4+PiAgCXN0cnVjdCBy ZWd1bGF0b3IJCSpyZWdfaGRtaV9lbjsKPj4+ICAJc3RydWN0IGV4eW5vc19kcm1fY2xrCQlwaHlf Y2xrOwo+Pj4gKwlzdHJ1Y3QgZHJtX2JyaWRnZQkJKmJyaWRnZTsKPj4+ICB9Owo+Pj4gIAo+Pj4g IHN0YXRpYyBpbmxpbmUgc3RydWN0IGhkbWlfY29udGV4dCAqZW5jb2Rlcl90b19oZG1pKHN0cnVj dCBkcm1fZW5jb2RlciAqZSkKPj4+IEBAIC05MjIsNyArOTI0LDE1IEBAIHN0YXRpYyBpbnQgaGRt aV9jcmVhdGVfY29ubmVjdG9yKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPj4+ICAJZHJt X2Nvbm5lY3Rvcl9yZWdpc3Rlcihjb25uZWN0b3IpOwo+Pj4gIAlkcm1fbW9kZV9jb25uZWN0b3Jf YXR0YWNoX2VuY29kZXIoY29ubmVjdG9yLCBlbmNvZGVyKTsKPj4+ICAKPj4+IC0JcmV0dXJuIDA7 Cj4+PiArCWlmIChoZGF0YS0+YnJpZGdlKSB7Cj4+PiArCQllbmNvZGVyLT5icmlkZ2UgPSBoZGF0 YS0+YnJpZGdlOwo+Pj4gKwkJaGRhdGEtPmJyaWRnZS0+ZW5jb2RlciA9IGVuY29kZXI7Cj4+PiAr CQlyZXQgPSBkcm1fYnJpZGdlX2F0dGFjaChlbmNvZGVyLT5kZXYsIGhkYXRhLT5icmlkZ2UpOwo+ Pj4gKwkJaWYgKHJldCkKPj4+ICsJCQlEUk1fRVJST1IoIkZhaWxlZCB0byBhdHRhY2ggYnJpZGdl XG4iKTsKPj4+ICsJfQo+Pj4gKwo+Pj4gKwlyZXR1cm4gcmV0Owo+Pj4gIH0KPj4+ICAKPj4+ICBz dGF0aWMgYm9vbCBoZG1pX21vZGVfZml4dXAoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+ Pj4gQEAgLTE1OTEsNiArMTYwMSwzMSBAQCBzdGF0aWMgdm9pZCBoZG1pcGh5X2Nsa19lbmFibGUo c3RydWN0IGV4eW5vc19kcm1fY2xrICpjbGssIGJvb2wgZW5hYmxlKQo+Pj4gIAkJaGRtaXBoeV9k aXNhYmxlKGhkYXRhKTsKPj4+ICB9Cj4+PiAgCj4+PiArc3RhdGljIGludCBoZG1pX2JyaWRnZV9p bml0KHN0cnVjdCBoZG1pX2NvbnRleHQgKmhkYXRhKQo+Pj4gK3sKPj4+ICsJc3RydWN0IGRldmlj ZSAqZGV2ID0gaGRhdGEtPmRldjsKPj4+ICsJc3RydWN0IGRldmljZV9ub2RlICplcCwgKm5wOwo+ Pj4gKwo+Pj4gKwllcCA9IG9mX2dyYXBoX2dldF9lbmRwb2ludF9ieV9yZWdzKGRldi0+b2Zfbm9k ZSwgMSwgLTEpOwo+Pj4gKwlpZiAoIWVwKQo+Pj4gKwkJcmV0dXJuIDA7Cj4+PiArCj4+PiArCW5w ID0gb2ZfZ3JhcGhfZ2V0X3JlbW90ZV9wb3J0X3BhcmVudChlcCk7Cj4+PiArCW9mX25vZGVfcHV0 KGVwKTsKPj4+ICsJaWYgKCFucCkgewo+Pj4gKwkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gZ2V0IHJl bW90ZSBwb3J0IHBhcmVudCIpOwo+Pj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4+PiArCX0KPj4+ICsK Pj4+ICsJaGRhdGEtPmJyaWRnZSA9IG9mX2RybV9maW5kX2JyaWRnZShucCk7Cj4+PiArCW9mX25v ZGVfcHV0KG5wKTsKPj4+ICsKPj4+ICsJaWYgKCFoZGF0YS0+YnJpZGdlKQo+Pj4gKwkJcmV0dXJu IC1FUFJPQkVfREVGRVI7Cj4+PiArCj4+PiArCXJldHVybiAwOwo+Pj4gK30KPj4+ICsKPj4+ICBz dGF0aWMgaW50IGhkbWlfcmVzb3VyY2VzX2luaXQoc3RydWN0IGhkbWlfY29udGV4dCAqaGRhdGEp Cj4+PiAgewo+Pj4gIAlzdHJ1Y3QgZGV2aWNlICpkZXYgPSBoZGF0YS0+ZGV2Owo+Pj4gQEAgLTE2 MzAsMTcgKzE2NjUsMTggQEAgc3RhdGljIGludCBoZG1pX3Jlc291cmNlc19pbml0KHN0cnVjdCBo ZG1pX2NvbnRleHQgKmhkYXRhKQo+Pj4gIAo+Pj4gIAloZGF0YS0+cmVnX2hkbWlfZW4gPSBkZXZt X3JlZ3VsYXRvcl9nZXRfb3B0aW9uYWwoZGV2LCAiaGRtaS1lbiIpOwo+Pj4gIAo+Pj4gLQlpZiAo UFRSX0VSUihoZGF0YS0+cmVnX2hkbWlfZW4pID09IC1FTk9ERVYpCj4+PiAtCQlyZXR1cm4gMDsK Pj4+ICsJaWYgKFBUUl9FUlIoaGRhdGEtPnJlZ19oZG1pX2VuKSAhPSAtRU5PREVWKSB7Cj4+PiAr CQlpZiAoSVNfRVJSKGhkYXRhLT5yZWdfaGRtaV9lbikpCj4+PiArCQkJcmV0dXJuIFBUUl9FUlIo aGRhdGEtPnJlZ19oZG1pX2VuKTsKPj4+ICAKPj4+IC0JaWYgKElTX0VSUihoZGF0YS0+cmVnX2hk bWlfZW4pKQo+Pj4gLQkJcmV0dXJuIFBUUl9FUlIoaGRhdGEtPnJlZ19oZG1pX2VuKTsKPj4+IC0K Pj4+IC0JcmV0ID0gcmVndWxhdG9yX2VuYWJsZShoZGF0YS0+cmVnX2hkbWlfZW4pOwo+Pj4gLQlp ZiAocmV0KQo+Pj4gLQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gZW5hYmxlIGhkbWktZW4gcmVndWxh dG9yXG4iKTsKPj4+ICsJCXJldCA9IHJlZ3VsYXRvcl9lbmFibGUoaGRhdGEtPnJlZ19oZG1pX2Vu KTsKPj4+ICsJCWlmIChyZXQpIHsKPj4+ICsJCQlEUk1fRVJST1IoImZhaWxlZCB0byBlbmFibGUg aGRtaS1lbiByZWd1bGF0b3JcbiIpOwo+Pj4gKwkJCXJldHVybiByZXQ7Cj4+PiArCQl9Cj4+PiAr CX0KPj4+ICAKPj4+IC0JcmV0dXJuIHJldDsKPj4+ICsJcmV0dXJuIGhkbWlfYnJpZGdlX2luaXQo aGRhdGEpOwo+Pj4gIH0KPj4+ICAKPj4+ICBzdGF0aWMgc3RydWN0IG9mX2RldmljZV9pZCBoZG1p X21hdGNoX3R5cGVzW10gPSB7Cj4+Pgo+Pgo+IAo+IC0tCj4gVG8gdW5zdWJzY3JpYmUgZnJvbSB0 aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vic2NyaWJlIGxpbnV4LXNhbXN1bmctc29jIiBp bgo+IHRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdlci5rZXJuZWwub3JnCj4g TW9yZSBtYWpvcmRvbW8gaW5mbyBhdCAgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8t aW5mby5odG1sCj4gCj4gCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751453AbdBAHoe (ORCPT ); Wed, 1 Feb 2017 02:44:34 -0500 Received: from mailout2.samsung.com ([203.254.224.25]:33614 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751080AbdBAHob (ORCPT ); Wed, 1 Feb 2017 02:44:31 -0500 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 X-AuditID: b6c32a2e-f79656d0000012f2-c3-589191dc01fd Content-transfer-encoding: 8BIT Message-id: <589191DB.5000304@samsung.com> Date: Wed, 01 Feb 2017 16:44:27 +0900 From: Inki Dae User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Andrzej Hajda , dri-devel@lists.freedesktop.org, Krzysztof Kozlowski Cc: Bartlomiej Zolnierkiewicz , Marek Szyprowski , Kyungmin Park , linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org Subject: Re: [PATCH 4/7] drm/exynos/hdmi: add bridge support In-reply-to: <53bb68fd-5de0-6b3d-df3e-e961ba3fd0fb@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA01SbUhTYRTuvXe7uxNXt5V2MKbjmoTS1u6cehWtrIiVBtIHiRHrohcV3Ue7 W2VEWT/KNG2rMBGjSWliliVm1g8LEyzBVksJQrfoAyIrsw9TImvbLYr3z3MOz3Pe5zwcElce J2LIUouDt1u4cpqIkPTcT1yuGXO783XTzSr2+bVHUvZGQ6eUHfk2SbBe73UZO3z0vYx9eqeJ YBu8fRh7dWBctoY0drWfIIyBmkHMWNfdjoxfumLzJAV8ZgnPFfF2NW8ptBaVWoqz6JytpnWm lFQdo2HS2TRabeHMfBa9PjdPs6G0PGiDVu/lyp3BVh4nCPTKVZl2q9PBq0usgiOL3skwei2j S9Pq9XqtIXlXhj4lSNnNlzx8+ha3zcTvd3WoKlGbqhrJSaAM8KbvLC7iaHjs7ySqUQSppFoQ TLWNSMXiOAZPRmeJv4qeobEwVlJNCLx9C0JYQS2EmTN+STUiSZyKgwFfWaiNU4nw9utpiTjH j8DXcV8q8pNgxHsrPEdCJUDl4HcshIkgdrcFwv0oKh9uX5iWhfBiag803xbd4dQogsCEP0xa RGWCq9sTHiqnVkO171LYNVCtMpiaHSVCjoBSQde9P2uuh7nH1zERL4J3g90yES+Fny3Pkait QfDs5ElCLKoQ/DzxSyKykiHwwo+Lu82H2h+vMfEDBVQdU4oUI7z5+OoPPRsaBiYwcf2LGDT2 3sRcKK7xv8Qa/yXW+F9iHoS3o2jeJpiLeSHFlqwVOLPgtBRrC63mLhQ+wiRtL5rz5PQjikR0 pMI25cpXSrm9QoW5HwGJ04sVDafc+UpFEVdxgLdbTXZnOS/0o5Rg4G48JqrQGjxpi8PEGFIZ gz49+NKYNHqJokAXFFHFnIMv43kbb/+rw0h5TCVyxyc86NYIy2zftmCPOkDVuo/I2LQtfXR8 486Oj8YJ3aGqyCNbn8Qa9PGHk9bKAmew+pjNQ/WRx94Nf6+6kD39ac2Hu4kuzdjL2oy5prLk 3S6nM4Hz7ahg1pk+n++N+np5Y/R43bzO9Iij8vqWrHOesoe1hb5J9UHPitzEK/LtdQItEUo4 Jgm3C9xvwRZFrJoDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrAIsWRmVeSWpSXmKPExsVy+t9jQd07EydGGBw+x2Fxa905VouNM9az Wlz5+p7N4vz5DewWZ5vesFtc3jWHzWLG+X1MFmuP3GV34PDYtKqTzeN+93Emj74tqxg9Pm+S C2CJcrPJSE1MSS1SSM1Lzk/JzEu3VQoNcdO1UFLIS8xNtVWK0PUNCVJSKEvMKQXyjAzQgINz gHuwkr5dglvGycsvmAt+KFdMWCPbwLhCtouRk0NCwERi26k7bBC2mMSFe+vBbCGBWYwS+5YX gdi8AoISPybfY+li5OBgFpCXOHIpG8JUl5gyJbeLkQuo+gGjxIydP5ghyrUkrpzfDjaGRUBV ouH4dyYQmw3InrjiPhtIr6hAhET3iUqQsIhAocT9+09YQOYwC1xnlNj6uJkVJCEsYCMxYcsC VogFi5kkXp+fAJbgFLCX6Lq0hHUCI9CRCOfNQjhvFsJ5CxiZVzFKpBYkFxQnpeca5aWW6xUn 5haX5qXrJefnbmIEx9Yz6R2Mh3e5H2IU4GBU4uG9wTgxQog1say4MvcQowQHs5II74x+oBBv SmJlVWpRfnxRaU5q8SFGU6D/JjJLiSbnA+M+ryTe0MTcxNzYwMLc0tLESEmct3H2s3AhgfTE ktTs1NSC1CKYPiYOTqkGRr7QPhfZbQd/HDdRdC3NTN5107e3TC00v0blffy3dYbCl8Uq5utM tZHhirORnyz5xzH17YntHf3nbWaq2isIHRFiqz9bbv1KcubD2mPax3Rm2Kz8GnhpifY8L5nA ac80FLf/fqhSNvm7JXv+EpnL/hzrb901nlVmsNezmOWkYEnXho3m6V3RSizFGYmGWsxFxYkA UH02WcMCAAA= X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170201074428epcas5p2c6a40a697a1f865897105d3f3d217d41 X-Msg-Generator: CA X-Sender-IP: 203.254.230.27 X-Local-Sender: =?UTF-8?B?64yA7J246riwG1RpemVuIFBsYXRmb3JtIExhYihTL1fshLw=?= =?UTF-8?B?7YSwKRvsgrzshLHsoITsnpAbUzUo7LGF7J6EKS/ssYXsnoQ=?= X-Global-Sender: =?UTF-8?B?SW5raSBEYWUbVGl6ZW4gUGxhdGZvcm0gTGFiLhtTYW1zdW5n?= =?UTF-8?B?IEVsZWN0cm9uaWNzG1M1L1NlbmlvciBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG1NUQUYbQzEwVjgxMTE=?= CMS-TYPE: 105P DLP-Filter: Pass X-CFilter-Loop: Reflected X-HopCount: 7 X-CMS-RootMailID: 20170120065230eucas1p2e22f7b832ec7e1c770c3e8a27a3341f5 X-RootMTR: 20170120065230eucas1p2e22f7b832ec7e1c770c3e8a27a3341f5 References: <1484895145-511-1-git-send-email-a.hajda@samsung.com> <1484895145-511-5-git-send-email-a.hajda@samsung.com> <58918ED0.3020406@samsung.com> <53bb68fd-5de0-6b3d-df3e-e961ba3fd0fb@samsung.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 2017년 02월 01일 16:34에 Andrzej Hajda 이(가) 쓴 글: > On 01.02.2017 08:31, Inki Dae wrote: >> >> 2017년 01월 20일 15:52에 Andrzej Hajda 이(가) 쓴 글: >>> In some platforms there is attached another device to the end of HDMI. >>> The patch adds support for it. >> Andrzej, can you clarify what bridge device can be attached and actually is now attached to the end of HDMI? >> And I wonder if we have the device tree file which defines the bridge device in mainline. Seems we have no the device tree file. >> >> If nothing, then this patch should be merged with real use case. > > SiI8620 MHL bridge in tm2/tm2e. Did you post dt patch to add the properties related to SiI8620 MHL bridge device? I see below patch series, [PATCH 00/24] drm/bridge/sii8620: add Ultra HD modes support but I couldn't find dt patch for it. And specifying SiI8620 MHL bridge device as description would be needed. Thanks. > > Regards > Andrzej > >> >> Thanks. >> >>> Signed-off-by: Andrzej Hajda >>> --- >>> drivers/gpu/drm/exynos/exynos_hdmi.c | 56 +++++++++++++++++++++++++++++------- >>> 1 file changed, 46 insertions(+), 10 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c >>> index a73b192..41fb894 100644 >>> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c >>> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c >>> @@ -35,6 +35,7 @@ >>> #include >>> #include >>> #include >>> +#include >>> #include >>> #include >>> #include >>> @@ -133,6 +134,7 @@ struct hdmi_context { >>> struct regulator_bulk_data regul_bulk[ARRAY_SIZE(supply)]; >>> struct regulator *reg_hdmi_en; >>> struct exynos_drm_clk phy_clk; >>> + struct drm_bridge *bridge; >>> }; >>> >>> static inline struct hdmi_context *encoder_to_hdmi(struct drm_encoder *e) >>> @@ -922,7 +924,15 @@ static int hdmi_create_connector(struct drm_encoder *encoder) >>> drm_connector_register(connector); >>> drm_mode_connector_attach_encoder(connector, encoder); >>> >>> - return 0; >>> + if (hdata->bridge) { >>> + encoder->bridge = hdata->bridge; >>> + hdata->bridge->encoder = encoder; >>> + ret = drm_bridge_attach(encoder->dev, hdata->bridge); >>> + if (ret) >>> + DRM_ERROR("Failed to attach bridge\n"); >>> + } >>> + >>> + return ret; >>> } >>> >>> static bool hdmi_mode_fixup(struct drm_encoder *encoder, >>> @@ -1591,6 +1601,31 @@ static void hdmiphy_clk_enable(struct exynos_drm_clk *clk, bool enable) >>> hdmiphy_disable(hdata); >>> } >>> >>> +static int hdmi_bridge_init(struct hdmi_context *hdata) >>> +{ >>> + struct device *dev = hdata->dev; >>> + struct device_node *ep, *np; >>> + >>> + ep = of_graph_get_endpoint_by_regs(dev->of_node, 1, -1); >>> + if (!ep) >>> + return 0; >>> + >>> + np = of_graph_get_remote_port_parent(ep); >>> + of_node_put(ep); >>> + if (!np) { >>> + DRM_ERROR("failed to get remote port parent"); >>> + return -EINVAL; >>> + } >>> + >>> + hdata->bridge = of_drm_find_bridge(np); >>> + of_node_put(np); >>> + >>> + if (!hdata->bridge) >>> + return -EPROBE_DEFER; >>> + >>> + return 0; >>> +} >>> + >>> static int hdmi_resources_init(struct hdmi_context *hdata) >>> { >>> struct device *dev = hdata->dev; >>> @@ -1630,17 +1665,18 @@ static int hdmi_resources_init(struct hdmi_context *hdata) >>> >>> hdata->reg_hdmi_en = devm_regulator_get_optional(dev, "hdmi-en"); >>> >>> - if (PTR_ERR(hdata->reg_hdmi_en) == -ENODEV) >>> - return 0; >>> + if (PTR_ERR(hdata->reg_hdmi_en) != -ENODEV) { >>> + if (IS_ERR(hdata->reg_hdmi_en)) >>> + return PTR_ERR(hdata->reg_hdmi_en); >>> >>> - if (IS_ERR(hdata->reg_hdmi_en)) >>> - return PTR_ERR(hdata->reg_hdmi_en); >>> - >>> - ret = regulator_enable(hdata->reg_hdmi_en); >>> - if (ret) >>> - DRM_ERROR("failed to enable hdmi-en regulator\n"); >>> + ret = regulator_enable(hdata->reg_hdmi_en); >>> + if (ret) { >>> + DRM_ERROR("failed to enable hdmi-en regulator\n"); >>> + return ret; >>> + } >>> + } >>> >>> - return ret; >>> + return hdmi_bridge_init(hdata); >>> } >>> >>> static struct of_device_id hdmi_match_types[] = { >>> >> > > -- > To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > >