From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: [PATCH v3] drm/i915/ehl: Allow combo PHY A to drive a third external display Date: Tue, 18 Jun 2019 10:51:31 -0700 Message-ID: <20190618175131.9139-1-matthew.d.roper@intel.com> References: <20190618173917.GU5942@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id D4CFB6E215 for ; Tue, 18 Jun 2019 17:51:52 +0000 (UTC) In-Reply-To: <20190618173917.GU5942@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RUhMIGhhcyBhIG11eCBvbiBjb21ibyBQSFkgQSB0aGF0IGFsbG93cyBpdCB0byBiZSBkcml2ZW4g ZWl0aGVyIGJ5IGFuCmludGVybmFsIGRpc3BsYXkgKERESS1BIG9yIERTSSBEUEhZKSBvciBieSBh biBleHRlcm5hbCBkaXNwbGF5IChEREktRCkuClRoaXMgaXMgYSBtb3RoZXJib2FyZCBkZXNpZ24g ZGVjaXNpb24gdGhhdCBjYW4gbm90IGJlIGNoYW5nZWQgb24gdGhlCmZseS4gIFVuZm9ydHVuYXRl bHkgdGhlcmUgYXJlIG5vIHN0cmFwIHJlZ2lzdGVycyB0aGF0IGFsbG93IHVzIHRvIGRldGVjdAp0 aGUgYm9hcmQgY29uZmlndXJhdGlvbiBkaXJlY3RseSwgc28gbGV0J3MgdXNlIHRoZSBWQlQgdG8g dHJ5IHRvIGZpZ3VyZQppdCBvdXQgYW5kIHByb2dyYW0gdGhlIG11eCBhY2NvcmRpbmdseS4KCkZv ciBub3cgaWYgd2UgcnVuIGFjcm9zcyBhIGJyb2tlbiBWQlQgdGhhdCB0cmllcyB0byBjbGFpbSB0 aGF0IFBIWSBBCmlzIGF0dGFjaGVkIHRvIGJvdGggaW50ZXJuYWwgYW5kIGV4dGVybmFsIGRpc3Bs YXlzIGF0IHRoZSBzYW1lIHRpbWUsCndlJ2xsIHJlc29sdmUgdGhlIGNvbmZsaWN0IGluIGZhdm9y IG9mIHRoZSBpbnRlcm5hbCBkaXNwbGF5LiAgVG8gaGVscApkZWJ1ZyB0aGVzZSBraW5kIG9mIGJh ZCBWQlQncywgbGV0J3MgYWxzbyBhZGQgYSBxdWljayBEUk1fREVCVUcgbWVzc2FnZQpkdXJpbmcg Y2hpbGQgZGV2aWNlIHBhcnNpbmcgc28gdGhhdCBpdCdzIGVhc2llciB0byB1bmRlcnN0YW5kIHRo ZXNlCmNhc2VzIGlmIHRoZXkgc2hvdyB1cCBpbiBidWcgcmVwb3J0cy4KCnYyOgogLSBDb25maXJt ZWQgdGhhdCBWQlQncyBkdm8gcG9ydCByZWZlcnMgdG8gdGhlIERESSBhbmQgbm90IHRoZSBQSFku CiAgIFRodXMgd2UgY2FuIGNoZWNrIG1vcmUgZXhwbGljaXRseSBmb3IgKGRkaV9kICYmICEoZGRp X2EgfHwgZHNpKSkuICBJZgogICBhIGJhZCBWQlQgY29udHJhZGljdHMgaXRzZWxmLCBsZXQgaW50 ZXJuYWwgZGlzcGxheSB3aW4uICAoVmlsbGUpCgp2MzoKIC0gU3dpdGNoIGNvbmRpdGlvbiBmcm9t ICFJU19JQ0VMQUtFIHRvIElTX0VMS0hBUlRMQUtFLiAgQWx0aG91Z2ggdGhlCiAgIGNvbnZlbnRp b24gaXMgdXN1YWxseSB0byBhc3N1bWUgdGhhdCBmdXR1cmUgcGxhdGZvcm1zIHdpbGwgaW5oZXJp dAogICBhbGwgY3VycmVudCBwbGF0Zm9ybSBiZWhhdmlvciwgdGhpcyBmZWVscyBtb3JlIGxpa2Ug YSBvbmUtcGxhdGZvcm0KICAgcXVpcmsuICAoVmlsbGUpCiAtIFVwZGF0ZSBjb21taXQgbWVzc2Fn ZSB0byBkZXNjcmliZSB3aGF0IHdlIGRvIGlmL3doZW4gd2UgZW5jb3VudGVyCiAgIGJyb2tlbiBW QlQncywgYW5kIG5vdGUgdGhhdCB0aGUgbmV3IGRlYnVnIHByaW50IGR1cmluZyBjaGlsZCBkZXZp Y2UKICAgcGFyc2luZyBpcyBpbnRlbnRpb25hbC4KCkNjOiBDbGludCBUYXlsb3IgPENsaW50b24u QS5UYXlsb3JAaW50ZWwuY29tPgpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogTWF0dCBSb3BlciA8bWF0dGhldy5kLnJvcGVy QGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBs aW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9i aW9zLmMgICAgIHwgIDMgKysKIC4uLi9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9jb21ib19w aHkuYyAgICB8IDM2ICsrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVnLmggICAgICAgICAgICAgICB8ICAxICsKIDMgZmlsZXMgY2hhbmdlZCwgNDAgaW5zZXJ0 aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf Ymlvcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9iaW9zLmMKaW5kZXgg YzQ3MTA4ODljYjMyLi4wYzk4MDgxMzJkNjcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfYmlvcy5jCkBAIC0xNjY4LDYgKzE2NjgsOSBAQCBwYXJzZV9nZW5lcmFsX2RlZmlu aXRpb25zKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJaWYgKCFjaGlsZC0+ ZGV2aWNlX3R5cGUpCiAJCQljb250aW51ZTsKIAorCQlEUk1fREVCVUdfS01TKCJGb3VuZCBWQlQg Y2hpbGQgZGV2aWNlIHdpdGggdHlwZSAweCV4XG4iLAorCQkJICAgICAgY2hpbGQtPmRldmljZV90 eXBlKTsKKwogCQkvKgogCQkgKiBDb3B5IGFzIG11Y2ggYXMgd2Uga25vdyAoc2l6ZW9mKSBhbmQg aXMgYXZhaWxhYmxlCiAJCSAqIChjaGlsZF9kZXZfc2l6ZSkgb2YgdGhlIGNoaWxkIGRldmljZS4g QWNjZXNzaW5nIHRoZSBkYXRhIG11c3QKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfY29tYm9fcGh5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2NvbWJvX3BoeS5jCmluZGV4IDg0MTcwOGRhNWE1Ni4uMDc1YmFiMjUwMGViIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2NvbWJvX3BoeS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfY29tYm9fcGh5LmMKQEAgLTI2 MCw2ICsyNjAsMzIgQEAgdm9pZCBpbnRlbF9jb21ib19waHlfcG93ZXJfdXBfbGFuZXMoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCUk5MTVfV1JJVEUoSUNMX1BPUlRfQ0xfRFcx MChwb3J0KSwgdmFsKTsKIH0KIAorc3RhdGljIHUzMiBlaGxfY29tYm9fcGh5X2FfbXV4KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1LCB1MzIgdmFsKQoreworCWJvb2wgZGRpX2FfcHJlc2Vu dCA9IGk5MTUtPnZidC5kZGlfcG9ydF9pbmZvW1BPUlRfQV0uY2hpbGQgIT0gTlVMTDsKKwlib29s IGRkaV9kX3ByZXNlbnQgPSBpOTE1LT52YnQuZGRpX3BvcnRfaW5mb1tQT1JUX0RdLmNoaWxkICE9 IE5VTEw7CisJYm9vbCBkc2lfcHJlc2VudCA9IGludGVsX2Jpb3NfaXNfZHNpX3ByZXNlbnQoaTkx NSwgTlVMTCk7CisKKwkvKgorCSAqIFZCVCdzICdkdm8gcG9ydCcgZmllbGQgZm9yIGNoaWxkIGRl dmljZXMgcmVmZXJlbmNlcyB0aGUgRERJLCBub3QKKwkgKiB0aGUgUEhZLiAgU28gaWYgY29tYm8g UEhZIEEgaXMgd2lyZWQgdXAgdG8gZHJpdmUgYW4gZXh0ZXJuYWwKKwkgKiBkaXNwbGF5LCB3ZSBz aG91bGQgc2VlIGEgY2hpbGQgZGV2aWNlIHByZXNlbnQgb24gUE9SVF9EIGFuZAorCSAqIG5vdGhp bmcgb24gUE9SVF9BIGFuZCBubyBEU0kuCisJICovCisJaWYgKGRkaV9kX3ByZXNlbnQgJiYgIWRk aV9hX3ByZXNlbnQgJiYgIWRzaV9wcmVzZW50KQorCQlyZXR1cm4gdmFsIHwgSUNMX1BIWV9NSVND X01VWF9ERElEOworCisJLyoKKwkgKiBJZiB3ZSBlbmNvdW50ZXIgYSBWQlQgdGhhdCBjbGFpbXMg dG8gaGF2ZSBhbiBleHRlcm5hbCBkaXNwbGF5IG9uCisJICogRERJLUQgX2FuZF8gYW4gaW50ZXJu YWwgZGlzcGxheSBvbiBEREktQS9EU0kgbGVhdmUgYW4gZXJyb3IgbWVzc2FnZQorCSAqIGluIHRo ZSBsb2cgYW5kIGxldCB0aGUgaW50ZXJuYWwgZGlzcGxheSB3aW4uCisJICovCisJaWYgKGRkaV9k X3ByZXNlbnQpCisJCURSTV9FUlJPUigiVkJUIGNsYWltcyB0byBoYXZlIGJvdGggaW50ZXJuYWwg YW5kIGV4dGVybmFsIGRpc3BsYXlzIG9uIFBIWSBBLiAgQ29uZmlndXJpbmcgZm9yIGludGVybmFs LlxuIik7CisKKwlyZXR1cm4gdmFsICYgfklDTF9QSFlfTUlTQ19NVVhfRERJRDsKK30KKwogc3Rh dGljIHZvaWQgaWNsX2NvbWJvX3BoeXNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCiB7CiAJZW51bSBwb3J0IHBvcnQ7CkBAIC0yNzMsNyArMjk5LDE3IEBAIHN0YXRpYyB2 b2lkIGljbF9jb21ib19waHlzX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogCQkJY29udGludWU7CiAJCX0KIAorCQkvKgorCQkgKiBFSEwncyBjb21ibyBQSFkgQSBjYW4g YmUgaG9va2VkIHVwIHRvIGVpdGhlciBhbiBleHRlcm5hbAorCQkgKiBkaXNwbGF5ICh2aWEgRERJ LUQpIG9yIGFuIGludGVybmFsIGRpc3BsYXkgKHZpYSBEREktQSBvcgorCQkgKiB0aGUgRFNJIERQ SFkpLiAgVGhpcyBpcyBhIG1vdGhlcmJvYXJkIGRlc2lnbiBkZWNpc2lvbiB0aGF0CisJCSAqIGNh bid0IGJlIGNoYW5nZWQgb24gdGhlIGZseSwgc28gaW5pdGlhbGl6ZSB0aGUgUEhZJ3MgbXV4CisJ CSAqIGJhc2VkIG9uIHdoZXRoZXIgb3VyIFZCVCBpbmRpY2F0ZXMgdGhlIHByZXNlbmNlIG9mIGFu eQorCQkgKiAiaW50ZXJuYWwiIGNoaWxkIGRldmljZXMuCisJCSAqLwogCQl2YWwgPSBJOTE1X1JF QUQoSUNMX1BIWV9NSVNDKHBvcnQpKTsKKwkJaWYgKElTX0VMS0hBUlRMQUtFKGRldl9wcml2KSAm JiBwb3J0ID09IFBPUlRfQSkKKwkJCXZhbCA9IGVobF9jb21ib19waHlfYV9tdXgoZGV2X3ByaXYs IHZhbCk7CiAJCXZhbCAmPSB+SUNMX1BIWV9NSVNDX0RFX0lPX0NPTVBfUFdSX0RPV047CiAJCUk5 MTVfV1JJVEUoSUNMX1BIWV9NSVNDKHBvcnQpLCB2YWwpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcu aAppbmRleCBkNjQ4M2I1ZGM4ZTUuLmQ5ODE0Mjk0MGMzOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Jl Zy5oCkBAIC0xMTE0NSw2ICsxMTE0NSw3IEBAIGVudW0gc2tsX3Bvd2VyX2dhdGUgewogI2RlZmlu ZSBfSUNMX1BIWV9NSVNDX0IJCTB4NjRDMDQKICNkZWZpbmUgSUNMX1BIWV9NSVNDKHBvcnQpCV9N TUlPX1BPUlQocG9ydCwgX0lDTF9QSFlfTUlTQ19BLCBcCiAJCQkJCQkgX0lDTF9QSFlfTUlTQ19C KQorI2RlZmluZSAgSUNMX1BIWV9NSVNDX01VWF9ERElECQkJKDEgPDwgMjgpCiAjZGVmaW5lICBJ Q0xfUEhZX01JU0NfREVfSU9fQ09NUF9QV1JfRE9XTgkoMSA8PCAyMykKIAogLyogSWNlbGFrZSBE aXNwbGF5IFN0cmVhbSBDb21wcmVzc2lvbiBSZWdpc3RlcnMgKi8KLS0gCjIuMTcuMgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4