From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 5/5] drm/udl: Replace struct udl_framebuffer with generic implementation Date: Thu, 14 Nov 2019 15:10:25 +0100 Message-ID: <20191114141025.32198-6-tzimmermann@suse.de> References: <20191114141025.32198-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id DC3006E9D1 for ; Thu, 14 Nov 2019 14:10:32 +0000 (UTC) In-Reply-To: <20191114141025.32198-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: airlied@redhat.com, sean@poorly.run, daniel@ffwll.ch, kraxel@redhat.com, emil.velikov@collabora.com, sam@ravnborg.org, noralf@tronnes.org Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhlIHVkbCBkcml2ZXIncyBzdHJ1Y3QgdWRsX2ZyYW1lYnVmZmVyIHN0b3JlcyBhIERSTSBmcmFt ZWJ1ZmZlcgp3aXRoIGFuIGFzc29jaWF0ZWQgR0VNIG9iamVjdC4gVGhpcyBmdW5jdGlvbmFsaXR5 IGlzIGFsc28gcHJvdmlkZWQgYnkKZ2VuZXJpYyBjb2RlLiBTd2l0Y2ggdWRsIG92ZXIuCgpTaWdu ZWQtb2ZmLWJ5OiBUaG9tYXMgWmltbWVybWFubiA8dHppbW1lcm1hbm5Ac3VzZS5kZT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuaCB8ICA3IC0tLS0KIGRyaXZlcnMvZ3B1L2RybS91 ZGwvdWRsX2ZiLmMgIHwgNjIgKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDIg ZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS91ZGwv dWRsX2Rydi5oCmluZGV4IGM1ZTMxNjAzOTJjYi4uNjZjYmUwNGY4MzJhIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3Vk bF9kcnYuaApAQCAtNzQsMTMgKzc0LDYgQEAgc3RydWN0IHVkbF9kZXZpY2UgewogCiAjZGVmaW5l IHRvX3VkbCh4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IHVkbF9kZXZpY2UsIGRybSkKIAotc3Ry dWN0IHVkbF9mcmFtZWJ1ZmZlciB7Ci0Jc3RydWN0IGRybV9mcmFtZWJ1ZmZlciBiYXNlOwotCXN0 cnVjdCBkcm1fZ2VtX3NobWVtX29iamVjdCAqc2htZW07Ci19OwotCi0jZGVmaW5lIHRvX3VkbF9m Yih4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IHVkbF9mcmFtZWJ1ZmZlciwgYmFzZSkKLQogLyog bW9kZXNldCAqLwogaW50IHVkbF9tb2Rlc2V0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7 CiB2b2lkIHVkbF9tb2Rlc2V0X3Jlc3RvcmUoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9mYi5jIGIvZHJpdmVycy9ncHUvZHJtL3Vk bC91ZGxfZmIuYwppbmRleCBhZDdiZjE2NWI1OWIuLmMxOTk2YWM3M2ExZiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZmIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3Vk bF9mYi5jCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjX2hlbHBlci5o PgogI2luY2x1ZGUgPGRybS9kcm1fZHJ2Lmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9mb3VyY2MuaD4K KyNpbmNsdWRlIDxkcm0vZHJtX2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KICNpbmNsdWRlIDxk cm0vZHJtX2dlbV9zaG1lbV9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJtX21vZGVzZXRfaGVs cGVyLmg+CiAKQEAgLTE5OSw2OCArMjAwLDE3IEBAIHN0YXRpYyBpbnQgdWRsX3VzZXJfZnJhbWVi dWZmZXJfZGlydHkoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCiAJcmV0dXJuIHJldDsKIH0K IAotc3RhdGljIHZvaWQgdWRsX3VzZXJfZnJhbWVidWZmZXJfZGVzdHJveShzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICpmYikKLXsKLQlzdHJ1Y3QgdWRsX2ZyYW1lYnVmZmVyICp1ZmIgPSB0b191ZGxf ZmIoZmIpOwotCi0JaWYgKHVmYi0+c2htZW0pCi0JCWRybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tl ZCgmdWZiLT5zaG1lbS0+YmFzZSk7Ci0KLQlkcm1fZnJhbWVidWZmZXJfY2xlYW51cChmYik7Ci0J a2ZyZWUodWZiKTsKLX0KLQogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXJfZnVu Y3MgdWRsZmJfZnVuY3MgPSB7Ci0JLmRlc3Ryb3kgPSB1ZGxfdXNlcl9mcmFtZWJ1ZmZlcl9kZXN0 cm95LAotCS5kaXJ0eSA9IHVkbF91c2VyX2ZyYW1lYnVmZmVyX2RpcnR5LAorCS5kZXN0cm95CT0g ZHJtX2dlbV9mYl9kZXN0cm95LAorCS5jcmVhdGVfaGFuZGxlCT0gZHJtX2dlbV9mYl9jcmVhdGVf aGFuZGxlLAorCS5kaXJ0eQkJPSB1ZGxfdXNlcl9mcmFtZWJ1ZmZlcl9kaXJ0eSwKIH07CiAKLQot c3RhdGljIGludAotdWRsX2ZyYW1lYnVmZmVyX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK LQkJICAgICBzdHJ1Y3QgdWRsX2ZyYW1lYnVmZmVyICp1ZmIsCi0JCSAgICAgY29uc3Qgc3RydWN0 IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21kLAotCQkgICAgIHN0cnVjdCBkcm1fZ2VtX3NobWVt X29iamVjdCAqc2htZW0pCi17Ci0JaW50IHJldDsKLQotCXVmYi0+c2htZW0gPSBzaG1lbTsKLQlk cm1faGVscGVyX21vZGVfZmlsbF9mYl9zdHJ1Y3QoZGV2LCAmdWZiLT5iYXNlLCBtb2RlX2NtZCk7 Ci0JcmV0ID0gZHJtX2ZyYW1lYnVmZmVyX2luaXQoZGV2LCAmdWZiLT5iYXNlLCAmdWRsZmJfZnVu Y3MpOwotCXJldHVybiByZXQ7Ci19Ci0KIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKgogdWRsX2Zi X3VzZXJfZmJfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCSAgIHN0cnVjdCBkcm1f ZmlsZSAqZmlsZSwKIAkJICAgY29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgKm1vZGVfY21k KQogewotCXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqOwotCXN0cnVjdCB1ZGxfZnJhbWVidWZm ZXIgKnVmYjsKLQlpbnQgcmV0OwotCXVpbnQzMl90IHNpemU7Ci0KLQlvYmogPSBkcm1fZ2VtX29i amVjdF9sb29rdXAoZmlsZSwgbW9kZV9jbWQtPmhhbmRsZXNbMF0pOwotCWlmIChvYmogPT0gTlVM TCkKLQkJcmV0dXJuIEVSUl9QVFIoLUVOT0VOVCk7Ci0KLQlzaXplID0gbW9kZV9jbWQtPnBpdGNo ZXNbMF0gKiBtb2RlX2NtZC0+aGVpZ2h0OwotCXNpemUgPSBBTElHTihzaXplLCBQQUdFX1NJWkUp OwotCi0JaWYgKHNpemUgPiBvYmotPnNpemUpIHsKLQkJRFJNX0VSUk9SKCJvYmplY3Qgc2l6ZSBu b3Qgc3VmZmljaWVudCBmb3IgZmIgJWQgJXp1ICVkICVkXG4iLCBzaXplLCBvYmotPnNpemUsIG1v ZGVfY21kLT5waXRjaGVzWzBdLCBtb2RlX2NtZC0+aGVpZ2h0KTsKLQkJcmV0dXJuIEVSUl9QVFIo LUVOT01FTSk7Ci0JfQotCi0JdWZiID0ga3phbGxvYyhzaXplb2YoKnVmYiksIEdGUF9LRVJORUwp OwotCWlmICh1ZmIgPT0gTlVMTCkKLQkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7Ci0KLQlyZXQg PSB1ZGxfZnJhbWVidWZmZXJfaW5pdChkZXYsIHVmYiwgbW9kZV9jbWQsCi0JCQkJICAgdG9fZHJt X2dlbV9zaG1lbV9vYmoob2JqKSk7Ci0JaWYgKHJldCkgewotCQlrZnJlZSh1ZmIpOwotCQlyZXR1 cm4gRVJSX1BUUigtRUlOVkFMKTsKLQl9Ci0JcmV0dXJuICZ1ZmItPmJhc2U7CisJcmV0dXJuIGRy bV9nZW1fZmJfY3JlYXRlX3dpdGhfZnVuY3MoZGV2LCBmaWxlLCBtb2RlX2NtZCwKKwkJCQkJICAg ICZ1ZGxmYl9mdW5jcyk7CiB9Ci0tIAoyLjIzLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbA==