From mboxrd@z Thu Jan 1 00:00:00 1970 From: libin.yang@linux.intel.com Subject: [PATCH V4 1/2] dp/mst: add SDP stream support Date: Wed, 2 Dec 2015 14:09:43 +0800 Message-ID: <1449036584-105393-1-git-send-email-libin.yang@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id B44DE6E949 for ; Tue, 1 Dec 2015 22:11:54 -0800 (PST) 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, conselvan2@gmail.com, jani.nikula@linux.intel.com, ville.syrjala@linux.intel.com, daniel.vetter@intel.com Cc: Dave Airlie , Libin Yang List-Id: intel-gfx@lists.freedesktop.org RnJvbTogTGliaW4gWWFuZyA8bGliaW4ueWFuZ0BsaW51eC5pbnRlbC5jb20+CgpUaGlzIGFkZHMg Y29kZSB0byBpbml0aWFsaXNlIHRoZSBTRFAgc3RyZWFtcwpmb3IgYSBzaW5rIGluIHRoZSBzaW1w bGVzdCBvcmRlcmluZy4KCkkndmUgbm8gaWRlYSBob3cgeW91J2Qgd2FudCB0byBjb250cm9sIHRo ZQpvcmRlcmluZyBhdCB0aGlzIGxldmVsLCBzbyBkb24ndCBib3RoZXIKdW50aWwgc29tZW9uZSBj b21lcyB1cCB3aXRoIGEgdXNlIGNhc2UuCgpSZXZpZXdlZC1ieTogQW5kZXIgQ29uc2VsdmFuIGRl IE9saXZlaXJhIDxjb25zZWx2YW4yQGdtYWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogTGliaW4gWWFu ZyA8bGliaW4ueWFuZ0BsaW51eC5pbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IERhdmUgQWlybGll IDxhaXJsaWVkQHJlZGhhdC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9w b2xvZ3kuYyB8IDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiBpbmNsdWRl L2RybS9kcm1fZHBfbXN0X2hlbHBlci5oICAgICAgIHwgIDcgKysrKystLQogMiBmaWxlcyBjaGFu Z2VkLCA0MCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Rw X21zdF90b3BvbG9neS5jCmluZGV4IDgwOTk1OWQuLmY1MGViN2IgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9kcF9tc3RfdG9wb2xvZ3kuYwpAQCAtNjY2LDcgKzY2Niw5IEBAIHN0YXRpYyBpbnQgYnVpbGRf ZW51bV9wYXRoX3Jlc291cmNlcyhzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLCBp bnQgcG9yCiB9CiAKIHN0YXRpYyBpbnQgYnVpbGRfYWxsb2NhdGVfcGF5bG9hZChzdHJ1Y3QgZHJt X2RwX3NpZGViYW5kX21zZ190eCAqbXNnLCBpbnQgcG9ydF9udW0sCi0JCQkJICB1OCB2Y3BpLCB1 aW50MTZfdCBwYm4pCisJCQkJICB1OCB2Y3BpLCB1aW50MTZfdCBwYm4sCisJCQkJICB1OCBudW1i ZXJfc2RwX3N0cmVhbXMsCisJCQkJICB1OCAqc2RwX3N0cmVhbV9zaW5rKQogewogCXN0cnVjdCBk cm1fZHBfc2lkZWJhbmRfbXNnX3JlcV9ib2R5IHJlcTsKIAltZW1zZXQoJnJlcSwgMCwgc2l6ZW9m KHJlcSkpOwpAQCAtNjc0LDYgKzY3Niw5IEBAIHN0YXRpYyBpbnQgYnVpbGRfYWxsb2NhdGVfcGF5 bG9hZChzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLCBpbnQgcG9ydF9uCiAJcmVx LnUuYWxsb2NhdGVfcGF5bG9hZC5wb3J0X251bWJlciA9IHBvcnRfbnVtOwogCXJlcS51LmFsbG9j YXRlX3BheWxvYWQudmNwaSA9IHZjcGk7CiAJcmVxLnUuYWxsb2NhdGVfcGF5bG9hZC5wYm4gPSBw Ym47CisJcmVxLnUuYWxsb2NhdGVfcGF5bG9hZC5udW1iZXJfc2RwX3N0cmVhbXMgPSBudW1iZXJf c2RwX3N0cmVhbXM7CisJbWVtY3B5KHJlcS51LmFsbG9jYXRlX3BheWxvYWQuc2RwX3N0cmVhbV9z aW5rLCBzZHBfc3RyZWFtX3NpbmssCisJCSAgIG51bWJlcl9zZHBfc3RyZWFtcyk7CiAJZHJtX2Rw X2VuY29kZV9zaWRlYmFuZF9yZXEoJnJlcSwgbXNnKTsKIAltc2ctPnBhdGhfbXNnID0gdHJ1ZTsK IAlyZXR1cm4gMDsKQEAgLTE1NjIsNiArMTU2Nyw4IEBAIHN0YXRpYyBpbnQgZHJtX2RwX3BheWxv YWRfc2VuZF9tc2coc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJc3RydWN0 IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNnOwogCXN0cnVjdCBkcm1fZHBfbXN0X2JyYW5j aCAqbXN0YjsKIAlpbnQgbGVuLCByZXQ7CisJdTggc2lua3NbRFJNX0RQX01BWF9TRFBfU1RSRUFN U107CisJaW50IGk7CiAKIAltc3RiID0gZHJtX2RwX2dldF92YWxpZGF0ZWRfbXN0Yl9yZWYobWdy LCBwb3J0LT5wYXJlbnQpOwogCWlmICghbXN0YikKQEAgLTE1NzMsMTAgKzE1ODAsMTMgQEAgc3Rh dGljIGludCBkcm1fZHBfcGF5bG9hZF9zZW5kX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9n eV9tZ3IgKm1nciwKIAkJZ290byBmYWlsX3B1dDsKIAl9CiAKKwlmb3IgKGkgPSAwOyBpIDwgcG9y dC0+bnVtX3NkcF9zdHJlYW1zOyBpKyspCisJCXNpbmtzW2ldID0gaTsKKwogCXR4bXNnLT5kc3Qg PSBtc3RiOwogCWxlbiA9IGJ1aWxkX2FsbG9jYXRlX3BheWxvYWQodHhtc2csIHBvcnQtPnBvcnRf bnVtLAogCQkJCSAgICAgaWQsCi0JCQkJICAgICBwYm4pOworCQkJCSAgICAgcGJuLCBwb3J0LT5u dW1fc2RwX3N0cmVhbXMsIHNpbmtzKTsKIAogCWRybV9kcF9xdWV1ZV9kb3duX3R4KG1nciwgdHht c2cpOwogCkBAIC0yMjU5LDYgKzIyNjksMjcgQEAgb3V0OgogRVhQT1JUX1NZTUJPTChkcm1fZHBf bXN0X2RldGVjdF9wb3J0KTsKIAogLyoqCisgKiBkcm1fZHBfbXN0X3BvcnRfaGFzX2F1ZGlvKCkg LSBDaGVjayB3aGV0aGVyIHBvcnQgaGFzIGF1ZGlvIGNhcGFiaWxpdHkgb3Igbm90CisgKiBAbWdy OiBtYW5hZ2VyIGZvciB0aGlzIHBvcnQKKyAqIEBwb3J0OiB1bnZlcmlmaWVkIHBvaW50ZXIgdG8g YSBwb3J0LgorICoKKyAqIFRoaXMgcmV0dXJucyB3aGV0aGVyIHRoZSBwb3J0IHN1cHBvcnRzIGF1 ZGlvIG9yIG5vdC4KKyAqLworYm9vbCBkcm1fZHBfbXN0X3BvcnRfaGFzX2F1ZGlvKHN0cnVjdCBk cm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAorCQkJCQlzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0 ICpwb3J0KQoreworCWJvb2wgcmV0ID0gZmFsc2U7CisKKwlwb3J0ID0gZHJtX2RwX2dldF92YWxp ZGF0ZWRfcG9ydF9yZWYobWdyLCBwb3J0KTsKKwlpZiAoIXBvcnQpCisJCXJldHVybiByZXQ7CisJ cmV0ID0gcG9ydC0+aGFzX2F1ZGlvOworCWRybV9kcF9wdXRfcG9ydChwb3J0KTsKKwlyZXR1cm4g cmV0OworfQorRVhQT1JUX1NZTUJPTChkcm1fZHBfbXN0X3BvcnRfaGFzX2F1ZGlvKTsKKworLyoq CiAgKiBkcm1fZHBfbXN0X2dldF9lZGlkKCkgLSBnZXQgRURJRCBmb3IgYW4gTVNUIHBvcnQKICAq IEBjb25uZWN0b3I6IHRvcGxldmVsIGNvbm5lY3RvciB0byBnZXQgRURJRCBmb3IKICAqIEBtZ3I6 IG1hbmFnZXIgZm9yIHRoaXMgcG9ydApAQCAtMjI4Myw2ICsyMzE0LDcgQEAgc3RydWN0IGVkaWQg KmRybV9kcF9tc3RfZ2V0X2VkaWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvciwgc3Ry dWN0IGRybV9kcF8KIAkJZWRpZCA9IGRybV9nZXRfZWRpZChjb25uZWN0b3IsICZwb3J0LT5hdXgu ZGRjKTsKIAkJZHJtX21vZGVfY29ubmVjdG9yX3NldF90aWxlX3Byb3BlcnR5KGNvbm5lY3Rvcik7 CiAJfQorCXBvcnQtPmhhc19hdWRpbyA9IGRybV9kZXRlY3RfbW9uaXRvcl9hdWRpbyhlZGlkKTsK IAlkcm1fZHBfcHV0X3BvcnQocG9ydCk7CiAJcmV0dXJuIGVkaWQ7CiB9CkBAIC0yNTY2LDcgKzI1 OTgsNyBAQCBzdGF0aWMgdm9pZCBkcm1fZHBfbXN0X2R1bXBfbXN0YihzdHJ1Y3Qgc2VxX2ZpbGUg Km0sCiAKIAlzZXFfcHJpbnRmKG0sICIlc21zdDogJXAsICVkXG4iLCBwcmVmaXgsIG1zdGIsIG1z dGItPm51bV9wb3J0cyk7CiAJbGlzdF9mb3JfZWFjaF9lbnRyeShwb3J0LCAmbXN0Yi0+cG9ydHMs IG5leHQpIHsKLQkJc2VxX3ByaW50ZihtLCAiJXNwb3J0OiAlZDogZGRwczogJWQgbGRwczogJWQs ICVwLCBjb25uOiAlcFxuIiwgcHJlZml4LCBwb3J0LT5wb3J0X251bSwgcG9ydC0+ZGRwcywgcG9y dC0+bGRwcywgcG9ydCwgcG9ydC0+Y29ubmVjdG9yKTsKKwkJc2VxX3ByaW50ZihtLCAiJXNwb3J0 OiAlZDogZGRwczogJWQgbGRwczogJWQsIHNkcDogJWQvJWQsICVwLCBjb25uOiAlcFxuIiwgcHJl Zml4LCBwb3J0LT5wb3J0X251bSwgcG9ydC0+ZGRwcywgcG9ydC0+bGRwcywgcG9ydC0+bnVtX3Nk cF9zdHJlYW1zLCBwb3J0LT5udW1fc2RwX3N0cmVhbV9zaW5rcywgcG9ydCwgcG9ydC0+Y29ubmVj dG9yKTsKIAkJaWYgKHBvcnQtPm1zdGIpCiAJCQlkcm1fZHBfbXN0X2R1bXBfbXN0YihtLCBwb3J0 LT5tc3RiKTsKIAl9CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHBfbXN0X2hlbHBlci5o IGIvaW5jbHVkZS9kcm0vZHJtX2RwX21zdF9oZWxwZXIuaAppbmRleCA1MzQwMDk5Li43NGI1ODg4 IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZHBfbXN0X2hlbHBlci5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9kcF9tc3RfaGVscGVyLmgKQEAgLTk0LDYgKzk0LDcgQEAgc3RydWN0IGRybV9k cF9tc3RfcG9ydCB7CiAJc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3I7CiAKIAlz dHJ1Y3QgZWRpZCAqY2FjaGVkX2VkaWQ7IC8qIGZvciBEUCBsb2dpY2FsIHBvcnRzIC0gbWFrZSB0 aWxpbmcgd29yayAqLworCWJvb2wgaGFzX2F1ZGlvOwogfTsKIAogLyoqCkBAIC0yMTUsMTMgKzIx NiwxMyBAQCBzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yeCB7CiAJc3RydWN0IGRybV9kcF9z aWRlYmFuZF9tc2dfaGRyIGluaXRpYWxfaGRyOwogfTsKIAotCisjZGVmaW5lIERSTV9EUF9NQVhf U0RQX1NUUkVBTVMgMTYKIHN0cnVjdCBkcm1fZHBfYWxsb2NhdGVfcGF5bG9hZCB7CiAJdTggcG9y dF9udW1iZXI7CiAJdTggbnVtYmVyX3NkcF9zdHJlYW1zOwogCXU4IHZjcGk7CiAJdTE2IHBibjsK LQl1OCBzZHBfc3RyZWFtX3NpbmtbOF07CisJdTggc2RwX3N0cmVhbV9zaW5rW0RSTV9EUF9NQVhf U0RQX1NUUkVBTVNdOwogfTsKIAogc3RydWN0IGRybV9kcF9hbGxvY2F0ZV9wYXlsb2FkX2Fja19y ZXBseSB7CkBAIC00ODQsNiArNDg1LDggQEAgaW50IGRybV9kcF9tc3RfaHBkX2lycShzdHJ1Y3Qg ZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwgdTggKmVzaSwgYm9vbCAqaGFuZGwKIAogZW51 bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBkcm1fZHBfbXN0X2RldGVjdF9wb3J0KHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LCBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0KTsKIAorYm9vbCBkcm1fZHBfbXN0X3BvcnRf aGFzX2F1ZGlvKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAorCQkJCQlzdHJ1 Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0KTsKIHN0cnVjdCBlZGlkICpkcm1fZHBfbXN0X2dldF9l ZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBkcm1fZHBfbXN0X3Rv cG9sb2d5X21nciAqbWdyLCBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0KTsKIAogCi0tIAox LjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK