From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [V2,2/8] phy: tegra: xusb: t210: add usb3 port fake support From: Nagarjuna Kristam Message-Id: <1552302716-18554-3-git-send-email-nkristam@nvidia.com> Date: Mon, 11 Mar 2019 16:41:50 +0530 To: balbi@kernel.org, gregkh@linuxfoundation.org, thierry.reding@gmail.com, jonathanh@nvidia.com Cc: linux-tegra@vger.kernel.org, linux-usb@vger.kernel.org, Nagarjuna Kristam List-ID: T24gVGVncmEyMTAsIHVzYjIgb25seSBvdGcvcGVyaXBoZXJhbCBwb3J0cyBkb250IHdvcmsgaW4g ZGV2aWNlIG1vZGUuClRoZXkgbmVlZCBhbiBhc3Nvc2NpYXRlZCB1c2IzIHBvcnQgdG8gd29yayBp biBkZXZpY2UgbW9kZS4gSWRlbnRpZnkKYW4gdW51c2VkIHVzYjMgcG9ydCBhbmQgYXNzaWduIGl0 IGFzIGEgZmFrZSBVU0IzIHBvcnQgdG8gVVNCMiBvbmx5CnBvcnQgd2hvc2UgbW9kZSBpcyBvdGcv cGVyaXBoZXJhbAoKQmFzZWQgb24gd29yayBieSBCSCBIc2llaCA8YmhzaWVoQG52aWRpYS5jb20+ LgoKU2lnbmVkLW9mZi1ieTogTmFnYXJqdW5hIEtyaXN0YW0gPG5rcmlzdGFtQG52aWRpYS5jb20+ Ci0tLQogZHJpdmVycy9waHkvdGVncmEveHVzYi10ZWdyYTIxMC5jIHwgNDAgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL3BoeS90ZWdyYS94dXNiLmMgICAg ICAgICAgfCAyOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL3BoeS90ZWdy YS94dXNiLmggICAgICAgICAgfCAgNiArKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgNzUgaW5zZXJ0 aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L3RlZ3JhL3h1c2ItdGVncmEyMTAuYyBi L2RyaXZlcnMvcGh5L3RlZ3JhL3h1c2ItdGVncmEyMTAuYwppbmRleCA0YmVlYmNjLi40ODQ3OGJj NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9waHkvdGVncmEveHVzYi10ZWdyYTIxMC5jCisrKyBiL2Ry aXZlcnMvcGh5L3RlZ3JhL3h1c2ItdGVncmEyMTAuYwpAQCAtNTgsNiArNTgsNyBAQAogI2RlZmlu ZSBYVVNCX1BBRENUTF9TU19QT1JUX01BUF9QT1JUWF9NQVBfU0hJRlQoeCkgKCh4KSAqIDUpCiAj ZGVmaW5lIFhVU0JfUEFEQ1RMX1NTX1BPUlRfTUFQX1BPUlRYX01BUF9NQVNLKHgpICgweDcgPDwg KCh4KSAqIDUpKQogI2RlZmluZSBYVVNCX1BBRENUTF9TU19QT1JUX01BUF9QT1JUWF9NQVAoeCwg dikgKCgodikgJiAweDcpIDw8ICgoeCkgKiA1KSkKKyNkZWZpbmUgWFVTQl9QQURDVExfU1NfUE9S VF9NQVBfUE9SVF9ESVNBQkxFRCAweDcKIAogI2RlZmluZSBYVVNCX1BBRENUTF9FTFBHX1BST0dS QU0xIDB4MDI0CiAjZGVmaW5lIFhVU0JfUEFEQ1RMX0VMUEdfUFJPR1JBTTFfQVVYX01VWF9MUDBf VkNPUkVfRE9XTiAoMSA8PCAzMSkKQEAgLTk1Miw2ICs5NTMsMTUgQEAgc3RhdGljIGludCB0ZWdy YTIxMF91c2IyX3BoeV9wb3dlcl9vbihzdHJ1Y3QgcGh5ICpwaHkpCiAKIAlwcml2ID0gdG9fdGVn cmEyMTBfeHVzYl9wYWRjdGwocGFkY3RsKTsKIAorCWlmIChwb3J0LT51c2IzX3BvcnRfZmFrZSAh PSAtMSkgeworCQl2YWx1ZSA9IHBhZGN0bF9yZWFkbChwYWRjdGwsIFhVU0JfUEFEQ1RMX1NTX1BP UlRfTUFQKTsKKwkJdmFsdWUgJj0gflhVU0JfUEFEQ1RMX1NTX1BPUlRfTUFQX1BPUlRYX01BUF9N QVNLKAorCQkJCQlwb3J0LT51c2IzX3BvcnRfZmFrZSk7CisJCXZhbHVlIHw9IFhVU0JfUEFEQ1RM X1NTX1BPUlRfTUFQX1BPUlRYX01BUCgKKwkJCQkJcG9ydC0+dXNiM19wb3J0X2Zha2UsIGluZGV4 KTsKKwkJcGFkY3RsX3dyaXRlbChwYWRjdGwsIHZhbHVlLCBYVVNCX1BBRENUTF9TU19QT1JUX01B UCk7CisJfQorCiAJdmFsdWUgPSBwYWRjdGxfcmVhZGwocGFkY3RsLCBYVVNCX1BBRENUTF9VU0Iy X0JJQVNfUEFEX0NUTDApOwogCXZhbHVlICY9IH4oKFhVU0JfUEFEQ1RMX1VTQjJfQklBU19QQURf Q1RMMF9IU19TUVVFTENIX0xFVkVMX01BU0sgPDwKIAkJICAgIFhVU0JfUEFEQ1RMX1VTQjJfQklB U19QQURfQ1RMMF9IU19TUVVFTENIX0xFVkVMX1NISUZUKSB8CkBAIC0xMDg2LDYgKzEwOTYsMTUg QEAgc3RhdGljIGludCB0ZWdyYTIxMF91c2IyX3BoeV9wb3dlcl9vZmYoc3RydWN0IHBoeSAqcGh5 KQogCiAJbXV0ZXhfbG9jaygmcGFkY3RsLT5sb2NrKTsKIAorCWlmIChwb3J0LT51c2IzX3BvcnRf ZmFrZSAhPSAtMSkgeworCQl2YWx1ZSA9IHBhZGN0bF9yZWFkbChwYWRjdGwsIFhVU0JfUEFEQ1RM X1NTX1BPUlRfTUFQKTsKKwkJdmFsdWUgJj0gflhVU0JfUEFEQ1RMX1NTX1BPUlRfTUFQX1BPUlRY X01BUF9NQVNLKAorCQkJCQlwb3J0LT51c2IzX3BvcnRfZmFrZSk7CisJCXZhbHVlIHw9IFhVU0Jf UEFEQ1RMX1NTX1BPUlRfTUFQX1BPUlRYX01BUChwb3J0LT51c2IzX3BvcnRfZmFrZSwKKwkJCQkJ WFVTQl9QQURDVExfU1NfUE9SVF9NQVBfUE9SVF9ESVNBQkxFRCk7CisJCXBhZGN0bF93cml0ZWwo cGFkY3RsLCB2YWx1ZSwgWFVTQl9QQURDVExfU1NfUE9SVF9NQVApOworCX0KKwogCWlmIChXQVJO X09OKHBhZC0+ZW5hYmxlID09IDApKQogCQlnb3RvIG91dDsKIApAQCAtMTc4NCw2ICsxODAzLDI3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGVncmFfeHVzYl9wYWRfc29jICogY29uc3QgdGVncmEy MTBfcGFkc1tdID0gewogCiBzdGF0aWMgaW50IHRlZ3JhMjEwX3VzYjJfcG9ydF9lbmFibGUoc3Ry dWN0IHRlZ3JhX3h1c2JfcG9ydCAqcG9ydCkKIHsKKwlzdHJ1Y3QgdGVncmFfeHVzYl91c2IyX3Bv cnQgKnVzYjIgPSB0b191c2IyX3BvcnQocG9ydCk7CisJc3RydWN0IHRlZ3JhX3h1c2JfcGFkY3Rs ICpwYWRjdGwgPSBwb3J0LT5wYWRjdGw7CisKKwkvKiBEaXNhYmxlIHVzYjNfcG9ydF9mYWtlIHVz YWdlIGJ5IGRlZmF1bHQgYW5kIGFzc2lnbiBpZiBuZWVkZWQgKi8KKwl1c2IyLT51c2IzX3BvcnRf ZmFrZSA9IC0xOworCWlmICh1c2IyICYmICh1c2IyLT5tb2RlID09IFVTQl9EUl9NT0RFX09URyB8 fAorCQkgICAgdXNiMi0+bW9kZSA9PSBVU0JfRFJfTU9ERV9QRVJJUEhFUkFMKSkgeworCQlpZiAo IXRlZ3JhX3h1c2JfdXNiM19wb3J0X2hhc19jb21wYW5pb24ocGFkY3RsLCBwb3J0LT5pbmRleCkp IHsKKwkJCWludCBmYWtlID0gdGVncmFfeHVzYl9maW5kX3VudXNlZF91c2IzX3BvcnQocGFkY3Rs KTsKKworCQkJaWYgKGZha2UgPj0gMCkgeworCQkJCWRldl9kYmcoJnBvcnQtPmRldiwgIkZvdW5k IHVudXNlZCB1c2IzIHBvcnQ6ICVkXG4iLAorCQkJCQkgZmFrZSk7CisJCQkJdXNiMi0+dXNiM19w b3J0X2Zha2UgPSBmYWtlOworCQkJfSBlbHNlIHsKKwkJCQlkZXZfZXJyKCZwb3J0LT5kZXYsICJ1 c2IyLSV1IGhhcyBuZWl0aGVyIGEgY29tcGFuaW9uIG5vciBhbiB1bnVzZWQgdXNiMyBwb3J0IHRv IGZha2UgaXRcbiIsCisJCQkJCXBvcnQtPmluZGV4KTsKKwkJCQlyZXR1cm4gLUVOT0RFVjsKKwkJ CX0KKwkJfQorCX0KIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkvdGVn cmEveHVzYi5jIGIvZHJpdmVycy9waHkvdGVncmEveHVzYi5jCmluZGV4IGM2MTc4YTAuLmU4OTc0 NmQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGh5L3RlZ3JhL3h1c2IuYworKysgYi9kcml2ZXJzL3Bo eS90ZWdyYS94dXNiLmMKQEAgLTc5OSw2ICs3OTksMzUgQEAgc3RhdGljIHZvaWQgX190ZWdyYV94 dXNiX3JlbW92ZV9wb3J0cyhzdHJ1Y3QgdGVncmFfeHVzYl9wYWRjdGwgKnBhZGN0bCkKIAl9CiB9 CiAKK2Jvb2wgdGVncmFfeHVzYl91c2IzX3BvcnRfaGFzX2NvbXBhbmlvbihzdHJ1Y3QgdGVncmFf eHVzYl9wYWRjdGwgKnBhZGN0bCwKKwkJCQkJCSAgICAgICB1bnNpZ25lZCBpbnQgaW5kZXgpCit7 CisJdW5zaWduZWQgaW50IGk7CisJc3RydWN0IHRlZ3JhX3h1c2JfdXNiM19wb3J0ICp1c2IzOwor CisJZm9yIChpID0gMDsgaSA8IHBhZGN0bC0+c29jLT5wb3J0cy51c2IzLmNvdW50OyBpKyspIHsK KwkJdXNiMyA9IHRlZ3JhX3h1c2JfZmluZF91c2IzX3BvcnQocGFkY3RsLCBpKTsKKwkJaWYgKHVz YjMgJiYgdXNiMy0+cG9ydCA9PSBpbmRleCkKKwkJCXJldHVybiB0cnVlOworCX0KKworCXJldHVy biBmYWxzZTsKK30KKworaW50IHRlZ3JhX3h1c2JfZmluZF91bnVzZWRfdXNiM19wb3J0KHN0cnVj dCB0ZWdyYV94dXNiX3BhZGN0bCAqcGFkY3RsKQoreworCXN0cnVjdCBkZXZpY2Vfbm9kZSAqbnA7 CisJdW5zaWduZWQgaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgcGFkY3RsLT5zb2MtPnBvcnRz LnVzYjMuY291bnQ7IGkrKykgeworCQlucCA9IHRlZ3JhX3h1c2JfZmluZF9wb3J0X25vZGUocGFk Y3RsLCAidXNiMyIsIGkpOworCQlpZiAoIW5wIHx8ICFvZl9kZXZpY2VfaXNfYXZhaWxhYmxlKG5w KSkKKwkJCXJldHVybiBpOworCX0KKworCXJldHVybiAtRU5PREVWOworfQorCiBzdGF0aWMgaW50 IHRlZ3JhX3h1c2Jfc2V0dXBfcG9ydHMoc3RydWN0IHRlZ3JhX3h1c2JfcGFkY3RsICpwYWRjdGwp CiB7CiAJc3RydWN0IHRlZ3JhX3h1c2JfcG9ydCAqcG9ydDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv cGh5L3RlZ3JhL3h1c2IuaCBiL2RyaXZlcnMvcGh5L3RlZ3JhL3h1c2IuaAppbmRleCAxN2NjOGRj Li5iMjYzMTY1IDEwMDY0NAotLS0gYS9kcml2ZXJzL3BoeS90ZWdyYS94dXNiLmgKKysrIGIvZHJp dmVycy9waHkvdGVncmEveHVzYi5oCkBAIC0yNzQsNiArMjc0LDcgQEAgc3RydWN0IHRlZ3JhX3h1 c2JfdXNiMl9wb3J0IHsKIAlzdHJ1Y3QgcmVndWxhdG9yICpzdXBwbHk7CiAJYm9vbCBpbnRlcm5h bDsKIAllbnVtIHVzYl9kcl9tb2RlIG1vZGU7CisJaW50IHVzYjNfcG9ydF9mYWtlOwogfTsKIAog c3RhdGljIGlubGluZSBzdHJ1Y3QgdGVncmFfeHVzYl91c2IyX3BvcnQgKgpAQCAtNDEzLDYgKzQx NCwxMSBAQCBzdHJ1Y3QgdGVncmFfeHVzYl9sYW5lICp0ZWdyYV94dXNiX2ZpbmRfbGFuZShzdHJ1 Y3QgdGVncmFfeHVzYl9wYWRjdGwgKnBhZGN0bCwKIAkJCQkJICAgICBjb25zdCBjaGFyICpuYW1l LAogCQkJCQkgICAgIHVuc2lnbmVkIGludCBpbmRleCk7CiAKK2Jvb2wgdGVncmFfeHVzYl91c2Iz X3BvcnRfaGFzX2NvbXBhbmlvbihzdHJ1Y3QgdGVncmFfeHVzYl9wYWRjdGwgKnBhZGN0bCwKKwkJ CQkJdW5zaWduZWQgaW50IGluZGV4KTsKKworaW50IHRlZ3JhX3h1c2JfZmluZF91bnVzZWRfdXNi M19wb3J0KHN0cnVjdCB0ZWdyYV94dXNiX3BhZGN0bCAqcGFkY3RsKTsKKwogI2lmIGRlZmluZWQo Q09ORklHX0FSQ0hfVEVHUkFfMTI0X1NPQykgfHwgZGVmaW5lZChDT05GSUdfQVJDSF9URUdSQV8x MzJfU09DKQogZXh0ZXJuIGNvbnN0IHN0cnVjdCB0ZWdyYV94dXNiX3BhZGN0bF9zb2MgdGVncmEx MjRfeHVzYl9wYWRjdGxfc29jOwogI2VuZGlmCg==