From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [RFC PATCH 30/37] drm: fb_helper: Reference, not duplicate, modes Date: Thu, 19 Mar 2015 04:33:29 +0000 Message-ID: <1426739616-10635-30-git-send-email-daniels@collabora.com> References: <1426739556-10429-1-git-send-email-daniels@collabora.com> <1426739616-10635-1-git-send-email-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [93.93.135.160]) by gabe.freedesktop.org (Postfix) with ESMTP id E37ED6E95D for ; Wed, 18 Mar 2015 21:34:06 -0700 (PDT) In-Reply-To: <1426739616-10635-1-git-send-email-daniels@collabora.com> 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 List-Id: dri-devel@lists.freedesktop.org VGFrZSBhIHJlZmVyZW5jZSB0byBleGlzdGluZyBtb2RlcywgcmF0aGVyIHRoYW4gZHVwbGljYXRp bmcgdGhlbSB0bwpjcmVhdGUgbmV3IG9uZXMuCgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgU3RvbmUg PGRhbmllbHNAY29sbGFib3JhLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBl ci5jIHwgMTYgKysrKysrKy0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygr KSwgOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hl bHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYwppbmRleCA3MWUyNDIwLi4x MzBiMzVkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKQEAgLTEzMTcsNyArMTMxNyw3IEBAIHN0 cnVjdCBkcm1fZGlzcGxheV9tb2RlICpkcm1fcGlja19jbWRsaW5lX21vZGUoc3RydWN0IGRybV9m Yl9oZWxwZXJfY29ubmVjdG9yICpmCiAJCQlpZiAobW9kZS0+ZmxhZ3MgJiBEUk1fTU9ERV9GTEFH X0lOVEVSTEFDRSkKIAkJCQljb250aW51ZTsKIAkJfQotCQlyZXR1cm4gbW9kZTsKKwkJcmV0dXJu IGRybV9tb2RlX3JlZmVyZW5jZShtb2RlKTsKIAl9CiAKIAlpZiAocHJlZmVyX25vbl9pbnRlcmxh Y2UpIHsKQEAgLTEzMjksNyArMTMyOSw3IEBAIGNyZWF0ZV9tb2RlOgogCW1vZGUgPSBkcm1fbW9k ZV9jcmVhdGVfZnJvbV9jbWRsaW5lX21vZGUoZmJfaGVscGVyX2Nvbm4tPmNvbm5lY3Rvci0+ZGV2 LAogCQkJCQkJIGNtZGxpbmVfbW9kZSk7CiAJbGlzdF9hZGQoJm1vZGUtPmhlYWQsICZmYl9oZWxw ZXJfY29ubi0+Y29ubmVjdG9yLT5tb2Rlcyk7Ci0JcmV0dXJuIG1vZGU7CisJcmV0dXJuIGRybV9t b2RlX3JlZmVyZW5jZShtb2RlKTsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX3BpY2tfY21kbGluZV9t b2RlKTsKIApAQCAtMTQyOSw3ICsxNDI5LDcgQEAgc3RhdGljIGJvb2wgZHJtX3RhcmdldF9jbG9u ZWQoc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciwKIAkJZmJfaGVscGVyX2Nvbm4gPSBm Yl9oZWxwZXItPmNvbm5lY3Rvcl9pbmZvW2ldOwogCQlsaXN0X2Zvcl9lYWNoX2VudHJ5KG1vZGUs ICZmYl9oZWxwZXJfY29ubi0+Y29ubmVjdG9yLT5tb2RlcywgaGVhZCkgewogCQkJaWYgKGRybV9t b2RlX2VxdWFsKG1vZGUsIGRtdF9tb2RlKSkKLQkJCQltb2Rlc1tpXSA9IG1vZGU7CisJCQkJbW9k ZXNbaV0gPSBkcm1fbW9kZV9yZWZlcmVuY2UobW9kZSk7CiAJCX0KIAkJaWYgKCFtb2Rlc1tpXSkK IAkJCWNhbl9jbG9uZSA9IGZhbHNlOwpAQCAtMTUyNywxNiArMTUyNywxNCBAQCByZXRyeToKIAkJ CQkgICAgICBmYl9oZWxwZXJfY29ubi0+Y29ubmVjdG9yLT5iYXNlLmlkLCBmYl9oZWxwZXJfY29u bi0+Y29ubmVjdG9yLT50aWxlX2dyb3VwID8gZmJfaGVscGVyX2Nvbm4tPmNvbm5lY3Rvci0+dGls ZV9ncm91cC0+aWQgOiAwKTsKIAkJCW1vZGVzW2ldID0gZHJtX2hhc19wcmVmZXJyZWRfbW9kZShm Yl9oZWxwZXJfY29ubiwgd2lkdGgsIGhlaWdodCk7CiAJCQlpZiAobW9kZXNbaV0pCi0JCQkJbW9k ZXNbaV0gPSBkcm1fbW9kZV9kdXBsaWNhdGUoZmJfaGVscGVyLT5kZXYsCi0JCQkJICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbW9kZXNbaV0pOworCQkJCWRybV9tb2RlX3JlZmVyZW5jZSht b2Rlc1tpXSk7CiAJCX0KIAkJLyogTm8gcHJlZmVycmVkIG1vZGVzLCBwaWNrIG9uZSBvZmYgdGhl IGxpc3QgKi8KIAkJaWYgKCFtb2Rlc1tpXSAmJiAhbGlzdF9lbXB0eSgmZmJfaGVscGVyX2Nvbm4t PmNvbm5lY3Rvci0+bW9kZXMpKSB7CiAJCQlsaXN0X2Zvcl9lYWNoX2VudHJ5KG1vZGVzW2ldLCAm ZmJfaGVscGVyX2Nvbm4tPmNvbm5lY3Rvci0+bW9kZXMsIGhlYWQpCiAJCQkJYnJlYWs7CiAJCQlp ZiAobW9kZXNbaV0pCi0JCQkJbW9kZXNbaV0gPSBkcm1fbW9kZV9kdXBsaWNhdGUoZmJfaGVscGVy LT5kZXYsCi0JCQkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZXNbaV0pOworCQkJ CWRybV9tb2RlX3JlZmVyZW5jZShtb2Rlc1tpXSk7CiAJCX0KIAkJRFJNX0RFQlVHX0tNUygiZm91 bmQgbW9kZSAlc1xuIiwgbW9kZXNbaV0gPyBtb2Rlc1tpXS0+bmFtZSA6CiAJCQkgICJub25lIik7 CkBAIC0xNzA0LDggKzE3MDIsOCBAQCBzdGF0aWMgdm9pZCBkcm1fc2V0dXBfY3J0Y3Moc3RydWN0 IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlcikKIAkJCWZiX2NydGMtPnkgPSBvZmZzZXQtPnk7CiAJ CQlpZiAoZmJfY3J0Yy0+bW9kZSkKIAkJCQlkcm1fbW9kZV9kZXN0cm95KGRldiwgZmJfY3J0Yy0+ bW9kZSk7Ci0JCQlmYl9jcnRjLT5tb2RlID0gZHJtX21vZGVfZHVwbGljYXRlKGRldiwKLQkJCQkJ CQkgICBmYl9jcnRjLT5kZXNpcmVkX21vZGUpOworCQkJZmJfY3J0Yy0+bW9kZSA9CisJCQkJZHJt X21vZGVfcmVmZXJlbmNlKGZiX2NydGMtPmRlc2lyZWRfbW9kZSk7CiAJCQltb2Rlc2V0LT5tb2Rl ID0gZmJfY3J0Yy0+bW9kZTsKIAkJCW1vZGVzZXQtPmNvbm5lY3RvcnNbbW9kZXNldC0+bnVtX2Nv bm5lY3RvcnMrK10gPSBmYl9oZWxwZXItPmNvbm5lY3Rvcl9pbmZvW2ldLT5jb25uZWN0b3I7CiAJ CQltb2Rlc2V0LT5mYiA9IGZiX2hlbHBlci0+ZmI7Ci0tIAoyLjMuMgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApk cmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK