From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Subject: [PATCH v2 10/12] drm/fb-helper: Prepare to move out modeset config code Date: Sun, 7 Apr 2019 18:52:41 +0200 Message-ID: <20190407165243.54043-11-noralf@tronnes.org> References: <20190407165243.54043-1-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190407165243.54043-1-noralf@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBwcmVwYXJlcyB0aGUgbW9kZXNldCBjb2RlIHNvIGl0IGNhbiBiZSBtb3ZlZCBvdXQgYXMt aXMgaW4gdGhlIG5leHQKcGF0Y2guCgpTaWduZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMgPG5v cmFsZkB0cm9ubmVzLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIHwg NjMgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tCiBpbmNsdWRlL2RybS9kcm1fZmJf aGVscGVyLmggICAgIHwgIDQgLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyks IDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVs cGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCmluZGV4IGUxMzAyNjcyNGIy Yy4uOTI4N2ZmNGFlMmQ4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBl ci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKQEAgLTQzLDYgKzQzLDEw IEBACiAKICNpbmNsdWRlICJkcm1faW50ZXJuYWwuaCIKIAorc3RydWN0IGRybV9jbGllbnRfb2Zm c2V0IHsKKwlpbnQgeCwgeTsKK307CisKIHN0YXRpYyBib29sIGRybV9mYmRldl9lbXVsYXRpb24g PSB0cnVlOwogbW9kdWxlX3BhcmFtX25hbWVkKGZiZGV2X2VtdWxhdGlvbiwgZHJtX2ZiZGV2X2Vt dWxhdGlvbiwgYm9vbCwgMDYwMCk7CiBNT0RVTEVfUEFSTV9ERVNDKGZiZGV2X2VtdWxhdGlvbiwK QEAgLTE3OTQsNyArMTc5OCw3IEBAIHN0YXRpYyBib29sIGRybV9jbGllbnRfdGFyZ2V0X2Nsb25l ZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCSAgICAgc3RydWN0IGRybV9jb25uZWN0b3Ig Kipjb25uZWN0b3JzLAogCQkJCSAgICAgdW5zaWduZWQgaW50IGNvbm5lY3Rvcl9jb3VudCwKIAkJ CQkgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICoqbW9kZXMsCi0JCQkJICAgICBzdHJ1Y3Qg ZHJtX2ZiX29mZnNldCAqb2Zmc2V0cywKKwkJCQkgICAgIHN0cnVjdCBkcm1fY2xpZW50X29mZnNl dCAqb2Zmc2V0cywKIAkJCQkgICAgIGJvb2wgKmVuYWJsZWQsIGludCB3aWR0aCwgaW50IGhlaWdo dCkKIHsKIAlpbnQgY291bnQsIGksIGo7CkBAIC0xODczLDcgKzE4NzcsNyBAQCBzdGF0aWMgYm9v bCBkcm1fY2xpZW50X3RhcmdldF9jbG9uZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIHN0YXRp YyBpbnQgZHJtX2NsaWVudF9nZXRfdGlsZV9vZmZzZXRzKHN0cnVjdCBkcm1fY29ubmVjdG9yICoq Y29ubmVjdG9ycywKIAkJCQkgICAgICAgdW5zaWduZWQgaW50IGNvbm5lY3Rvcl9jb3VudCwKIAkJ CQkgICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKiptb2RlcywKLQkJCQkgICAgICAgc3Ry dWN0IGRybV9mYl9vZmZzZXQgKm9mZnNldHMsCisJCQkJICAgICAgIHN0cnVjdCBkcm1fY2xpZW50 X29mZnNldCAqb2Zmc2V0cywKIAkJCQkgICAgICAgaW50IGlkeCwKIAkJCQkgICAgICAgaW50IGhf aWR4LCBpbnQgdl9pZHgpCiB7CkBAIC0xOTA2LDcgKzE5MTAsNyBAQCBzdGF0aWMgaW50IGRybV9j bGllbnRfZ2V0X3RpbGVfb2Zmc2V0cyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqKmNvbm5lY3RvcnMs CiBzdGF0aWMgYm9vbCBkcm1fY2xpZW50X3RhcmdldF9wcmVmZXJyZWQoc3RydWN0IGRybV9jb25u ZWN0b3IgKipjb25uZWN0b3JzLAogCQkJCQl1bnNpZ25lZCBpbnQgY29ubmVjdG9yX2NvdW50LAog CQkJCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqKm1vZGVzLAotCQkJCQlzdHJ1Y3QgZHJtX2Zi X29mZnNldCAqb2Zmc2V0cywKKwkJCQkJc3RydWN0IGRybV9jbGllbnRfb2Zmc2V0ICpvZmZzZXRz LAogCQkJCQlib29sICplbmFibGVkLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCiB7CiAJY29uc3Qg dTY0IG1hc2sgPSBCSVRfVUxMKGNvbm5lY3Rvcl9jb3VudCkgLSAxOwpAQCAtMjA3MCw3ICsyMDc0 LDcgQEAgc3RhdGljIGJvb2wgZHJtX2NsaWVudF9maXJtd2FyZV9jb25maWcoc3RydWN0IGRybV9j bGllbnRfZGV2ICpjbGllbnQsCiAJCQkJICAgICAgIHVuc2lnbmVkIGludCBjb25uZWN0b3JfY291 bnQsCiAJCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0YyAqKmNydGNzLAogCQkJCSAgICAgICBzdHJ1 Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqKm1vZGVzLAotCQkJCSAgICAgICBzdHJ1Y3QgZHJtX2ZiX29m ZnNldCAqb2Zmc2V0cywKKwkJCQkgICAgICAgc3RydWN0IGRybV9jbGllbnRfb2Zmc2V0ICpvZmZz ZXRzLAogCQkJCSAgICAgICBib29sICplbmFibGVkLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCiB7 CiAJdW5zaWduZWQgaW50IGNvdW50ID0gbWluX3QodW5zaWduZWQgaW50LCBjb25uZWN0b3JfY291 bnQsIEJJVFNfUEVSX0xPTkcpOwpAQCAtMjIzOSwzMCArMjI0Myw0OCBAQCBzdGF0aWMgYm9vbCBk cm1fY2xpZW50X2Zpcm13YXJlX2NvbmZpZyhzdHJ1Y3QgZHJtX2NsaWVudF9kZXYgKmNsaWVudCwK IAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBkcm1fc2V0dXBfY3J0Y3Moc3RydWN0IGRy bV9mYl9oZWxwZXIgKmZiX2hlbHBlciwKLQkJCSAgICB1MzIgd2lkdGgsIHUzMiBoZWlnaHQpCisv KioKKyAqIGRybV9jbGllbnRfbW9kZXNldF9wcm9iZSgpIC0gUHJvYmUgZm9yIGRpc3BsYXlzCisg KiBAY2xpZW50OiBEUk0gY2xpZW50CisgKiBAd2lkdGg6IE1heGltdW0gZGlzcGxheSBtb2RlIHdp ZHRoIChvcHRpb25hbCkKKyAqIEBoZWlnaHQ6IE1heGltdW0gZGlzcGxheSBtb2RlIGhlaWdodCAo b3B0aW9uYWwpCisgKgorICogVGhpcyBmdW5jdGlvbiBzZXRzIHVwIGRpc3BsYXkgcGlwZWxpbmVz IGZvciBlbmFibGVkIGNvbm5lY3RvcnMgYW5kIHN0b3JlcyB0aGUKKyAqIGNvbmZpZyBpbiB0aGUg Y2xpZW50J3MgbW9kZXNldCBhcnJheS4KKyAqCisgKiBSZXR1cm5zOgorICogWmVybyBvbiBzdWNj ZXNzIG9yIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZS4KKyAqLworCitpbnQgZHJtX2Ns aWVudF9tb2Rlc2V0X3Byb2JlKHN0cnVjdCBkcm1fY2xpZW50X2RldiAqY2xpZW50LCB1bnNpZ25l ZCBpbnQgd2lkdGgsIHVuc2lnbmVkIGludCBoZWlnaHQpCiB7CiAJc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwgKipjb25uZWN0b3JzID0gTlVMTDsKLQlzdHJ1Y3QgZHJtX2NsaWVudF9k ZXYgKmNsaWVudCA9ICZmYl9oZWxwZXItPmNsaWVudDsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9s aXN0X2l0ZXIgY29ubl9pdGVyOwotCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBmYl9oZWxwZXIt PmRldjsKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY2xpZW50LT5kZXY7CiAJdW5zaWduZWQg aW50IHRvdGFsX21vZGVzX2NvdW50ID0gMDsKKwlzdHJ1Y3QgZHJtX2NsaWVudF9vZmZzZXQgKm9m ZnNldHM7CiAJdW5zaWduZWQgaW50IGNvbm5lY3Rvcl9jb3VudCA9IDA7CiAJc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKiptb2RlczsKLQlzdHJ1Y3QgZHJtX2ZiX29mZnNldCAqb2Zmc2V0czsKIAlz dHJ1Y3QgZHJtX2NydGMgKipjcnRjczsKKwlpbnQgaSwgcmV0ID0gMDsKIAlib29sICplbmFibGVk OwotCWludCBpOwogCiAJRFJNX0RFQlVHX0tNUygiXG4iKTsKIAorCWlmICghd2lkdGgpCisJCXdp ZHRoID0gZGV2LT5tb2RlX2NvbmZpZy5tYXhfd2lkdGg7CisJaWYgKCFoZWlnaHQpCisJCWhlaWdo dCA9IGRldi0+bW9kZV9jb25maWcubWF4X2hlaWdodDsKKwogCWRybV9jb25uZWN0b3JfbGlzdF9p dGVyX2JlZ2luKGRldiwgJmNvbm5faXRlcik7CiAJZHJtX2NsaWVudF9mb3JfZWFjaF9jb25uZWN0 b3JfaXRlcihjb25uZWN0b3IsICZjb25uX2l0ZXIpIHsKIAkJc3RydWN0IGRybV9jb25uZWN0b3Ig Kip0bXA7CiAKIAkJdG1wID0ga3JlYWxsb2MoY29ubmVjdG9ycywgKGNvbm5lY3Rvcl9jb3VudCAr IDEpICogc2l6ZW9mKCpjb25uZWN0b3JzKSwgR0ZQX0tFUk5FTCk7Ci0JCWlmICghdG1wKQorCQlp ZiAoIXRtcCkgeworCQkJcmV0ID0gLUVOT01FTTsKIAkJCWdvdG8gZnJlZV9jb25uZWN0b3JzOwor CQl9CiAKIAkJY29ubmVjdG9ycyA9IHRtcDsKIAkJZHJtX2Nvbm5lY3Rvcl9nZXQoY29ubmVjdG9y KTsKQEAgLTIyNzEsNyArMjI5Myw3IEBAIHN0YXRpYyB2b2lkIGRybV9zZXR1cF9jcnRjcyhzdHJ1 Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAogCWRybV9jb25uZWN0b3JfbGlzdF9pdGVyX2Vu ZCgmY29ubl9pdGVyKTsKIAogCWlmICghY29ubmVjdG9yX2NvdW50KQotCQlyZXR1cm47CisJCXJl dHVybiAwOwogCiAJY3J0Y3MgPSBrY2FsbG9jKGNvbm5lY3Rvcl9jb3VudCwgc2l6ZW9mKCpjcnRj cyksIEdGUF9LRVJORUwpOwogCW1vZGVzID0ga2NhbGxvYyhjb25uZWN0b3JfY291bnQsIHNpemVv ZigqbW9kZXMpLCBHRlBfS0VSTkVMKTsKQEAgLTIyNzksMTIgKzIzMDEsMTMgQEAgc3RhdGljIHZv aWQgZHJtX3NldHVwX2NydGNzKHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIsCiAJZW5h YmxlZCA9IGtjYWxsb2MoY29ubmVjdG9yX2NvdW50LCBzaXplb2YoYm9vbCksIEdGUF9LRVJORUwp OwogCWlmICghY3J0Y3MgfHwgIW1vZGVzIHx8ICFlbmFibGVkIHx8ICFvZmZzZXRzKSB7CiAJCURS TV9FUlJPUigiTWVtb3J5IGFsbG9jYXRpb24gZmFpbGVkXG4iKTsKKwkJcmV0ID0gLUVOT01FTTsK IAkJZ290byBvdXQ7CiAJfQogCiAJbXV0ZXhfbG9jaygmY2xpZW50LT5tb2Rlc2V0X211dGV4KTsK IAotCW11dGV4X2xvY2soJmZiX2hlbHBlci0+ZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7CisJbXV0 ZXhfbG9jaygmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7CiAJZm9yIChpID0gMDsgaSA8IGNvbm5l Y3Rvcl9jb3VudDsgaSsrKQogCQl0b3RhbF9tb2Rlc19jb3VudCArPSBjb25uZWN0b3JzW2ldLT5m dW5jcy0+ZmlsbF9tb2Rlcyhjb25uZWN0b3JzW2ldLCB3aWR0aCwgaGVpZ2h0KTsKIAlpZiAoIXRv dGFsX21vZGVzX2NvdW50KQpAQCAtMjMwOSwxNCArMjMzMiwxNCBAQCBzdGF0aWMgdm9pZCBkcm1f c2V0dXBfY3J0Y3Moc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciwKIAkJZHJtX2NsaWVu dF9waWNrX2NydGNzKGNsaWVudCwgY29ubmVjdG9ycywgY29ubmVjdG9yX2NvdW50LAogCQkJCSAg ICAgIGNydGNzLCBtb2RlcywgMCwgd2lkdGgsIGhlaWdodCk7CiAJfQotCW11dGV4X3VubG9jaygm ZmJfaGVscGVyLT5kZXYtPm1vZGVfY29uZmlnLm11dGV4KTsKKwltdXRleF91bmxvY2soJmRldi0+ bW9kZV9jb25maWcubXV0ZXgpOwogCiAJZHJtX2NsaWVudF9tb2Rlc2V0X3JlbGVhc2UoY2xpZW50 KTsKIAogCWZvciAoaSA9IDA7IGkgPCBjb25uZWN0b3JfY291bnQ7IGkrKykgewogCQlzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSA9IG1vZGVzW2ldOwogCQlzdHJ1Y3QgZHJtX2NydGMgKmNy dGMgPSBjcnRjc1tpXTsKLQkJc3RydWN0IGRybV9mYl9vZmZzZXQgKm9mZnNldCA9ICZvZmZzZXRz W2ldOworCQlzdHJ1Y3QgZHJtX2NsaWVudF9vZmZzZXQgKm9mZnNldCA9ICZvZmZzZXRzW2ldOwog CiAJCWlmIChtb2RlICYmIGNydGMpIHsKIAkJCXN0cnVjdCBkcm1fbW9kZV9zZXQgKm1vZGVzZXQg PSBkcm1fY2xpZW50X2ZpbmRfbW9kZXNldChjbGllbnQsIGNydGMpOwpAQCAtMjMyNiw4ICsyMzQ5 LDEwIEBAIHN0YXRpYyB2b2lkIGRybV9zZXR1cF9jcnRjcyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAq ZmJfaGVscGVyLAogCQkJCSAgICAgIG1vZGUtPm5hbWUsIGNydGMtPmJhc2UuaWQsIG9mZnNldC0+ eCwgb2Zmc2V0LT55KTsKIAogCQkJaWYgKFdBUk5fT05fT05DRShtb2Rlc2V0LT5udW1fY29ubmVj dG9ycyA9PSBEUk1fQ0xJRU5UX01BWF9DTE9ORURfQ09OTkVDVE9SUyB8fAotCQkJCQkgKGRldi0+ bW9kZV9jb25maWcubnVtX2NydGMgPiAxICYmIG1vZGVzZXQtPm51bV9jb25uZWN0b3JzID09IDEp KSkKKwkJCQkJIChkZXYtPm1vZGVfY29uZmlnLm51bV9jcnRjID4gMSAmJiBtb2Rlc2V0LT5udW1f Y29ubmVjdG9ycyA9PSAxKSkpIHsKKwkJCQlyZXQgPSAtRUlOVkFMOwogCQkJCWJyZWFrOworCQkJ fQogCiAJCQltb2Rlc2V0LT5tb2RlID0gZHJtX21vZGVfZHVwbGljYXRlKGRldiwgbW9kZSk7CiAJ CQlkcm1fY29ubmVjdG9yX2dldChjb25uZWN0b3IpOwpAQCAtMjM0Nyw2ICsyMzcyLDggQEAgc3Rh dGljIHZvaWQgZHJtX3NldHVwX2NydGNzKHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIs CiAJZm9yIChpID0gMDsgaSA8IGNvbm5lY3Rvcl9jb3VudDsgaSsrKQogCQlkcm1fY29ubmVjdG9y X3B1dChjb25uZWN0b3JzW2ldKTsKIAlrZnJlZShjb25uZWN0b3JzKTsKKworCXJldHVybiByZXQ7 CiB9CiAKIC8qCkBAIC0yNDI4LDcgKzI0NTUsNyBAQCBfX2RybV9mYl9oZWxwZXJfaW5pdGlhbF9j b25maWdfYW5kX3VubG9jayhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAogCXdpZHRo ID0gZGV2LT5tb2RlX2NvbmZpZy5tYXhfd2lkdGg7CiAJaGVpZ2h0ID0gZGV2LT5tb2RlX2NvbmZp Zy5tYXhfaGVpZ2h0OwogCi0JZHJtX3NldHVwX2NydGNzKGZiX2hlbHBlciwgd2lkdGgsIGhlaWdo dCk7CisJZHJtX2NsaWVudF9tb2Rlc2V0X3Byb2JlKCZmYl9oZWxwZXItPmNsaWVudCwgd2lkdGgs IGhlaWdodCk7CiAJcmV0ID0gZHJtX2ZiX2hlbHBlcl9zaW5nbGVfZmJfcHJvYmUoZmJfaGVscGVy LCBicHBfc2VsKTsKIAlpZiAocmV0IDwgMCkgewogCQlpZiAocmV0ID09IC1FQUdBSU4pIHsKQEAg LTI1NzYsNyArMjYwMyw3IEBAIGludCBkcm1fZmJfaGVscGVyX2hvdHBsdWdfZXZlbnQoc3RydWN0 IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlcikKIAogCURSTV9ERUJVR19LTVMoIlxuIik7CiAKLQlk cm1fc2V0dXBfY3J0Y3MoZmJfaGVscGVyLCBmYl9oZWxwZXItPmZiLT53aWR0aCwgZmJfaGVscGVy LT5mYi0+aGVpZ2h0KTsKKwlkcm1fY2xpZW50X21vZGVzZXRfcHJvYmUoJmZiX2hlbHBlci0+Y2xp ZW50LCBmYl9oZWxwZXItPmZiLT53aWR0aCwgZmJfaGVscGVyLT5mYi0+aGVpZ2h0KTsKIAlkcm1f c2V0dXBfY3J0Y3NfZmIoZmJfaGVscGVyKTsKIAltdXRleF91bmxvY2soJmZiX2hlbHBlci0+bG9j ayk7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9mYl9oZWxwZXIuaCBiL2luY2x1ZGUv ZHJtL2RybV9mYl9oZWxwZXIuaAppbmRleCAxMDQ4MTE3OGU3ZTAuLjgwNTkxYmMwMmRlNyAxMDA2 NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oCisrKyBiL2luY2x1ZGUvZHJtL2Ry bV9mYl9oZWxwZXIuaApAQCAtNDIsMTAgKzQyLDYgQEAgZW51bSBtb2RlX3NldF9hdG9taWMgewog CUVOVEVSX0FUT01JQ19NT0RFX1NFVCwKIH07CiAKLXN0cnVjdCBkcm1fZmJfb2Zmc2V0IHsKLQlp bnQgeCwgeTsKLX07Ci0KIC8qKgogICogc3RydWN0IGRybV9mYl9oZWxwZXJfc3VyZmFjZV9zaXpl IC0gZGVzY3JpYmVzIGZiZGV2IHNpemUgYW5kIHNjYW5vdXQgc3VyZmFjZSBzaXplCiAgKiBAZmJf d2lkdGg6IGZiZGV2IHdpZHRoCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbA==