From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hans de Goede Subject: [PATCH v3 12/12] drm/i915: Listen for PMIC bus access notifications Date: Fri, 10 Feb 2017 11:28:02 +0100 Message-ID: <20170210102802.20898-13-hdegoede@redhat.com> References: <20170210102802.20898-1-hdegoede@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170210102802.20898-1-hdegoede@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter , Jani Nikula , =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Jarkko Nikula , Wolfram Sang , Len Brown , Andy Shevchenko , Thomas Gleixner , "H . Peter Anvin" Cc: Takashi Iwai , "russianneuromancer @ ya . ru" , intel-gfx , dri-devel@lists.freedesktop.org, Hans de Goede , linux-i2c@vger.kernel.org, Mika Westerberg List-Id: linux-i2c@vger.kernel.org TGlzdGVuIGZvciBQTUlDIGJ1cyBhY2Nlc3Mgbm90aWZpY2F0aW9ucyBhbmQgZ2V0IEZPUkNFV0FL RV9BTEwgd2hpbGUKdGhlIGJ1cyBpcyBhY2Nlc3NlZCB0byBhdm9pZCBuZWVkaW5nIHRvIGRvIGFu eSBmb3JjZXdha2VzLCB3aGljaCBuZWVkClBNSUMgYnVzIGFjY2Vzcywgd2hpbGUgdGhlIFBNSUMg YnVzIGlzIGJ1c3k6CgpUaGlzIGZpeGVzIGVycm9ycyBsaWtlIHRoZXNlIHNob3dpbmcgdXAgaW4g ZG1lc2csIHVzdWFsbHkgZm9sbG93ZWQKYnkgYSBnZnggb3Igc3lzdGVtIGZyZWV6ZToKCltkcm06 ZndfZG9tYWluc19nZXQgW2k5MTVdXSAqRVJST1IqIHJlbmRlcjogdGltZWQgb3V0IHdhaXRpbmcg Zm9yIGZvcmNld2FrZSBhY2sgcmVxdWVzdC4KW2RybTpmd19kb21haW5zX2dldCBbaTkxNV1dICpN RURJQSogcmVuZGVyOiB0aW1lZCBvdXQgd2FpdGluZyBmb3IgZm9yY2V3YWtlIGFjayByZXF1ZXN0 LgppMmNfZGVzaWdud2FyZSA4MDg2MjJDMTowNjogcHVuaXQgc2VtYXBob3JlIHRpbWVkIG91dCwg cmVzZXR0aW5nCmkyY19kZXNpZ253YXJlIDgwODYyMkMxOjA2OiBQVU5JVCBTRU06IDIKaTJjX2Rl c2lnbndhcmUgODA4NjIyQzE6MDY6IGNvdWxkbid0IGFjcXVpcmUgYnVzIG93bmVyc2hpcAoKRG93 bnNpZGUgb2YgdGhpcyBhcHByb2FjaCBpcyB0aGF0IGl0IGNhdXNlcyB3YWtldXBzIHdoZW5ldmVy IHRoZSBQTUlDCmJ1cyBpcyBhY2Nlc3NlZC4gVW5mb3J0dW5hdGVseSB3ZSBjYW5ub3Qgc2ltcGx5 IHdhaXQgZm9yIHRoZSBQTUlDIGJ1cwp0byBnbyBpZGxlIHdoZW4gd2UgaGl0IGEgcmFjZSwgYXMg Zm9yY2V3YWtlcyBtYXkgYmUgZG9uZSBmcm9tIGludGVycnVwdApoYW5kbGVycyB3aGVyZSB3ZSBj YW5ub3Qgc2xlZXAgdG8gd2FpdCBmb3IgdGhlIGkyYyBQTUlDIGJ1cyBhY2Nlc3MgdG8KZmluaXNo LgoKTm90ZSB0aGF0IHRoZSBub3RpZmljYXRpb25zIGFuZCB0aHVzIHRoZSB3YWtldXBzIHdpbGwg b25seSBoYXBwZW4gb24KYmF5dHJhaWwgLyBjaGVycnl0cmFpbCBkZXZpY2VzIHVzaW5nIFBNSUNz IHdpdGggYSBzaGFyZWQgaTJjIGJ1cyBmb3IKUC1Vbml0IGFuZCBob3N0IFBNSUMgYWNjZXNzIChp MmMgYnVzc2VzIHdpdGggYSBfU0VNIG1ldGhvZCBpbiB0aGVpcgpBUENJIG5vZGUpLCBlLmcuIGFu IGF4cDI4OCBQTUlDLgoKSSBwbGFuIHRvIHdyaXRlIHNvbWUgcGF0Y2hlcyBmb3IgZHJpdmVycyBh Y2Nlc3NpbmcgdGhlIFBNSUMgYnVzIHRvCmxpbWl0IHRoZWlyIGJ1cyBhY2Nlc3NlcyB0byBhIGJh cmUgbWluaW11bSAoZS5nLiBjYWNoZSByZWdpc3RlcnMsIGRvIG5vdAp1cGRhdGUgYmF0dGVyeSBs ZXZlbCBtb3JlIG9mdGVuIHRoZW4gNCB0aW1lcyBhIG1pbnV0ZSksIHRvIGxpbWl0IHRoZQphbW91 bnQgb2Ygd2FrZXVwcy4KCkJ1Z0xpbms6IGh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93 X2J1Zy5jZ2k/aWQ9MTU1MjQxClNpZ25lZC1vZmYtYnk6IEhhbnMgZGUgR29lZGUgPGhkZWdvZWRl QHJlZGhhdC5jb20+ClRlc3RlZC1ieTogdGFnb3JlcmVkZHkgPHRhZ29yZS5jaGFuZGFuQGdtYWls LmNvbT4KLS0tCkNoYW5nZXMgaW4gdjI6Ci1TcGVsbGluZzogUC1Vbml0LCBQTUlDCkNoYW5nZXMg aW4gdjM6Ci1JbXByb3ZlIGNvbW1lbnQgZXhwbGFpbmluZyB3aHkgd2UgY2FsbCBpbnRlbF91bmNv cmVfZm9yY2V3YWtlX2dldChBTEwpIG9uCiBNQklfUE1JQ19CVVNfQUNDRVNTX0JFR0lOIG5vdGlm aWNhdGlvbgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcgICAgICAgIHwgIDEgKwog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF91bmNvcmUuYyB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9LY29u ZmlnCmluZGV4IDFhZTBiYjkuLmE1Y2Q1ZGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L0tjb25maWcKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvS2NvbmZpZwpAQCAtMjAsNiAr MjAsNyBAQCBjb25maWcgRFJNX0k5MTUKIAlzZWxlY3QgQUNQSV9WSURFTyBpZiBBQ1BJCiAJc2Vs ZWN0IEFDUElfQlVUVE9OIGlmIEFDUEkKIAlzZWxlY3QgU1lOQ19GSUxFCisJc2VsZWN0IElPU0Zf TUJJCiAJaGVscAogCSAgQ2hvb3NlIHRoaXMgb3B0aW9uIGlmIHlvdSBoYXZlIGEgc3lzdGVtIHRo YXQgaGFzICJJbnRlbCBHcmFwaGljcwogCSAgTWVkaWEgQWNjZWxlcmF0b3IiIG9yICJIRCBHcmFw aGljcyIgaW50ZWdyYXRlZCBncmFwaGljcywKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDk5 ODIzOWYuLjRlNDA1ZDAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtNzI1LDYgKzcyNSw3 IEBAIHN0cnVjdCBpbnRlbF91bmNvcmUgewogCWNvbnN0IHN0cnVjdCBpbnRlbF9mb3JjZXdha2Vf cmFuZ2UgKmZ3X2RvbWFpbnNfdGFibGU7CiAJdW5zaWduZWQgaW50IGZ3X2RvbWFpbnNfdGFibGVf ZW50cmllczsKIAorCXN0cnVjdCBub3RpZmllcl9ibG9jayBwbWljX2J1c19hY2Nlc3NfbmI7CiAJ c3RydWN0IGludGVsX3VuY29yZV9mdW5jcyBmdW5jczsKIAogCXVuc2lnbmVkIGZpZm9fY291bnQ7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCmluZGV4IGI2ZDcyNmIuLjFiZTNjZGMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCkBAIC0yNSw2ICsyNSw3IEBACiAjaW5jbHVk ZSAiaW50ZWxfZHJ2LmgiCiAjaW5jbHVkZSAiaTkxNV92Z3B1LmgiCiAKKyNpbmNsdWRlIDxhc20v aW9zZl9tYmkuaD4KICNpbmNsdWRlIDxsaW51eC9wbV9ydW50aW1lLmg+CiAKICNkZWZpbmUgRk9S Q0VXQUtFX0FDS19USU1FT1VUX01TIDUwCkBAIC00MzYsMTIgKzQzNywxNiBAQCBzdGF0aWMgdm9p ZCBfX2ludGVsX3VuY29yZV9lYXJseV9zYW5pdGl6ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCiAKIHZvaWQgaW50ZWxfdW5jb3JlX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQogeworCWlvc2ZfbWJpX3VucmVnaXN0ZXJfcG1pY19idXNfYWNjZXNz X25vdGlmaWVyKAorCQkmZGV2X3ByaXYtPnVuY29yZS5wbWljX2J1c19hY2Nlc3NfbmIpOwogCWlu dGVsX3VuY29yZV9mb3JjZXdha2VfcmVzZXQoZGV2X3ByaXYsIGZhbHNlKTsKIH0KIAogdm9pZCBp bnRlbF91bmNvcmVfcmVzdW1lX2Vhcmx5KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKIHsKIAlfX2ludGVsX3VuY29yZV9lYXJseV9zYW5pdGl6ZShkZXZfcHJpdiwgdHJ1ZSk7CisJ aW9zZl9tYmlfcmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyKAorCQkmZGV2X3ByaXYt PnVuY29yZS5wbWljX2J1c19hY2Nlc3NfbmIpOwogCWk5MTVfY2hlY2tfYW5kX2NsZWFyX2ZhdWx0 cyhkZXZfcHJpdik7CiB9CiAKQEAgLTEzMjksNiArMTMzNCwzMiBAQCBzdGF0aWMgdm9pZCBpbnRl bF91bmNvcmVfZndfZG9tYWluc19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKIAlkZXZfcHJpdi0+dW5jb3JlLmZ3X2RvbWFpbnNfdGFibGVfZW50cmllcyA9IEFSUkFZX1NJ WkUoKGQpKTsgXAogfQogCitzdGF0aWMgaW50IGk5MTVfcG1pY19idXNfYWNjZXNzX25vdGlmaWVy KHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIsCisJCQkJCSB1bnNpZ25lZCBsb25nIGFjdGlvbiwg dm9pZCAqZGF0YSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBjb250 YWluZXJfb2YobmIsCisJCQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSwgdW5jb3JlLnBtaWNfYnVz X2FjY2Vzc19uYik7CisKKwlzd2l0Y2ggKGFjdGlvbikgeworCWNhc2UgTUJJX1BNSUNfQlVTX0FD Q0VTU19CRUdJTjoKKwkJLyoKKwkJICogZm9yY2V3YWtlIGFsbCBub3cgdG8gbWFrZSBzdXJlIHRo YXQgd2UgZG9uJ3QgbmVlZCB0byBkbyBhCisJCSAqIGZvcmNld2FrZSBsYXRlciB3aGljaCBvbiBz eXN0ZW1zIHdoZXJlIHRoaXMgbm90aWZpZXIgZ2V0cworCQkgKiBjYWxsZWQgcmVxdWlyZXMgdGhl IHB1bml0IHRvIGFjY2VzcyB0byB0aGUgc2hhcmVkIHBtaWMgaTJjCisJCSAqIGJ1cywgd2hpY2gg d2lsbCBiZSBidXN5IGFmdGVyIHRoaXMgbm90aWZpY2F0aW9uLCBsZWFkaW5nIHRvOgorCQkgKiAi cmVuZGVyOiB0aW1lZCBvdXQgd2FpdGluZyBmb3IgZm9yY2V3YWtlIGFjayByZXF1ZXN0LiIKKwkJ ICogZXJyb3JzLgorCQkgKi8KKwkJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9nZXQoZGV2X3ByaXYs IEZPUkNFV0FLRV9BTEwpOworCQlicmVhazsKKwljYXNlIE1CSV9QTUlDX0JVU19BQ0NFU1NfRU5E OgorCQlpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3B1dChkZXZfcHJpdiwgRk9SQ0VXQUtFX0FMTCk7 CisJCWJyZWFrOworCX0KKworCXJldHVybiBOT1RJRllfT0s7Cit9CisKIHZvaWQgaW50ZWxfdW5j b3JlX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCWk5MTVfY2hl Y2tfdmdwdShkZXZfcHJpdik7CkBAIC0xMzM4LDYgKzEzNjksOCBAQCB2b2lkIGludGVsX3VuY29y ZV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlfX2ludGVsX3VuY29y ZV9lYXJseV9zYW5pdGl6ZShkZXZfcHJpdiwgZmFsc2UpOwogCiAJZGV2X3ByaXYtPnVuY29yZS51 bmNsYWltZWRfbW1pb19jaGVjayA9IDE7CisJZGV2X3ByaXYtPnVuY29yZS5wbWljX2J1c19hY2Nl c3NfbmIubm90aWZpZXJfY2FsbCA9CisJCWk5MTVfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyOwog CiAJc3dpdGNoIChJTlRFTF9JTkZPKGRldl9wcml2KS0+Z2VuKSB7CiAJZGVmYXVsdDoKQEAgLTEz OTIsNiArMTQyNSw5IEBAIHZvaWQgaW50ZWxfdW5jb3JlX2luaXQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQogCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDgpCiAJCWludGVs X3NoYWRvd190YWJsZV9jaGVjaygpOwogCisJaW9zZl9tYmlfcmVnaXN0ZXJfcG1pY19idXNfYWNj ZXNzX25vdGlmaWVyKAorCQkmZGV2X3ByaXYtPnVuY29yZS5wbWljX2J1c19hY2Nlc3NfbmIpOwor CiAJaTkxNV9jaGVja19hbmRfY2xlYXJfZmF1bHRzKGRldl9wcml2KTsKIH0KICN1bmRlZiBBU1NJ R05fV1JJVEVfTU1JT19WRlVOQ1MKQEAgLTEzOTksNiArMTQzNSw5IEBAIHZvaWQgaW50ZWxfdW5j b3JlX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiB2b2lkIGludGVs X3VuY29yZV9maW5pKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKKwlpb3Nm X21iaV91bnJlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19ub3RpZmllcigKKwkJJmRldl9wcml2LT51 bmNvcmUucG1pY19idXNfYWNjZXNzX25iKTsKKwogCS8qIFBhcmFub2lhOiBtYWtlIHN1cmUgd2Ug aGF2ZSBkaXNhYmxlZCBldmVyeXRoaW5nIGJlZm9yZSB3ZSBleGl0LiAqLwogCWludGVsX3VuY29y ZV9zYW5pdGl6ZShkZXZfcHJpdik7CiAJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9yZXNldChkZXZf cHJpdiwgZmFsc2UpOwotLSAKMi45LjMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=