From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Lowry Li (Arm Technology China)" Subject: [PATCH v1 1/2] drm/komeda: Add rotation support on Komeda driver Date: Fri, 19 Apr 2019 07:58:30 +0000 Message-ID: <1555660675-4903-2-git-send-email-lowry.li@arm.com> References: <1555660675-4903-1-git-send-email-lowry.li@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00089.outbound.protection.outlook.com [40.107.0.89]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8D432891FF for ; Fri, 19 Apr 2019 07:58:32 +0000 (UTC) In-Reply-To: <1555660675-4903-1-git-send-email-lowry.li@arm.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Liviu Dudau , "james qian wang (Arm Technology China)" , "maarten.lankhorst@linux.intel.com" , "seanpaul@chromium.org" , "airlied@linux.ie" , Brian Starkey Cc: Ayan Halder , "Jonathan Chai (Arm Technology China)" , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "Julien Yin (Arm Technology China)" , nd List-Id: dri-devel@lists.freedesktop.org LSBBZGRzIHJvdGF0aW9uIHByb3BlcnR5IHRvIHBsYW5lLg0KLSBLb21lZGEgZGlzcGxheSByb3Rh dGlvbiBzdXBwb3J0IGRpdmVyZ2VzIGZyb20gdGhlIHNwZWNpZmljIGZvcm1hdHMsDQpzbyBuZWVk IHRvIGNoZWNrIHRoZSB1c2VyIHJlcXVpcmVkIHJvdGF0aW9uIHR5cGUgd2l0aCB0aGUgZm9ybWF0 IGNhcHMNCmFuZCByZWplY3QgdGhlIGNvbW1pdCBpZiBpdCBjYW4gbm90IGJlIHN1cHBvcnRlZC4N Ci0gSW4gdGhlIGxheWVyIHZhbGlkYXRlIGZsb3csIHNldHMgdGhlIHJvdGF0aW9uIHZhbHVlIHRv IHRoZSBsYXllcg0Kc3RhdGUuIElmIHI5MCBvciByMjcwLCBzd2FwIHRoZSB3aWR0aCBhbmQgaGVp Z2h0IG9mIHRoZSBkYXRhIGZsb3cNCmZvciBuZXh0IHN0YWdlLg0KDQpTaWduZWQtb2ZmLWJ5OiBM b3dyeSBMaSAoQXJtIFRlY2hub2xvZ3kgQ2hpbmEpIDxsb3dyeS5saUBhcm0uY29tPg0KLS0tDQog ZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfZm9ybWF0X2NhcHMuaCAg fCAxMSArKysrKysrKysrKw0KIC4uLi9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFf cGlwZWxpbmVfc3RhdGUuYyAgIHwgIDcgKysrKysrKw0KIGRyaXZlcnMvZ3B1L2RybS9hcm0vZGlz cGxheS9rb21lZGEva29tZWRhX3BsYW5lLmMgICAgICAgIHwgMTYgKysrKysrKysrKysrKysrKw0K IDMgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfZm9ybWF0X2NhcHMuaCBiL2RyaXZl cnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX2Zvcm1hdF9jYXBzLmgNCmluZGV4 IGJjM2IyZGYzNi4uOTZkZTIyZSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlz cGxheS9rb21lZGEva29tZWRhX2Zvcm1hdF9jYXBzLmgNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h cm0vZGlzcGxheS9rb21lZGEva29tZWRhX2Zvcm1hdF9jYXBzLmgNCkBAIC03OSw2ICs3OSwxNyBA QCBzdHJ1Y3Qga29tZWRhX2Zvcm1hdF9jYXBzX3RhYmxlIHsNCiANCiBleHRlcm4gdTY0IGtvbWVk YV9zdXBwb3J0ZWRfbW9kaWZpZXJzW107DQogDQorc3RhdGljIGlubGluZSBjb25zdCBjaGFyICpr b21lZGFfZ2V0X2Zvcm1hdF9uYW1lKHUzMiBmb3VyY2MsIHU2NCBtb2RpZmllcikNCit7DQorCXN0 cnVjdCBkcm1fZm9ybWF0X25hbWVfYnVmIGJ1ZjsNCisJc3RhdGljIGNoYXIgbmFtZVs2NF07DQor DQorCXNucHJpbnRmKG5hbWUsIHNpemVvZihuYW1lKSwgIiVzIHdpdGggbW9kaWZpZXI6IDB4JWxs eC4iLA0KKwkJIGRybV9nZXRfZm9ybWF0X25hbWUoZm91cmNjLCAmYnVmKSwgbW9kaWZpZXIpOw0K Kw0KKwlyZXR1cm4gbmFtZTsNCit9DQorDQogY29uc3Qgc3RydWN0IGtvbWVkYV9mb3JtYXRfY2Fw cyAqDQoga29tZWRhX2dldF9mb3JtYXRfY2FwcyhzdHJ1Y3Qga29tZWRhX2Zvcm1hdF9jYXBzX3Rh YmxlICp0YWJsZSwNCiAJCSAgICAgICB1MzIgZm91cmNjLCB1NjQgbW9kaWZpZXIpOw0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21lZGEva29tZWRhX3BpcGVsaW5l X3N0YXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29tZWRhL2tvbWVkYV9waXBl bGluZV9zdGF0ZS5jDQppbmRleCA5YjI5ZTlhLi44YzEzM2U0IDEwMDY0NA0KLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfcGlwZWxpbmVfc3RhdGUuYw0KKysr IGIvZHJpdmVycy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfcGlwZWxpbmVfc3Rh dGUuYw0KQEAgLTMxNyw2ICszMTcsMTMgQEAgc3RydWN0IGtvbWVkYV9waXBlbGluZV9zdGF0ZSAq DQogCS8qIHVwZGF0ZSB0aGUgZGF0YSBmbG93IGZvciB0aGUgbmV4dCBzdGFnZSAqLw0KIAlrb21l ZGFfY29tcG9uZW50X3NldF9vdXRwdXQoJmRmbG93LT5pbnB1dCwgJmxheWVyLT5iYXNlLCAwKTsN CiANCisJLyoNCisJICogVGhlIHJvdGF0aW9uIGhhcyBiZWVuIGhhbmRsZWQgYnkgbGF5ZXIsIHNv IGFkanVzdGVkIHRoZSBkYXRhIGZsb3cgZm9yDQorCSAqIHRoZSBuZXh0IHN0YWdlLg0KKwkgKi8N CisJaWYgKGRybV9yb3RhdGlvbl85MF9vcl8yNzAoc3QtPnJvdCkpDQorCQlzd2FwKGRmbG93LT5p bl9oLCBkZmxvdy0+aW5fdyk7DQorDQogCXJldHVybiAwOw0KIH0NCiANCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vYXJtL2Rpc3BsYXkva29tZWRhL2tvbWVkYV9wbGFuZS5jIGIvZHJpdmVy cy9ncHUvZHJtL2FybS9kaXNwbGF5L2tvbWVkYS9rb21lZGFfcGxhbmUuYw0KaW5kZXggMTRkNjg2 MS4uNWU1YmZkYiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21l ZGEva29tZWRhX3BsYW5lLmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vZGlzcGxheS9rb21l ZGEva29tZWRhX3BsYW5lLmMNCkBAIC05LDEyICs5LDE0IEBADQogI2luY2x1ZGUgPGRybS9kcm1f cGxhbmVfaGVscGVyLmg+DQogI2luY2x1ZGUgImtvbWVkYV9kZXYuaCINCiAjaW5jbHVkZSAia29t ZWRhX2ttcy5oIg0KKyNpbmNsdWRlICJrb21lZGFfZnJhbWVidWZmZXIuaCINCiANCiBzdGF0aWMg aW50DQoga29tZWRhX3BsYW5lX2luaXRfZGF0YV9mbG93KHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUg KnN0LA0KIAkJCSAgICBzdHJ1Y3Qga29tZWRhX2RhdGFfZmxvd19jZmcgKmRmbG93KQ0KIHsNCiAJ c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBzdC0+ZmI7DQorCWNvbnN0IHN0cnVjdCBrb21l ZGFfZm9ybWF0X2NhcHMgKmNhcHMgPSB0b19rZmIoZmIpLT5mb3JtYXRfY2FwczsNCiANCiAJbWVt c2V0KGRmbG93LCAwLCBzaXplb2YoKmRmbG93KSk7DQogDQpAQCAtMzUsNiArMzcsMTUgQEANCiAJ ZGZsb3ctPmluX3cgPSBzdC0+c3JjX3cgPj4gMTY7DQogCWRmbG93LT5pbl9oID0gc3QtPnNyY19o ID4+IDE2Ow0KIA0KKwlkZmxvdy0+cm90ID0gZHJtX3JvdGF0aW9uX3NpbXBsaWZ5KHN0LT5yb3Rh dGlvbiwgY2Fwcy0+c3VwcG9ydGVkX3JvdHMpOw0KKwlpZiAoIWhhc19iaXRzKGRmbG93LT5yb3Qs IGNhcHMtPnN1cHBvcnRlZF9yb3RzKSkgew0KKwkJRFJNX0RFQlVHX0FUT01JQygicm90YXRpb24o MHgleCkgaXNuJ3Qgc3VwcG9ydGVkIGJ5ICVzLlxuIiwNCisJCQkJIGRmbG93LT5yb3QsDQorCQkJ CSBrb21lZGFfZ2V0X2Zvcm1hdF9uYW1lKGNhcHMtPmZvdXJjYywNCisJCQkJCQkJZmItPm1vZGlm aWVyKSk7DQorCQlyZXR1cm4gLUVJTlZBTDsNCisJfQ0KKw0KIAlyZXR1cm4gMDsNCiB9DQogDQpA QCAtMjMzLDYgKzI0NCwxMSBAQCBzdGF0aWMgaW50IGtvbWVkYV9wbGFuZV9hZGQoc3RydWN0IGtv bWVkYV9rbXNfZGV2ICprbXMsDQogDQogCWRybV9wbGFuZV9oZWxwZXJfYWRkKHBsYW5lLCAma29t ZWRhX3BsYW5lX2hlbHBlcl9mdW5jcyk7DQogDQorCWVyciA9IGRybV9wbGFuZV9jcmVhdGVfcm90 YXRpb25fcHJvcGVydHkocGxhbmUsIERSTV9NT0RFX1JPVEFURV8wLA0KKwkJCQkJCSBsYXllci0+ c3VwcG9ydGVkX3JvdHMpOw0KKwlpZiAoZXJyKQ0KKwkJZ290byBjbGVhbnVwOw0KKw0KIAllcnIg PSBkcm1fcGxhbmVfY3JlYXRlX2FscGhhX3Byb3BlcnR5KHBsYW5lKTsNCiAJaWYgKGVycikNCiAJ CWdvdG8gY2xlYW51cDsNCi0tIA0KMS45LjENCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVs