From: Eric Anholt Subject: [PATCH v2 7/7] drm/atmel-hlcdc: Replace the panel usage with drm_panel_bridge. Date: Thu, 11 May 2017 11:31:28 -0700 Message-ID: <20170511183128.25085-7-eric@anholt.net> References: <20170511183128.25085-1-eric@anholt.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from anholt.net (anholt.net [50.246.234.109]) by gabe.freedesktop.org (Postfix) with ESMTP id 96EB06E5A1 for ; Thu, 11 May 2017 18:31:46 +0000 (UTC) In-Reply-To: <20170511183128.25085-1-eric@anholt.net> 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, Boris Brezillon , Archit Taneja , Andrzej Hajda , Laurent Pinchart , CK Hu , Philipp Zabel , Yannick Fertre , Philippe Cornu Cc: linux-kernel@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBjdXRzIDEzNSBsaW5lcyBvZiBib2lsZXJwbGF0ZSwgYXQgdGhlIGNvc3Qgb2YgbG9zaW5n IHRoZQpmaWx0ZXJpbmcgb2YgZ2V0X21vZGVzKCkgdXNpbmcgYXRtZWxfaGxjZGNfZGNfbW9kZV92 YWxpZCgpLiAgVGhlCmF0b21pYyBjaGVjayB3aWxsIHN0aWxsIGNoZWNrIHRoYXQgd2UgZG9uJ3Qg c2V0IGFuIGludmFsaWQgbW9kZSwKdGhvdWdoLgoKU2lnbmVkLW9mZi1ieTogRXJpYyBBbmhvbHQg PGVyaWNAYW5ob2x0Lm5ldD4KLS0tCgpUaGlzIHBhdGNoIGlzIGp1c3QgYSBwcm9wb3NhbCBmb3Ig YXRtZWwtaGxjZGMgaWYgeW91IGxpa2UgaXQgLS0gbWF5YmUKeW91IHN0aWxsIHdhbnQgdGhlIGZp bHRlcmluZyBvZiBnZXRfbW9kZXMoKS4gIEknbSBub3Qgc3VyZSBmcm9tIGEKdXNlcnNwYWNlIEFQ SSBwZXJzcGVjdGl2ZSBpZiB3ZSBzaG91bGQgcmVhbGx5IGhhdmUgdGhlIGVuY29kZXIgKHlvdXIK Q1JUQydzIGxpbWl0cykgZmlsdGVyaW5nIG1vZGVzIGZyb20gYSBjb25uZWN0b3IsIGJ1dCBJJ20g YWxzbyBwcmV0dHkKc3VyZSBpdCBkb2Vzbid0IGFjdHVhbGx5IG1hdHRlci4KCiBkcml2ZXJzL2dw dS9kcm0vYXRtZWwtaGxjZGMvYXRtZWxfaGxjZGNfb3V0cHV0LmMgfCAxNjMgKystLS0tLS0tLS0t LS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxNDkgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2F0bWVsLWhsY2RjL2F0bWVsX2hs Y2RjX291dHB1dC5jIGIvZHJpdmVycy9ncHUvZHJtL2F0bWVsLWhsY2RjL2F0bWVsX2hsY2RjX291 dHB1dC5jCmluZGV4IDRiMmNmYmQwZDQzZi4uMzQwZWY5NjJhYTgxIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vYXRtZWwtaGxjZGMvYXRtZWxfaGxjZGNfb3V0cHV0LmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2F0bWVsLWhsY2RjL2F0bWVsX2hsY2RjX291dHB1dC5jCkBAIC0yMywxOTEgKzIz LDU2IEBACiAKICNpbmNsdWRlIDxkcm0vZHJtUC5oPgogI2luY2x1ZGUgPGRybS9kcm1fb2YuaD4K KyNpbmNsdWRlIDxkcm0vZHJtX2JyaWRnZS5oPgogCiAjaW5jbHVkZSAiYXRtZWxfaGxjZGNfZGMu aCIKIAotLyoqCi0gKiBBdG1lbCBITENEQyBSR0IgY29ubmVjdG9yIHN0cnVjdHVyZQotICoKLSAq IFRoaXMgc3RydWN0dXJlIHN0b3JlcyBSR0Igc2xhdmUgZGV2aWNlIGluZm9ybWF0aW9uLgotICoK LSAqIEBjb25uZWN0b3I6IERSTSBjb25uZWN0b3IKLSAqIEBlbmNvZGVyOiBEUk0gZW5jb2Rlcgot ICogQGRjOiBwb2ludGVyIHRvIHRoZSBhdG1lbF9obGNkY19kYyBzdHJ1Y3R1cmUKLSAqIEBwYW5l bDogcGFuZWwgY29ubmVjdGVkIG9uIHRoZSBSR0Igb3V0cHV0Ci0gKi8KLXN0cnVjdCBhdG1lbF9o bGNkY19yZ2Jfb3V0cHV0IHsKLQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciBjb25uZWN0b3I7Ci0Jc3Ry dWN0IGRybV9lbmNvZGVyIGVuY29kZXI7Ci0Jc3RydWN0IGF0bWVsX2hsY2RjX2RjICpkYzsKLQlz dHJ1Y3QgZHJtX3BhbmVsICpwYW5lbDsKLX07Ci0KLXN0YXRpYyBpbmxpbmUgc3RydWN0IGF0bWVs X2hsY2RjX3JnYl9vdXRwdXQgKgotZHJtX2Nvbm5lY3Rvcl90b19hdG1lbF9obGNkY19yZ2Jfb3V0 cHV0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCi17Ci0JcmV0dXJuIGNvbnRhaW5l cl9vZihjb25uZWN0b3IsIHN0cnVjdCBhdG1lbF9obGNkY19yZ2Jfb3V0cHV0LAotCQkJICAgIGNv bm5lY3Rvcik7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgc3RydWN0IGF0bWVsX2hsY2RjX3JnYl9vdXRw dXQgKgotZHJtX2VuY29kZXJfdG9fYXRtZWxfaGxjZGNfcmdiX291dHB1dChzdHJ1Y3QgZHJtX2Vu Y29kZXIgKmVuY29kZXIpCi17Ci0JcmV0dXJuIGNvbnRhaW5lcl9vZihlbmNvZGVyLCBzdHJ1Y3Qg YXRtZWxfaGxjZGNfcmdiX291dHB1dCwgZW5jb2Rlcik7Ci19Ci0KLXN0YXRpYyB2b2lkIGF0bWVs X2hsY2RjX3JnYl9lbmNvZGVyX2VuYWJsZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCi17 Ci0Jc3RydWN0IGF0bWVsX2hsY2RjX3JnYl9vdXRwdXQgKnJnYiA9Ci0JCQlkcm1fZW5jb2Rlcl90 b19hdG1lbF9obGNkY19yZ2Jfb3V0cHV0KGVuY29kZXIpOwotCi0JaWYgKHJnYi0+cGFuZWwpIHsK LQkJZHJtX3BhbmVsX3ByZXBhcmUocmdiLT5wYW5lbCk7Ci0JCWRybV9wYW5lbF9lbmFibGUocmdi LT5wYW5lbCk7Ci0JfQotfQotCi1zdGF0aWMgdm9pZCBhdG1lbF9obGNkY19yZ2JfZW5jb2Rlcl9k aXNhYmxlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKLXsKLQlzdHJ1Y3QgYXRtZWxfaGxj ZGNfcmdiX291dHB1dCAqcmdiID0KLQkJCWRybV9lbmNvZGVyX3RvX2F0bWVsX2hsY2RjX3JnYl9v dXRwdXQoZW5jb2Rlcik7Ci0KLQlpZiAocmdiLT5wYW5lbCkgewotCQlkcm1fcGFuZWxfZGlzYWJs ZShyZ2ItPnBhbmVsKTsKLQkJZHJtX3BhbmVsX3VucHJlcGFyZShyZ2ItPnBhbmVsKTsKLQl9Ci19 Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2VuY29kZXJfaGVscGVyX2Z1bmNzIGF0bWVsX2hs Y2RjX3BhbmVsX2VuY29kZXJfaGVscGVyX2Z1bmNzID0gewotCS5kaXNhYmxlID0gYXRtZWxfaGxj ZGNfcmdiX2VuY29kZXJfZGlzYWJsZSwKLQkuZW5hYmxlID0gYXRtZWxfaGxjZGNfcmdiX2VuY29k ZXJfZW5hYmxlLAotfTsKLQogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZW5jb2Rlcl9mdW5jcyBh dG1lbF9obGNkY19wYW5lbF9lbmNvZGVyX2Z1bmNzID0gewogCS5kZXN0cm95ID0gZHJtX2VuY29k ZXJfY2xlYW51cCwKIH07CiAKLXN0YXRpYyBpbnQgYXRtZWxfaGxjZGNfcGFuZWxfZ2V0X21vZGVz KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCi17Ci0Jc3RydWN0IGF0bWVsX2hsY2Rj X3JnYl9vdXRwdXQgKnJnYiA9Ci0JCQlkcm1fY29ubmVjdG9yX3RvX2F0bWVsX2hsY2RjX3JnYl9v dXRwdXQoY29ubmVjdG9yKTsKLQotCWlmIChyZ2ItPnBhbmVsKQotCQlyZXR1cm4gcmdiLT5wYW5l bC0+ZnVuY3MtPmdldF9tb2RlcyhyZ2ItPnBhbmVsKTsKLQotCXJldHVybiAwOwotfQotCi1zdGF0 aWMgaW50IGF0bWVsX2hsY2RjX3JnYl9tb2RlX3ZhbGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCi0JCQkJICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCi17Ci0J c3RydWN0IGF0bWVsX2hsY2RjX3JnYl9vdXRwdXQgKnJnYiA9Ci0JCQlkcm1fY29ubmVjdG9yX3Rv X2F0bWVsX2hsY2RjX3JnYl9vdXRwdXQoY29ubmVjdG9yKTsKLQotCXJldHVybiBhdG1lbF9obGNk Y19kY19tb2RlX3ZhbGlkKHJnYi0+ZGMsIG1vZGUpOwotfQotCi1zdGF0aWMgY29uc3Qgc3RydWN0 IGRybV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzIGF0bWVsX2hsY2RjX3BhbmVsX2Nvbm5lY3Rvcl9o ZWxwZXJfZnVuY3MgPSB7Ci0JLmdldF9tb2RlcyA9IGF0bWVsX2hsY2RjX3BhbmVsX2dldF9tb2Rl cywKLQkubW9kZV92YWxpZCA9IGF0bWVsX2hsY2RjX3JnYl9tb2RlX3ZhbGlkLAotfTsKLQotc3Rh dGljIGVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMKLWF0bWVsX2hsY2RjX3BhbmVsX2Nvbm5lY3Rv cl9kZXRlY3Qoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKLXsK LQlzdHJ1Y3QgYXRtZWxfaGxjZGNfcmdiX291dHB1dCAqcmdiID0KLQkJCWRybV9jb25uZWN0b3Jf dG9fYXRtZWxfaGxjZGNfcmdiX291dHB1dChjb25uZWN0b3IpOwotCi0JaWYgKHJnYi0+cGFuZWwp Ci0JCXJldHVybiBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZDsKLQotCXJldHVybiBjb25uZWN0 b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKLX0KLQotc3RhdGljIHZvaWQKLWF0bWVsX2hsY2RjX3Bh bmVsX2Nvbm5lY3Rvcl9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCi17 Ci0Jc3RydWN0IGF0bWVsX2hsY2RjX3JnYl9vdXRwdXQgKnJnYiA9Ci0JCQlkcm1fY29ubmVjdG9y X3RvX2F0bWVsX2hsY2RjX3JnYl9vdXRwdXQoY29ubmVjdG9yKTsKLQotCWlmIChyZ2ItPnBhbmVs KQotCQlkcm1fcGFuZWxfZGV0YWNoKHJnYi0+cGFuZWwpOwotCi0JZHJtX2Nvbm5lY3Rvcl9jbGVh bnVwKGNvbm5lY3Rvcik7Ci19Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9m dW5jcyBhdG1lbF9obGNkY19wYW5lbF9jb25uZWN0b3JfZnVuY3MgPSB7Ci0JLmRwbXMgPSBkcm1f YXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZHBtcywKLQkuZGV0ZWN0ID0gYXRtZWxfaGxjZGNfcGFu ZWxfY29ubmVjdG9yX2RldGVjdCwKLQkuZmlsbF9tb2RlcyA9IGRybV9oZWxwZXJfcHJvYmVfc2lu Z2xlX2Nvbm5lY3Rvcl9tb2RlcywKLQkuZGVzdHJveSA9IGF0bWVsX2hsY2RjX3BhbmVsX2Nvbm5l Y3Rvcl9kZXN0cm95LAotCS5yZXNldCA9IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9yZXNl dCwKLQkuYXRvbWljX2R1cGxpY2F0ZV9zdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rv cl9kdXBsaWNhdGVfc3RhdGUsCi0JLmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJtX2F0b21pY19o ZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUsCi19OwotCiBzdGF0aWMgaW50IGF0bWVsX2hs Y2RjX2F0dGFjaF9lbmRwb2ludChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCSAgICAgICBj b25zdCBzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wKQogewotCXN0cnVjdCBhdG1lbF9obGNkY19kYyAq ZGMgPSBkZXYtPmRldl9wcml2YXRlOwotCXN0cnVjdCBhdG1lbF9obGNkY19yZ2Jfb3V0cHV0ICpv dXRwdXQ7CisJc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyOwogCXN0cnVjdCBkcm1fcGFuZWwg KnBhbmVsOwogCXN0cnVjdCBkcm1fYnJpZGdlICpicmlkZ2U7CiAJaW50IHJldDsKIAotCW91dHB1 dCA9IGRldm1fa3phbGxvYyhkZXYtPmRldiwgc2l6ZW9mKCpvdXRwdXQpLCBHRlBfS0VSTkVMKTsK LQlpZiAoIW91dHB1dCkKKwllbmNvZGVyID0gZGV2bV9remFsbG9jKGRldi0+ZGV2LCBzaXplb2Yo KmVuY29kZXIpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIWVuY29kZXIpCiAJCXJldHVybiAtRUlOVkFM OwogCi0Jb3V0cHV0LT5kYyA9IGRjOwotCi0JZHJtX2VuY29kZXJfaGVscGVyX2FkZCgmb3V0cHV0 LT5lbmNvZGVyLAotCQkJICAgICAgICZhdG1lbF9obGNkY19wYW5lbF9lbmNvZGVyX2hlbHBlcl9m dW5jcyk7Ci0JcmV0ID0gZHJtX2VuY29kZXJfaW5pdChkZXYsICZvdXRwdXQtPmVuY29kZXIsCisJ cmV0ID0gZHJtX2VuY29kZXJfaW5pdChkZXYsIGVuY29kZXIsCiAJCQkgICAgICAgJmF0bWVsX2hs Y2RjX3BhbmVsX2VuY29kZXJfZnVuY3MsCiAJCQkgICAgICAgRFJNX01PREVfRU5DT0RFUl9OT05F LCBOVUxMKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0Jb3V0cHV0LT5lbmNvZGVyLnBv c3NpYmxlX2NydGNzID0gMHgxOworCWVuY29kZXItPnBvc3NpYmxlX2NydGNzID0gMHgxOwogCiAJ cmV0ID0gZHJtX29mX2ZpbmRfcGFuZWxfb3JfYnJpZGdlKG5wLCAwLCAwLCAmcGFuZWwsICZicmlk Z2UpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKIAlpZiAocGFuZWwpIHsKLQkJb3V0cHV0 LT5jb25uZWN0b3IuZHBtcyA9IERSTV9NT0RFX0RQTVNfT0ZGOwotCQlvdXRwdXQtPmNvbm5lY3Rv ci5wb2xsZWQgPSBEUk1fQ09OTkVDVE9SX1BPTExfQ09OTkVDVDsKLQkJZHJtX2Nvbm5lY3Rvcl9o ZWxwZXJfYWRkKCZvdXRwdXQtPmNvbm5lY3RvciwKLQkJCQkmYXRtZWxfaGxjZGNfcGFuZWxfY29u bmVjdG9yX2hlbHBlcl9mdW5jcyk7Ci0JCXJldCA9IGRybV9jb25uZWN0b3JfaW5pdChkZXYsICZv dXRwdXQtPmNvbm5lY3RvciwKLQkJCQkJICZhdG1lbF9obGNkY19wYW5lbF9jb25uZWN0b3JfZnVu Y3MsCi0JCQkJCSBEUk1fTU9ERV9DT05ORUNUT1JfVW5rbm93bik7Ci0JCWlmIChyZXQpCi0JCQln b3RvIGVycl9lbmNvZGVyX2NsZWFudXA7Ci0KLQkJZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9l bmNvZGVyKCZvdXRwdXQtPmNvbm5lY3RvciwKLQkJCQkJCSAgJm91dHB1dC0+ZW5jb2Rlcik7Ci0K LQkJcmV0ID0gZHJtX3BhbmVsX2F0dGFjaChwYW5lbCwgJm91dHB1dC0+Y29ubmVjdG9yKTsKLQkJ aWYgKHJldCkgewotCQkJZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKCZvdXRwdXQtPmNvbm5lY3Rvcik7 Ci0JCQlnb3RvIGVycl9lbmNvZGVyX2NsZWFudXA7Ci0JCX0KLQotCQlvdXRwdXQtPnBhbmVsID0g cGFuZWw7CisJCWJyaWRnZSA9IGRybV9wYW5lbF9icmlkZ2VfYWRkKHBhbmVsLCBEUk1fTU9ERV9D T05ORUNUT1JfVW5rbm93bik7CisJCWlmIChJU19FUlIoYnJpZGdlKSkKKwkJCXJldHVybiBQVFJf RVJSKGJyaWRnZSk7CiAKIAkJcmV0dXJuIDA7CiAJfQogCiAJaWYgKGJyaWRnZSkgewotCQlyZXQg PSBkcm1fYnJpZGdlX2F0dGFjaCgmb3V0cHV0LT5lbmNvZGVyLCBicmlkZ2UsIE5VTEwpOworCQly ZXQgPSBkcm1fYnJpZGdlX2F0dGFjaChlbmNvZGVyLCBicmlkZ2UsIE5VTEwpOwogCQlpZiAoIXJl dCkKIAkJCXJldHVybiAwOworCisJCWlmIChwYW5lbCkKKwkJCWRybV9wYW5lbF9icmlkZ2VfcmVt b3ZlKGJyaWRnZSk7CiAJfQogCi1lcnJfZW5jb2Rlcl9jbGVhbnVwOgotCWRybV9lbmNvZGVyX2Ns ZWFudXAoJm91dHB1dC0+ZW5jb2Rlcik7CisJZHJtX2VuY29kZXJfY2xlYW51cChlbmNvZGVyKTsK IAogCXJldHVybiByZXQ7CiB9Ci0tIAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo=