Date: Fri, 17 Jan 2020 03:23:17 +0000 From: <Shichun.Ma@dell.com> To: <hps@selasky.org>, <freebsd-usb@freebsd.org> Cc: <Jason_YH_Yang@wistron.com> Subject: Re: USB keyboard/mouse wake up from S3 Message-ID: <1579231397567.62223@Dell.com> In-Reply-To: <685f991f-6cb6-3f27-65d8-38181e4cfa8e@selasky.org> References: <1578625588784.46788@Dell.com> <47257477-bace-a9c5-69f5-7a0eb7af3947@selasky.org> <1578648297338.92657@Dell.com>, <685f991f-6cb6-3f27-65d8-38181e4cfa8e@selasky.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--_002_157923139756762223Dellcom_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable =0A= HPS,=0A= =0A= Here is my patch to enable USB wakeup under XHCI, I tested USB mouse/keyboa= rd can wake up system from S3.=0A= =0A= Thanks & Regards,=0A= =0A= Shichun Ma=0A= Software Engineer=0A= Dell | Cloud Client Computing=0A= office +86 10 82862579, Mobile +86 13241851528=0A= shichun_ma@dell.com=0A= =0A= =0A= =0A= ________________________________________=0A= From: Hans Petter Selasky <hps@selasky.org>=0A= Sent: Friday, January 10, 2020 5:41 PM=0A= To: Ma, Horse; freebsd-usb@freebsd.org=0A= Subject: Re: USB keyboard/mouse wake up from S3=0A= =0A= [EXTERNAL EMAIL]=0A= =0A= On 2020-01-10 10:24, Shichun.Ma@dell.com wrote:=0A= > The USB wake up can still even device is detached.=0A= > Before system enter to S3 and when detach the USB device, we can enable d= evice's remote wake up feature.=0A= > it can still send out the resume signal to host if it connected from hard= ware.=0A= >=0A= =0A= I think we don't do that currently. Would need a patch in the USB core.=0A= Only during normal USB suspend / resume, not host suspend / resume.=0A= =0A= --HPS=0A= --_002_157923139756762223Dellcom_ Content-Type: text/x-patch; name="usb_wakeup_xhci.diff" Content-Description: usb_wakeup_xhci.diff Content-Disposition: attachment; filename="usb_wakeup_xhci.diff"; size=5307; creation-date="Fri, 17 Jan 2020 03:22:23 GMT"; modification-date="Fri, 17 Jan 2020 03:22:23 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3N5cy9kZXYvYWNwaWNhL2FjcGkuYyBiL3N5cy9kZXYvYWNwaWNhL2FjcGku YwppbmRleCA1MDhhZDQ1ZjZkOS4uYTQ0ODc4NzIxNGEgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvYWNw aWNhL2FjcGkuYworKysgYi9zeXMvZGV2L2FjcGljYS9hY3BpLmMKQEAgLTMyNTUsMTIgKzMyNTUs MzEgQEAgYWNwaV93YWtlX3NsZWVwX3ByZXAoQUNQSV9IQU5ETEUgaGFuZGxlLCBpbnQgc3N0YXRl KQogCWlmIChib290dmVyYm9zZSkKIAkgICAgZGV2aWNlX3ByaW50ZihkZXYsICJ3YWtlX3ByZXAg ZGlzYWJsZWQgd2FrZSBmb3IgJXMgKFMlZClcbiIsCiAJCWFjcGlfbmFtZShoYW5kbGUpLCBzc3Rh dGUpOwotICAgIH0gZWxzZSBpZiAoZGV2ICYmIChhY3BpX2dldF9mbGFncyhkZXYpICYgQUNQSV9G TEFHX1dBS0VfRU5BQkxFRCkgIT0gMCkgeworICAgIH0gZWxzZSBpZiAoZGV2ICYmICgoKGFjcGlf Z2V0X2ZsYWdzKGRldikgJiBBQ1BJX0ZMQUdfV0FLRV9FTkFCTEVEKSAhPSAwKSB8fAorCQkgICAg ICAgKHN0cnN0cihhY3BpX25hbWUoaGFuZGxlKSwgIlhIQyIpKSkpIHsgLy9oYXJkIGNvZGUgWEhD SSBhcyB3YWtlIHVwIHNpZ25hbCwgYW55IHN1c2dnZXN0aW9uIG9uIHRoZSBzZXR0aW5nPwogCWFj cGlfcHdyX3dha2VfZW5hYmxlKGhhbmRsZSwgMSk7CiAJYWNwaV9TZXRJbnRlZ2VyKGhhbmRsZSwg Il9QU1ciLCAxKTsKLQlpZiAoYm9vdHZlcmJvc2UpCisJaWYgKDEgfHwgYm9vdHZlcmJvc2UpCiAJ ICAgIGRldmljZV9wcmludGYoZGV2LCAid2FrZV9wcmVwIGVuYWJsZWQgZm9yICVzIChTJWQpXG4i LAogCQlhY3BpX25hbWUoaGFuZGxlKSwgc3N0YXRlKTsKKwlBQ1BJX09CSkVDVCBhcmdsWzNdOwor CUFDUElfT0JKRUNUX0xJU1QgYXJncyA9IHszLCBhcmdsfTsKKworCWFjcGlfcHdyX3dha2VfZW5h YmxlKGhhbmRsZSwgMSk7CisKKwlhcmdsWzBdLlR5cGUgPSBBQ1BJX1RZUEVfSU5URUdFUjsKKwlh cmdsWzBdLkludGVnZXIuVmFsdWUgPSAxOworCisJYXJnbFsxXS5UeXBlID0gQUNQSV9UWVBFX0lO VEVHRVI7CisJYXJnbFsxXS5JbnRlZ2VyLlZhbHVlID0gc3N0YXRlOworCisJYXJnbFsyXS5UeXBl ID0gQUNQSV9UWVBFX0lOVEVHRVI7CisJYXJnbFsyXS5JbnRlZ2VyLlZhbHVlID0gMzsKKwlpZiAo QWNwaUV2YWx1YXRlT2JqZWN0KGhhbmRsZSwgIl9EU1ciLCAmYXJncywgTlVMTCkpCisJCWRldmlj ZV9wcmludGYoZGV2LCAiQUNQSTogQWNwaUV2YWx1YXRlT2JqZWN0IF9EU1cgRmFpbGVkXG4iKTsK KwlhY3BpX1NldEludGVnZXIoaGFuZGxlLCAiX1BTVyIsIDEpOworCS8vQWNwaUVuYWJsZUdwZShw cncuZ3BlX2hhbmRsZSwgcHJ3LmdwZV9iaXQpOworCUFjcGlTZXRHcGVXYWtlTWFzayhwcncuZ3Bl X2hhbmRsZSwgcHJ3LmdwZV9iaXQsIEFDUElfR1BFX0VOQUJMRSk7CiAgICAgfQogCiAgICAgcmV0 dXJuICgwKTsKZGlmZiAtLWdpdCBhL3N5cy9kZXYvdXNiL2NvbnRyb2xsZXIvdXNiX2NvbnRyb2xs ZXIuYyBiL3N5cy9kZXYvdXNiL2NvbnRyb2xsZXIvdXNiX2NvbnRyb2xsZXIuYwppbmRleCAzODg3 ZTA0MjNiNi4uMzY5NDI5NmRjMTUgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvdXNiL2NvbnRyb2xsZXIv dXNiX2NvbnRyb2xsZXIuYworKysgYi9zeXMvZGV2L3VzYi9jb250cm9sbGVyL3VzYl9jb250cm9s bGVyLmMKQEAgLTQ1Miw2ICs0NTIsMzAgQEAgdXNiX2J1c19kZXRhY2goc3RydWN0IHVzYl9wcm9j X21zZyAqcG0pCiAJYnVzLT5iZGV2ID0gTlVMTDsKIH0KIAorc3RhdGljIHZvaWQKK3VzYl9zdXNw ZW5kX2FsbChzdHJ1Y3QgdXNiX2J1cyAqYnVzKQoreworCWludCBtYXhfZGVwdGggPSAwLCBpLCBq OworCXN0cnVjdCB1c2JfZGV2aWNlICp1ZGV2OworCisJZm9yIChpID0gMDsgaSA8IGJ1cy0+ZGV2 aWNlc19tYXg7IGkrKykgeworCQl1ZGV2ID0gYnVzLT5kZXZpY2VzW2ldOworCQlpZiAoIXVkZXYp CisJCQljb250aW51ZTsKKwkJaWYgKG1heF9kZXB0aCA8IHVkZXYtPmRlcHRoKQorCQkJbWF4X2Rl cHRoID0gdWRldi0+ZGVwdGg7CisJfQorCisJZm9yIChpID0gbWF4X2RlcHRoOyBpID4gMDsgaS0t KSB7CisJCWZvciAoaiA9IDA7IGogPCBidXMtPmRldmljZXNfbWF4OyBqKyspIHsKKwkJCXVkZXYg PSBidXMtPmRldmljZXNbal07CisJCQlpZiAodWRldiAmJiAodWRldi0+ZGVwdGggPT0gaSkgJiYK KwkJCSAgICB1c2JfcGVlcl9jYW5fd2FrZXVwKHVkZXYpKQorCQkJCXVzYl9zdXNwZW5kX2Rldih1 ZGV2KTsKKwkJfQorCX0KK30KKwogLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qCiAgKgl1c2JfYnVzX3N1c3Bl bmQKICAqCkBAIC00ODMsNyArNTA3LDcgQEAgdXNiX2J1c19zdXNwZW5kKHN0cnVjdCB1c2JfcHJv Y19tc2cgKnBtKQogCSAqIHN1YnNlcXVlbnRseS4gQXQgcmVzdW1lIGFsbCBVU0IgZGV2aWNlcyB3 aWxsIGJlCiAJICogcmUtY29ubmVjdGVkIGFnYWluLgogCSAqLwotCisJdXNiX3N1c3BlbmRfYWxs KGJ1cyk7CiAJYnVzX2dlbmVyaWNfc2h1dGRvd24oYnVzLT5iZGV2KTsKIAogCWRvX3VubG9jayA9 IHVzYmRfZW51bV9sb2NrKHVkZXYpOwpkaWZmIC0tZ2l0IGEvc3lzL2Rldi91c2IvY29udHJvbGxl ci94aGNpLmMgYi9zeXMvZGV2L3VzYi9jb250cm9sbGVyL3hoY2kuYwppbmRleCA4ZDYwYmEyMTJk ZS4uNjU5YmFiYjdhZjEgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvdXNiL2NvbnRyb2xsZXIveGhjaS5j CisrKyBiL3N5cy9kZXYvdXNiL2NvbnRyb2xsZXIveGhjaS5jCkBAIC03OSw2ICs3OSw3IEBACiAj aW5jbHVkZSA8ZGV2L3VzYi91c2JfdXRpbC5oPgogCiAjaW5jbHVkZSA8ZGV2L3VzYi91c2JfY29u dHJvbGxlci5oPgorI2luY2x1ZGUgPGRldi91c2IvdXNiX3BjaS5oPgogI2luY2x1ZGUgPGRldi91 c2IvdXNiX2J1cy5oPgogI2VuZGlmCQkJLyogVVNCX0dMT0JBTF9JTkNMVURFX0ZJTEUgKi8KIApA QCAtNjk1LDExICs2OTYsMTMgQEAgeGhjaV9zZXRfaHdfcG93ZXJfc2xlZXAoc3RydWN0IHVzYl9i dXMgKmJ1cywgdWludDMyX3Qgc3RhdGUpCiB7CiAJc3RydWN0IHhoY2lfc29mdGMgKnNjID0gWEhD SV9CVVMyU0MoYnVzKTsKIAorCS8veGhjaV9kdW1wX3JlZ3Moc2MpOworCiAJc3dpdGNoIChzdGF0 ZSkgewogCWNhc2UgVVNCX0hXX1BPV0VSX1NVU1BFTkQ6CiAJCURQUklOVEYoIlN0b3BwaW5nIHRo ZSBYSENJXG4iKTsKIAkJeGhjaV9oYWx0X2NvbnRyb2xsZXIoc2MpOwotCQl4aGNpX3Jlc2V0X2Nv bnRyb2xsZXIoc2MpOworCQkvL3hoY2lfcmVzZXRfY29udHJvbGxlcihzYyk7CiAJCWJyZWFrOwog CWNhc2UgVVNCX0hXX1BPV0VSX1NIVVRET1dOOgogCQlEUFJJTlRGKCJTdG9wcGluZyB0aGUgWEhD SVxuIik7CmRpZmYgLS1naXQgYS9zeXMvZGV2L3VzYi91c2JfaHViLmMgYi9zeXMvZGV2L3VzYi91 c2JfaHViLmMKaW5kZXggMTg2ZDM4M2UzNWYuLjUzMzEwNTQ4ZTcyIDEwMDY0NAotLS0gYS9zeXMv ZGV2L3VzYi91c2JfaHViLmMKKysrIGIvc3lzL2Rldi91c2IvdXNiX2h1Yi5jCkBAIC0yOTI3LDMg KzI5MjcsNDcgQEAgdXNiZF9zdGFydF9zZXRfY29uZmlnKHN0cnVjdCB1c2JfZGV2aWNlICp1ZGV2 LCB1aW50OF90IGluZGV4KQogCX0KIAlyZXR1cm4gKFVTQl9FUlJfUEVORElOR19SRVFVRVNUUyk7 CiB9CisKK2ludAordXNiX3N1c3BlbmRfZGV2KHN0cnVjdCB1c2JfZGV2aWNlICp1ZGV2KQorewor CWludCBlcnI7CisJc3RydWN0IHVzYl9wb3J0X3N0YXR1cyBwczsKKworCWVyciA9IHVzYmRfcmVx X3NldF9kZXZpY2VfZmVhdHVyZSh1ZGV2LAorCSAgICBOVUxMLCBVRl9ERVZJQ0VfUkVNT1RFX1dB S0VVUCk7CisJaWYgKGVycikgeworCQlEUFJJTlRGTigwLCAiU2V0dGluZyByZW1vdGUgd2FrZXVw IGZhaWxlZCwgZXJyICVkXG4iLCBlcnIpOworCQlyZXR1cm4gZXJyOworCX0KKwl1c2JfcGF1c2Vf bXR4KE5VTEwsIFVTQl9NU19UT19USUNLUygxMCkpOworCWlmICh1c2JfZGV2aWNlXzIwX2NvbXBh dGlibGUodWRldikpIHsKKwkJZXJyID0gdXNiZF9yZXFfc2V0X3BvcnRfZmVhdHVyZSh1ZGV2LT5w YXJlbnRfaHViLAorCQkgICAgTlVMTCwgdWRldi0+cG9ydF9ubywgVUhGX1BPUlRfU1VTUEVORCk7 CisJCWlmIChlcnIpIHsKKwkJCURQUklOVEZOKDAsICJTdXNwZW5kaW5nIHBvcnQgZmFpbGVkXG4i KTsKKwkJCXJldHVybiBlcnI7CisJCX0KKwl9IGVsc2UgeworCQllcnIgPSB1c2JkX3JlcV9zZXRf cG9ydF9saW5rX3N0YXRlKHVkZXYtPnBhcmVudF9odWIsCisJCSAgICBOVUxMLCB1ZGV2LT5wb3J0 X25vLCBVUFNfUE9SVF9MU19VMyk7CisJCWlmIChlcnIpIHsKKwkJCURQUklOVEZOKDAsICJTdXNw ZW5kaW5nIHBvcnQgZmFpbGVkXG4iKTsKKwkJCXJldHVybiBlcnI7CisJCX0KKwl9CisKKwllcnIg PSB1c2JkX3JlcV9nZXRfcG9ydF9zdGF0dXModWRldi0+cGFyZW50X2h1YiwgTlVMTCwgJnBzLAor CQkJCQkgIHVkZXYtPnBvcnRfbm8pOworCWlmIChVR0VUVyhwcy53UG9ydENoYW5nZSkpIHsKKwkJ ZXJyID0gdXNiZF9yZXFfY2xlYXJfcG9ydF9mZWF0dXJlKHVkZXYtPnBhcmVudF9odWIsIE5VTEws CisJCQkJCXVkZXYtPnBvcnRfbm8sIFVIRl9DX1BPUlRfQ09OTkVDVElPTik7CisJfQorCWVyciA9 IHVzYmRfcmVxX2dldF9wb3J0X3N0YXR1cyh1ZGV2LT5wYXJlbnRfaHViLCBOVUxMLCAmcHMsCisJ CQkJCSAgdWRldi0+cG9ydF9ubyk7CisJaWYgKCFlcnIpCisJCURQUklOVEZOKDAsICJwb3J0ICVk LCAleDoleCwgZXJyICV4OlxuIiwgdWRldi0+cG9ydF9ubywKKwkJCVVHRVRXKHBzLndQb3J0Q2hh bmdlKSwgVUdFVFcocHMud1BvcnRTdGF0dXMpLCBlcnIpOworCisJcmV0dXJuIDA7Cit9CmRpZmYg LS1naXQgYS9zeXMvZGV2L3VzYi91c2JkaS5oIGIvc3lzL2Rldi91c2IvdXNiZGkuaAppbmRleCAw YTM5Mzg0NDUxMS4uOGJiYmRjMjY4NDkgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvdXNiL3VzYmRpLmgK KysrIGIvc3lzL2Rldi91c2IvdXNiZGkuaApAQCAtNzA4LDUgKzcwOCw2IEBAIHZvaWQJKnVzYl9m aWZvX3NvZnRjKHN0cnVjdCB1c2JfZmlmbyAqZmlmbyk7CiB2b2lkCXVzYl9maWZvX3NldF9jbG9z ZV96bHAoc3RydWN0IHVzYl9maWZvICosIHVpbnQ4X3QpOwogdm9pZAl1c2JfZmlmb19zZXRfd3Jp dGVfZGVmcmFnKHN0cnVjdCB1c2JfZmlmbyAqLCB1aW50OF90KTsKIHZvaWQJdXNiX2ZpZm9fZnJl ZShzdHJ1Y3QgdXNiX2ZpZm8gKmYpOworaW50CXVzYl9zdXNwZW5kX2RldihzdHJ1Y3QgdXNiX2Rl dmljZSAqdWRldik7CiAjZW5kaWYgLyogX0tFUk5FTCAqLwogI2VuZGlmIC8qIF9VU0JfVVNCRElf SF8gKi8K --_002_157923139756762223Dellcom_--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1579231397567.62223>