From mboxrd@z Thu Jan 1 00:00:00 1970 From: Neil Armstrong Subject: [PATCH v2 03/13] drm/meson: Add support for components Date: Tue, 21 Mar 2017 16:25:40 +0100 Message-ID: <1490109950-21421-4-git-send-email-narmstrong@baylibre.com> References: <1490109950-21421-1-git-send-email-narmstrong@baylibre.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x233.google.com (mail-wm0-x233.google.com [IPv6:2a00:1450:400c:c09::233]) by gabe.freedesktop.org (Postfix) with ESMTPS id C06E86E719 for ; Tue, 21 Mar 2017 15:25:59 +0000 (UTC) Received: by mail-wm0-x233.google.com with SMTP id t189so15170923wmt.1 for ; Tue, 21 Mar 2017 08:25:59 -0700 (PDT) In-Reply-To: <1490109950-21421-1-git-send-email-narmstrong@baylibre.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: airlied@linux.ie Cc: linux-amlogic@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org, Neil Armstrong List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIG9wdGlvbmFsIGNvbXBvbmVudHMgY29ubmVjdGVk IHRocm91Z2ggdGhlCkRldmljZSBUcmVlIGVuZHBvaW50cyBzY2hlbWUuCgpTaWduZWQtb2ZmLWJ5 OiBOZWlsIEFybXN0cm9uZyA8bmFybXN0cm9uZ0BiYXlsaWJyZS5jb20+Ci0tLQogZHJpdmVycy9n cHUvZHJtL21lc29uL21lc29uX2Rydi5jIHwgMTEzICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgOTkgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lc29uL21lc29uX2Rydi5jIGIv ZHJpdmVycy9ncHUvZHJtL21lc29uL21lc29uX2Rydi5jCmluZGV4IGJjNTYyYTAuLmEyZTlmNTYg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9kcnYuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fZHJ2LmMKQEAgLTI0LDYgKzI0LDcgQEAKICNpbmNsdWRl IDxsaW51eC9tb2R1bGUuaD4KICNpbmNsdWRlIDxsaW51eC9tdXRleC5oPgogI2luY2x1ZGUgPGxp bnV4L3BsYXRmb3JtX2RldmljZS5oPgorI2luY2x1ZGUgPGxpbnV4L2NvbXBvbmVudC5oPgogI2lu Y2x1ZGUgPGxpbnV4L29mX2dyYXBoLmg+CiAKICNpbmNsdWRlIDxkcm0vZHJtUC5oPgpAQCAtMTUw LDkgKzE1MSw5IEBAIHN0YXRpYyBib29sIG1lc29uX3ZwdV9oYXNfYXZhaWxhYmxlX2Nvbm5lY3Rv cnMoc3RydWN0IGRldmljZSAqZGV2KQogCS5tYXhfcmVnaXN0ZXIgICA9IDB4MTAwMCwKIH07CiAK LXN0YXRpYyBpbnQgbWVzb25fZHJ2X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYp CitzdGF0aWMgaW50IG1lc29uX2Rydl9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKLQlzdHJ1 Y3QgZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2OworCXN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYgPSB0b19wbGF0Zm9ybV9kZXZpY2UoZGV2KTsKIAlzdHJ1Y3QgbWVzb25fZHJtICpwcml2Owog CXN0cnVjdCBkcm1fZGV2aWNlICpkcm07CiAJc3RydWN0IHJlc291cmNlICpyZXM7CkBAIC0yMTUs NiArMjE2LDE1IEBAIHN0YXRpYyBpbnQgbWVzb25fZHJ2X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9k ZXZpY2UgKnBkZXYpCiAKIAlkcm1fdmJsYW5rX2luaXQoZHJtLCAxKTsKIAlkcm1fbW9kZV9jb25m aWdfaW5pdChkcm0pOworCWRybS0+bW9kZV9jb25maWcubWF4X3dpZHRoID0gMzg0MDsKKwlkcm0t Pm1vZGVfY29uZmlnLm1heF9oZWlnaHQgPSAyMTYwOworCWRybS0+bW9kZV9jb25maWcuZnVuY3Mg PSAmbWVzb25fbW9kZV9jb25maWdfZnVuY3M7CisKKwkvKiBIYXJkd2FyZSBJbml0aWFsaXphdGlv biAqLworCisJbWVzb25fdmVuY19pbml0KHByaXYpOworCW1lc29uX3ZwcF9pbml0KHByaXYpOwor CW1lc29uX3ZpdV9pbml0KHByaXYpOwogCiAJLyogRW5jb2RlciBJbml0aWFsaXphdGlvbiAqLwog CkBAIC0yMjIsMTEgKzIzMiwxMSBAQCBzdGF0aWMgaW50IG1lc29uX2Rydl9wcm9iZShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCWlmIChyZXQpCiAJCWdvdG8gZnJlZV9kcm07CiAKLQkv KiBIYXJkd2FyZSBJbml0aWFsaXphdGlvbiAqLwotCi0JbWVzb25fdmVuY19pbml0KHByaXYpOwot CW1lc29uX3ZwcF9pbml0KHByaXYpOwotCW1lc29uX3ZpdV9pbml0KHByaXYpOworCXJldCA9IGNv bXBvbmVudF9iaW5kX2FsbChkcm0tPmRldiwgZHJtKTsKKwlpZiAocmV0KSB7CisJCWRldl9lcnIo ZHJtLT5kZXYsICJDb3VsZG4ndCBiaW5kIGFsbCBjb21wb25lbnRzXG4iKTsKKwkJZ290byBmcmVl X2RybTsKKwl9CiAKIAlyZXQgPSBtZXNvbl9wbGFuZV9jcmVhdGUocHJpdik7CiAJaWYgKHJldCkK QEAgLTI0MSw5ICsyNTEsNiBAQCBzdGF0aWMgaW50IG1lc29uX2Rydl9wcm9iZShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2KQogCQlnb3RvIGZyZWVfZHJtOwogCiAJZHJtX21vZGVfY29uZmln X3Jlc2V0KGRybSk7Ci0JZHJtLT5tb2RlX2NvbmZpZy5tYXhfd2lkdGggPSA4MTkyOwotCWRybS0+ bW9kZV9jb25maWcubWF4X2hlaWdodCA9IDgxOTI7Ci0JZHJtLT5tb2RlX2NvbmZpZy5mdW5jcyA9 ICZtZXNvbl9tb2RlX2NvbmZpZ19mdW5jczsKIAogCXByaXYtPmZiZGV2ID0gZHJtX2ZiZGV2X2Nt YV9pbml0KGRybSwgMzIsCiAJCQkJCSBkcm0tPm1vZGVfY29uZmlnLm51bV9jb25uZWN0b3IpOwpA QCAtMjY4LDkgKzI3NSw5IEBAIHN0YXRpYyBpbnQgbWVzb25fZHJ2X3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBtZXNvbl9k cnZfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCitzdGF0aWMgdm9pZCBtZXNv bl9kcnZfdW5iaW5kKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKLQlzdHJ1Y3QgZHJtX2RldmljZSAq ZHJtID0gZGV2X2dldF9kcnZkYXRhKCZwZGV2LT5kZXYpOworCXN0cnVjdCBkcm1fZGV2aWNlICpk cm0gPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKIAlzdHJ1Y3QgbWVzb25fZHJtICpwcml2ID0gZHJt LT5kZXZfcHJpdmF0ZTsKIAogCWRybV9kZXZfdW5yZWdpc3Rlcihkcm0pOwpAQCAtMjgwLDkgKzI4 Nyw4OCBAQCBzdGF0aWMgaW50IG1lc29uX2Rydl9yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldikKIAlkcm1fdmJsYW5rX2NsZWFudXAoZHJtKTsKIAlkcm1fZGV2X3VucmVmKGRybSk7 CiAKLQlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNvbnN0IHN0cnVjdCBjb21wb25lbnRfbWFzdGVy X29wcyBtZXNvbl9kcnZfbWFzdGVyX29wcyA9IHsKKwkuYmluZAk9IG1lc29uX2Rydl9iaW5kLAor CS51bmJpbmQJPSBtZXNvbl9kcnZfdW5iaW5kLAorfTsKKworc3RhdGljIGludCBjb21wYXJlX29m KHN0cnVjdCBkZXZpY2UgKmRldiwgdm9pZCAqZGF0YSkKK3sKKwlEUk1fREVCVUdfRFJJVkVSKCJD b21wYXJpbmcgb2Ygbm9kZSAlcyB3aXRoICVzXG4iLAorCQkJIG9mX25vZGVfZnVsbF9uYW1lKGRl di0+b2Zfbm9kZSksCisJCQkgb2Zfbm9kZV9mdWxsX25hbWUoZGF0YSkpOworCisJcmV0dXJuIGRl di0+b2Zfbm9kZSA9PSBkYXRhOworfQorCisvKiBQb3NzaWJsZSBjb25uZWN0b3JzIG5vZGVzIHRv IGlnbm9yZSAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgY29ubmVjdG9yc19t YXRjaFtdID0geworCXsgLmNvbXBhdGlibGUgPSAiY29tcG9zaXRlLXZpZGVvLWNvbm5lY3RvciIg fSwKKwl7IC5jb21wYXRpYmxlID0gInN2aWRlby1jb25uZWN0b3IiIH0sCisJeyAuY29tcGF0aWJs ZSA9ICJoZG1pLWNvbm5lY3RvciIgfSwKKwl7IC5jb21wYXRpYmxlID0gImR2aS1jb25uZWN0b3Ii IH0sCisJe30KK307CisKK3N0YXRpYyBpbnQgbWVzb25fcHJvYmVfcmVtb3RlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsCisJCQkgICAgICBzdHJ1Y3QgY29tcG9uZW50X21hdGNoICoqbWF0 Y2gsCisJCQkgICAgICBzdHJ1Y3QgZGV2aWNlX25vZGUgKnBhcmVudCwKKwkJCSAgICAgIHN0cnVj dCBkZXZpY2Vfbm9kZSAqcmVtb3RlKQoreworCXN0cnVjdCBkZXZpY2Vfbm9kZSAqZXAsICpyZW1v dGVfbm9kZTsKKwlpbnQgY291bnQgPSAxOworCisJLyogSWYgbm9kZSBpcyBhIGNvbm5lY3Rvciwg cmV0dXJuIGFuZCBkbyBub3QgYWRkIHRvIG1hdGNoIHRhYmxlICovCisJaWYgKG9mX21hdGNoX25v ZGUoY29ubmVjdG9yc19tYXRjaCwgcmVtb3RlKSkKKwkJcmV0dXJuIDE7CisKKwljb21wb25lbnRf bWF0Y2hfYWRkKCZwZGV2LT5kZXYsIG1hdGNoLCBjb21wYXJlX29mLCByZW1vdGUpOworCisJZm9y X2VhY2hfZW5kcG9pbnRfb2Zfbm9kZShyZW1vdGUsIGVwKSB7CisJCXJlbW90ZV9ub2RlID0gb2Zf Z3JhcGhfZ2V0X3JlbW90ZV9wb3J0X3BhcmVudChlcCk7CisJCWlmICghcmVtb3RlX25vZGUgfHwK KwkJICAgIHJlbW90ZV9ub2RlID09IHBhcmVudCB8fCAvKiBJZ25vcmUgcGFyZW50IGVuZHBvaW50 ICovCisJCSAgICAhb2ZfZGV2aWNlX2lzX2F2YWlsYWJsZShyZW1vdGVfbm9kZSkpCisJCQljb250 aW51ZTsKKworCQljb3VudCArPSBtZXNvbl9wcm9iZV9yZW1vdGUocGRldiwgbWF0Y2gsIHJlbW90 ZSwgcmVtb3RlX25vZGUpOworCisJCW9mX25vZGVfcHV0KHJlbW90ZV9ub2RlKTsKKwl9CisKKwly ZXR1cm4gY291bnQ7Cit9CisKK3N0YXRpYyBpbnQgbWVzb25fZHJ2X3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCit7CisJc3RydWN0IGNvbXBvbmVudF9tYXRjaCAqbWF0Y2ggPSBO VUxMOworCXN0cnVjdCBkZXZpY2Vfbm9kZSAqbnAgPSBwZGV2LT5kZXYub2Zfbm9kZTsKKwlzdHJ1 Y3QgZGV2aWNlX25vZGUgKmVwLCAqcmVtb3RlOworCWludCBjb3VudCA9IDA7CisKKwlmb3JfZWFj aF9lbmRwb2ludF9vZl9ub2RlKG5wLCBlcCkgeworCQlyZW1vdGUgPSBvZl9ncmFwaF9nZXRfcmVt b3RlX3BvcnRfcGFyZW50KGVwKTsKKwkJaWYgKCFyZW1vdGUgfHwgIW9mX2RldmljZV9pc19hdmFp bGFibGUocmVtb3RlKSkKKwkJCWNvbnRpbnVlOworCisJCWNvdW50ICs9IG1lc29uX3Byb2JlX3Jl bW90ZShwZGV2LCAmbWF0Y2gsIG5wLCByZW1vdGUpOworCX0KKworCS8qIElmIHNvbWUgZW5kcG9p bnRzIHdlcmUgZm91bmQsIGluaXRpYWxpemUgdGhlIG5vZGVzICovCisJaWYgKGNvdW50KSB7CisJ CWRldl9pbmZvKCZwZGV2LT5kZXYsICJRdWV1ZWQgJWQgb3V0cHV0cyBvbiB2cHVcbiIsIGNvdW50 KTsKKworCQlyZXR1cm4gY29tcG9uZW50X21hc3Rlcl9hZGRfd2l0aF9tYXRjaCgmcGRldi0+ZGV2 LAorCQkJCQkJICAgICAgICZtZXNvbl9kcnZfbWFzdGVyX29wcywKKwkJCQkJCSAgICAgICBtYXRj aCk7CisJfQorCisJLyogSWYgbm8gb3V0cHV0IGVuZHBvaW50cyB3ZXJlIGF2YWlsYWJsZSwgc2lt cGx5IGJhaWwgb3V0ICovCisJcmV0dXJuIDA7Cit9OworCiBzdGF0aWMgY29uc3Qgc3RydWN0IG9m X2RldmljZV9pZCBkdF9tYXRjaFtdID0gewogCXsgLmNvbXBhdGlibGUgPSAiYW1sb2dpYyxtZXNv bi1neGJiLXZwdSIgfSwKIAl7IC5jb21wYXRpYmxlID0gImFtbG9naWMsbWVzb24tZ3hsLXZwdSIg fSwKQEAgLTI5Myw3ICszNzksNiBAQCBzdGF0aWMgaW50IG1lc29uX2Rydl9yZW1vdmUoc3RydWN0 IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAogc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIg bWVzb25fZHJtX3BsYXRmb3JtX2RyaXZlciA9IHsKIAkucHJvYmUgICAgICA9IG1lc29uX2Rydl9w cm9iZSwKLQkucmVtb3ZlICAgICA9IG1lc29uX2Rydl9yZW1vdmUsCiAJLmRyaXZlciAgICAgPSB7 CiAJCS5uYW1lCT0gIm1lc29uLWRybSIsCiAJCS5vZl9tYXRjaF90YWJsZSA9IGR0X21hdGNoLAot LSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=