From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 15CBB89D9A for ; Wed, 28 Aug 2019 16:16:23 +0000 (UTC) From: Daniel Mrzyglod Date: Wed, 28 Aug 2019 18:16:15 +0200 Message-Id: <20190828161616.657-3-daniel.t.mrzyglod@intel.com> In-Reply-To: <20190828161616.657-1-daniel.t.mrzyglod@intel.com> References: <20190828161616.657-1-daniel.t.mrzyglod@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v10 2/3] lib/intel_mmio: add funtions for read/write register funtions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: ICAgIFRoaXMgcGF0Y2ggaXMgZmlyc3QgbW92ZSB0byBleHRlbmQgZnVuY3Rpb25hbGl0eSBvZiBp bnRlbF9tbWlvIGxpYnJhcnkuCiAgICBUaGVyZSB3YXMgbGltaXRhdGlvbiBmb3IgMSBkZXZpY2Us IGFkZGluZyBwb2ludGVyIGZvciBJTyBmdW5jdGlvbnMgdG8KICAgIG1tYXBlZCBhcmVhIGdpdmVz IHVzIHBvc3NpYmlsaXR5IHRvIHVzZSB0aG9zZSBJTyBmdW5jdGlvbnMgZm9yIG90aGVyIG1tYXBl ZAogICAgZGV2aWNlcy4KICAgIHYxMDogYWRkIG1hY3JvcyBmb3IgbGVnYWN5IGZ1bmN0aW9ucwog ICAgdjk6IGZpeCBiYWQgY2FzdGluZ3MKICAgIHY4OiByZW1vdmUgdW5uZWNlc3NhcnkgY2FzdGlu Z3MKICAgIHY0OiByZXdvcmQgY29tbWl0bXNnLCBzcGVsbGluZyBlcnJvcnMKCiAgICBDYzogQW50 b25pbyBBcmdlbnppYW5vIDxhbnRvbmlvLmFyZ2Vuemlhbm9AaW50ZWwuY29tPgogICAgQ2M6IERh bmllbGUgU3B1cmlvIENlcmFvbG8gPGRhbmllbGUuY2VyYW9sb3NwdXJpb0BpbnRlbC5jb20+CiAg ICBDYzogS2F0YXJ6eW5hIERlYyA8a2F0YXJ6eW5hLmRlY0BpbnRlbC5jb20+CiAgICBDYzogQ2hy aXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CiAgICBDYzogUGV0cmkgTGF0dmFs YSA8cGV0cmkubGF0dmFsYUBpbnRlbC5jb20+CiAgICBDYzogWmJpZ25pZXcgS2VtcGN6ecWEc2tp IDx6Ymlnbmlldy5rZW1wY3p5bnNraUBpbnRlbC5jb20+CiAgICBDYzogSmFuaSBOaWt1bGEgPGph bmkubmlrdWxhQGludGVsLmNvbT4KCiAgICBSZXZpZXdlZC1ieTogWmJpZ25pZXcgS2VtcGN6ecWE c2tpIDx6Ymlnbmlldy5rZW1wY3p5bnNraUBpbnRlbC5jb20+CiAgICBTaWduZWQtb2ZmLWJ5OiBE YW5pZWwgTXJ6eWdsb2QgPGRhbmllbC50Lm1yenlnbG9kQGludGVsLmNvbT4KLS0tCiBsaWIvaW50 ZWxfaW8uaCAgIHwgMjkgKysrKysrKysrKysrKysrKysrLS0tLS0KIGxpYi9pbnRlbF9tbWlvLmMg fCA2MCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDIg ZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvbGliL2ludGVsX2lvLmggYi9saWIvaW50ZWxfaW8uaAppbmRleCA2MDE0YzQ4NS4uYTRm OWZkZjcgMTAwNjQ0Ci0tLSBhL2xpYi9pbnRlbF9pby5oCisrKyBiL2xpYi9pbnRlbF9pby5oCkBA IC00MiwxMiArNDIsMjkgQEAgdWludDMyX3QgaW50ZWxfcmVnaXN0ZXJfcmVhZCh1aW50MzJfdCBy ZWcpOwogdm9pZCBpbnRlbF9yZWdpc3Rlcl93cml0ZSh1aW50MzJfdCByZWcsIHVpbnQzMl90IHZh bCk7CiBpbnQgaW50ZWxfcmVnaXN0ZXJfYWNjZXNzX25lZWRzX2Zha2V3YWtlKHZvaWQpOwogCi11 aW50MzJfdCBJTlJFRyh1aW50MzJfdCByZWcpOwotdWludDE2X3QgSU5SRUcxNih1aW50MzJfdCBy ZWcpOwotdWludDhfdCBJTlJFRzgodWludDMyX3QgcmVnKTsKLXZvaWQgT1VUUkVHKHVpbnQzMl90 IHJlZywgdWludDMyX3QgdmFsKTsKLXZvaWQgT1VUUkVHMTYodWludDMyX3QgcmVnLCB1aW50MTZf dCB2YWwpOwotdm9pZCBPVVRSRUc4KHVpbnQzMl90IHJlZywgdWludDhfdCB2YWwpOworCit1aW50 MzJfdCBJTlJFR19ERVYodm9pZCAqbW1pbywgdWludDMyX3QgcmVnKTsKK3VpbnQxNl90IElOUkVH MTZfREVWKHZvaWQgKm1taW8sIHVpbnQzMl90IHJlZyk7Cit1aW50OF90IElOUkVHOF9ERVYodm9p ZCAqbW1pbywgdWludDMyX3QgcmVnKTsKK3ZvaWQgT1VUUkVHX0RFVih2b2lkICptbWlvLCB1aW50 MzJfdCByZWcsIHVpbnQzMl90IHZhbCk7Cit2b2lkIE9VVFJFRzE2X0RFVih2b2lkICptbWlvLCB1 aW50MzJfdCByZWcsIHVpbnQxNl90IHZhbCk7Cit2b2lkIE9VVFJFRzhfREVWKHZvaWQgKm1taW8s IHVpbnQzMl90IHJlZywgdWludDhfdCB2YWwpOworCisjZGVmaW5lIElOUkVHX1BUUihuLC4uLikg SU5SRUcjI24jI19ERVYoX19WQV9BUkdTX18pCisjZGVmaW5lIElOUkVHX05PUFRSKG4sLi4uKSBJ TlJFRyMjbiMjX0RFVihpZ3RfZ2xvYmFsX21taW8sIF9fVkFfQVJHU19fKQorI2RlZmluZSBJTlJF R19HRVRfTUFDUk8oXzEsXzIsTkFNRSwuLi4pIE5BTUUKKyNkZWZpbmUgSU5SRUdYKG4sLi4uKSBJ TlJFR19HRVRfTUFDUk8oX19WQV9BUkdTX18sIElOUkVHX1BUUiwgSU5SRUdfTk9QVFIpKG4sIF9f VkFfQVJHU19fKQorI2RlZmluZSBJTlJFRzE2KC4uLikgSU5SRUdYKDE2LCBfX1ZBX0FSR1NfXykK KyNkZWZpbmUgSU5SRUc4KC4uLikgSU5SRUdYKDgsIF9fVkFfQVJHU19fKQorI2RlZmluZSBJTlJF RyguLi4pIElOUkVHWCgsX19WQV9BUkdTX18pCisKKyNkZWZpbmUgT1VUUkVHX1BUUihuLC4uLikg T1VUUkVHIyNuIyNfREVWKF9fVkFfQVJHU19fKQorI2RlZmluZSBPVVRSRUdfTk9QVFIobiwuLi4p IE9VVFJFRyMjbiMjX0RFVihpZ3RfZ2xvYmFsX21taW8sIF9fVkFfQVJHU19fKQorI2RlZmluZSBP VVRSRUdfR0VUX01BQ1JPKF8xLF8yLF8zLE5BTUUsLi4uKSBOQU1FCisjZGVmaW5lIE9VVFJFR1go biwgLi4uKSBPVVRSRUdfR0VUX01BQ1JPKF9fVkFfQVJHU19fLCBPVVRSRUdfUFRSLCBPVVRSRUdf Tk9QVFIpKG4sIF9fVkFfQVJHU19fKQorI2RlZmluZSBPVVRSRUcxNiguLi4pIE9VVFJFR1goMTYs IF9fVkFfQVJHU19fKQorI2RlZmluZSBPVVRSRUc4KC4uLikgT1VUUkVHWCg4LCBfX1ZBX0FSR1Nf XykKKyNkZWZpbmUgT1VUUkVHKC4uLikgT1VUUkVHWCgsX19WQV9BUkdTX18pCiAKIC8qIHNpZGVi YW5kIGFjY2VzcyBmdW5jdGlvbnMgZnJvbSBpbnRlbF9pb3NmLmMgKi8KIHVpbnQzMl90IGludGVs X2RwaW9fcmVnX3JlYWQodWludDMyX3QgcmVnLCBpbnQgcGh5KTsKZGlmZiAtLWdpdCBhL2xpYi9p bnRlbF9tbWlvLmMgYi9saWIvaW50ZWxfbW1pby5jCmluZGV4IGE1NDU4YWViLi4yMGVkOGEwNyAx MDA2NDQKLS0tIGEvbGliL2ludGVsX21taW8uYworKysgYi9saWIvaW50ZWxfbW1pby5jCkBAIC0y NjYsNyArMjY2LDcgQEAgaW50ZWxfcmVnaXN0ZXJfcmVhZCh1aW50MzJfdCByZWcpCiAJfQogCiBy ZWFkX291dDoKLQlyZXQgPSAqKHZvbGF0aWxlIHVpbnQzMl90ICopKCh2b2xhdGlsZSBjaGFyICop aWd0X2dsb2JhbF9tbWlvICsgcmVnKTsKKwlyZXQgPSAqKHZvbGF0aWxlIHVpbnQzMl90ICopKGln dF9nbG9iYWxfbW1pbyArIHJlZyk7CiBvdXQ6CiAJcmV0dXJuIHJldDsKIH0KQEAgLTMwMyw2MyAr MzAzLDY2IEBAIGludGVsX3JlZ2lzdGVyX3dyaXRlKHVpbnQzMl90IHJlZywgdWludDMyX3QgdmFs KQogCQkgICAgICAiUmVnaXN0ZXIgd3JpdGUgYmxvY2tlZCBmb3Igc2FmZXR5ICIiKCoweCUwOHgg PSAweCV4KVxuIiwgcmVnLCB2YWwpOwogCiB3cml0ZV9vdXQ6Ci0JKih2b2xhdGlsZSB1aW50MzJf dCAqKSgodm9sYXRpbGUgY2hhciAqKWlndF9nbG9iYWxfbW1pbyArIHJlZykgPSB2YWw7CisJKih2 b2xhdGlsZSB1aW50MzJfdCAqKShpZ3RfZ2xvYmFsX21taW8gKyByZWcpID0gdmFsOwogfQogCi0K IC8qKgotICogSU5SRUc6CisgKiBJTlJFR19ERVY6CisgKiBAaWd0X21taW8gbWFwZWQgbWVtb3J5 IHBvaW50ZXIKICAqIEByZWc6IHJlZ2lzdGVyIG9mZnNldAogICoKICAqIDMyLWJpdCByZWFkIG9m IHRoZSByZWdpc3RlciBhdCBvZmZzZXQgQHJlZy4gVGhpcyBmdW5jdGlvbiBvbmx5IHdvcmtzIHdo ZW4gdGhlCiAgKiBuZXcgcmVnaXN0ZXIgYWNjZXNzIGhlbHBlciBpcyBpbml0aWFsaXplZCB3aXRo IGludGVsX3JlZ2lzdGVyX2FjY2Vzc19pbml0KCkuCiAgKgotICogVGhpcyBmdW5jdGlvbiBkaXJl Y3RseSBhY2Nlc3NlcyB0aGUgI2lndF9nbG9iYWxfbW1pbyB3aXRob3V0IHNhZmV0eSBjaGVja3Mu CisgKiBUaGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGFjY2Vzc2VzIHRoZSBpZ3RfbW1pbyB3aXRob3V0 IHNhZmV0eSBjaGVja3MuCiAgKgogICogUmV0dXJuczoKICAqIFRoZSB2YWx1ZSByZWFkIGZyb20g dGhlIHJlZ2lzdGVyLgogICovCi11aW50MzJfdCBJTlJFRyh1aW50MzJfdCByZWcpCit1aW50MzJf dCBJTlJFR19ERVYodm9pZCAqbW1pbywgdWludDMyX3QgcmVnKQogewotCXJldHVybiAqKHZvbGF0 aWxlIHVpbnQzMl90ICopKCh2b2xhdGlsZSBjaGFyICopaWd0X2dsb2JhbF9tbWlvICsgcmVnKTsK KwlyZXR1cm4gKigodm9sYXRpbGUgdWludDMyX3QgKiltbWlvICsgcmVnKTsKIH0KIAogLyoqCi0g KiBJTlJFRzE2OgorICogSU5SRUcxNl9ERVY6CisgKiBAaWd0X21taW8gbWFwZWQgbWVtb3J5IHBv aW50ZXIKICAqIEByZWc6IHJlZ2lzdGVyIG9mZnNldAogICoKICAqIDE2LWJpdCByZWFkIG9mIHRo ZSByZWdpc3RlciBhdCBvZmZzZXQgQHJlZy4gVGhpcyBmdW5jdGlvbiBvbmx5IHdvcmtzIHdoZW4g dGhlCiAgKiBuZXcgcmVnaXN0ZXIgYWNjZXNzIGhlbHBlciBpcyBpbml0aWFsaXplZCB3aXRoIGlu dGVsX3JlZ2lzdGVyX2FjY2Vzc19pbml0KCkuCiAgKgotICogVGhpcyBmdW5jdGlvbiBkaXJlY3Rs eSBhY2Nlc3NlcyB0aGUgI2lndF9nbG9iYWxfbW1pbyB3aXRob3V0IHNhZmV0eSBjaGVja3MuCisg KiBUaGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGFjY2Vzc2VzIHRoZSBpZ3RfbW1pbyB3aXRob3V0IHNh ZmV0eSBjaGVja3MuCiAgKgogICogUmV0dXJuczoKICAqIFRoZSB2YWx1ZSByZWFkIGZyb20gdGhl IHJlZ2lzdGVyLgogICovCi11aW50MTZfdCBJTlJFRzE2KHVpbnQzMl90IHJlZykKK3VpbnQxNl90 IElOUkVHMTZfREVWKHZvaWQgKm1taW8sIHVpbnQzMl90IHJlZykKIHsKLQlyZXR1cm4gKih2b2xh dGlsZSB1aW50MTZfdCAqKSgodm9sYXRpbGUgY2hhciAqKWlndF9nbG9iYWxfbW1pbyArIHJlZyk7 CisJcmV0dXJuICooKHZvbGF0aWxlIHVpbnQxNl90ICopbW1pbyArIHJlZyk7CiB9CiAKIC8qKgot ICogSU5SRUc4OgorICogSU5SRUc4X0RFVjoKKyAqIEBpZ3RfbW1pbyBtYXBlZCBtZW1vcnkgcG9p bnRlcgogICogQHJlZzogcmVnaXN0ZXIgb2Zmc2V0CiAgKgogICogOC1iaXQgcmVhZCBvZiB0aGUg cmVnaXN0ZXIgYXQgb2Zmc2V0IEByZWcuIFRoaXMgZnVuY3Rpb24gb25seSB3b3JrcyB3aGVuIHRo ZQogICogbmV3IHJlZ2lzdGVyIGFjY2VzcyBoZWxwZXIgaXMgaW5pdGlhbGl6ZWQgd2l0aCBpbnRl bF9yZWdpc3Rlcl9hY2Nlc3NfaW5pdCgpLgogICoKLSAqIFRoaXMgZnVuY3Rpb24gZGlyZWN0bHkg YWNjZXNzZXMgdGhlICNpZ3RfZ2xvYmFsX21taW8gd2l0aG91dCBzYWZldHkgY2hlY2tzLgorICog VGhpcyBmdW5jdGlvbiBkaXJlY3RseSBhY2Nlc3NlcyB0aGUgaWd0X21taW8gd2l0aG91dCBzYWZl dHkgY2hlY2tzLgogICoKICAqIFJldHVybnM6CiAgKiBUaGUgdmFsdWUgcmVhZCBmcm9tIHRoZSBy ZWdpc3Rlci4KICAqLwotdWludDhfdCBJTlJFRzgodWludDMyX3QgcmVnKQordWludDhfdCBJTlJF RzhfREVWKHZvaWQgKm1taW8sIHVpbnQzMl90IHJlZykKIHsKLQlyZXR1cm4gKigodm9sYXRpbGUg dWludDhfdCAqKWlndF9nbG9iYWxfbW1pbyArIHJlZyk7CisJcmV0dXJuICooKHZvbGF0aWxlIHVp bnQ4X3QgKiltbWlvICsgcmVnKTsKIH0KIAogLyoqCi0gKiBPVVRSRUc6CisgKiBPVVRSRUdfREVW OgorICogQGlndF9tbWlvIG1hcGVkIG1lbW9yeSBwb2ludGVyCiAgKiBAcmVnOiByZWdpc3RlciBv ZmZzZXQKICAqIEB2YWw6IHZhbHVlIHRvIHdyaXRlCiAgKgpAQCAtMzY3LDE1ICszNzAsMTYgQEAg dWludDhfdCBJTlJFRzgodWludDMyX3QgcmVnKQogICogd2hlbiB0aGUgbmV3IHJlZ2lzdGVyIGFj Y2VzcyBoZWxwZXIgaXMgaW5pdGlhbGl6ZWQgd2l0aAogICogaW50ZWxfcmVnaXN0ZXJfYWNjZXNz X2luaXQoKS4KICAqCi0gKiBUaGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGFjY2Vzc2VzIHRoZSAjaWd0 X2dsb2JhbF9tbWlvIHdpdGhvdXQgc2FmZXR5IGNoZWNrcy4KKyAqIFRoaXMgZnVuY3Rpb24gZGly ZWN0bHkgYWNjZXNzZXMgdGhlIGlndF9tbWlvIHdpdGhvdXQgc2FmZXR5IGNoZWNrcy4KICAqLwot dm9pZCBPVVRSRUcodWludDMyX3QgcmVnLCB1aW50MzJfdCB2YWwpCit2b2lkIE9VVFJFR19ERVYo dm9pZCAqbW1pbywgdWludDMyX3QgcmVnLCB1aW50MzJfdCB2YWwpCiB7Ci0JKih2b2xhdGlsZSB1 aW50MzJfdCAqKSgodm9sYXRpbGUgY2hhciAqKWlndF9nbG9iYWxfbW1pbyArIHJlZykgPSB2YWw7 CisJKih2b2xhdGlsZSB1aW50MzJfdCAqKShtbWlvICsgcmVnKSA9IHZhbDsKIH0KIAogLyoqCi0g KiBPVVRSRUcxNjoKKyAqIE9VVFJFRzE2X0RFVjoKKyAqIEBpZ3RfbW1pbyBtYXBlZCBtZW1vcnkg cG9pbnRlcgogICogQHJlZzogcmVnaXN0ZXIgb2Zmc2V0CiAgKiBAdmFsOiB2YWx1ZSB0byB3cml0 ZQogICoKQEAgLTM4MywxNSArMzg3LDE2IEBAIHZvaWQgT1VUUkVHKHVpbnQzMl90IHJlZywgdWlu dDMyX3QgdmFsKQogICogd2hlbiB0aGUgbmV3IHJlZ2lzdGVyIGFjY2VzcyBoZWxwZXIgaXMgaW5p dGlhbGl6ZWQgd2l0aAogICogaW50ZWxfcmVnaXN0ZXJfYWNjZXNzX2luaXQoKS4KICAqCi0gKiBU aGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGFjY2Vzc2VzIHRoZSAjaWd0X2dsb2JhbF9tbWlvIHdpdGhv dXQgc2FmZXR5IGNoZWNrcy4KKyAqIFRoaXMgZnVuY3Rpb24gZGlyZWN0bHkgYWNjZXNzZXMgdGhl IGlndF9tbWlvIHdpdGhvdXQgc2FmZXR5IGNoZWNrcy4KICAqLwotdm9pZCBPVVRSRUcxNih1aW50 MzJfdCByZWcsIHVpbnQxNl90IHZhbCkKK3ZvaWQgT1VUUkVHMTZfREVWKHZvaWQgKm1taW8sIHVp bnQzMl90IHJlZywgdWludDE2X3QgdmFsKQogewotCSoodm9sYXRpbGUgdWludDE2X3QgKikoKHZv bGF0aWxlIGNoYXIgKilpZ3RfZ2xvYmFsX21taW8gKyByZWcpID0gdmFsOworCSoodm9sYXRpbGUg dWludDE2X3QgKikobW1pbyArIHJlZykgPSB2YWw7CiB9CiAKIC8qKgotICogT1VUUkVHODoKKyAq IE9VVFJFRzhfREVWOgorICogQGlndF9tbWlvIG1hcGVkIG1lbW9yeSBwb2ludGVyCiAgKiBAcmVn OiByZWdpc3RlciBvZmZzZXQKICAqIEB2YWw6IHZhbHVlIHRvIHdyaXRlCiAgKgpAQCAtMzk5LDkg KzQwNCwxMCBAQCB2b2lkIE9VVFJFRzE2KHVpbnQzMl90IHJlZywgdWludDE2X3QgdmFsKQogICog d2hlbiB0aGUgbmV3IHJlZ2lzdGVyIGFjY2VzcyBoZWxwZXIgaXMgaW5pdGlhbGl6ZWQgd2l0aAog ICogaW50ZWxfcmVnaXN0ZXJfYWNjZXNzX2luaXQoKS4KICAqCi0gKiBUaGlzIGZ1bmN0aW9uIGRp cmVjdGx5IGFjY2Vzc2VzIHRoZSAjaWd0X2dsb2JhbF9tbWlvIHdpdGhvdXQgc2FmZXR5IGNoZWNr cy4KKyAqIFRoaXMgZnVuY3Rpb24gZGlyZWN0bHkgYWNjZXNzZXMgdGhlIGlndF9tbWlvIHdpdGhv dXQgc2FmZXR5IGNoZWNrcy4KICAqLwotdm9pZCBPVVRSRUc4KHVpbnQzMl90IHJlZywgdWludDhf dCB2YWwpCit2b2lkIE9VVFJFRzhfREVWKHZvaWQgKm1taW8sIHVpbnQzMl90IHJlZywgdWludDhf dCB2YWwpCiB7Ci0JKigodm9sYXRpbGUgdWludDhfdCAqKWlndF9nbG9iYWxfbW1pbyArIHJlZykg PSB2YWw7CisJKigodm9sYXRpbGUgdWludDhfdCAqKW1taW8gKyByZWcpID0gdmFsOwogfQorCi0t IAoyLjIxLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldg==