From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bhupinder Thakur Subject: [PATCH 1/2 v2] xen: Add support for initializing 16550 UART using ACPI Date: Thu, 9 Nov 2017 15:49:23 +0530 Message-ID: <1510222764-11746-2-git-send-email-bhupinder.thakur@linaro.org> References: <1510222764-11746-1-git-send-email-bhupinder.thakur@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCjvw-0007Xk-M0 for xen-devel@lists.xenproject.org; Thu, 09 Nov 2017 10:19:40 +0000 Received: by mail-pf0-f196.google.com with SMTP id d28so3947214pfe.2 for ; Thu, 09 Nov 2017 02:19:38 -0800 (PST) In-Reply-To: <1510222764-11746-1-git-send-email-bhupinder.thakur@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Jan Beulich List-Id: xen-devel@lists.xenproject.org Q3VycmVudGx5LCBYZW4gc3VwcG9ydHMgb25seSBEVCBiYXNlZCBpbml0aWFsaXphdGlvbiBvZiAx NjU1MCBVQVJULgpUaGlzIHBhdGNoIGFkZHMgc3VwcG9ydCBmb3IgaW5pdGlhbGl6aW5nIDE2NTUw IFVBUlQgdXNpbmcgQUNQSSBTUENSIHRhYmxlLgoKVGhpcyBwYXRjaCBhbHNvIG1ha2VzIHRoZSB1 YXJ0IGluaXRpYWxpemF0aW9uIGNvZGUgY29tbW9uIGJldHdlZW4gRFQgYW5kCkFDUEkgYmFzZWQg aW5pdGlhbGl6YXRpb24uCgpTaWduZWQtb2ZmLWJ5OiBCaHVwaW5kZXIgVGhha3VyIDxiaHVwaW5k ZXIudGhha3VyQGxpbmFyby5vcmc+Ci0tLQpUQkQ6ClRoZXJlIHdhcyBvbmUgcmV2aWV3IGNvbW1l bnQgZnJvbSBKdWxpZW4gYWJvdXQgaG93IHRoZSB1YXJ0LT5pb19zaXplIGlzIGJlaW5nIApjYWxj dWxhdGVkLiBDdXJyZW50bHksIEkgYW0gY2FsdWxhdGluZyB0aGUgaW9fc2l6ZSBiYXNlZCBvbiBh ZGRyZXNzIG9mIHRoZSBsYXN0ClVBUlQgcmVnaXN0ZXIuIAoKcGNpX3VhcnRfY29uZmlnIGFsc28g Y2FsY3VhbGF0ZXMgdGhlIHVhcnQtPmlvX3NpemUgbGlrZSB0aGlzOgoKdWFydC0+aW9fc2l6ZSA9 IG1heCg4VSA8PCBwYXJhbS0+cmVnX3NoaWZ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwYXJhbS0+dWFydF9vZmZzZXQpOwoKSSBhbSBub3Qgc3VyZSB3aGV0aGVyIHdlIGNhbiB1 c2Ugc2ltaWxhciBsb2dpYyBmb3IgY2FsY3VsYXRpbmcgdWFydC0+aW9fc2l6ZS4KCkNoYW5nZXMg c2luY2UgdjE6Ci0gUmV1c2VkIGNvbW1vbiBjb2RlIGJldHdlZW4gRFQgYW5kIEFDUEkgYmFzZWQg aW5pdGlhbGl6YXRpb25zCgpDQzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4 LmNvbT4KQ0M6IEdlb3JnZSBEdW5sYXAgPEdlb3JnZS5EdW5sYXBAZXUuY2l0cml4LmNvbT4KQ0M6 IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBldS5jaXRyaXguY29tPgpDQzogSmFuIEJldWxpY2gg PGpiZXVsaWNoQHN1c2UuY29tPgpDQzogS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2ls a0BvcmFjbGUuY29tPgpDQzogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwu b3JnPgpDQzogVGltIERlZWdhbiA8dGltQHhlbi5vcmc+CkNDOiBXZWkgTGl1IDx3ZWkubGl1MkBj aXRyaXguY29tPgpDQzogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KCiB4ZW4v ZHJpdmVycy9jaGFyL25zMTY1NTAuYyAgfCAxMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0KIHhlbi9pbmNsdWRlL3hlbi84MjUwLXVhcnQuaCB8ICAgMSArCiAy IGZpbGVzIGNoYW5nZWQsIDEyMSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS94ZW4vZHJpdmVycy9jaGFyL25zMTY1NTAuYyBiL3hlbi9kcml2ZXJzL2NoYXIvbnMx NjU1MC5jCmluZGV4IGUwZjgxOTkuLmNmNDJmY2UgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL2No YXIvbnMxNjU1MC5jCisrKyBiL3hlbi9kcml2ZXJzL2NoYXIvbnMxNjU1MC5jCkBAIC0xNDYzLDE4 ICsxNDYzLDEzIEBAIHZvaWQgX19pbml0IG5zMTY1NTBfaW5pdChpbnQgaW5kZXgsIHN0cnVjdCBu czE2NTUwX2RlZmF1bHRzICpkZWZhdWx0cykKIH0KIAogI2lmZGVmIENPTkZJR19IQVNfREVWSUNF X1RSRUUKLXN0YXRpYyBpbnQgX19pbml0IG5zMTY1NTBfdWFydF9kdF9pbml0KHN0cnVjdCBkdF9k ZXZpY2Vfbm9kZSAqZGV2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgdm9pZCAqZGF0YSkKK3N0YXRpYyBpbnQgbnMxNjU1MF9pbml0X2R0KHN0cnVjdCBuczE2 NTUwICp1YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGR0X2Rl dmljZV9ub2RlICpkZXYpCiB7Ci0gICAgc3RydWN0IG5zMTY1NTAgKnVhcnQ7Ci0gICAgaW50IHJl czsKKyAgICBpbnQgcmVzID0gMDsKICAgICB1MzIgcmVnX3NoaWZ0LCByZWdfd2lkdGg7CiAgICAg dTY0IGlvX3NpemU7CiAKLSAgICB1YXJ0ID0gJm5zMTY1NTBfY29tWzBdOwotCi0gICAgbnMxNjU1 MF9pbml0X2NvbW1vbih1YXJ0KTsKLQogICAgIHVhcnQtPmJhdWQgICAgICA9IEJBVURfQVVUTzsK ICAgICB1YXJ0LT5kYXRhX2JpdHMgPSA4OwogICAgIHVhcnQtPnBhcml0eSAgICA9IFVBUlRfUEFS SVRZX05PTkU7CkBAIC0xNTEwLDE4ICsxNTA1LDEwMyBAQCBzdGF0aWMgaW50IF9faW5pdCBuczE2 NTUwX3VhcnRfZHRfaW5pdChzdHJ1Y3QgZHRfZGV2aWNlX25vZGUgKmRldiwKIAogICAgIHVhcnQt PmR3X3Vzcl9ic3kgPSBkdF9kZXZpY2VfaXNfY29tcGF0aWJsZShkZXYsICJzbnBzLGR3LWFwYi11 YXJ0Iik7CiAKKyAgICByZXR1cm4gcmVzOworfQorI2Vsc2UKK3N0YXRpYyBpbnQgbnMxNjU1MF9p bml0X2R0KHN0cnVjdCBuczE2NTUwICp1YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpkZXYpCit7CisgICAgcmV0dXJuIC1FSU5WQUw7 Cit9CisjZW5kaWYKKworI2lmZGVmIENPTkZJR19BQ1BJCisjaW5jbHVkZSA8eGVuL2FjcGkuaD4K K3N0YXRpYyBpbnQgbnMxNjU1MF9pbml0X2FjcGkoc3RydWN0IG5zMTY1NTAgKnVhcnQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmRhdGEpCit7CisgICAgc3RydWN0 IGFjcGlfdGFibGVfc3BjciAqc3BjciA9IE5VTEw7CisgICAgaW50IHN0YXR1cyA9IDA7CisKKyAg ICBzdGF0dXMgPSBhY3BpX2dldF90YWJsZShBQ1BJX1NJR19TUENSLCAwLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChzdHJ1Y3QgYWNwaV90YWJsZV9oZWFkZXIgKiopJnNwY3IpOworCisg ICAgaWYgKCBBQ1BJX0ZBSUxVUkUoc3RhdHVzKSApCisgICAgeworICAgICAgICBwcmludGsoIm5z MTY1NTA6IEZhaWxlZCB0byBnZXQgU1BDUiB0YWJsZVxuIik7CisgICAgICAgIHJldHVybiAtRUlO VkFMOworICAgIH0KKworICAgIHVhcnQtPmJhdWQgICAgICA9IEJBVURfQVVUTzsKKyAgICB1YXJ0 LT5kYXRhX2JpdHMgPSA4OworICAgIHVhcnQtPnBhcml0eSAgICA9IHNwY3ItPnBhcml0eTsKKyAg ICB1YXJ0LT5zdG9wX2JpdHMgPSBzcGNyLT5zdG9wX2JpdHM7CisgICAgdWFydC0+aW9fYmFzZSA9 IHNwY3ItPnNlcmlhbF9wb3J0LmFkZHJlc3M7CisgICAgdWFydC0+aXJxID0gc3Bjci0+aW50ZXJy dXB0OworICAgIHVhcnQtPnJlZ193aWR0aCA9IHNwY3ItPnNlcmlhbF9wb3J0LmJpdF93aWR0aCAv IDg7CisgICAgdWFydC0+cmVnX3NoaWZ0ID0gMDsKKyAgICB1YXJ0LT5pb19zaXplID0gVUFSVF9N QVhfUkVHIDw8IHVhcnQtPnJlZ19zaGlmdDsKKworICAgIGlycV9zZXRfdHlwZShzcGNyLT5pbnRl cnJ1cHQsIHNwY3ItPmludGVycnVwdF90eXBlKTsKKworICAgIHJldHVybiAwOworfQorI2Vsc2UK K3N0YXRpYyBpbnQgbnMxNjU1MF9pbml0X2FjcGkoc3RydWN0IG5zMTY1NTAgKnVhcnQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmRhdGEpCit7CisgICAgcmV0dXJu IC1FSU5WQUw7Cit9CisjZW5kaWYKKworc3RhdGljIGludCBuczE2NTUwX3VhcnRfaW5pdChzdHJ1 Y3QgbnMxNjU1MCAqKnB1YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2 b2lkICpkYXRhLCBib29sIGFjcGkpCit7CisgICAgc3RydWN0IG5zMTY1NTAgKnVhcnQgPSAmbnMx NjU1MF9jb21bMF07CisKKyAgICAqcHVhcnQgPSB1YXJ0OworCisgICAgbnMxNjU1MF9pbml0X2Nv bW1vbih1YXJ0KTsKKworICAgIHJldHVybiAoIGFjcGkgKSA/IG5zMTY1NTBfaW5pdF9hY3BpKHVh cnQsIGRhdGEpCisgICAgICAgICAgICAgICAgICAgIDogbnMxNjU1MF9pbml0X2R0KHVhcnQsIGRh dGEpOworfQorCitzdGF0aWMgdm9pZCBuczE2NTUwX3Z1YXJ0X2luaXQoc3RydWN0IG5zMTY1NTAg KnVhcnQpCit7CisjaWZkZWYgQ09ORklHX0FSTQogICAgIHVhcnQtPnZ1YXJ0LmJhc2VfYWRkciA9 IHVhcnQtPmlvX2Jhc2U7CiAgICAgdWFydC0+dnVhcnQuc2l6ZSA9IHVhcnQtPmlvX3NpemU7Ci0g ICAgdWFydC0+dnVhcnQuZGF0YV9vZmYgPSBVQVJUX1RIUiA8PHVhcnQtPnJlZ19zaGlmdDsKLSAg ICB1YXJ0LT52dWFydC5zdGF0dXNfb2ZmID0gVUFSVF9MU1I8PHVhcnQtPnJlZ19zaGlmdDsKLSAg ICB1YXJ0LT52dWFydC5zdGF0dXMgPSBVQVJUX0xTUl9USFJFfFVBUlRfTFNSX1RFTVQ7CisgICAg dWFydC0+dnVhcnQuZGF0YV9vZmYgPSBVQVJUX1RIUiA8PCB1YXJ0LT5yZWdfc2hpZnQ7CisgICAg dWFydC0+dnVhcnQuc3RhdHVzX29mZiA9IFVBUlRfTFNSIDw8IHVhcnQtPnJlZ19zaGlmdDsKKyAg ICB1YXJ0LT52dWFydC5zdGF0dXMgPSBVQVJUX0xTUl9USFJFIHwgVUFSVF9MU1JfVEVNVDsKKyNl bmRpZgorfQogCitzdGF0aWMgdm9pZCBuczE2NTUwX3JlZ2lzdGVyX3VhcnQoc3RydWN0IG5zMTY1 NTAgKnVhcnQpCit7CiAgICAgLyogUmVnaXN0ZXIgd2l0aCBnZW5lcmljIHNlcmlhbCBkcml2ZXIu ICovCiAgICAgc2VyaWFsX3JlZ2lzdGVyX3VhcnQodWFydCAtIG5zMTY1NTBfY29tLCAmbnMxNjU1 MF9kcml2ZXIsIHVhcnQpOworfQorCisjaWZkZWYgQ09ORklHX0hBU19ERVZJQ0VfVFJFRQorc3Rh dGljIGludCBfX2luaXQgbnMxNjU1MF91YXJ0X2R0X2luaXQoc3RydWN0IGR0X2RldmljZV9ub2Rl ICpkZXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lk ICpkYXRhKQoreworICAgIHN0cnVjdCBuczE2NTUwICp1YXJ0OworICAgIGludCByZXQgPSAwOwor CisgICAgcmV0ID0gbnMxNjU1MF91YXJ0X2luaXQoJnVhcnQsIGRldiwgZmFsc2UpOworICAgIGlm ICggcmV0ICkKKyAgICAgICAgcmV0dXJuIHJldDsKKworICAgIG5zMTY1NTBfdnVhcnRfaW5pdCh1 YXJ0KTsKKworICAgIG5zMTY1NTBfcmVnaXN0ZXJfdWFydCh1YXJ0KTsKIAogICAgIGR0X2Rldmlj ZV9zZXRfdXNlZF9ieShkZXYsIERPTUlEX1hFTik7CiAKLSAgICByZXR1cm4gMDsKKyAgICByZXR1 cm4gcmV0OwogfQogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGR0X2RldmljZV9tYXRjaCBuczE2NTUw X2R0X21hdGNoW10gX19pbml0Y29uc3QgPQpAQCAtMTUzOCw2ICsxNjE4LDM0IEBAIERUX0RFVklD RV9TVEFSVChuczE2NTUwLCAiTlMxNjU1MCBVQVJUIiwgREVWSUNFX1NFUklBTCkKIERUX0RFVklD RV9FTkQKIAogI2VuZGlmIC8qIEhBU19ERVZJQ0VfVFJFRSAqLworCisjaWZkZWYgQ09ORklHX0FD UEkKK3N0YXRpYyBpbnQgX19pbml0IG5zMTY1NTBfYWNwaV91YXJ0X2luaXQoY29uc3Qgdm9pZCAq ZGF0YSkKK3sKKyAgICBzdHJ1Y3QgbnMxNjU1MCAqdWFydDsKKyAgICBpbnQgcmV0ID0gMDsKKwor ICAgIHJldCA9IG5zMTY1NTBfdWFydF9pbml0KCZ1YXJ0LCBkYXRhLCB0cnVlKTsKKyAgICBpZiAo IHJldCApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICBuczE2NTUwX3Z1YXJ0X2luaXQodWFy dCk7CisKKyAgICBuczE2NTUwX3JlZ2lzdGVyX3VhcnQodWFydCk7CisKKyAgICByZXR1cm4gcmV0 OworfQorCitBQ1BJX0RFVklDRV9TVEFSVChuczE2NTUwYywgIjE2NTUwIENPTVBBVCBVQVJUIiwg REVWSUNFX1NFUklBTCkKKyAgICAgICAgLmNsYXNzX3R5cGUgPSBBQ1BJX0RCRzJfMTY1NTBfQ09N UEFUSUJMRSwKKyAgICAgICAgLmluaXQgPSBuczE2NTUwX2FjcGlfdWFydF9pbml0LAorQUNQSV9E RVZJQ0VfRU5ECitBQ1BJX0RFVklDRV9TVEFSVChuczE2NTUwcywgIjE2NTUwIFNVQlNFVCBVQVJU IiwgREVWSUNFX1NFUklBTCkKKyAgICAgICAgLmNsYXNzX3R5cGUgPSBBQ1BJX0RCRzJfMTY1NTBf U1VCU0VULAorICAgICAgICAuaW5pdCA9IG5zMTY1NTBfYWNwaV91YXJ0X2luaXQsCitBQ1BJX0RF VklDRV9FTkQKKworI2VuZGlmCiAvKgogICogTG9jYWwgdmFyaWFibGVzOgogICogbW9kZTogQwpk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuLzgyNTAtdWFydC5oIGIveGVuL2luY2x1ZGUveGVu LzgyNTAtdWFydC5oCmluZGV4IDVjM2JhYzMuLjFiM2UxMzcgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNs dWRlL3hlbi84MjUwLXVhcnQuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vODI1MC11YXJ0LmgKQEAg LTM1LDYgKzM1LDcgQEAKICNkZWZpbmUgVUFSVF9VU1IgICAgICAgICAgMHgxZiAgICAvKiBTdGF0 dXMgcmVnaXN0ZXIgKERXKSAqLwogI2RlZmluZSBVQVJUX0RMTCAgICAgICAgICAweDAwICAgIC8q IGRpdmlzb3IgbGF0Y2ggKGxzKSAoRExBQj0xKSAqLwogI2RlZmluZSBVQVJUX0RMTSAgICAgICAg ICAweDAxICAgIC8qIGRpdmlzb3IgbGF0Y2ggKG1zKSAoRExBQj0xKSAqLworI2RlZmluZSBVQVJU X01BWF9SRUcgICAgICAoVUFSVF9VU1IgKyAxKQogCiAvKiBJbnRlcnJ1cHQgRW5hYmxlIFJlZ2lz dGVyICovCiAjZGVmaW5lIFVBUlRfSUVSX0VSREFJICAgIDB4MDEgICAgLyogcnggZGF0YSByZWN2 J2QgICAgICAgKi8KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu Lm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==