From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Kleiner Subject: [PATCH 3/4] drm/radeon: Push get_scanout_position() timestamping into kms driver. Date: Wed, 30 Oct 2013 05:13:07 +0100 Message-ID: <1383106388-32481-4-git-send-email-mario.kleiner.de@gmail.com> References: <1383106388-32481-1-git-send-email-mario.kleiner.de@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1383106388-32481-1-git-send-email-mario.kleiner.de@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org To: airlied@gmail.com Cc: intel-gfx@lists.freedesktop.org, mario.kleiner@tuebingen.mpg.de, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org TW92ZSB0aGUga3RpbWVfZ2V0KCkgY2xvY2sgcmVhZG91dHMgYW5kIHBvdGVudGlhbCBwcmVlbXB0 X2Rpc2FibGUoKQpjYWxscyBmcm9tIGRybSBjb3JlIGludG8ga21zIGRyaXZlciB0byBtYWtlIGl0 IGNvbXBhdGlibGUgd2l0aCB0aGUKYXBpIGNoYW5nZXMgaW4gdGhlIGRybSBjb3JlLgoKVGhpcyBz aG91bGQgbm90IGludHJvZHVjZSBhbnkgY2hhbmdlIGluIGZ1bmN0aW9uYWxpdHkgb3IgYmVoYXZp b3VyCmluIHJhZGVvbi1rbXMsIGp1c3QgYSByZXNodWZmbGluZyBvZiBjb2RlLgoKU2lnbmVkLW9m Zi1ieTogTWFyaW8gS2xlaW5lciA8bWFyaW8ua2xlaW5lci5kZUBnbWFpbC5jb20+ClJldmlld2Vk LWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpSZXZp ZXdlZC1ieTogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgotLS0KIGRy aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rpc3BsYXkuYyB8ICAgMjQgKysrKysrKysrKysr KysrKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcnYuYyAgICAgfCAg ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbW9kZS5oICAgIHwgICAgMyAr Ky0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3BtLmMgICAgICB8ICAgIDIgKy0KIDQg ZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMgYi9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMKaW5kZXggMGQxYWEwNS4uY2NkODc1MSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZGlzcGxheS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rpc3BsYXkuYwpAQCAtMzA2LDcgKzMwNiw3IEBA IHZvaWQgcmFkZW9uX2NydGNfaGFuZGxlX2ZsaXAoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYs IGludCBjcnRjX2lkKQogCSAqLwogCWlmICh1cGRhdGVfcGVuZGluZyAmJgogCSAgICAoRFJNX1ND QU5PVVRQT1NfVkFMSUQgJiByYWRlb25fZ2V0X2NydGNfc2Nhbm91dHBvcyhyZGV2LT5kZGV2LCBj cnRjX2lkLAotCQkJCQkJCSAgICAgICAmdnBvcywgJmhwb3MpKSAmJgorCQkJCQkJCSAgICAgICAm dnBvcywgJmhwb3MsIE5VTEwsIE5VTEwpKSAmJgogCSAgICAoKHZwb3MgPj0gKDk5ICogcmRldi0+ bW9kZV9pbmZvLmNydGNzW2NydGNfaWRdLT5iYXNlLmh3bW9kZS5jcnRjX3ZkaXNwbGF5KS8xMDAp IHx8CiAJICAgICAodnBvcyA8IDAgJiYgIUFTSUNfSVNfQVZJVk8ocmRldikpKSkgewogCQkvKiBj cnRjIGRpZG4ndCBmbGlwIGluIHRoaXMgdGFyZ2V0IHZibGFuayBpbnRlcnZhbCwKQEAgLTE1Mzks MTIgKzE1MzksMTcgQEAgYm9vbCByYWRlb25fY3J0Y19zY2FsaW5nX21vZGVfZml4dXAoc3RydWN0 IGRybV9jcnRjICpjcnRjLAogfQogCiAvKgotICogUmV0cmlldmUgY3VycmVudCB2aWRlbyBzY2Fu b3V0IHBvc2l0aW9uIG9mIGNydGMgb24gYSBnaXZlbiBncHUuCisgKiBSZXRyaWV2ZSBjdXJyZW50 IHZpZGVvIHNjYW5vdXQgcG9zaXRpb24gb2YgY3J0YyBvbiBhIGdpdmVuIGdwdSwgYW5kCisgKiBh biBvcHRpb25hbCBhY2N1cmF0ZSB0aW1lc3RhbXAgb2Ygd2hlbiBxdWVyeSBoYXBwZW5lZC4KICAq CiAgKiBccGFyYW0gZGV2IERldmljZSB0byBxdWVyeS4KICAqIFxwYXJhbSBjcnRjIENydGMgdG8g cXVlcnkuCiAgKiBccGFyYW0gKnZwb3MgTG9jYXRpb24gd2hlcmUgdmVydGljYWwgc2Nhbm91dCBw b3NpdGlvbiBzaG91bGQgYmUgc3RvcmVkLgogICogXHBhcmFtICpocG9zIExvY2F0aW9uIHdoZXJl IGhvcml6b250YWwgc2Nhbm91dCBwb3NpdGlvbiBzaG91bGQgZ28uCisgKiBccGFyYW0gKnN0aW1l IFRhcmdldCBsb2NhdGlvbiBmb3IgdGltZXN0YW1wIHRha2VuIGltbWVkaWF0ZWx5IGJlZm9yZQor ICogICAgICAgICAgICAgICBzY2Fub3V0IHBvc2l0aW9uIHF1ZXJ5LiBDYW4gYmUgTlVMTCB0byBz a2lwIHRpbWVzdGFtcC4KKyAqIFxwYXJhbSAqZXRpbWUgVGFyZ2V0IGxvY2F0aW9uIGZvciB0aW1l c3RhbXAgdGFrZW4gaW1tZWRpYXRlbHkgYWZ0ZXIKKyAqICAgICAgICAgICAgICAgc2Nhbm91dCBw b3NpdGlvbiBxdWVyeS4gQ2FuIGJlIE5VTEwgdG8gc2tpcCB0aW1lc3RhbXAuCiAgKgogICogUmV0 dXJucyB2cG9zIGFzIGEgcG9zaXRpdmUgbnVtYmVyIHdoaWxlIGluIGFjdGl2ZSBzY2Fub3V0IGFy ZWEuCiAgKiBSZXR1cm5zIHZwb3MgYXMgYSBuZWdhdGl2ZSBudW1iZXIgaW5zaWRlIHZibGFuaywg Y291bnRpbmcgdGhlIG51bWJlcgpAQCAtMTU2MCw3ICsxNTY1LDggQEAgYm9vbCByYWRlb25fY3J0 Y19zY2FsaW5nX21vZGVfZml4dXAoc3RydWN0IGRybV9jcnRjICpjcnRjLAogICogdW5rbm93biBz bWFsbCBudW1iZXIgb2Ygc2NhbmxpbmVzIHdydC4gcmVhbCBzY2Fub3V0IHBvc2l0aW9uLgogICoK ICAqLwotaW50IHJhZGVvbl9nZXRfY3J0Y19zY2Fub3V0cG9zKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIGludCBjcnRjLCBpbnQgKnZwb3MsIGludCAqaHBvcykKK2ludCByYWRlb25fZ2V0X2NydGNf c2Nhbm91dHBvcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgY3J0YywgaW50ICp2cG9zLCBp bnQgKmhwb3MsCisJCQkgICAgICAga3RpbWVfdCAqc3RpbWUsIGt0aW1lX3QgKmV0aW1lKQogewog CXUzMiBzdGF0X2NydGMgPSAwLCB2YmwgPSAwLCBwb3NpdGlvbiA9IDA7CiAJaW50IHZibF9zdGFy dCwgdmJsX2VuZCwgdnRvdGFsLCByZXQgPSAwOwpAQCAtMTU2OCw2ICsxNTc0LDEyIEBAIGludCBy YWRlb25fZ2V0X2NydGNfc2Nhbm91dHBvcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgY3J0 YywgaW50ICp2cG9zLCBpbnQKIAogCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKIAorCS8qIHByZWVtcHRfZGlzYWJsZV9ydCgpIHNob3VsZCBnbyByaWdodCBo ZXJlIGluIFBSRUVNUFRfUlQgcGF0Y2hzZXQuICovCisKKwkvKiBHZXQgb3B0aW9uYWwgc3lzdGVt IHRpbWVzdGFtcCBiZWZvcmUgcXVlcnkuICovCisJaWYgKHN0aW1lKQorCQkqc3RpbWUgPSBrdGlt ZV9nZXQoKTsKKwogCWlmIChBU0lDX0lTX0RDRTQocmRldikpIHsKIAkJaWYgKGNydGMgPT0gMCkg ewogCQkJdmJsID0gUlJFRzMyKEVWRVJHUkVFTl9DUlRDX1ZfQkxBTktfU1RBUlRfRU5EICsKQEAg LTE2NTAsNiArMTY2MiwxMiBAQCBpbnQgcmFkZW9uX2dldF9jcnRjX3NjYW5vdXRwb3Moc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgaW50IGNydGMsIGludCAqdnBvcywgaW50CiAJCX0KIAl9CiAKKwkv KiBHZXQgb3B0aW9uYWwgc3lzdGVtIHRpbWVzdGFtcCBhZnRlciBxdWVyeS4gKi8KKwlpZiAoZXRp bWUpCisJCSpldGltZSA9IGt0aW1lX2dldCgpOworCisJLyogcHJlZW1wdF9lbmFibGVfcnQoKSBz aG91bGQgZ28gcmlnaHQgaGVyZSBpbiBQUkVFTVBUX1JUIHBhdGNoc2V0LiAqLworCiAJLyogRGVj b2RlIGludG8gdmVydGljYWwgYW5kIGhvcml6b250YWwgc2Nhbm91dCBwb3NpdGlvbi4gKi8KIAkq dnBvcyA9IHBvc2l0aW9uICYgMHgxZmZmOwogCSpocG9zID0gKHBvc2l0aW9uID4+IDE2KSAmIDB4 MWZmZjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rydi5jIGIv ZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHJ2LmMKaW5kZXggMjJmNjg1OC4uMTAxZTdj MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHJ2LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHJ2LmMKQEAgLTEwNiw3ICsxMDYsOCBAQCBp bnQgcmFkZW9uX2dlbV9vYmplY3Rfb3BlbihzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwKIHZv aWQgcmFkZW9uX2dlbV9vYmplY3RfY2xvc2Uoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmosCiAJ CQkJc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOwogZXh0ZXJuIGludCByYWRlb25fZ2V0X2Ny dGNfc2Nhbm91dHBvcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgY3J0YywKLQkJCQkgICAg ICBpbnQgKnZwb3MsIGludCAqaHBvcyk7CisJCQkJICAgICAgaW50ICp2cG9zLCBpbnQgKmhwb3Ms IGt0aW1lX3QgKnN0aW1lLAorCQkJCSAgICAgIGt0aW1lX3QgKmV0aW1lKTsKIGV4dGVybiBjb25z dCBzdHJ1Y3QgZHJtX2lvY3RsX2Rlc2MgcmFkZW9uX2lvY3Rsc19rbXNbXTsKIGV4dGVybiBpbnQg cmFkZW9uX21heF9rbXNfaW9jdGw7CiBpbnQgcmFkZW9uX21tYXAoc3RydWN0IGZpbGUgKmZpbHAs IHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vcmFkZW9uX21vZGUuaCBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX21v ZGUuaAppbmRleCBlZjYzZDNmLi4zYmZhOTEwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v cmFkZW9uL3JhZGVvbl9tb2RlLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25f bW9kZS5oCkBAIC03NTgsNyArNzU4LDggQEAgZXh0ZXJuIGludCByYWRlb25fY3J0Y19jdXJzb3Jf bW92ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkJICAgaW50IHgsIGludCB5KTsKIAogZXh0 ZXJuIGludCByYWRlb25fZ2V0X2NydGNfc2Nhbm91dHBvcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBpbnQgY3J0YywKLQkJCQkgICAgICBpbnQgKnZwb3MsIGludCAqaHBvcyk7CisJCQkJICAgICAg aW50ICp2cG9zLCBpbnQgKmhwb3MsIGt0aW1lX3QgKnN0aW1lLAorCQkJCSAgICAgIGt0aW1lX3Qg KmV0aW1lKTsKIAogZXh0ZXJuIGJvb2wgcmFkZW9uX2NvbWJpb3NfY2hlY2tfaGFyZGNvZGVkX2Vk aWQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpOwogZXh0ZXJuIHN0cnVjdCBlZGlkICoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3BtLmMgYi9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbl9wbS5jCmluZGV4IGFjMDdhZDEuLjFiYmVhYzkgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3BtLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb25fcG0uYwpAQCAtMTQ2NSw3ICsxNDY1LDcgQEAgc3RhdGljIGJvb2wg cmFkZW9uX3BtX2luX3ZibChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAkgKi8KIAlmb3Ig KGNydGMgPSAwOyAoY3J0YyA8IHJkZXYtPm51bV9jcnRjKSAmJiBpbl92Ymw7IGNydGMrKykgewog CQlpZiAocmRldi0+cG0uYWN0aXZlX2NydGNzICYgKDEgPDwgY3J0YykpIHsKLQkJCXZibF9zdGF0 dXMgPSByYWRlb25fZ2V0X2NydGNfc2Nhbm91dHBvcyhyZGV2LT5kZGV2LCBjcnRjLCAmdnBvcywg Jmhwb3MpOworCQkJdmJsX3N0YXR1cyA9IHJhZGVvbl9nZXRfY3J0Y19zY2Fub3V0cG9zKHJkZXYt PmRkZXYsIGNydGMsICZ2cG9zLCAmaHBvcywgTlVMTCwgTlVMTCk7CiAJCQlpZiAoKHZibF9zdGF0 dXMgJiBEUk1fU0NBTk9VVFBPU19WQUxJRCkgJiYKIAkJCSAgICAhKHZibF9zdGF0dXMgJiBEUk1f U0NBTk9VVFBPU19JTlZCTCkpCiAJCQkJaW5fdmJsID0gZmFsc2U7Ci0tIAoxLjcuMTAuNAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK