From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bibby Hsieh Subject: [PATCH v1 1/7] drm/mediatek: move dpi private data to device Date: Mon, 14 May 2018 15:52:37 +0800 Message-ID: <20180514075243.5442-2-bibby.hsieh@mediatek.com> References: <20180514075243.5442-1-bibby.hsieh@mediatek.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180514075243.5442-1-bibby.hsieh@mediatek.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: David Airlie , Matthias Brugger , Daniel Vetter , dri-devel@lists.freedesktop.org, linux-mediatek@lists.infradead.org Cc: chunhui dai , linux-kernel@vger.kernel.org, Cawa Cheng , Mao Huang , Thierry Reding , Yingjoe Chen , Sascha Hauer , linux-arm-kernel@lists.infradead.org List-Id: linux-mediatek@lists.infradead.org RnJvbTogY2h1bmh1aSBkYWkgPGNodW5odWkuZGFpQG1lZGlhdGVrLmNvbT4KCm1vdmUgY2xvY2sg ZmFjdG9yIGFuZCBlZGdlIGVuYWJsZSBzZXR0aW5nIHRvIHByaXZhdGUgZGF0YS4KClNpZ25lZC1v ZmYtYnk6IGNodW5odWkgZGFpIDxjaHVuaHVpLmRhaUBtZWRpYXRlay5jb20+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL21lZGlhdGVrL210a19kcGkuYyAgICAgIHwgODIgKysrKysrKysrKysrKysrKysr KysrKysrKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RwaV9yZWdzLmgg fCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RwaS5jIGIvZHJp dmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcGkuYwppbmRleCBlODBhNjAzZTVmYjAuLjk5M2Rj NDQzNjhiZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcGkuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RwaS5jCkBAIC03MSwxMSArNzEsMTMg QEAgc3RydWN0IG10a19kcGkgewogCXN0cnVjdCBjbGsgKnR2ZF9jbGs7CiAJaW50IGlycTsKIAlz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSBtb2RlOworCWNvbnN0IHN0cnVjdCBtdGtfZHBpX2NvbmYg KmNvbmY7CiAJZW51bSBtdGtfZHBpX291dF9jb2xvcl9mb3JtYXQgY29sb3JfZm9ybWF0OwogCWVu dW0gbXRrX2RwaV9vdXRfeWNfbWFwIHljX21hcDsKIAllbnVtIG10a19kcGlfb3V0X2JpdF9udW0g Yml0X251bTsKIAllbnVtIG10a19kcGlfb3V0X2NoYW5uZWxfc3dhcCBjaGFubmVsX3N3YXA7CiAJ Ym9vbCBwb3dlcl9zdGE7CisJaW50IHJlZmNvdW50OwogCXU4IHBvd2VyX2N0bDsKIH07CiAKQEAg LTExNSw2ICsxMTcsMTIgQEAgc3RydWN0IG10a19kcGlfeWNfbGltaXQgewogCXUxNiBjX2JvdHRv bTsKIH07CiAKK3N0cnVjdCBtdGtfZHBpX2NvbmYgeworCXVuc2lnbmVkIGludCAoKmNhbF9mYWN0 b3IpKGludCBjbG9jayk7CisJY29uc3QgdTMyIHJlZ19oX2ZyZV9jb247CisJYm9vbCBlZGdlX3Nl bF9lbjsKK307CisKIHN0YXRpYyB2b2lkIG10a19kcGlfbWFzayhzdHJ1Y3QgbXRrX2RwaSAqZHBp LCB1MzIgb2Zmc2V0LCB1MzIgdmFsLCB1MzIgbWFzaykKIHsKIAl1MzIgdG1wID0gcmVhZGwoZHBp LT5yZWdzICsgb2Zmc2V0KSAmIH5tYXNrOwpAQCAtMzQwLDcgKzM0OCwxMyBAQCBzdGF0aWMgdm9p ZCBtdGtfZHBpX2NvbmZpZ19zd2FwX2lucHV0KHN0cnVjdCBtdGtfZHBpICpkcGksIGJvb2wgZW5h YmxlKQogCiBzdGF0aWMgdm9pZCBtdGtfZHBpX2NvbmZpZ18ybl9oX2ZyZShzdHJ1Y3QgbXRrX2Rw aSAqZHBpKQogewotCW10a19kcGlfbWFzayhkcGksIERQSV9IX0ZSRV9DT04sIEhfRlJFXzJOLCBI X0ZSRV8yTik7CisJbXRrX2RwaV9tYXNrKGRwaSwgZHBpLT5jb25mLT5yZWdfaF9mcmVfY29uLCBI X0ZSRV8yTiwgSF9GUkVfMk4pOworfQorCitzdGF0aWMgdm9pZCBtdGtfZHBpX2NvbmZpZ19kaXNh YmxlX2VkZ2Uoc3RydWN0IG10a19kcGkgKmRwaSkKK3sKKwlpZiAoZHBpLT5jb25mLT5lZGdlX3Nl bF9lbikKKwkJbXRrX2RwaV9tYXNrKGRwaSwgZHBpLT5jb25mLT5yZWdfaF9mcmVfY29uLCAwLCBF REdFX1NFTF9FTik7CiB9CiAKIHN0YXRpYyB2b2lkIG10a19kcGlfY29uZmlnX2NvbG9yX2Zvcm1h dChzdHJ1Y3QgbXRrX2RwaSAqZHBpLApAQCAtMzY4LDYgKzM4MiwxMiBAQCBzdGF0aWMgdm9pZCBt dGtfZHBpX2NvbmZpZ19jb2xvcl9mb3JtYXQoc3RydWN0IG10a19kcGkgKmRwaSwKIAogc3RhdGlj IHZvaWQgbXRrX2RwaV9wb3dlcl9vZmYoc3RydWN0IG10a19kcGkgKmRwaSwgZW51bSBtdGtfZHBp X3Bvd2VyX2N0bCBwY3RsKQogeworCWlmIChXQVJOX09OKGRwaS0+cmVmY291bnQgPT0gMCkpCisJ CXJldHVybjsKKworCWlmICgtLWRwaS0+cmVmY291bnQgIT0gMCkKKwkJcmV0dXJuOworCiAJZHBp LT5wb3dlcl9jdGwgJj0gfnBjdGw7CiAKIAlpZiAoKGRwaS0+cG93ZXJfY3RsICYgRFBJX1BPV0VS X1NUQVJUKSB8fApAQCAtMzg1LDE2ICs0MDUsMTkgQEAgc3RhdGljIHZvaWQgbXRrX2RwaV9wb3dl cl9vZmYoc3RydWN0IG10a19kcGkgKmRwaSwgZW51bSBtdGtfZHBpX3Bvd2VyX2N0bCBwY3RsKQog CiBzdGF0aWMgaW50IG10a19kcGlfcG93ZXJfb24oc3RydWN0IG10a19kcGkgKmRwaSwgZW51bSBt dGtfZHBpX3Bvd2VyX2N0bCBwY3RsKQogewotCWludCByZXQ7CisJaW50IHJldCA9IDA7CisKKwlp ZiAoKytkcGktPnJlZmNvdW50ICE9IDEpCisJCXJldHVybiAwOwogCiAJZHBpLT5wb3dlcl9jdGwg fD0gcGN0bDsKIAogCWlmICghKGRwaS0+cG93ZXJfY3RsICYgRFBJX1BPV0VSX1NUQVJUKSAmJgog CSAgICAhKGRwaS0+cG93ZXJfY3RsICYgRFBJX1BPV0VSX0VOQUJMRSkpCi0JCXJldHVybiAwOwor CQlnb3RvIGVycl9yZWZjb3VudDsKIAogCWlmIChkcGktPnBvd2VyX3N0YSkKLQkJcmV0dXJuIDA7 CisJCWdvdG8gZXJyX3JlZmNvdW50OwogCiAJcmV0ID0gY2xrX3ByZXBhcmVfZW5hYmxlKGRwaS0+ ZW5naW5lX2Nsayk7CiAJaWYgKHJldCkgewpAQCAtNDE2LDYgKzQzOSw4IEBAIHN0YXRpYyBpbnQg bXRrX2RwaV9wb3dlcl9vbihzdHJ1Y3QgbXRrX2RwaSAqZHBpLCBlbnVtIG10a19kcGlfcG93ZXJf Y3RsIHBjdGwpCiAJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKGRwaS0+ZW5naW5lX2Nsayk7CiBlcnJf ZW5nOgogCWRwaS0+cG93ZXJfY3RsICY9IH5wY3RsOworZXJyX3JlZmNvdW50OgorCWRwaS0+cmVm Y291bnQtLTsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC00MzMsMTYgKzQ1OCwxMyBAQCBzdGF0aWMg aW50IG10a19kcGlfc2V0X2Rpc3BsYXlfbW9kZShzdHJ1Y3QgbXRrX2RwaSAqZHBpLAogCXVuc2ln bmVkIGxvbmcgcGxsX3JhdGU7CiAJdW5zaWduZWQgaW50IGZhY3RvcjsKIAorCWlmICghZHBpKSB7 CisJCWRldl9lcnIoZHBpLT5kZXYsICJpbnZhbGlkIGFyZ3VtZW50XG4iKTsKKwkJcmV0dXJuIC1F SU5WQUw7CisJfQogCS8qIGxldCBwbGxfcmF0ZSBjYW4gZml4IHRoZSB2YWxpZCByYW5nZSBvZiB0 dmRwbGwgKDFHfjJHSHopICovCiAJcGl4X3JhdGUgPSAxMDAwVUwgKiBtb2RlLT5jbG9jazsKLQlp ZiAobW9kZS0+Y2xvY2sgPD0gMjcwMDApCi0JCWZhY3RvciA9IDE2ICogMzsKLQllbHNlIGlmICht b2RlLT5jbG9jayA8PSA4NDAwMCkKLQkJZmFjdG9yID0gOCAqIDM7Ci0JZWxzZSBpZiAobW9kZS0+ Y2xvY2sgPD0gMTY3MDAwKQotCQlmYWN0b3IgPSA0ICogMzsKLQllbHNlCi0JCWZhY3RvciA9IDIg KiAzOworCWZhY3RvciA9IGRwaS0+Y29uZi0+Y2FsX2ZhY3Rvcihtb2RlLT5jbG9jayk7CiAJcGxs X3JhdGUgPSBwaXhfcmF0ZSAqIGZhY3RvcjsKIAogCWRldl9kYmcoZHBpLT5kZXYsICJXYW50IFBM TCAlbHUgSHosIHBpeGVsIGNsb2NrICVsdSBIelxuIiwKQEAgLTUxOCw2ICs1NDAsNyBAQCBzdGF0 aWMgaW50IG10a19kcGlfc2V0X2Rpc3BsYXlfbW9kZShzdHJ1Y3QgbXRrX2RwaSAqZHBpLAogCW10 a19kcGlfY29uZmlnX3ljX21hcChkcGksIGRwaS0+eWNfbWFwKTsKIAltdGtfZHBpX2NvbmZpZ19j b2xvcl9mb3JtYXQoZHBpLCBkcGktPmNvbG9yX2Zvcm1hdCk7CiAJbXRrX2RwaV9jb25maWdfMm5f aF9mcmUoZHBpKTsKKwltdGtfZHBpX2NvbmZpZ19kaXNhYmxlX2VkZ2UoZHBpKTsKIAltdGtfZHBp X3N3X3Jlc2V0KGRwaSwgZmFsc2UpOwogCiAJcmV0dXJuIDA7CkBAIC02NTYsNiArNjc5LDMxIEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgY29tcG9uZW50X29wcyBtdGtfZHBpX2NvbXBvbmVudF9vcHMg PSB7CiAJLnVuYmluZCA9IG10a19kcGlfdW5iaW5kLAogfTsKIAorc3RhdGljIHVuc2lnbmVkIGlu dCBtdDgxNzNfY2FsY3VsYXRlX2ZhY3RvcihpbnQgY2xvY2spCit7CisJaWYgKGNsb2NrIDw9IDI3 MDAwKQorCQlyZXR1cm4gMTYgKiAzOworCWVsc2UgaWYgKGNsb2NrIDw9IDc0MjUwKQorCQlyZXR1 cm4gOCAqIDM7CisJZWxzZSBpZiAoY2xvY2sgPD0gMTY3MDAwKQorCQlyZXR1cm4gNCAqIDM7CisJ ZWxzZQorCQlyZXR1cm4gMiAqIDM7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2RwaV9j b25mIG10ODE3M19jb25mID0geworCS5jYWxfZmFjdG9yID0gbXQ4MTczX2NhbGN1bGF0ZV9mYWN0 b3IsCisJLnJlZ19oX2ZyZV9jb24gPSAweGUwLAorfTsKKworc3RhdGljIGNvbnN0IHN0cnVjdCBv Zl9kZXZpY2VfaWQgbXRrX2RwaV9vZl9pZHNbXSA9IHsKKwl7IC5jb21wYXRpYmxlID0gIm1lZGlh dGVrLG10ODE3My1kcGkiLAorCSAgLmRhdGEgPSAmbXQ4MTczX2NvbmYsCisJfSwKKwl7IH0sCit9 OworTU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXRrX2RwaV9vZl9pZHMpOworCiBzdGF0aWMgaW50 IG10a19kcGlfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIHsKIAlzdHJ1Y3Qg ZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2OwpAQCAtNjYzLDEzICs3MTEsMTggQEAgc3RhdGljIGlu dCBtdGtfZHBpX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJc3RydWN0IHJl c291cmNlICptZW07CiAJc3RydWN0IGRldmljZV9ub2RlICpicmlkZ2Vfbm9kZTsKIAlpbnQgY29t cF9pZDsKKwljb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaDsKIAlpbnQgcmV0OwogCisJ bWF0Y2ggPSBvZl9tYXRjaF9ub2RlKG10a19kcGlfb2ZfaWRzLCBkZXYtPm9mX25vZGUpOworCWlm ICghbWF0Y2gpCisJCXJldHVybiAtRU5PREVWOwogCWRwaSA9IGRldm1fa3phbGxvYyhkZXYsIHNp emVvZigqZHBpKSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFkcGkpCiAJCXJldHVybiAtRU5PTUVNOwog CiAJZHBpLT5kZXYgPSBkZXY7CisJZHBpLT5jb25mID0gKHN0cnVjdCBtdGtfZHBpX2NvbmYgKilt YXRjaC0+ZGF0YTsKIAogCW1lbSA9IHBsYXRmb3JtX2dldF9yZXNvdXJjZShwZGV2LCBJT1JFU09V UkNFX01FTSwgMCk7CiAJZHBpLT5yZWdzID0gZGV2bV9pb3JlbWFwX3Jlc291cmNlKGRldiwgbWVt KTsKQEAgLTc0OCwxMSArODAxLDYgQEAgc3RhdGljIGludCBtdGtfZHBpX3JlbW92ZShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCXJldHVybiAwOwogfQogCi1zdGF0aWMgY29uc3Qgc3Ry dWN0IG9mX2RldmljZV9pZCBtdGtfZHBpX29mX2lkc1tdID0gewotCXsgLmNvbXBhdGlibGUgPSAi bWVkaWF0ZWssbXQ4MTczLWRwaSIsIH0sCi0Je30KLX07Ci0KIHN0cnVjdCBwbGF0Zm9ybV9kcml2 ZXIgbXRrX2RwaV9kcml2ZXIgPSB7CiAJLnByb2JlID0gbXRrX2RwaV9wcm9iZSwKIAkucmVtb3Zl ID0gbXRrX2RwaV9yZW1vdmUsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2RwaV9yZWdzLmggYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RwaV9yZWdzLmgK aW5kZXggNGI2YWQ0NzUxYTMxLi5kOWRiOGM0Y2FjZDcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9tZWRpYXRlay9tdGtfZHBpX3JlZ3MuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0 ZWsvbXRrX2RwaV9yZWdzLmgKQEAgLTIyMyw2ICsyMjMsNiBAQAogI2RlZmluZSBFU0FWX0NPREUy CQkJKDB4RkZGIDw8IDApCiAjZGVmaW5lIEVTQVZfQ09ERTNfTVNCCQkJQklUKDE2KQogCi0jZGVm aW5lIERQSV9IX0ZSRV9DT04JCTB4RTAKKyNkZWZpbmUgRURHRV9TRUxfRU4JCQlCSVQoNSkKICNk ZWZpbmUgSF9GUkVfMk4JCQlCSVQoMjUpCiAjZW5kaWYgLyogX19NVEtfRFBJX1JFR1NfSCAqLwot LSAKMi4xMi41CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK