From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marta Lofstedt Subject: [PATCH 3/6] backlight: add kernel-internal backlight API Date: Mon, 24 Oct 2016 16:08:50 +0300 Message-ID: <20161024130853.13124-4-marta.lofstedt@intel.com> References: <1410364463-12692-1-git-send-email-dh.herrmann@gmail.com> <20161024130853.13124-1-marta.lofstedt@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id D01DC6E41C for ; Mon, 24 Oct 2016 13:06:08 +0000 (UTC) In-Reply-To: <20161024130853.13124-1-marta.lofstedt@intel.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 RnJvbTogRGF2aWQgSGVycm1hbm4gPGRoLmhlcnJtYW5uIGF0IGdtYWlsLmNvbT4KClNvIGZhciBi YWNrbGlnaHRzIGhhdmUgb25seSBiZWVuIGNvbnRyb2xsZWQgdmlhIHN5c2ZzLiBIb3dldmVyLCBz eXNmcyBpcwpub3QgYSBwcm9wZXIgdXNlci1zcGFjZSBBUEkgZm9yIHJ1bnRpbWUgbW9kaWZpY2F0 aW9ucywgYW5kIG5ldmVyIHdhcwppbnRlbmRlZCB0byBwcm92aWRlIHN1Y2guIFRoZSBEUk0gZHJp dmVycyBhcmUgbm93IHByZXBhcmVkIHRvIHByb3ZpZGUKc3VjaCBhIGJhY2tsaWdodCBsaW5rIHNv IHVzZXItc3BhY2UgY2FuIGNvbnRyb2wgYmFja2xpZ2h0IHZpYSBEUk0KY29ubmVjdG9yIHByb3Bl cnRpZXMuIFRoaXMgYWxsb3dzIHVzIHRvIGVtcGxveSB0aGUgc2FtZSBhY2Nlc3MtbWFuYWdlbWVu dAp3ZSB1c2UgZm9yIG1vZGUtc2V0dGluZy4KClRoaXMgcGF0Y2ggYWRkcyBmZXcga2VybmVsLWlu dGVybmFsIGJhY2tsaWdodCBoZWxwZXJzIHNvIHdlIGNhbiBtb2RpZnkKYmFja2xpZ2h0cyBmcm9t IHdpdGhpbiBEUk0uCgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBIZXJybWFubiA8ZGguaGVycm1hbm4g YXQgZ21haWwuY29tPgotLS0KIGRyaXZlcnMvdmlkZW8vYmFja2xpZ2h0L2JhY2tsaWdodC5jIHwg NjUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9saW51eC9i YWNrbGlnaHQuaCAgICAgICAgICAgfCAxNiArKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgODEg aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdmlkZW8vYmFja2xpZ2h0L2JhY2ts aWdodC5jIGIvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYmFja2xpZ2h0LmMKaW5kZXggNzE2YzA5 MS4uYzdiMzM1YyAxMDA2NDQKLS0tIGEvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYmFja2xpZ2h0 LmMKKysrIGIvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYmFja2xpZ2h0LmMKQEAgLTQ4OSw2ICs0 ODksNzEgQEAgaW50IGJhY2tsaWdodF91bnJlZ2lzdGVyX25vdGlmaWVyKHN0cnVjdCBub3RpZmll cl9ibG9jayAqbmIpCiBFWFBPUlRfU1lNQk9MKGJhY2tsaWdodF91bnJlZ2lzdGVyX25vdGlmaWVy KTsKIAogLyoqCisgKiBiYWNrbGlnaHRfZGV2aWNlX2xvb2t1cCAtIGZpbmQgYSBiYWNrbGlnaHQg ZGV2aWNlCisgKiBAbmFtZTogc3lzbmFtZSBvZiB0aGUgYmFja2xpZ2h0IGRldmljZQorICoKKyAq IEByZXR1cm4gUmVmZXJlbmNlIHRvIHRoZSBiYWNrbGlnaHQgZGV2aWNlLCBOVUxMIGlmIG5vdCBm b3VuZC4KKyAqCisgKiBUaGlzIHNlYXJjaGVzIHRocm91Z2ggYWxsIHJlZ2lzdGVyZWQgYmFja2xp Z2h0IGRldmljZXMgZm9yIGEgZGV2aWNlIHdpdGggdGhlCisgKiBnaXZlbiBkZXZpY2UgbmFtZS4g SW4gY2FzZSBub25lIGlzIGZvdW5kLCBOVUxMIGlzIHJldHVybmVkLCBvdGhlcndpc2UgYQorICog bmV3IHJlZmVyZW5jZSB0byB0aGUgYmFja2xpZ2h0IGRldmljZSBpcyByZXR1cm5lZC4gWW91IG11 c3QgZHJvcCB0aGlzCisgKiByZWZlcmVuY2UgdmlhIGJhY2tsaWdodF9kZXZpY2VfdW5yZWYoKSBv bmNlIGRvbmUuCisgKiBOb3RlIHRoYXQgdGhlIGRldmljZXMgbWlnaHQgZ2V0IHVucmVnaXN0ZXJl ZCBhdCBhbnkgdGltZS4gWW91IG5lZWQgdG8gbG9jaworICogYXJvdW5kIHRoaXMgbG9va3VwIGFu ZCBpbnNpZGUgb2YgeW91ciBiYWNrbGlnaHQtbm90aWZpZXIgaWYgeW91IG5lZWQgdG8ga25vdwor ICogd2hlbiBhIGRldmljZSBnZXRzIHVucmVnaXN0ZXJlZC4KKyAqCisgKiBUaGlzIGZ1bmN0aW9u IGNhbiBiZSBzYWZlbHkgY2FsbGVkIGZyb20gSVJRIGNvbnRleHQuCisgKi8KK3N0cnVjdCBiYWNr bGlnaHRfZGV2aWNlICpiYWNrbGlnaHRfZGV2aWNlX2xvb2t1cChjb25zdCBjaGFyICpuYW1lKQor eworCXN0cnVjdCBiYWNrbGlnaHRfZGV2aWNlICpiZDsKKwl1bnNpZ25lZCBsb25nIGZsYWdzOwor CWNvbnN0IGNoYXIgKnQ7CisKKwlzcGluX2xvY2tfaXJxc2F2ZSgmYmFja2xpZ2h0X2Rldl9saXN0 X2xvY2ssIGZsYWdzKTsKKworCWxpc3RfZm9yX2VhY2hfZW50cnkoYmQsICZiYWNrbGlnaHRfZGV2 X2xpc3QsIGVudHJ5KSB7CisJCXQgPSBkZXZfbmFtZSgmYmQtPmRldik7CisJCWlmICh0ICYmICFz dHJjbXAodCwgbmFtZSkpCisJCQlnb3RvIG91dDsKKwl9CisKKwliZCA9IE5VTEw7CisKK291dDoK KwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZiYWNrbGlnaHRfZGV2X2xpc3RfbG9jaywgZmxhZ3Mp OworCWJhY2tsaWdodF9kZXZpY2VfcmVmKGJkKTsKKwlyZXR1cm4gYmQ7Cit9CitFWFBPUlRfU1lN Qk9MX0dQTChiYWNrbGlnaHRfZGV2aWNlX2xvb2t1cCk7CisKKy8qKgorICogYmFja2xpZ2h0X3Nl dF9icmlnaHRuZXNzIC0gc2V0IGJyaWdodG5lc3Mgb24gYSBiYWNrbGlnaHQgZGV2aWNlCisgKiBA YmQ6IGJhY2tsaWdodCBkZXZpY2UgdG8gb3BlcmF0ZSBvbgorICogQHZhbHVlOiBicmlnaHRuZXNz IHZhbHVlIHRvIHNldCBvbiB0aGUgZGV2aWNlCisgKiBAcmVhc29uOiBiYWNrbGlnaHQtY2hhbmdl IHJlYXNvbiB0byB1c2UgZm9yIG5vdGlmaWNhdGlvbnMKKyAqCisgKiBUaGlzIGlzIHRoZSBpbi1r ZXJuZWwgQVBJIGVxdWl2YWxlbnQgb2Ygd3JpdGluZyBpbnRvIHRoZSAnYnJpZ2h0bmVzcycgc3lz ZnMKKyAqIGZpbGUuIEl0IGNhbGxzIGludG8gdGhlIHVuZGVybHlpbmcgYmFja2xpZ2h0IGRyaXZl ciB0byBjaGFuZ2UgdGhlIGJyaWdodG5lc3MKKyAqIHZhbHVlLiBUaGUgdmFsdWUgaXMgY2xhbXBl ZCBhY2NvcmRpbmcgdG8gZGV2aWNlIGJvdW5kcy4KKyAqIEEgdWV2ZW50IG5vdGlmaWNhdGlvbiBp cyBzZW50IHdpdGggdGhlIHJlYXNvbiBzZXQgdG8gQHJlYXNvbi4KKyAqLwordm9pZCBiYWNrbGln aHRfc2V0X2JyaWdodG5lc3Moc3RydWN0IGJhY2tsaWdodF9kZXZpY2UgKmJkLCB1bnNpZ25lZCBp bnQgdmFsdWUsCisJCQkgICAgICBlbnVtIGJhY2tsaWdodF91cGRhdGVfcmVhc29uIHJlYXNvbikK K3sKKwltdXRleF9sb2NrKCZiZC0+b3BzX2xvY2spOworCWlmIChiZC0+b3BzKSB7CisJCXZhbHVl ID0gY2xhbXAodmFsdWUsIDBVLCAodW5zaWduZWQpYmQtPnByb3BzLm1heF9icmlnaHRuZXNzKTsK KwkJcHJfZGVidWcoInNldCBicmlnaHRuZXNzIHRvICV1XG4iLCB2YWx1ZSk7CisJCWJkLT5wcm9w cy5icmlnaHRuZXNzID0gdmFsdWU7CisJCWJhY2tsaWdodF91cGRhdGVfc3RhdHVzKGJkKTsKKwl9 CisJbXV0ZXhfdW5sb2NrKCZiZC0+b3BzX2xvY2spOworCWJhY2tsaWdodF9nZW5lcmF0ZV9ldmVu dChiZCwgcmVhc29uKTsKK30KK0VYUE9SVF9TWU1CT0xfR1BMKGJhY2tsaWdodF9zZXRfYnJpZ2h0 bmVzcyk7CisKKy8qKgogICogZGV2bV9iYWNrbGlnaHRfZGV2aWNlX3JlZ2lzdGVyIC0gcmVzb3Vy Y2UgbWFuYWdlZCBiYWNrbGlnaHRfZGV2aWNlX3JlZ2lzdGVyKCkKICAqIEBkZXY6IHRoZSBkZXZp Y2UgdG8gcmVnaXN0ZXIKICAqIEBuYW1lOiB0aGUgbmFtZSBvZiB0aGUgZGV2aWNlCmRpZmYgLS1n aXQgYS9pbmNsdWRlL2xpbnV4L2JhY2tsaWdodC5oIGIvaW5jbHVkZS9saW51eC9iYWNrbGlnaHQu aAppbmRleCA1ZjJmZDYxLi44OTVjNDY2MSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC9iYWNr bGlnaHQuaAorKysgYi9pbmNsdWRlL2xpbnV4L2JhY2tsaWdodC5oCkBAIC0xNDYsNiArMTQ2LDIy IEBAIGV4dGVybiBpbnQgYmFja2xpZ2h0X3VucmVnaXN0ZXJfbm90aWZpZXIoc3RydWN0IG5vdGlm aWVyX2Jsb2NrICpuYik7CiBleHRlcm4gc3RydWN0IGJhY2tsaWdodF9kZXZpY2UgKmJhY2tsaWdo dF9kZXZpY2VfZ2V0X2J5X3R5cGUoZW51bSBiYWNrbGlnaHRfdHlwZSB0eXBlKTsKIGV4dGVybiBp bnQgYmFja2xpZ2h0X2RldmljZV9zZXRfYnJpZ2h0bmVzcyhzdHJ1Y3QgYmFja2xpZ2h0X2Rldmlj ZSAqYmQsIHVuc2lnbmVkIGxvbmcgYnJpZ2h0bmVzcyk7CiAKK3N0cnVjdCBiYWNrbGlnaHRfZGV2 aWNlICpiYWNrbGlnaHRfZGV2aWNlX2xvb2t1cChjb25zdCBjaGFyICpuYW1lKTsKK3ZvaWQgYmFj a2xpZ2h0X3NldF9icmlnaHRuZXNzKHN0cnVjdCBiYWNrbGlnaHRfZGV2aWNlICpiZCwgdW5zaWdu ZWQgaW50IHZhbHVlLAorCQkJICAgICAgZW51bSBiYWNrbGlnaHRfdXBkYXRlX3JlYXNvbiByZWFz b24pOworCitzdGF0aWMgaW5saW5lIHZvaWQgYmFja2xpZ2h0X2RldmljZV9yZWYoc3RydWN0IGJh Y2tsaWdodF9kZXZpY2UgKmJkKQoreworCWlmIChiZCkKKwkJZ2V0X2RldmljZSgmYmQtPmRldik7 Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBiYWNrbGlnaHRfZGV2aWNlX3VucmVmKHN0cnVjdCBi YWNrbGlnaHRfZGV2aWNlICpiZCkKK3sKKwlpZiAoYmQpCisJCXB1dF9kZXZpY2UoJmJkLT5kZXYp OworfQorCiAjZGVmaW5lIHRvX2JhY2tsaWdodF9kZXZpY2Uob2JqKSBjb250YWluZXJfb2Yob2Jq LCBzdHJ1Y3QgYmFja2xpZ2h0X2RldmljZSwgZGV2KQogCiBzdGF0aWMgaW5saW5lIHZvaWQgKiBi bF9nZXRfZGF0YShzdHJ1Y3QgYmFja2xpZ2h0X2RldmljZSAqYmxfZGV2KQotLSAKMi45LjMKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=