From mboxrd@z Thu Jan 1 00:00:00 1970 From: Inki Dae Subject: [RFC PATCH 3/3] drm/exynos: make vidi driver to be independent module Date: Wed, 19 Nov 2014 00:26:44 +0900 Message-ID: <1416324404-28153-4-git-send-email-inki.dae@samsung.com> References: <1416324404-28153-1-git-send-email-inki.dae@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <1416324404-28153-1-git-send-email-inki.dae@samsung.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 Cc: linux-samsung-soc@vger.kernel.org List-Id: linux-samsung-soc@vger.kernel.org VGhpcyBwYXRjaCBtYWtlcyB2aWRpIGRyaXZlciB0byBiZSBpbmRlcGVuZGVudCBtb2R1bGUuCkZv ciB0aGlzLCBpdCByZW1vdmVzIHJlZ2lzdGVyIGNvZGVzIHRvIHZpZGkgZHJpdmVyCmZyb20gZXh5 bm9zX2RybV9kcnYgbW9kdWxlIGFuZCBhZGRzIG1vZHVsZV9pbml0L2V4aXQKZm9yIHZpZGkgZHJp dmVyIHNvIHRoYXQgdGhpcyBkcml2ZXIgY2FuIGJlIGNhbGxlZAppbmRlcGVuZGVudGx5LgoKSW4g YWRkaXRpb24sIHRoaXMgcGF0Y2ggYWRkcyBjb21wb25lbnQgc3VwcG9ydAp0byB2aWRpIGRyaXZl ciwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIG1vZHVsYXJpdHkuCgpTaWduZWQtb2ZmLWJ5OiBJbmtp IERhZSA8aW5raS5kYWVAc2Ftc3VuZy5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9l eHlub3NfZHJtX2Rydi5jICB8ICAgMTIgKy0tLS0KIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2RybV9kcnYuaCAgfCAgICA5IC0tLS0KIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9z X2RybV92aWRpLmMgfCAgIDgxICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQogMyBmaWxl cyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9k cm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMKaW5kZXggN2YxMTg2ZS4uM2FjMzliNiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kcnYuYwpAQCAtNjA4LDE5ICs2MDgsMTIgQEAg c3RhdGljIGludCBleHlub3NfZHJtX2luaXQodm9pZCkKIAlpZiAoSVNfRVJSKGV4eW5vc19kcm1f cGRldikpCiAJCXJldHVybiBQVFJfRVJSKGV4eW5vc19kcm1fcGRldik7CiAKLQlyZXQgPSBleHlu b3NfZHJtX3Byb2JlX3ZpZGkoKTsKLQlpZiAocmV0IDwgMCkKLQkJZ290byBlcnJfdW5yZWdpc3Rl cl9wZDsKLQogCXJldCA9IHBsYXRmb3JtX2RyaXZlcl9yZWdpc3RlcigmZXh5bm9zX2RybV9wbGF0 Zm9ybV9kcml2ZXIpOwogCWlmIChyZXQpCi0JCWdvdG8gZXJyX3JlbW92ZV92aWRpOworCQlnb3Rv IGVycl91bnJlZ2lzdGVyX3BkOwogCiAJcmV0dXJuIDA7CiAKLWVycl9yZW1vdmVfdmlkaToKLQll eHlub3NfZHJtX3JlbW92ZV92aWRpKCk7Ci0KIGVycl91bnJlZ2lzdGVyX3BkOgogCXBsYXRmb3Jt X2RldmljZV91bnJlZ2lzdGVyKGV4eW5vc19kcm1fcGRldik7CiAKQEAgLTYzMCw5ICs2MjMsNiBA QCBlcnJfdW5yZWdpc3Rlcl9wZDoKIHN0YXRpYyB2b2lkIGV4eW5vc19kcm1fZXhpdCh2b2lkKQog ewogCXBsYXRmb3JtX2RyaXZlcl91bnJlZ2lzdGVyKCZleHlub3NfZHJtX3BsYXRmb3JtX2RyaXZl cik7Ci0KLQlleHlub3NfZHJtX3JlbW92ZV92aWRpKCk7Ci0KIAlwbGF0Zm9ybV9kZXZpY2VfdW5y ZWdpc3RlcihleHlub3NfZHJtX3BkZXYpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5v c19kcm1fZHJ2LmgKaW5kZXggNWIzMzA1Yy4uN2MyYmEwNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9leHlu b3MvZXh5bm9zX2RybV9kcnYuaApAQCAtMzEwLDE0ICszMTAsNiBAQCBleHlub3NfZHBpX3Byb2Jl KHN0cnVjdCBkZXZpY2UgKmRldikgeyByZXR1cm4gTlVMTDsgfQogc3RhdGljIGlubGluZSBpbnQg ZXh5bm9zX2RwaV9yZW1vdmUoc3RydWN0IGRldmljZSAqZGV2KSB7IHJldHVybiAwOyB9CiAjZW5k aWYKIAotI2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX1ZJREkKLWludCBleHlub3NfZHJtX3Byb2Jl X3ZpZGkodm9pZCk7Ci12b2lkIGV4eW5vc19kcm1fcmVtb3ZlX3ZpZGkodm9pZCk7Ci0jZWxzZQot c3RhdGljIGlubGluZSBpbnQgZXh5bm9zX2RybV9wcm9iZV92aWRpKHZvaWQpIHsgcmV0dXJuIDA7 IH0KLXN0YXRpYyBpbmxpbmUgdm9pZCBleHlub3NfZHJtX3JlbW92ZV92aWRpKHZvaWQpIHt9Ci0j ZW5kaWYKLQogLyogVGhpcyBmdW5jdGlvbiBjcmVhdGVzIGEgZW5jb2RlciBhbmQgYSBjb25uZWN0 b3IsIGFuZCBpbml0aWFsaXplcyB0aGVtLiAqLwogaW50IGV4eW5vc19kcm1fY3JlYXRlX2VuY19j b25uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJc3RydWN0IGV4eW5vc19kcm1fZGlzcGxh eSAqZGlzcGxheSk7CkBAIC0zMzMsNSArMzI1LDQgQEAgZXh0ZXJuIGludCBleHlub3NfZHJtX25v bl9rbXNfcmVnaXN0ZXIodW5zaWduZWQgaW50IGRldmljZV90eXBlKTsKIGV4dGVybiB2b2lkIGV4 eW5vc19kcm1fbm9uX2ttc191bnJlZ2lzdGVyKHVuc2lnbmVkIGludCBkZXZpY2VfdHlwZSk7CiAK IGV4dGVybiBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIGV4eW5vc19kcm1fY29tbW9uX2hkbWlfZHJp dmVyOwotZXh0ZXJuIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgdmlkaV9kcml2ZXI7CiAjZW5kaWYK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV92aWRpLmMgYi9k cml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fdmlkaS5jCmluZGV4IDUwZmFmOTEuLmUx MTUzYWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV92aWRp LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX3ZpZGkuYwpAQCAtMTQs NiArMTQsNyBAQAogCiAjaW5jbHVkZSA8bGludXgva2VybmVsLmg+CiAjaW5jbHVkZSA8bGludXgv cGxhdGZvcm1fZGV2aWNlLmg+CisjaW5jbHVkZSA8bGludXgvY29tcG9uZW50Lmg+CiAKICNpbmNs dWRlIDxkcm0vZXh5bm9zX2RybS5oPgogCkBAIC00OCwxMCArNDksMTAgQEAgc3RydWN0IHZpZGlf d2luX2RhdGEgewogCiBzdHJ1Y3QgdmlkaV9jb250ZXh0IHsKIAlzdHJ1Y3QgZHJtX2RldmljZQkJ KmRybV9kZXY7CisJc3RydWN0IHBsYXRmb3JtX2RldmljZQkJKnBkZXY7CiAJc3RydWN0IGRybV9j cnRjCQkJKmNydGM7CiAJc3RydWN0IGRybV9lbmNvZGVyCQkqZW5jb2RlcjsKIAlzdHJ1Y3QgZHJt X2Nvbm5lY3RvcgkJY29ubmVjdG9yOwotCXN0cnVjdCBleHlub3NfZHJtX3N1YmRydglzdWJkcnY7 CiAJc3RydWN0IHZpZGlfd2luX2RhdGEJCXdpbl9kYXRhW1dJTkRPV1NfTlJdOwogCXN0cnVjdCBl ZGlkCQkJKnJhd19lZGlkOwogCXVuc2lnbmVkIGludAkJCWNsa2RpdjsKQEAgLTU2MSwxNCArNTYy LDEzIEBAIHN0YXRpYyBzdHJ1Y3QgZXh5bm9zX2RybV9kaXNwbGF5IHZpZGlfZGlzcGxheSA9IHsK IAkub3BzID0gJnZpZGlfZGlzcGxheV9vcHMsCiB9OwogCi1zdGF0aWMgaW50IHZpZGlfc3ViZHJ2 X3Byb2JlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2LCBzdHJ1Y3QgZGV2aWNlICpkZXYpCitz dGF0aWMgaW50IHZpZGlfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1h c3Rlciwgdm9pZCAqZGF0YSkKIHsKLQlzdHJ1Y3QgZXh5bm9zX2RybV9tYW5hZ2VyICptZ3IgPSBn ZXRfdmlkaV9tZ3IoZGV2KTsKLQlzdHJ1Y3QgdmlkaV9jb250ZXh0ICpjdHggPSBtZ3ItPmN0eDsK LQlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBjdHgtPmNydGM7CisJc3RydWN0IGRybV9jcnRjICpj cnRjID0gdmlkaV9tYW5hZ2VyLmNydGM7CisJc3RydWN0IGRybV9kZXZpY2UgKmRybV9kZXYgPSBk YXRhOwogCWludCByZXQ7CiAKLQl2aWRpX21ncl9pbml0aWFsaXplKG1nciwgZHJtX2Rldik7CisJ dmlkaV9tZ3JfaW5pdGlhbGl6ZSgmdmlkaV9tYW5hZ2VyLCBkcm1fZGV2KTsKIAogCXJldCA9IGV4 eW5vc19kcm1fY3J0Y19jcmVhdGUoJnZpZGlfbWFuYWdlcik7CiAJaWYgKHJldCkgewpAQCAtNTg2 LDIwICs1ODYsNDIgQEAgc3RhdGljIGludCB2aWRpX3N1YmRydl9wcm9iZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZHJtX2Rldiwgc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiAwOwogfQogCitzdGF0 aWMgdm9pZCB2aWRpX3VuYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1h c3RlciwKKwkJCXZvaWQgKmRhdGEpCit7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY29tcG9u ZW50X29wcyB2aWRpX2NvbXBvbmVudF9vcHMgPSB7CisJLmJpbmQJPSB2aWRpX2JpbmQsCisJLnVu YmluZCA9IHZpZGlfdW5iaW5kLAorfTsKKwogc3RhdGljIGludCB2aWRpX3Byb2JlKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiB7Ci0Jc3RydWN0IGV4eW5vc19kcm1fc3ViZHJ2ICpzdWJk cnY7CiAJc3RydWN0IHZpZGlfY29udGV4dCAqY3R4OwogCWludCByZXQ7CiAKKwlyZXQgPSBleHlu b3NfZHJtX2NvbXBvbmVudF9hZGQoJnBkZXYtPmRldiwgRVhZTk9TX0RFVklDRV9UWVBFX0NSVEMs CisJCQkJCXZpZGlfbWFuYWdlci50eXBlKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJ cmV0ID0gZXh5bm9zX2RybV9jb21wb25lbnRfYWRkKCZwZGV2LT5kZXYsIEVYWU5PU19ERVZJQ0Vf VFlQRV9DT05ORUNUT1IsCisJCQkJCXZpZGlfZGlzcGxheS50eXBlKTsKKwlpZiAocmV0KQorCQln b3RvIGVycl9kZWxfY3J0Y19jb21wb25lbnQ7CisKIAljdHggPSBkZXZtX2t6YWxsb2MoJnBkZXYt PmRldiwgc2l6ZW9mKCpjdHgpLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWN0eCkKLQkJcmV0dXJuIC1F Tk9NRU07CisJaWYgKCFjdHgpIHsKKwkJcmV0ID0gLUVOT01FTTsKKwkJZ290byBlcnJfZGVsX2Nv bm5fY29tcG9uZW50OworCX0KIAogCWN0eC0+ZGVmYXVsdF93aW4gPSAwOwogCiAJSU5JVF9XT1JL KCZjdHgtPndvcmssIHZpZGlfZmFrZV92YmxhbmtfaGFuZGxlcik7CiAKKwljdHgtPnBkZXYgPSBw ZGV2OwogCXZpZGlfbWFuYWdlci5jdHggPSBjdHg7CiAJdmlkaV9kaXNwbGF5LmN0eCA9IGN0eDsK IApAQCAtNjA3LDIzICs2MjksMjEgQEAgc3RhdGljIGludCB2aWRpX3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCiAKIAlwbGF0Zm9ybV9zZXRfZHJ2ZGF0YShwZGV2LCAmdmlkaV9t YW5hZ2VyKTsKIAotCXN1YmRydiA9ICZjdHgtPnN1YmRydjsKLQlzdWJkcnYtPmRldiA9ICZwZGV2 LT5kZXY7Ci0Jc3ViZHJ2LT5wcm9iZSA9IHZpZGlfc3ViZHJ2X3Byb2JlOwotCi0JcmV0ID0gZXh5 bm9zX2RybV9zdWJkcnZfcmVnaXN0ZXIoc3ViZHJ2KTsKLQlpZiAocmV0IDwgMCkgewotCQlkZXZf ZXJyKCZwZGV2LT5kZXYsICJmYWlsZWQgdG8gcmVnaXN0ZXIgZHJtIHZpZGkgZGV2aWNlXG4iKTsK LQkJcmV0dXJuIHJldDsKLQl9Ci0KIAlyZXQgPSBkZXZpY2VfY3JlYXRlX2ZpbGUoJnBkZXYtPmRl diwgJmRldl9hdHRyX2Nvbm5lY3Rpb24pOwotCWlmIChyZXQgPCAwKSB7Ci0JCWV4eW5vc19kcm1f c3ViZHJ2X3VucmVnaXN0ZXIoc3ViZHJ2KTsKKwlpZiAocmV0IDwgMCkKIAkJRFJNX0lORk8oImZh aWxlZCB0byBjcmVhdGUgY29ubmVjdGlvbiBzeXNmcy5cbiIpOwotCX0KIAotCXJldHVybiAwOwor CXJldCA9IGNvbXBvbmVudF9hZGQoJnBkZXYtPmRldiwgJnZpZGlfY29tcG9uZW50X29wcyk7CisJ aWYgKHJldCkKKwkJZ290byBlcnJfZGVsX2Nvbm5fY29tcG9uZW50OworCisJcmV0dXJuIHJldDsK KworZXJyX2RlbF9jb25uX2NvbXBvbmVudDoKKwlleHlub3NfZHJtX2NvbXBvbmVudF9kZWwoJnBk ZXYtPmRldiwgRVhZTk9TX0RFVklDRV9UWVBFX0NPTk5FQ1RPUik7CitlcnJfZGVsX2NydGNfY29t cG9uZW50OgorCWV4eW5vc19kcm1fY29tcG9uZW50X2RlbCgmcGRldi0+ZGV2LCBFWFlOT1NfREVW SUNFX1RZUEVfQ1JUQyk7CisJcmV0dXJuIHJldDsKIH0KIAogc3RhdGljIGludCB2aWRpX3JlbW92 ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQpAQCAtNjM4LDYgKzY1OCwxMCBAQCBzdGF0 aWMgaW50IHZpZGlfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJCXJldHVy biAtRUlOVkFMOwogCX0KIAorCWNvbXBvbmVudF9kZWwoJnBkZXYtPmRldiwgJnZpZGlfY29tcG9u ZW50X29wcyk7CisJZXh5bm9zX2RybV9jb21wb25lbnRfZGVsKCZwZGV2LT5kZXYsIEVYWU5PU19E RVZJQ0VfVFlQRV9DT05ORUNUT1IpOworCWV4eW5vc19kcm1fY29tcG9uZW50X2RlbCgmcGRldi0+ ZGV2LCBFWFlOT1NfREVWSUNFX1RZUEVfQ1JUQyk7CisKIAlyZXR1cm4gMDsKIH0KIApAQCAtNjUw LDcgKzY3NCw3IEBAIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgdmlkaV9kcml2ZXIgPSB7CiAJfSwK IH07CiAKLWludCBleHlub3NfZHJtX3Byb2JlX3ZpZGkodm9pZCkKK3N0YXRpYyBpbnQgZXh5bm9z X2RybV92aWRpX2luaXQodm9pZCkKIHsKIAlzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2Owog CWludCByZXQ7CkBAIC02NjgsMTIgKzY5MiwxMyBAQCBpbnQgZXh5bm9zX2RybV9wcm9iZV92aWRp KHZvaWQpCiAJcmV0dXJuIHJldDsKIH0KIAotdm9pZCBleHlub3NfZHJtX3JlbW92ZV92aWRpKHZv aWQpCit2b2lkIGV4eW5vc19kcm1fdmlkaV9leGl0KHZvaWQpCiB7CiAJc3RydWN0IHZpZGlfY29u dGV4dCAqY3R4ID0gdmlkaV9tYW5hZ2VyLmN0eDsKLQlzdHJ1Y3QgZXh5bm9zX2RybV9zdWJkcnYg KnN1YmRydiA9ICZjdHgtPnN1YmRydjsKLQlzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2ID0g dG9fcGxhdGZvcm1fZGV2aWNlKHN1YmRydi0+ZGV2KTsKIAogCXBsYXRmb3JtX2RyaXZlcl91bnJl Z2lzdGVyKCZ2aWRpX2RyaXZlcik7Ci0JcGxhdGZvcm1fZGV2aWNlX3VucmVnaXN0ZXIocGRldik7 CisJcGxhdGZvcm1fZGV2aWNlX3VucmVnaXN0ZXIoY3R4LT5wZGV2KTsKIH0KKworbW9kdWxlX2lu aXQoZXh5bm9zX2RybV92aWRpX2luaXQpOworbW9kdWxlX2V4aXQoZXh5bm9zX2RybV92aWRpX2V4 aXQpOwotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWwK