From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: [PATCH 28/36] fbdev: s3c2410fb: remove mach header dependency Date: Thu, 10 Oct 2019 22:30:12 +0200 Message-ID: <20191010203043.1241612-28-arnd@arndb.de> References: <20191010202802.1132272-1-arnd@arndb.de> <20191010203043.1241612-1-arnd@arndb.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20191010203043.1241612-1-arnd@arndb.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Kukjin Kim , Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz Cc: linux-fbdev@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Arnd Bergmann , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org List-Id: linux-samsung-soc@vger.kernel.org VGhlIHMzYzI0MTBmYiBkcml2ZXIgaXMgdG9vIGRlZXBseSBpbnRlcnR3aW5lZCB3aXRoIHRoZSBz M2MyNHh4CnBsYXRmb3JtIGNvZGUuIENoYW5nZSBpdCBpbiBhIHdheSB0aGF0IGF2b2lkcyB0aGUg dXNlIG9mIHBsYXRmb3JtCmhlYWRlciBmaWxlcyBidXQgaGF2aW5nIGFsbCBpbnRlcmZhY2UgZGF0 YSBpbiBhIHBsYXRmb3JtX2RhdGEKaGVhZGVyLCBhbmQgdGhlIHByaXZhdGUgcmVnaXN0ZXIgZGVm aW5pdGlvbnMgbmV4dCB0byB0aGUgZHJpdmVyCml0c2VsZi4KCk9uZSB1Z2x5IGJpdCBoZXJlIGlz IHRoYXQgdGhlIGRyaXZlciBwb2tlcyBkaXJlY3RseSBpbnRvIGdwaW8KcmVnaXN0ZXJzLCB3aGlj aCBhcmUgb3duZWQgYnkgYW5vdGhlciBkcml2ZXIuIFBhc3NpbmcgdGhlCm1hcHBlZCBhZGRyZXNz ZXMgaW4gcGxhdGZvcm1fZGF0YSBpcyBzb21ld2hhdCBzdWJvcHRpbWFsLCBidXQKaXQgaXMgYSBz bWFsbCBpbXByb3ZlbWVudCBvdmVyIHRoZSBwcmV2aW91cyB2ZXJzaW9uLgoKU2lnbmVkLW9mZi1i eTogQXJuZCBCZXJnbWFubiA8YXJuZEBhcm5kYi5kZT4KLS0tCiBhcmNoL2FybS9tYWNoLXMzYzI0 eHgvaW5jbHVkZS9tYWNoL2ZiLmggICAgICAgfCAgMiAtLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4 L21hY2gtYW1sbTU5MDAuYyAgICAgICAgIHwgIDcgKystLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4 L21hY2gtYW51YmlzLmMgICAgICAgICAgIHwgIDEgLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21h Y2gtYXQyNDQwZXZiLmMgICAgICAgIHwgIDMgKy0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNo LWJhc3QuYyAgICAgICAgICAgICB8ICAzICstCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1n dGEwMi5jICAgICAgICAgICAgfCAgMiArLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtaDE5 NDAuYyAgICAgICAgICAgIHwgIDcgKystLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtaml2 ZS5jICAgICAgICAgICAgIHwgMTAgKysrKy0tCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1t aW5pMjQ0MC5jICAgICAgICAgfCAgOSArKystLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gt bjMwLmMgICAgICAgICAgICAgIHwgIDMgKy0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLW9z aXJpcy5jICAgICAgICAgICB8ICAxIC0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXF0MjQx MC5jICAgICAgICAgICB8ICAzICstCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1yeDE5NTAu YyAgICAgICAgICAgfCAgOCArKystLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtcngzNzE1 LmMgICAgICAgICAgIHwgIDcgKystLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0 MTMuYyAgICAgICAgIHwgIDMgKy0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDE2 LmMgICAgICAgICB8ICAxIC0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDQwLmMg ICAgICAgICB8ICA4ICsrKy0tCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1zbWRrMjQ0My5j ICAgICAgICAgfCAgMyArLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtdnN0bXMuYyAgICAg ICAgICAgIHwgIDMgKy0KIGFyY2gvYXJtL3BsYXQtc2Ftc3VuZy9kZXZzLmMgICAgICAgICAgICAg ICAgICB8ICAyICstCiAuLi4vdmlkZW8vZmJkZXYvczNjMjQxMGZiLXJlZ3MtbGNkLmggICAgICAg ICAgfCAyOCArKysrLS0tLS0tLS0tLS0tCiBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3MzYzI0MTBmYi5j ICAgICAgICAgICAgICAgfCAxNiArKysrKy0tLS0KIC4uLi9saW51eC9wbGF0Zm9ybV9kYXRhfS9m Yi1zM2MyNDEwLmggICAgICAgICB8IDMzICsrKysrKysrKysrKysrKysrKy0KIDIzIGZpbGVzIGNo YW5nZWQsIDk4IGluc2VydGlvbnMoKyksIDY1IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAw NjQ0IGFyY2gvYXJtL21hY2gtczNjMjR4eC9pbmNsdWRlL21hY2gvZmIuaAogcmVuYW1lIGFyY2gv YXJtL21hY2gtczNjMjR4eC9pbmNsdWRlL21hY2gvcmVncy1sY2QuaCA9PiBkcml2ZXJzL3ZpZGVv L2ZiZGV2L3MzYzI0MTBmYi1yZWdzLWxjZC5oICg4NCUpCiByZW5hbWUge2FyY2gvYXJtL3BsYXQt c2Ftc3VuZy9pbmNsdWRlL3BsYXQgPT4gaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhfS9mYi1z M2MyNDEwLmggKDU3JSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvaW5jbHVk ZS9tYWNoL2ZiLmggYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvaW5jbHVkZS9tYWNoL2ZiLmgKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRlNTM5Y2I4Yjg4NC4uMDAwMDAwMDAwMDAwCi0t LSBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9pbmNsdWRlL21hY2gvZmIuaAorKysgL2Rldi9udWxs CkBAIC0xLDIgKzAsMCBAQAotLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAgKi8K LSNpbmNsdWRlIDxwbGF0L2ZiLXMzYzI0MTAuaD4KZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21hY2gt czNjMjR4eC9tYWNoLWFtbG01OTAwLmMgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1hbWxt NTkwMC5jCmluZGV4IDQwYWQyM2I1MmJjMC4uZWY2ZGUxYjFkMGM2IDEwMDY0NAotLS0gYS9hcmNo L2FybS9tYWNoLXMzYzI0eHgvbWFjaC1hbWxtNTkwMC5jCisrKyBiL2FyY2gvYXJtL21hY2gtczNj MjR4eC9tYWNoLWFtbG01OTAwLmMKQEAgLTMwLDkgKzMwLDggQEAKICNpbmNsdWRlIDxtYWNoL2hh cmR3YXJlLmg+CiAjaW5jbHVkZSA8YXNtL2lycS5oPgogI2luY2x1ZGUgPGFzbS9tYWNoLXR5cGVz Lmg+Ci0jaW5jbHVkZSA8bWFjaC9mYi5oPgorI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEv ZmItczNjMjQxMC5oPgogCi0jaW5jbHVkZSA8bWFjaC9yZWdzLWxjZC5oPgogI2luY2x1ZGUgPG1h Y2gvcmVncy1ncGlvLmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KIApAQCAtMTk0 LDEzICsxOTMsMTcgQEAgc3RhdGljIHN0cnVjdCBzM2MyNDEwZmJfbWFjaF9pbmZvIF9faW5pdGRh dGEgYW1sbTU5MDBfZmJfaW5mbyA9IHsKIAogCS5ncGNjb24gPQkweGFhYWFhYWFhLAogCS5ncGNj b25fbWFzayA9CTB4ZmZmZmZmZmYsCisJLmdwY2Nvbl9yZWcgPQlTM0MyNDEwX0dQQ0NPTiwKIAku Z3BjdXAgPQkweDAwMDBmZmZmLAogCS5ncGN1cF9tYXNrID0JMHhmZmZmZmZmZiwKKwkuZ3BjdXBf cmVnID0JUzNDMjQxMF9HUENVUCwKIAogCS5ncGRjb24gPQkweGFhYWFhYWFhLAogCS5ncGRjb25f bWFzayA9CTB4ZmZmZmZmZmYsCisJLmdwZGNvbl9yZWcgPQlTM0MyNDEwX0dQRENPTiwKIAkuZ3Bk dXAgPQkweDAwMDBmZmZmLAogCS5ncGR1cF9tYXNrID0JMHhmZmZmZmZmZiwKKwkuZ3BkdXBfcmVn ID0JUzNDMjQxMF9HUERVUCwKIH07CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFj aC1zM2MyNHh4L21hY2gtYW51YmlzLmMgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1hbnVi aXMuYwppbmRleCAwNzI5NjZkY2FkNzguLmUxYTczMjc0ZTkwYiAxMDA2NDQKLS0tIGEvYXJjaC9h cm0vbWFjaC1zM2MyNHh4L21hY2gtYW51YmlzLmMKKysrIGIvYXJjaC9hcm0vbWFjaC1zM2MyNHh4 L21hY2gtYW51YmlzLmMKQEAgLTI5LDcgKzI5LDYgQEAKICNpbmNsdWRlIDxhc20vbWFjaC10eXBl cy5oPgogCiAjaW5jbHVkZSA8bWFjaC9yZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3Mt bGNkLmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KICNpbmNsdWRlIDxsaW51eC9w bGF0Zm9ybV9kYXRhL210ZC1uYW5kLXMzYzI0MTAuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9y bV9kYXRhL2kyYy1zM2MyNDEwLmg+CmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgv bWFjaC1hdDI0NDBldmIuYyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLWF0MjQ0MGV2Yi5j CmluZGV4IGIyMTk5OTA2ZTY3OC4uYmZkYTZkZDJhOWQ1IDEwMDY0NAotLS0gYS9hcmNoL2FybS9t YWNoLXMzYzI0eHgvbWFjaC1hdDI0NDBldmIuYworKysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgv bWFjaC1hdDI0NDBldmIuYwpAQCAtMjUsMTIgKzI1LDExIEBACiAjaW5jbHVkZSA8YXNtL21hY2gv aXJxLmg+CiAKICNpbmNsdWRlIDxtYWNoL2hhcmR3YXJlLmg+Ci0jaW5jbHVkZSA8bWFjaC9mYi5o PgorI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEvZmItczNjMjQxMC5oPgogI2luY2x1ZGUg PGFzbS9pcnEuaD4KICNpbmNsdWRlIDxhc20vbWFjaC10eXBlcy5oPgogCiAjaW5jbHVkZSA8bWFj aC9yZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAjaW5jbHVkZSA8bWFj aC9ncGlvLXNhbXN1bmcuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL210ZC1uYW5k LXMzYzI0MTAuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2kyYy1zM2MyNDEwLmg+ CmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1iYXN0LmMgYi9hcmNoL2Fy bS9tYWNoLXMzYzI0eHgvbWFjaC1iYXN0LmMKaW5kZXggYTdjMzk1NWFlOGY2Li5jYzk0MWI1MDMw ZWEgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLWJhc3QuYworKysgYi9h cmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1iYXN0LmMKQEAgLTQwLDEwICs0MCw5IEBACiAjaW5j bHVkZSA8YXNtL21hY2gvaXJxLmg+CiAjaW5jbHVkZSA8YXNtL21hY2gtdHlwZXMuaD4KIAotI2lu Y2x1ZGUgPG1hY2gvZmIuaD4KICNpbmNsdWRlIDxtYWNoL2hhcmR3YXJlLmg+CisjaW5jbHVkZSA8 bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bWFjaC9yZWdzLWdw aW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNh bXN1bmcuaD4KIAogI2luY2x1ZGUgPHBsYXQvY3B1Lmg+CmRpZmYgLS1naXQgYS9hcmNoL2FybS9t YWNoLXMzYzI0eHgvbWFjaC1ndGEwMi5jIGIvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtZ3Rh MDIuYwppbmRleCA2MWI4YzZiYWRlYjguLjFlNDI3ODJkYmQzMCAxMDA2NDQKLS0tIGEvYXJjaC9h cm0vbWFjaC1zM2MyNHh4L21hY2gtZ3RhMDIuYworKysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgv bWFjaC1ndGEwMi5jCkBAIC01Nyw4ICs1Nyw4IEBACiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1f ZGF0YS90b3VjaHNjcmVlbi1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0 YS91c2Itb2hjaS1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS91c2It czNjMjQxMF91ZGMuaD4KKyNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2ZiLXMzYzI0MTAu aD4KIAotI2luY2x1ZGUgPG1hY2gvZmIuaD4KICNpbmNsdWRlIDxtYWNoL2hhcmR3YXJlLmg+CiAj aW5jbHVkZSA8bWFjaC9yZWdzLWdwaW8uaD4KICNpbmNsdWRlIDxtYWNoL3JlZ3MtaXJxLmg+CmRp ZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1oMTk0MC5jIGIvYXJjaC9hcm0v bWFjaC1zM2MyNHh4L21hY2gtaDE5NDAuYwppbmRleCA0NDY4OTFlMjM1MTEuLmQ1NmUzYmVmYTQ1 OSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtaDE5NDAuYworKysgYi9h cmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1oMTk0MC5jCkBAIC00NywxMSArNDcsMTAgQEAKIAog I2luY2x1ZGUgPHNvdW5kL3VkYTEzODAuaD4KIAotI2luY2x1ZGUgPG1hY2gvZmIuaD4KKyNpbmNs dWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2ZiLXMzYzI0MTAuaD4KICNpbmNsdWRlIDxtYWNoL2hh cmR3YXJlLmg+CiAjaW5jbHVkZSA8bWFjaC9yZWdzLWNsb2NrLmg+CiAjaW5jbHVkZSA8bWFjaC9y ZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAjaW5jbHVkZSA8bWFjaC9n cGlvLXNhbXN1bmcuaD4KIAogI2luY2x1ZGUgPHBsYXQvY3B1Lmg+CkBAIC0yMTEsMTIgKzIxMCwx NiBAQCBzdGF0aWMgc3RydWN0IHMzYzI0MTBmYl9tYWNoX2luZm8gaDE5NDBfZmJfaW5mbyBfX2lu aXRkYXRhID0gewogCS5scGNzZWwgPQkweDAyLAogCS5ncGNjb24gPQkweGFhOTQwNjU5LAogCS5n cGNjb25fbWFzayA9CTB4ZmZmZmMwZjAsCisJLmdwY2Nvbl9yZWcgPQlTM0MyNDEwX0dQQ0NPTiwK IAkuZ3BjdXAgPQkweDAwMDBmZmZmLAogCS5ncGN1cF9tYXNrID0JMHhmZmZmZmZmZiwKKwkuZ3Bj dXBfcmVnID0JUzNDMjQxMF9HUENVUCwKIAkuZ3BkY29uID0JMHhhYTg0YWFhMCwKIAkuZ3BkY29u X21hc2sgPQkweGZmZmZmZmZmLAorCS5ncGRjb25fcmVnID0JUzNDMjQxMF9HUERDT04sCiAJLmdw ZHVwID0JMHgwMDAwZmFmZiwKIAkuZ3BkdXBfbWFzayA9CTB4ZmZmZmZmZmYsCisJLmdwZHVwX3Jl ZyA9CVMzQzI0MTBfR1BEVVAsCiB9OwogCiBzdGF0aWMgaW50IHBvd2VyX3N1cHBseV9pbml0KHN0 cnVjdCBkZXZpY2UgKmRldikKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNo LWppdmUuYyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLWppdmUuYwppbmRleCA4ODVlOGYx MmU0YjkuLjNiMzMxMzJiMjMzNCAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21h Y2gtaml2ZS5jCisrKyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLWppdmUuYwpAQCAtMzIs OCArMzIsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEvaTJjLXMzYzI0MTAuaD4K IAogI2luY2x1ZGUgPG1hY2gvcmVncy1ncGlvLmg+Ci0jaW5jbHVkZSA8bWFjaC9yZWdzLWxjZC5o PgotI2luY2x1ZGUgPG1hY2gvZmIuaD4KKyNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2Zi LXMzYzI0MTAuaD4KICNpbmNsdWRlIDxtYWNoL2dwaW8tc2Ftc3VuZy5oPgogCiAjaW5jbHVkZSA8 YXNtL21hY2gtdHlwZXMuaD4KQEAgLTMyMSw2ICszMjAsNyBAQCBzdGF0aWMgc3RydWN0IHMzYzI0 MTBmYl9tYWNoX2luZm8gaml2ZV9sY2RfY29uZmlnID0gewogCSAqIGRhdGEuICovCiAKIAkuZ3Bj dXAJCT0gKDB4ZiA8PCAxKSB8ICgweDNmIDw8IDEwKSwKKwkuZ3BjdXBfcmVnID0JUzNDMjQxMF9H UENVUCwKIAogCS5ncGNjb24JCT0gKFMzQzI0MTBfR1BDMV9WQ0xLICAgfCBTM0MyNDEwX0dQQzJf VkxJTkUgfAogCQkJICAgUzNDMjQxMF9HUEMzX1ZGUkFNRSB8IFMzQzI0MTBfR1BDNF9WTSB8CkBA IC0zMzQsOCArMzM0LDEyIEBAIHN0YXRpYyBzdHJ1Y3QgczNjMjQxMGZiX21hY2hfaW5mbyBqaXZl X2xjZF9jb25maWcgPSB7CiAJCQkgICBTM0MyNDEwX0dQQ0NPTl9NQVNLKDEyKSB8IFMzQzI0MTBf R1BDQ09OX01BU0soMTMpIHwKIAkJCSAgIFMzQzI0MTBfR1BDQ09OX01BU0soMTQpIHwgUzNDMjQx MF9HUENDT05fTUFTSygxNSkpLAogCisJLmdwY2Nvbl9yZWcgPQlTM0MyNDEwX0dQQ0NPTiwKKwog CS5ncGR1cAkJPSAoMHgzZiA8PCAyKSB8ICgweDNmIDw8IDEwKSwKIAorCS5ncGR1cF9yZWcgPQlT M0MyNDEwX0dQRFVQLAorCiAJLmdwZGNvbgkJPSAoUzNDMjQxMF9HUEQyX1ZEMTAgIHwgUzNDMjQx MF9HUEQzX1ZEMTEgfAogCQkJICAgUzNDMjQxMF9HUEQ0X1ZEMTIgIHwgUzNDMjQxMF9HUEQ1X1ZE MTMgfAogCQkJICAgUzNDMjQxMF9HUEQ2X1ZEMTQgIHwgUzNDMjQxMF9HUEQ3X1ZEMTUgfApAQCAt MzQ5LDYgKzM1Myw4IEBAIHN0YXRpYyBzdHJ1Y3QgczNjMjQxMGZiX21hY2hfaW5mbyBqaXZlX2xj ZF9jb25maWcgPSB7CiAJCQkgICBTM0MyNDEwX0dQRENPTl9NQVNLKDEwKSB8IFMzQzI0MTBfR1BE Q09OX01BU0soMTEpfAogCQkJICAgUzNDMjQxMF9HUERDT05fTUFTSygxMikgfCBTM0MyNDEwX0dQ RENPTl9NQVNLKDEzKXwKIAkJCSAgIFMzQzI0MTBfR1BEQ09OX01BU0soMTQpIHwgUzNDMjQxMF9H UERDT05fTUFTSygxNSkpLAorCisJLmdwZGNvbl9yZWcgPQlTM0MyNDEwX0dQRENPTiwKIH07CiAK IC8qIElMSTkzMjAgc3VwcG9ydC4gKi8KZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21hY2gtczNjMjR4 eC9tYWNoLW1pbmkyNDQwLmMgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1taW5pMjQ0MC5j CmluZGV4IGQ3MzE2N2Y2MTViOC4uMjMwMWUwN2M3ZDY0IDEwMDY0NAotLS0gYS9hcmNoL2FybS9t YWNoLXMzYzI0eHgvbWFjaC1taW5pMjQ0MC5jCisrKyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9t YWNoLW1pbmkyNDQwLmMKQEAgLTMwLDEzICszMCwxMiBAQAogI2luY2x1ZGUgPGFzbS9tYWNoL2Fy Y2guaD4KICNpbmNsdWRlIDxhc20vbWFjaC9tYXAuaD4KIAorI2luY2x1ZGUgPGxpbnV4L3BsYXRm b3JtX2RhdGEvZmItczNjMjQxMC5oPgogI2luY2x1ZGUgPG1hY2gvaGFyZHdhcmUuaD4KLSNpbmNs dWRlIDxtYWNoL2ZiLmg+CiAjaW5jbHVkZSA8YXNtL21hY2gtdHlwZXMuaD4KIAogI2luY2x1ZGUg PG1hY2gvcmVncy1ncGlvLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9sZWRzLXMz YzI0eHguaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAjaW5jbHVkZSA8bWFjaC9pcnFz Lmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0 Zm9ybV9kYXRhL210ZC1uYW5kLXMzYzI0MTAuaD4KQEAgLTIxNSw2ICsyMTQsOSBAQCBzdGF0aWMg c3RydWN0IHMzYzI0MTBmYl9tYWNoX2luZm8gbWluaTI0NDBfZmJfaW5mbyBfX2luaXRkYXRhID0g ewogCQkJICAgUzNDMjQxMF9HUENDT05fTUFTSygxMikgfCBTM0MyNDEwX0dQQ0NPTl9NQVNLKDEz KSB8CiAJCQkgICBTM0MyNDEwX0dQQ0NPTl9NQVNLKDE0KSB8IFMzQzI0MTBfR1BDQ09OX01BU0so MTUpKSwKIAorCS5ncGNjb25fcmVnID0JUzNDMjQxMF9HUENDT04sCisJLmdwY3VwX3JlZyA9CVMz QzI0MTBfR1BDVVAsCisKIAkuZ3BkdXAJCT0gKDB4M2YgPDwgMikgfCAoMHgzZiA8PCAxMCksCiAK IAkuZ3BkY29uCQk9IChTM0MyNDEwX0dQRDJfVkQxMCAgfCBTM0MyNDEwX0dQRDNfVkQxMSB8CkBA IC0yMzAsNiArMjMyLDkgQEAgc3RhdGljIHN0cnVjdCBzM2MyNDEwZmJfbWFjaF9pbmZvIG1pbmky NDQwX2ZiX2luZm8gX19pbml0ZGF0YSA9IHsKIAkJCSAgIFMzQzI0MTBfR1BEQ09OX01BU0soMTAp IHwgUzNDMjQxMF9HUERDT05fTUFTSygxMSl8CiAJCQkgICBTM0MyNDEwX0dQRENPTl9NQVNLKDEy KSB8IFMzQzI0MTBfR1BEQ09OX01BU0soMTMpfAogCQkJICAgUzNDMjQxMF9HUERDT05fTUFTSygx NCkgfCBTM0MyNDEwX0dQRENPTl9NQVNLKDE1KSksCisKKwkuZ3BkY29uX3JlZyA9CVMzQzI0MTBf R1BEQ09OLAorCS5ncGR1cF9yZWcgPQlTM0MyNDEwX0dQRFVQLAogfTsKIAogLyogTU1DL1NEICAq LwpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtbjMwLmMgYi9hcmNoL2Fy bS9tYWNoLXMzYzI0eHgvbWFjaC1uMzAuYwppbmRleCBmMjgzYWJhYjA3NjEuLjZiOGVlNWJhMDBj YSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtbjMwLmMKKysrIGIvYXJj aC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtbjMwLmMKQEAgLTMxLDEwICszMSw5IEBACiAjaW5jbHVk ZSA8YXNtL2lycS5oPgogI2luY2x1ZGUgPGFzbS9tYWNoLXR5cGVzLmg+CiAKLSNpbmNsdWRlIDxt YWNoL2ZiLmg+CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CiAj aW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9sZWRzLXMzYzI0eHguaD4KICNpbmNsdWRlIDxt YWNoL3JlZ3MtZ3Bpby5oPgotI2luY2x1ZGUgPG1hY2gvcmVncy1sY2QuaD4KICNpbmNsdWRlIDxt YWNoL2dwaW8tc2Ftc3VuZy5oPgogI2luY2x1ZGUgPHBsYXQvZ3Bpby1jZmcuaD4KIApkaWZmIC0t Z2l0IGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtb3NpcmlzLmMgYi9hcmNoL2FybS9tYWNo LXMzYzI0eHgvbWFjaC1vc2lyaXMuYwppbmRleCBlZTM2MzBjYjIzNmEuLjI2MmU3N2JkNDhkZSAx MDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtb3NpcmlzLmMKKysrIGIvYXJj aC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtb3NpcmlzLmMKQEAgLTQ0LDcgKzQ0LDYgQEAKIAogI2lu Y2x1ZGUgPG1hY2gvaGFyZHdhcmUuaD4KICNpbmNsdWRlIDxtYWNoL3JlZ3MtZ3Bpby5oPgotI2lu Y2x1ZGUgPG1hY2gvcmVncy1sY2QuaD4KICNpbmNsdWRlIDxtYWNoL2dwaW8tc2Ftc3VuZy5oPgog CiAjaW5jbHVkZSAiY29tbW9uLmgiCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgv bWFjaC1xdDI0MTAuYyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXF0MjQxMC5jCmluZGV4 IDliNDdiODQzNGYxMC4uMWQwZjVkNjVlN2U1IDEwMDY0NAotLS0gYS9hcmNoL2FybS9tYWNoLXMz YzI0eHgvbWFjaC1xdDI0MTAuYworKysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1xdDI0 MTAuYwpAQCAtMzMsOCArMzMsNyBAQAogI2luY2x1ZGUgPGFzbS9tYWNoLXR5cGVzLmg+CiAKICNp bmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2xlZHMtczNjMjR4eC5oPgotI2luY2x1ZGUgPG1h Y2gvcmVncy1sY2QuaD4KLSNpbmNsdWRlIDxtYWNoL2ZiLmg+CisjaW5jbHVkZSA8bGludXgvcGxh dGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9t dGQtbmFuZC1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS91c2ItczNj MjQxMF91ZGMuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2kyYy1zM2MyNDEwLmg+ CmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1yeDE5NTAuYyBiL2FyY2gv YXJtL21hY2gtczNjMjR4eC9tYWNoLXJ4MTk1MC5jCmluZGV4IDc3NTIyMDNmZDljZC4uZWU0YTA5 OTIzMzlmIDEwMDY0NAotLS0gYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1yeDE5NTAuYwor KysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1yeDE5NTAuYwpAQCAtNDIsMTIgKzQyLDEx IEBACiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9tdGQtbmFuZC1zM2MyNDEwLmg+CiAj aW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS90b3VjaHNjcmVlbi1zM2MyNDEwLmg+CiAjaW5j bHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS91c2ItczNjMjQxMF91ZGMuaD4KKyNpbmNsdWRlIDxs aW51eC9wbGF0Zm9ybV9kYXRhL2ZiLXMzYzI0MTAuaD4KIAogI2luY2x1ZGUgPHNvdW5kL3VkYTEz ODAuaD4KIAotI2luY2x1ZGUgPG1hY2gvZmIuaD4KICNpbmNsdWRlIDxtYWNoL3JlZ3MtZ3Bpby5o PgotI2luY2x1ZGUgPG1hY2gvcmVncy1sY2QuaD4KICNpbmNsdWRlIDxtYWNoL2dwaW8tc2Ftc3Vu Zy5oPgogCiAjaW5jbHVkZSA8cGxhdC9jcHUuaD4KQEAgLTM2MSwxNCArMzYwLDE3IEBAIHN0YXRp YyBzdHJ1Y3QgczNjMjQxMGZiX21hY2hfaW5mbyByeDE5NTBfbGNkX2NmZyA9IHsKIAkubHBjc2Vs ID0gMHgwMiwKIAkuZ3BjY29uID0gMHhhYTk1NTZhOSwKIAkuZ3BjY29uX21hc2sgPSAweGZmYzAw M2ZjLAorCS5ncGNjb25fcmVnID0JUzNDMjQxMF9HUENDT04sCiAJLmdwY3VwID0gMHgwMDAwZmZm ZiwKIAkuZ3BjdXBfbWFzayA9IDB4ZmZmZmZmZmYsCisJLmdwY3VwX3JlZyA9CVMzQzI0MTBfR1BD VVAsCiAKIAkuZ3BkY29uID0gMHhhYTkwYWFhMSwKIAkuZ3BkY29uX21hc2sgPSAweGZmYzBmZmYw LAorCS5ncGRjb25fcmVnID0JUzNDMjQxMF9HUERDT04sCiAJLmdwZHVwID0gMHgwMDAwZmNmZCwK IAkuZ3BkdXBfbWFzayA9IDB4ZmZmZmZmZmYsCi0KKwkuZ3BkdXBfcmVnID0JUzNDMjQxMF9HUERV UCwKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgcHdtX2xvb2t1cCByeDE5NTBfcHdtX2xvb2t1cFtdID0g ewpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtcngzNzE1LmMgYi9hcmNo L2FybS9tYWNoLXMzYzI0eHgvbWFjaC1yeDM3MTUuYwppbmRleCAyNTQyYzUyM2FkNDYuLjg3ZjMy NzQyNDFiMiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtcngzNzE1LmMK KysrIGIvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtcngzNzE1LmMKQEAgLTMwLDE0ICszMCwx MyBAQAogI2luY2x1ZGUgPGFzbS9tYWNoL21hcC5oPgogCiAjaW5jbHVkZSA8bGludXgvcGxhdGZv cm1fZGF0YS9tdGQtbmFuZC1zM2MyNDEwLmg+CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0 YS9mYi1zM2MyNDEwLmg+CiAKICNpbmNsdWRlIDxhc20vaXJxLmg+CiAjaW5jbHVkZSA8YXNtL21h Y2gtdHlwZXMuaD4KIAotI2luY2x1ZGUgPG1hY2gvZmIuaD4KICNpbmNsdWRlIDxtYWNoL2hhcmR3 YXJlLmg+CiAjaW5jbHVkZSA8bWFjaC9yZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3Mt bGNkLmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KICNpbmNsdWRlIDxwbGF0L2dw aW8tY2ZnLmg+CiAKQEAgLTEyNiwxMyArMTI1LDE3IEBAIHN0YXRpYyBzdHJ1Y3QgczNjMjQxMGZi X21hY2hfaW5mbyByeDM3MTVfZmJfaW5mbyBfX2luaXRkYXRhID0gewogCiAJLmdwY2NvbiA9CTB4 YWE5NTU2OTksCiAJLmdwY2Nvbl9tYXNrID0JMHhmZmMwMDNjYywKKwkuZ3BjY29uX3JlZyA9CVMz QzI0MTBfR1BDQ09OLAogCS5ncGN1cCA9CTB4MDAwMGZmZmYsCiAJLmdwY3VwX21hc2sgPQkweGZm ZmZmZmZmLAorCS5ncGN1cF9yZWcgPQlTM0MyNDEwX0dQQ1VQLAogCiAJLmdwZGNvbiA9CTB4YWE5 NWFhYTEsCiAJLmdwZGNvbl9tYXNrID0JMHhmZmMwZmZmMCwKKwkuZ3BkY29uX3JlZyA9CVMzQzI0 MTBfR1BEQ09OLAogCS5ncGR1cCA9CTB4MDAwMGZhZmYsCiAJLmdwZHVwX21hc2sgPQkweGZmZmZm ZmZmLAorCS5ncGR1cF9yZWcgPQlTM0MyNDEwX0dQRFVQLAogfTsKIAogc3RhdGljIHN0cnVjdCBt dGRfcGFydGl0aW9uIF9faW5pdGRhdGEgcngzNzE1X25hbmRfcGFydFtdID0gewpkaWZmIC0tZ2l0 IGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0MTMuYyBiL2FyY2gvYXJtL21hY2gt czNjMjR4eC9tYWNoLXNtZGsyNDEzLmMKaW5kZXggMmJiYTRmMWZhN2VlLi5lZWMwZDNkYzRiYjEg MTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDEzLmMKKysrIGIv YXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0MTMuYwpAQCAtMzEsMTIgKzMxLDExIEBA CiAKIC8vI2luY2x1ZGUgPGFzbS9kZWJ1Zy1sbC5oPgogI2luY2x1ZGUgPG1hY2gvcmVncy1ncGlv Lmg+Ci0jaW5jbHVkZSA8bWFjaC9yZWdzLWxjZC5oPgogCiAjaW5jbHVkZSA8bGludXgvcGxhdGZv cm1fZGF0YS91c2ItczNjMjQxMF91ZGMuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRh L2kyYy1zM2MyNDEwLmg+CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEw Lmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KLSNpbmNsdWRlIDxtYWNoL2ZiLmg+ CiAjaW5jbHVkZSA8cGxhdC9ncGlvLWNmZy5oPgogCiAjaW5jbHVkZSA8cGxhdC9kZXZzLmg+CmRp ZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1zbWRrMjQxNi5jIGIvYXJjaC9h cm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0MTYuYwppbmRleCA2MWMzZTQ1ODk4ZDMuLmZiZDNh OGQ5NmY5NCAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0MTYu YworKysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1zbWRrMjQxNi5jCkBAIC0zMCw3ICsz MCw2IEBACiAjaW5jbHVkZSA8YXNtL21hY2gtdHlwZXMuaD4KIAogI2luY2x1ZGUgPG1hY2gvcmVn cy1ncGlvLmg+Ci0jaW5jbHVkZSA8bWFjaC9yZWdzLWxjZC5oPgogI2luY2x1ZGUgPG1hY2gvcmVn cy1zM2MyNDQzLWNsb2NrLmg+CiAjaW5jbHVkZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KIApkaWZm IC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0NDAuYyBiL2FyY2gvYXJt L21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDQwLmMKaW5kZXggZjBmY2VkYTNlOGU2Li5iOWIwZjJh OGM5MDQgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDQwLmMK KysrIGIvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtc21kazI0NDAuYwpAQCAtMjgsMTEgKzI4 LDEwIEBACiAjaW5jbHVkZSA8YXNtL21hY2gtdHlwZXMuaD4KIAogI2luY2x1ZGUgPG1hY2gvcmVn cy1ncGlvLmg+Ci0jaW5jbHVkZSA8bWFjaC9yZWdzLWxjZC5oPgogI2luY2x1ZGUgPG1hY2gvZ3Bp by1zYW1zdW5nLmg+CiAjaW5jbHVkZSA8cGxhdC9ncGlvLWNmZy5oPgogCi0jaW5jbHVkZSA8bWFj aC9mYi5oPgorI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEvZmItczNjMjQxMC5oPgogI2lu Y2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEvaTJjLXMzYzI0MTAuaD4KIAogI2luY2x1ZGUgPHBs YXQvZGV2cy5oPgpAQCAtMTM5LDYgKzEzOCwxMSBAQCBzdGF0aWMgc3RydWN0IHMzYzI0MTBmYl9t YWNoX2luZm8gc21kazI0NDBfZmJfaW5mbyBfX2luaXRkYXRhID0gewogCS5ncGRjb25fbWFzawk9 IDB4ZmZmZmZmZmYsCiAJLmdwZHVwCQk9IDB4MDAwMGZhZmYsCiAJLmdwZHVwX21hc2sJPSAweGZm ZmZmZmZmLAorCisJLmdwY2Nvbl9yZWcgPQlTM0MyNDEwX0dQQ0NPTiwKKwkuZ3BjdXBfcmVnID0J UzNDMjQxMF9HUENVUCwKKwkuZ3BkY29uX3JlZyA9CVMzQzI0MTBfR1BEQ09OLAorCS5ncGR1cF9y ZWcgPQlTM0MyNDEwX0dQRFVQLAogI2VuZGlmCiAKIAkubHBjc2VsCQk9ICgoMHhDRTYpICYgfjcp IHwgMTw8NCwKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDQz LmMgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1zbWRrMjQ0My5jCmluZGV4IDIzNThlZDVl ZDdiZS4uYTRjMTAyMjY3OGE5IDEwMDY0NAotLS0gYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFj aC1zbWRrMjQ0My5jCisrKyBiL2FyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXNtZGsyNDQzLmMK QEAgLTI3LDkgKzI3LDggQEAKICNpbmNsdWRlIDxhc20vbWFjaC10eXBlcy5oPgogCiAjaW5jbHVk ZSA8bWFjaC9yZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAKLSNpbmNs dWRlIDxtYWNoL2ZiLmg+CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEw Lmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9pMmMtczNjMjQxMC5oPgogCiAjaW5j bHVkZSA8cGxhdC9kZXZzLmg+CmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFj aC12c3Rtcy5jIGIvYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtdnN0bXMuYwppbmRleCBmMzMz Y2EwNWRlNjguLjA4YWNjNTU2ODc5YiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbWFjaC1zM2MyNHh4 L21hY2gtdnN0bXMuYworKysgYi9hcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC12c3Rtcy5jCkBA IC0zMCwxMSArMzAsMTAgQEAKICNpbmNsdWRlIDxhc20vbWFjaC10eXBlcy5oPgogCiAjaW5jbHVk ZSA8bWFjaC9yZWdzLWdwaW8uaD4KLSNpbmNsdWRlIDxtYWNoL3JlZ3MtbGNkLmg+CiAjaW5jbHVk ZSA8bWFjaC9ncGlvLXNhbXN1bmcuaD4KICNpbmNsdWRlIDxwbGF0L2dwaW8tY2ZnLmg+CiAKLSNp bmNsdWRlIDxtYWNoL2ZiLmg+CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2My NDEwLmg+CiAKICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2kyYy1zM2MyNDEwLmg+CiAj aW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9tdGQtbmFuZC1zM2MyNDEwLmg+CmRpZmYgLS1n aXQgYS9hcmNoL2FybS9wbGF0LXNhbXN1bmcvZGV2cy5jIGIvYXJjaC9hcm0vcGxhdC1zYW1zdW5n L2RldnMuYwppbmRleCBjMDczOWJkYTA2MGIuLjkyYjM2YmM3MWEwNiAxMDA2NDQKLS0tIGEvYXJj aC9hcm0vcGxhdC1zYW1zdW5nL2RldnMuYworKysgYi9hcmNoL2FybS9wbGF0LXNhbXN1bmcvZGV2 cy5jCkBAIC01MCw3ICs1MCw3IEBACiAjaW5jbHVkZSA8bGludXgvc29jL3NhbXN1bmcvczNjLWFk Yy5oPgogI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RhdGEvYXRhLXNhbXN1bmdfY2YuaD4KICNp bmNsdWRlIDxwbGF0L2ZiLmg+Ci0jaW5jbHVkZSA8cGxhdC9mYi1zM2MyNDEwLmg+CisjaW5jbHVk ZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8bGludXgvcGxh dGZvcm1fZGF0YS9od21vbi1zM2MuaD4KICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kYXRhL2ky Yy1zM2MyNDEwLmg+CiAjaW5jbHVkZSA8cGxhdC9rZXlwYWQuaD4KZGlmZiAtLWdpdCBhL2FyY2gv YXJtL21hY2gtczNjMjR4eC9pbmNsdWRlL21hY2gvcmVncy1sY2QuaCBiL2RyaXZlcnMvdmlkZW8v ZmJkZXYvczNjMjQxMGZiLXJlZ3MtbGNkLmgKc2ltaWxhcml0eSBpbmRleCA4NCUKcmVuYW1lIGZy b20gYXJjaC9hcm0vbWFjaC1zM2MyNHh4L2luY2x1ZGUvbWFjaC9yZWdzLWxjZC5oCnJlbmFtZSB0 byBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3MzYzI0MTBmYi1yZWdzLWxjZC5oCmluZGV4IDRjMzQzNGYy NjFiYi4uMWU0NmY3YTc4OGU1IDEwMDY0NAotLS0gYS9hcmNoL2FybS9tYWNoLXMzYzI0eHgvaW5j bHVkZS9tYWNoL3JlZ3MtbGNkLmgKKysrIGIvZHJpdmVycy92aWRlby9mYmRldi9zM2MyNDEwZmIt cmVncy1sY2QuaApAQCAtNyw2ICs3LDEzIEBACiAjaWZuZGVmIF9fX0FTTV9BUkNIX1JFR1NfTENE X0gKICNkZWZpbmUgX19fQVNNX0FSQ0hfUkVHU19MQ0RfSAogCisvKgorICogYSBjb3VwbGUgb2Yg dmFsdWVzIGFyZSB1c2VkIGFzIHBsYXRmb3JtIGRhdGEgaW4KKyAqIGluY2x1ZGUvbGludXgvcGxh dGZvcm1fZGF0YS9mYi1zM2MyNDEwLmggYW5kIG5vdAorICogZHVwbGljYXRlZCBoZXJlLgorICov CisjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CisKICNkZWZpbmUg UzNDMjQxMF9MQ0RSRUcoeCkJKHgpCiAKIC8qIExDRCBjb250cm9sIHJlZ2lzdGVycyAqLwpAQCAt MjksMTMgKzM2LDYgQEAKICNkZWZpbmUgUzNDMjQxMF9MQ0RDT04xX1NUTjhCUFAJICAgKDM8PDEp CiAjZGVmaW5lIFMzQzI0MTBfTENEQ09OMV9TVE4xMkJQUCAgICg0PDwxKQogCi0jZGVmaW5lIFMz QzI0MTBfTENEQ09OMV9URlQxQlBQCSAgICg4PDwxKQotI2RlZmluZSBTM0MyNDEwX0xDRENPTjFf VEZUMkJQUAkgICAoOTw8MSkKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT04xX1RGVDRCUFAJICAgKDEw PDwxKQotI2RlZmluZSBTM0MyNDEwX0xDRENPTjFfVEZUOEJQUAkgICAoMTE8PDEpCi0jZGVmaW5l IFMzQzI0MTBfTENEQ09OMV9URlQxNkJQUCAgICgxMjw8MSkKLSNkZWZpbmUgUzNDMjQxMF9MQ0RD T04xX1RGVDI0QlBQICAgKDEzPDwxKQotCiAjZGVmaW5lIFMzQzI0MTBfTENEQ09OMV9FTlZJRAkg ICAoMSkKIAogI2RlZmluZSBTM0MyNDEwX0xDRENPTjFfTU9ERU1BU0sgICAgMHgxRQpAQCAtNjYs MjAgKzY2LDYgQEAKIAogI2RlZmluZSBTM0MyNDEwX0xDRENPTjRfR0VUX0hTUFcoeCkgKCAoKHgp ID4+ICAwKSAmIDB4RkYpCiAKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0JQUDI0QkwJICAgICgx PDwxMikKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0ZSTTU2NQkgICAgKDE8PDExKQotI2RlZmlu ZSBTM0MyNDEwX0xDRENPTjVfSU5WVkNMSwkgICAgKDE8PDEwKQotI2RlZmluZSBTM0MyNDEwX0xD RENPTjVfSU5WVkxJTkUgICAgKDE8PDkpCi0jZGVmaW5lIFMzQzI0MTBfTENEQ09ONV9JTlZWRlJB TUUgICAoMTw8OCkKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0lOVlZECSAgICAoMTw8NykKLSNk ZWZpbmUgUzNDMjQxMF9MQ0RDT041X0lOVlZERU4JICAgICgxPDw2KQotI2RlZmluZSBTM0MyNDEw X0xDRENPTjVfSU5WUFdSRU4gICAgKDE8PDUpCi0jZGVmaW5lIFMzQzI0MTBfTENEQ09ONV9JTlZM RU5ECSAgICAoMTw8NCkKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X1BXUkVOCSAgICAoMTw8MykK LSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0VOTEVORAkgICAgKDE8PDIpCi0jZGVmaW5lIFMzQzI0 MTBfTENEQ09ONV9CU1dQCSAgICAoMTw8MSkKLSNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0hXU1dQ CSAgICAoMTw8MCkKLQogLyogZnJhbWVidWZmZXIgc3RhcnQgYWRkcmVzc2VkICovCiAjZGVmaW5l IFMzQzI0MTBfTENEU0FERFIxICAgUzNDMjQxMF9MQ0RSRUcoMHgxNCkKICNkZWZpbmUgUzNDMjQx MF9MQ0RTQUREUjIgICBTM0MyNDEwX0xDRFJFRygweDE4KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy92 aWRlby9mYmRldi9zM2MyNDEwZmIuYyBiL2RyaXZlcnMvdmlkZW8vZmJkZXYvczNjMjQxMGZiLmMK aW5kZXggYTcwMmRhODk5MTBiLi4zZTViOTFjNzJmNWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdmlk ZW8vZmJkZXYvczNjMjQxMGZiLmMKKysrIGIvZHJpdmVycy92aWRlby9mYmRldi9zM2MyNDEwZmIu YwpAQCAtMjksMTkgKzI5LDE4IEBACiAjaW5jbHVkZSA8bGludXgvY2xrLmg+CiAjaW5jbHVkZSA8 bGludXgvY3B1ZnJlcS5oPgogI2luY2x1ZGUgPGxpbnV4L2lvLmg+CisjaW5jbHVkZSA8bGludXgv cGxhdGZvcm1fZGF0YS9mYi1zM2MyNDEwLmg+CiAKICNpbmNsdWRlIDxhc20vZGl2NjQuaD4KIAog I2luY2x1ZGUgPGFzbS9tYWNoL21hcC5oPgotI2luY2x1ZGUgPG1hY2gvcmVncy1sY2QuaD4KLSNp bmNsdWRlIDxtYWNoL3JlZ3MtZ3Bpby5oPgotI2luY2x1ZGUgPG1hY2gvZmIuaD4KIAogI2lmZGVm IENPTkZJR19QTQogI2luY2x1ZGUgPGxpbnV4L3BtLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgInMz YzI0MTBmYi5oIgorI2luY2x1ZGUgInMzYzI0MTBmYi1yZWdzLWxjZC5oIgogCiAvKiBEZWJ1Z2dp bmcgc3R1ZmYgKi8KICNpZmRlZiBDT05GSUdfRkJfUzNDMjQxMF9ERUJVRwpAQCAtNjc2LDYgKzY3 NSw5IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBtb2RpZnlfZ3Bpbyh2b2lkIF9faW9tZW0gKnJlZywK IHsKIAl1bnNpZ25lZCBsb25nIHRtcDsKIAorCWlmICghcmVnKQorCQlyZXR1cm47CisKIAl0bXAg PSByZWFkbChyZWcpICYgfm1hc2s7CiAJd3JpdGVsKHRtcCB8IHNldCwgcmVnKTsKIH0KQEAgLTcw NiwxMCArNzA4LDEwIEBAIHN0YXRpYyBpbnQgczNjMjQxMGZiX2luaXRfcmVnaXN0ZXJzKHN0cnVj dCBmYl9pbmZvICppbmZvKQogCiAJLyogbW9kaWZ5IHRoZSBncGlvKHMpIHdpdGggaW50ZXJydXB0 cyBzZXQgKGJqZCkgKi8KIAotCW1vZGlmeV9ncGlvKFMzQzI0MTBfR1BDVVAsICBtYWNoX2luZm8t PmdwY3VwLCAgbWFjaF9pbmZvLT5ncGN1cF9tYXNrKTsKLQltb2RpZnlfZ3BpbyhTM0MyNDEwX0dQ Q0NPTiwgbWFjaF9pbmZvLT5ncGNjb24sIG1hY2hfaW5mby0+Z3BjY29uX21hc2spOwotCW1vZGlm eV9ncGlvKFMzQzI0MTBfR1BEVVAsICBtYWNoX2luZm8tPmdwZHVwLCAgbWFjaF9pbmZvLT5ncGR1 cF9tYXNrKTsKLQltb2RpZnlfZ3BpbyhTM0MyNDEwX0dQRENPTiwgbWFjaF9pbmZvLT5ncGRjb24s IG1hY2hfaW5mby0+Z3BkY29uX21hc2spOworCW1vZGlmeV9ncGlvKG1hY2hfaW5mby0+Z3BjdXBf cmVnLCAgbWFjaF9pbmZvLT5ncGN1cCwgIG1hY2hfaW5mby0+Z3BjdXBfbWFzayk7CisJbW9kaWZ5 X2dwaW8obWFjaF9pbmZvLT5ncGNjb25fcmVnLCBtYWNoX2luZm8tPmdwY2NvbiwgbWFjaF9pbmZv LT5ncGNjb25fbWFzayk7CisJbW9kaWZ5X2dwaW8obWFjaF9pbmZvLT5ncGR1cF9yZWcsICBtYWNo X2luZm8tPmdwZHVwLCAgbWFjaF9pbmZvLT5ncGR1cF9tYXNrKTsKKwltb2RpZnlfZ3BpbyhtYWNo X2luZm8tPmdwZGNvbl9yZWcsIG1hY2hfaW5mby0+Z3BkY29uLCBtYWNoX2luZm8tPmdwZGNvbl9t YXNrKTsKIAogCWxvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKIApkaWZmIC0tZ2l0IGEvYXJjaC9h cm0vcGxhdC1zYW1zdW5nL2luY2x1ZGUvcGxhdC9mYi1zM2MyNDEwLmggYi9pbmNsdWRlL2xpbnV4 L3BsYXRmb3JtX2RhdGEvZmItczNjMjQxMC5oCnNpbWlsYXJpdHkgaW5kZXggNTclCnJlbmFtZSBm cm9tIGFyY2gvYXJtL3BsYXQtc2Ftc3VuZy9pbmNsdWRlL3BsYXQvZmItczNjMjQxMC5oCnJlbmFt ZSB0byBpbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvZmItczNjMjQxMC5oCmluZGV4IDYxNDI0 MGQ3NjhiNC4uMTBjMTFlNjMxNmQ2IDEwMDY0NAotLS0gYS9hcmNoL2FybS9wbGF0LXNhbXN1bmcv aW5jbHVkZS9wbGF0L2ZiLXMzYzI0MTAuaAorKysgYi9pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2Rh dGEvZmItczNjMjQxMC5oCkBAIC04LDYgKzgsOCBAQAogI2lmbmRlZiBfX0FTTV9QTEFUX0ZCX1Mz QzI0MTBfSAogI2RlZmluZSBfX0FTTV9QTEFUX0ZCX1MzQzI0MTBfSCBfX0ZJTEVfXwogCisjaW5j bHVkZSA8bGludXgvY29tcGlsZXJfdHlwZXMuaD4KKwogc3RydWN0IHMzYzI0MTBmYl9odyB7CiAJ dW5zaWduZWQgbG9uZwlsY2Rjb24xOwogCXVuc2lnbmVkIGxvbmcJbGNkY29uMjsKQEAgLTIwLDYg KzIyLDE3IEBAIHN0cnVjdCBzM2MyNDEwZmJfaHcgewogc3RydWN0IHMzYzI0MTBmYl9kaXNwbGF5 IHsKIAkvKiBMQ0QgdHlwZSAqLwogCXVuc2lnbmVkIHR5cGU7CisjZGVmaW5lIFMzQzI0MTBfTENE Q09OMV9EU0NBTjQJICAgKDA8PDUpCisjZGVmaW5lIFMzQzI0MTBfTENEQ09OMV9TVE40CSAgICgx PDw1KQorI2RlZmluZSBTM0MyNDEwX0xDRENPTjFfU1ROOAkgICAoMjw8NSkKKyNkZWZpbmUgUzND MjQxMF9MQ0RDT04xX1RGVAkgICAoMzw8NSkKKworI2RlZmluZSBTM0MyNDEwX0xDRENPTjFfVEZU MUJQUAkgICAoODw8MSkKKyNkZWZpbmUgUzNDMjQxMF9MQ0RDT04xX1RGVDJCUFAJICAgKDk8PDEp CisjZGVmaW5lIFMzQzI0MTBfTENEQ09OMV9URlQ0QlBQCSAgICgxMDw8MSkKKyNkZWZpbmUgUzND MjQxMF9MQ0RDT04xX1RGVDhCUFAJICAgKDExPDwxKQorI2RlZmluZSBTM0MyNDEwX0xDRENPTjFf VEZUMTZCUFAgICAoMTI8PDEpCisjZGVmaW5lIFMzQzI0MTBfTENEQ09OMV9URlQyNEJQUCAgICgx Mzw8MSkKIAogCS8qIFNjcmVlbiBzaXplICovCiAJdW5zaWduZWQgc2hvcnQgd2lkdGg7CkBAIC00 MCw2ICs1MywxOSBAQCBzdHJ1Y3QgczNjMjQxMGZiX2Rpc3BsYXkgewogCiAJLyogbGNkIGNvbmZp Z3VyYXRpb24gcmVnaXN0ZXJzICovCiAJdW5zaWduZWQgbG9uZwlsY2Rjb241OworI2RlZmluZSBT M0MyNDEwX0xDRENPTjVfQlBQMjRCTAkgICAgKDE8PDEyKQorI2RlZmluZSBTM0MyNDEwX0xDRENP TjVfRlJNNTY1CSAgICAoMTw8MTEpCisjZGVmaW5lIFMzQzI0MTBfTENEQ09ONV9JTlZWQ0xLCSAg ICAoMTw8MTApCisjZGVmaW5lIFMzQzI0MTBfTENEQ09ONV9JTlZWTElORSAgICAoMTw8OSkKKyNk ZWZpbmUgUzNDMjQxMF9MQ0RDT041X0lOVlZGUkFNRSAgICgxPDw4KQorI2RlZmluZSBTM0MyNDEw X0xDRENPTjVfSU5WVkQJICAgICgxPDw3KQorI2RlZmluZSBTM0MyNDEwX0xDRENPTjVfSU5WVkRF TgkgICAgKDE8PDYpCisjZGVmaW5lIFMzQzI0MTBfTENEQ09ONV9JTlZQV1JFTiAgICAoMTw8NSkK KyNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0lOVkxFTkQJICAgICgxPDw0KQorI2RlZmluZSBTM0My NDEwX0xDRENPTjVfUFdSRU4JICAgICgxPDwzKQorI2RlZmluZSBTM0MyNDEwX0xDRENPTjVfRU5M RU5ECSAgICAoMTw8MikKKyNkZWZpbmUgUzNDMjQxMF9MQ0RDT041X0JTV1AJICAgICgxPDwxKQor I2RlZmluZSBTM0MyNDEwX0xDRENPTjVfSFdTV1AJICAgICgxPDwwKQogfTsKIAogc3RydWN0IHMz YzI0MTBmYl9tYWNoX2luZm8gewpAQCAtNTksMTAgKzg1LDE1IEBAIHN0cnVjdCBzM2MyNDEwZmJf bWFjaF9pbmZvIHsKIAl1bnNpZ25lZCBsb25nCWdwZGNvbjsKIAl1bnNpZ25lZCBsb25nCWdwZGNv bl9tYXNrOwogCisJdm9pZCBfX2lvbWVtICogIGdwY2Nvbl9yZWc7CisJdm9pZCBfX2lvbWVtICog IGdwY3VwX3JlZzsKKwl2b2lkIF9faW9tZW0gKiAgZ3BkY29uX3JlZzsKKwl2b2lkIF9faW9tZW0g KiAgZ3BkdXBfcmVnOworCiAJLyogbHBjMzYwMCBjb250cm9sIHJlZ2lzdGVyICovCiAJdW5zaWdu ZWQgbG9uZwlscGNzZWw7CiB9OwogCi1leHRlcm4gdm9pZCBfX2luaXQgczNjMjR4eF9mYl9zZXRf cGxhdGRhdGEoc3RydWN0IHMzYzI0MTBmYl9tYWNoX2luZm8gKik7CitleHRlcm4gdm9pZCBzM2My NHh4X2ZiX3NldF9wbGF0ZGF0YShzdHJ1Y3QgczNjMjQxMGZiX21hY2hfaW5mbyAqKTsKIAogI2Vu ZGlmIC8qIF9fQVNNX1BMQVRfRkJfUzNDMjQxMF9IICovCi0tIAoyLjIwLjAKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1911FC4360C for ; Thu, 10 Oct 2019 20:51:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BBBD2208C3 for ; Thu, 10 Oct 2019 20:51:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726706AbfJJUvn (ORCPT ); Thu, 10 Oct 2019 16:51:43 -0400 Received: from mout.kundenserver.de ([212.227.126.130]:49391 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725867AbfJJUvn (ORCPT ); Thu, 10 Oct 2019 16:51:43 -0400 Received: from threadripper.lan ([149.172.19.189]) by mrelayeu.kundenserver.de (mreue012 [212.227.15.129]) with ESMTPA (Nemesis) id 1N0Ip5-1huf6e3dHr-00xL2L; Thu, 10 Oct 2019 22:51:19 +0200 From: Arnd Bergmann To: Kukjin Kim , Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz Cc: linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linus.walleij@linaro.org, Arnd Bergmann , linux-kernel@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org Subject: [PATCH 28/36] fbdev: s3c2410fb: remove mach header dependency Date: Thu, 10 Oct 2019 22:30:12 +0200 Message-Id: <20191010203043.1241612-28-arnd@arndb.de> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20191010203043.1241612-1-arnd@arndb.de> References: <20191010202802.1132272-1-arnd@arndb.de> <20191010203043.1241612-1-arnd@arndb.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K1:OUQluCCJcOKxMHsF8OM8OZ8VCi0umfco1zKmRMX2ggK4J5znDuD NFw7lpmM0IZM4hapeEzhy3DAzFJX0ukoVgVTgsxG2ZdJA4LgmQc0FO6zfjuaKaZe7GI8eKM i4Gr/v31/9HnR7XWYXkKrpmTX8DiElBZwDN87ofYwy72LiaomKJ2zMBniqrFRaRqvRbRzS9 DOoO3XUppYTAPeZr76S0Q== X-UI-Out-Filterresults: notjunk:1;V03:K0:mY4Zu1y4c/w=:eAilr4Bvz50Tky4fCZDG3L KN6TUmFIJBJaWIPRXFuCAJuI8Y4T7zQuXNCTQDNB/VSbkpKFTwSQiquOnnX+DT/n6DRCXSE4P DhNGfgRztL1a90blVfLSFHdnY0rJ2ZU707fp90JJzcCFvkGkm1pfUYMT6HVC4O4TdIXvkRMMa 9pve7/LetClb6hmhEiAiTWtnnpOBEyYkVuhOjqiwMxhwg+kXwjbEGbbId4JTRC/KTBT8d/QP1 u3JQ7uVFU9Xg0FZ1YWddrQ4NpGFjnl1EPzeqQdzmsmUKAiNKgenfCRvlVDQ8q4aqp2EGXWPYa HZkNVaVn0/WzlGM5fJv4g2MCxplCcC3T675NydLyONOUaSuC6EJEAYnbpYjEz04r4PxlG0nju lTiSrmADwci1BAMJ+wZ+XaVppezFd6oOKVEhkF0CeO8UXNWLW5r4cpKE41RQEfkI7J4+C6ISN 5QrIMBuDL+RVAXSjFEQZfXY4yNcs0DqARzGvJrNbpTsHticD3xl6zqHCa1Lp6yfZmkrGxMC7G SmzPWuSeIsJVVG+HnCcwLzerLC6058ZR4AAUCb3GR+KsY5l6uQevNYRIGsMCA2esF60EB8plg mT52moqxFeveKcaBRB+DJsoEIlGfHf9Ut88q/cgRzTj9H21gVr4Iegqf0/swWWuRvWnPKGnGO OxR5DdW17ZuKWVXPE0GGE1uFdkKmDtOV0McVhy4oDrQOlhf0iCC0vT8Gt+6T8JV+FztfR1CPz ONIq0vP5KN3/ALUfzbJfT9uW/G82P0DSnOWJxv1q+MFpG04CuD29/dTmAyEqEk6kr42ahNCJq LxjPssm4uPljfmevWMIksaFtSMDZ+TPj39YfNW/r7V6S8UD68PpkjFtHxUVuMLYFhh5gKWtaj HodS4iKxuipoZ94TrqPA== Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Message-ID: <20191010203012.qDlyV8Z_TkNu-6PMh-cRIBZIoU3KNZl1geIozBF_Rfs@z> The s3c2410fb driver is too deeply intertwined with the s3c24xx platform code. Change it in a way that avoids the use of platform header files but having all interface data in a platform_data header, and the private register definitions next to the driver itself. One ugly bit here is that the driver pokes directly into gpio registers, which are owned by another driver. Passing the mapped addresses in platform_data is somewhat suboptimal, but it is a small improvement over the previous version. Signed-off-by: Arnd Bergmann --- arch/arm/mach-s3c24xx/include/mach/fb.h | 2 -- arch/arm/mach-s3c24xx/mach-amlm5900.c | 7 ++-- arch/arm/mach-s3c24xx/mach-anubis.c | 1 - arch/arm/mach-s3c24xx/mach-at2440evb.c | 3 +- arch/arm/mach-s3c24xx/mach-bast.c | 3 +- arch/arm/mach-s3c24xx/mach-gta02.c | 2 +- arch/arm/mach-s3c24xx/mach-h1940.c | 7 ++-- arch/arm/mach-s3c24xx/mach-jive.c | 10 ++++-- arch/arm/mach-s3c24xx/mach-mini2440.c | 9 +++-- arch/arm/mach-s3c24xx/mach-n30.c | 3 +- arch/arm/mach-s3c24xx/mach-osiris.c | 1 - arch/arm/mach-s3c24xx/mach-qt2410.c | 3 +- arch/arm/mach-s3c24xx/mach-rx1950.c | 8 +++-- arch/arm/mach-s3c24xx/mach-rx3715.c | 7 ++-- arch/arm/mach-s3c24xx/mach-smdk2413.c | 3 +- arch/arm/mach-s3c24xx/mach-smdk2416.c | 1 - arch/arm/mach-s3c24xx/mach-smdk2440.c | 8 +++-- arch/arm/mach-s3c24xx/mach-smdk2443.c | 3 +- arch/arm/mach-s3c24xx/mach-vstms.c | 3 +- arch/arm/plat-samsung/devs.c | 2 +- .../video/fbdev/s3c2410fb-regs-lcd.h | 28 ++++------------ drivers/video/fbdev/s3c2410fb.c | 16 +++++---- .../linux/platform_data}/fb-s3c2410.h | 33 ++++++++++++++++++- 23 files changed, 98 insertions(+), 65 deletions(-) delete mode 100644 arch/arm/mach-s3c24xx/include/mach/fb.h rename arch/arm/mach-s3c24xx/include/mach/regs-lcd.h => drivers/video/fbdev/s3c2410fb-regs-lcd.h (84%) rename {arch/arm/plat-samsung/include/plat => include/linux/platform_data}/fb-s3c2410.h (57%) diff --git a/arch/arm/mach-s3c24xx/include/mach/fb.h b/arch/arm/mach-s3c24xx/include/mach/fb.h deleted file mode 100644 index 4e539cb8b884..000000000000 --- a/arch/arm/mach-s3c24xx/include/mach/fb.h +++ /dev/null @@ -1,2 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#include diff --git a/arch/arm/mach-s3c24xx/mach-amlm5900.c b/arch/arm/mach-s3c24xx/mach-amlm5900.c index 40ad23b52bc0..ef6de1b1d0c6 100644 --- a/arch/arm/mach-s3c24xx/mach-amlm5900.c +++ b/arch/arm/mach-s3c24xx/mach-amlm5900.c @@ -30,9 +30,8 @@ #include #include #include -#include +#include -#include #include #include @@ -194,13 +193,17 @@ static struct s3c2410fb_mach_info __initdata amlm5900_fb_info = { .gpccon = 0xaaaaaaaa, .gpccon_mask = 0xffffffff, + .gpccon_reg = S3C2410_GPCCON, .gpcup = 0x0000ffff, .gpcup_mask = 0xffffffff, + .gpcup_reg = S3C2410_GPCUP, .gpdcon = 0xaaaaaaaa, .gpdcon_mask = 0xffffffff, + .gpdcon_reg = S3C2410_GPDCON, .gpdup = 0x0000ffff, .gpdup_mask = 0xffffffff, + .gpdup_reg = S3C2410_GPDUP, }; #endif diff --git a/arch/arm/mach-s3c24xx/mach-anubis.c b/arch/arm/mach-s3c24xx/mach-anubis.c index 072966dcad78..e1a73274e90b 100644 --- a/arch/arm/mach-s3c24xx/mach-anubis.c +++ b/arch/arm/mach-s3c24xx/mach-anubis.c @@ -29,7 +29,6 @@ #include #include -#include #include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-at2440evb.c b/arch/arm/mach-s3c24xx/mach-at2440evb.c index b2199906e678..bfda6dd2a9d5 100644 --- a/arch/arm/mach-s3c24xx/mach-at2440evb.c +++ b/arch/arm/mach-s3c24xx/mach-at2440evb.c @@ -25,12 +25,11 @@ #include #include -#include +#include #include #include #include -#include #include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-bast.c b/arch/arm/mach-s3c24xx/mach-bast.c index a7c3955ae8f6..cc941b5030ea 100644 --- a/arch/arm/mach-s3c24xx/mach-bast.c +++ b/arch/arm/mach-s3c24xx/mach-bast.c @@ -40,10 +40,9 @@ #include #include -#include #include +#include #include -#include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-gta02.c b/arch/arm/mach-s3c24xx/mach-gta02.c index 61b8c6badeb8..1e42782dbd30 100644 --- a/arch/arm/mach-s3c24xx/mach-gta02.c +++ b/arch/arm/mach-s3c24xx/mach-gta02.c @@ -57,8 +57,8 @@ #include #include #include +#include -#include #include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-h1940.c b/arch/arm/mach-s3c24xx/mach-h1940.c index 446891e23511..d56e3befa459 100644 --- a/arch/arm/mach-s3c24xx/mach-h1940.c +++ b/arch/arm/mach-s3c24xx/mach-h1940.c @@ -47,11 +47,10 @@ #include -#include +#include #include #include #include -#include #include #include @@ -211,12 +210,16 @@ static struct s3c2410fb_mach_info h1940_fb_info __initdata = { .lpcsel = 0x02, .gpccon = 0xaa940659, .gpccon_mask = 0xffffc0f0, + .gpccon_reg = S3C2410_GPCCON, .gpcup = 0x0000ffff, .gpcup_mask = 0xffffffff, + .gpcup_reg = S3C2410_GPCUP, .gpdcon = 0xaa84aaa0, .gpdcon_mask = 0xffffffff, + .gpdcon_reg = S3C2410_GPDCON, .gpdup = 0x0000faff, .gpdup_mask = 0xffffffff, + .gpdup_reg = S3C2410_GPDUP, }; static int power_supply_init(struct device *dev) diff --git a/arch/arm/mach-s3c24xx/mach-jive.c b/arch/arm/mach-s3c24xx/mach-jive.c index 885e8f12e4b9..3b33132b2334 100644 --- a/arch/arm/mach-s3c24xx/mach-jive.c +++ b/arch/arm/mach-s3c24xx/mach-jive.c @@ -32,8 +32,7 @@ #include #include -#include -#include +#include #include #include @@ -321,6 +320,7 @@ static struct s3c2410fb_mach_info jive_lcd_config = { * data. */ .gpcup = (0xf << 1) | (0x3f << 10), + .gpcup_reg = S3C2410_GPCUP, .gpccon = (S3C2410_GPC1_VCLK | S3C2410_GPC2_VLINE | S3C2410_GPC3_VFRAME | S3C2410_GPC4_VM | @@ -334,8 +334,12 @@ static struct s3c2410fb_mach_info jive_lcd_config = { S3C2410_GPCCON_MASK(12) | S3C2410_GPCCON_MASK(13) | S3C2410_GPCCON_MASK(14) | S3C2410_GPCCON_MASK(15)), + .gpccon_reg = S3C2410_GPCCON, + .gpdup = (0x3f << 2) | (0x3f << 10), + .gpdup_reg = S3C2410_GPDUP, + .gpdcon = (S3C2410_GPD2_VD10 | S3C2410_GPD3_VD11 | S3C2410_GPD4_VD12 | S3C2410_GPD5_VD13 | S3C2410_GPD6_VD14 | S3C2410_GPD7_VD15 | @@ -349,6 +353,8 @@ static struct s3c2410fb_mach_info jive_lcd_config = { S3C2410_GPDCON_MASK(10) | S3C2410_GPDCON_MASK(11)| S3C2410_GPDCON_MASK(12) | S3C2410_GPDCON_MASK(13)| S3C2410_GPDCON_MASK(14) | S3C2410_GPDCON_MASK(15)), + + .gpdcon_reg = S3C2410_GPDCON, }; /* ILI9320 support. */ diff --git a/arch/arm/mach-s3c24xx/mach-mini2440.c b/arch/arm/mach-s3c24xx/mach-mini2440.c index d73167f615b8..2301e07c7d64 100644 --- a/arch/arm/mach-s3c24xx/mach-mini2440.c +++ b/arch/arm/mach-s3c24xx/mach-mini2440.c @@ -30,13 +30,12 @@ #include #include +#include #include -#include #include #include #include -#include #include #include #include @@ -215,6 +214,9 @@ static struct s3c2410fb_mach_info mini2440_fb_info __initdata = { S3C2410_GPCCON_MASK(12) | S3C2410_GPCCON_MASK(13) | S3C2410_GPCCON_MASK(14) | S3C2410_GPCCON_MASK(15)), + .gpccon_reg = S3C2410_GPCCON, + .gpcup_reg = S3C2410_GPCUP, + .gpdup = (0x3f << 2) | (0x3f << 10), .gpdcon = (S3C2410_GPD2_VD10 | S3C2410_GPD3_VD11 | @@ -230,6 +232,9 @@ static struct s3c2410fb_mach_info mini2440_fb_info __initdata = { S3C2410_GPDCON_MASK(10) | S3C2410_GPDCON_MASK(11)| S3C2410_GPDCON_MASK(12) | S3C2410_GPDCON_MASK(13)| S3C2410_GPDCON_MASK(14) | S3C2410_GPDCON_MASK(15)), + + .gpdcon_reg = S3C2410_GPDCON, + .gpdup_reg = S3C2410_GPDUP, }; /* MMC/SD */ diff --git a/arch/arm/mach-s3c24xx/mach-n30.c b/arch/arm/mach-s3c24xx/mach-n30.c index f283abab0761..6b8ee5ba00ca 100644 --- a/arch/arm/mach-s3c24xx/mach-n30.c +++ b/arch/arm/mach-s3c24xx/mach-n30.c @@ -31,10 +31,9 @@ #include #include -#include +#include #include #include -#include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-osiris.c b/arch/arm/mach-s3c24xx/mach-osiris.c index ee3630cb236a..262e77bd48de 100644 --- a/arch/arm/mach-s3c24xx/mach-osiris.c +++ b/arch/arm/mach-s3c24xx/mach-osiris.c @@ -44,7 +44,6 @@ #include #include -#include #include #include "common.h" diff --git a/arch/arm/mach-s3c24xx/mach-qt2410.c b/arch/arm/mach-s3c24xx/mach-qt2410.c index 9b47b8434f10..1d0f5d65e7e5 100644 --- a/arch/arm/mach-s3c24xx/mach-qt2410.c +++ b/arch/arm/mach-s3c24xx/mach-qt2410.c @@ -33,8 +33,7 @@ #include #include -#include -#include +#include #include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-rx1950.c b/arch/arm/mach-s3c24xx/mach-rx1950.c index 7752203fd9cd..ee4a0992339f 100644 --- a/arch/arm/mach-s3c24xx/mach-rx1950.c +++ b/arch/arm/mach-s3c24xx/mach-rx1950.c @@ -42,12 +42,11 @@ #include #include #include +#include #include -#include #include -#include #include #include @@ -361,14 +360,17 @@ static struct s3c2410fb_mach_info rx1950_lcd_cfg = { .lpcsel = 0x02, .gpccon = 0xaa9556a9, .gpccon_mask = 0xffc003fc, + .gpccon_reg = S3C2410_GPCCON, .gpcup = 0x0000ffff, .gpcup_mask = 0xffffffff, + .gpcup_reg = S3C2410_GPCUP, .gpdcon = 0xaa90aaa1, .gpdcon_mask = 0xffc0fff0, + .gpdcon_reg = S3C2410_GPDCON, .gpdup = 0x0000fcfd, .gpdup_mask = 0xffffffff, - + .gpdup_reg = S3C2410_GPDUP, }; static struct pwm_lookup rx1950_pwm_lookup[] = { diff --git a/arch/arm/mach-s3c24xx/mach-rx3715.c b/arch/arm/mach-s3c24xx/mach-rx3715.c index 2542c523ad46..87f3274241b2 100644 --- a/arch/arm/mach-s3c24xx/mach-rx3715.c +++ b/arch/arm/mach-s3c24xx/mach-rx3715.c @@ -30,14 +30,13 @@ #include #include +#include #include #include -#include #include #include -#include #include #include @@ -126,13 +125,17 @@ static struct s3c2410fb_mach_info rx3715_fb_info __initdata = { .gpccon = 0xaa955699, .gpccon_mask = 0xffc003cc, + .gpccon_reg = S3C2410_GPCCON, .gpcup = 0x0000ffff, .gpcup_mask = 0xffffffff, + .gpcup_reg = S3C2410_GPCUP, .gpdcon = 0xaa95aaa1, .gpdcon_mask = 0xffc0fff0, + .gpdcon_reg = S3C2410_GPDCON, .gpdup = 0x0000faff, .gpdup_mask = 0xffffffff, + .gpdup_reg = S3C2410_GPDUP, }; static struct mtd_partition __initdata rx3715_nand_part[] = { diff --git a/arch/arm/mach-s3c24xx/mach-smdk2413.c b/arch/arm/mach-s3c24xx/mach-smdk2413.c index 2bba4f1fa7ee..eec0d3dc4bb1 100644 --- a/arch/arm/mach-s3c24xx/mach-smdk2413.c +++ b/arch/arm/mach-s3c24xx/mach-smdk2413.c @@ -31,12 +31,11 @@ //#include #include -#include #include #include +#include #include -#include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-smdk2416.c b/arch/arm/mach-s3c24xx/mach-smdk2416.c index 61c3e45898d3..fbd3a8d96f94 100644 --- a/arch/arm/mach-s3c24xx/mach-smdk2416.c +++ b/arch/arm/mach-s3c24xx/mach-smdk2416.c @@ -30,7 +30,6 @@ #include #include -#include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-smdk2440.c b/arch/arm/mach-s3c24xx/mach-smdk2440.c index f0fceda3e8e6..b9b0f2a8c904 100644 --- a/arch/arm/mach-s3c24xx/mach-smdk2440.c +++ b/arch/arm/mach-s3c24xx/mach-smdk2440.c @@ -28,11 +28,10 @@ #include #include -#include #include #include -#include +#include #include #include @@ -139,6 +138,11 @@ static struct s3c2410fb_mach_info smdk2440_fb_info __initdata = { .gpdcon_mask = 0xffffffff, .gpdup = 0x0000faff, .gpdup_mask = 0xffffffff, + + .gpccon_reg = S3C2410_GPCCON, + .gpcup_reg = S3C2410_GPCUP, + .gpdcon_reg = S3C2410_GPDCON, + .gpdup_reg = S3C2410_GPDUP, #endif .lpcsel = ((0xCE6) & ~7) | 1<<4, diff --git a/arch/arm/mach-s3c24xx/mach-smdk2443.c b/arch/arm/mach-s3c24xx/mach-smdk2443.c index 2358ed5ed7be..a4c1022678a9 100644 --- a/arch/arm/mach-s3c24xx/mach-smdk2443.c +++ b/arch/arm/mach-s3c24xx/mach-smdk2443.c @@ -27,9 +27,8 @@ #include #include -#include -#include +#include #include #include diff --git a/arch/arm/mach-s3c24xx/mach-vstms.c b/arch/arm/mach-s3c24xx/mach-vstms.c index f333ca05de68..08acc556879b 100644 --- a/arch/arm/mach-s3c24xx/mach-vstms.c +++ b/arch/arm/mach-s3c24xx/mach-vstms.c @@ -30,11 +30,10 @@ #include #include -#include #include #include -#include +#include #include #include diff --git a/arch/arm/plat-samsung/devs.c b/arch/arm/plat-samsung/devs.c index c0739bda060b..92b36bc71a06 100644 --- a/arch/arm/plat-samsung/devs.c +++ b/arch/arm/plat-samsung/devs.c @@ -50,7 +50,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h b/drivers/video/fbdev/s3c2410fb-regs-lcd.h similarity index 84% rename from arch/arm/mach-s3c24xx/include/mach/regs-lcd.h rename to drivers/video/fbdev/s3c2410fb-regs-lcd.h index 4c3434f261bb..1e46f7a788e5 100644 --- a/arch/arm/mach-s3c24xx/include/mach/regs-lcd.h +++ b/drivers/video/fbdev/s3c2410fb-regs-lcd.h @@ -7,6 +7,13 @@ #ifndef ___ASM_ARCH_REGS_LCD_H #define ___ASM_ARCH_REGS_LCD_H +/* + * a couple of values are used as platform data in + * include/linux/platform_data/fb-s3c2410.h and not + * duplicated here. + */ +#include + #define S3C2410_LCDREG(x) (x) /* LCD control registers */ @@ -29,13 +36,6 @@ #define S3C2410_LCDCON1_STN8BPP (3<<1) #define S3C2410_LCDCON1_STN12BPP (4<<1) -#define S3C2410_LCDCON1_TFT1BPP (8<<1) -#define S3C2410_LCDCON1_TFT2BPP (9<<1) -#define S3C2410_LCDCON1_TFT4BPP (10<<1) -#define S3C2410_LCDCON1_TFT8BPP (11<<1) -#define S3C2410_LCDCON1_TFT16BPP (12<<1) -#define S3C2410_LCDCON1_TFT24BPP (13<<1) - #define S3C2410_LCDCON1_ENVID (1) #define S3C2410_LCDCON1_MODEMASK 0x1E @@ -66,20 +66,6 @@ #define S3C2410_LCDCON4_GET_HSPW(x) ( ((x) >> 0) & 0xFF) -#define S3C2410_LCDCON5_BPP24BL (1<<12) -#define S3C2410_LCDCON5_FRM565 (1<<11) -#define S3C2410_LCDCON5_INVVCLK (1<<10) -#define S3C2410_LCDCON5_INVVLINE (1<<9) -#define S3C2410_LCDCON5_INVVFRAME (1<<8) -#define S3C2410_LCDCON5_INVVD (1<<7) -#define S3C2410_LCDCON5_INVVDEN (1<<6) -#define S3C2410_LCDCON5_INVPWREN (1<<5) -#define S3C2410_LCDCON5_INVLEND (1<<4) -#define S3C2410_LCDCON5_PWREN (1<<3) -#define S3C2410_LCDCON5_ENLEND (1<<2) -#define S3C2410_LCDCON5_BSWP (1<<1) -#define S3C2410_LCDCON5_HWSWP (1<<0) - /* framebuffer start addressed */ #define S3C2410_LCDSADDR1 S3C2410_LCDREG(0x14) #define S3C2410_LCDSADDR2 S3C2410_LCDREG(0x18) diff --git a/drivers/video/fbdev/s3c2410fb.c b/drivers/video/fbdev/s3c2410fb.c index a702da89910b..3e5b91c72f5b 100644 --- a/drivers/video/fbdev/s3c2410fb.c +++ b/drivers/video/fbdev/s3c2410fb.c @@ -29,19 +29,18 @@ #include #include #include +#include #include #include -#include -#include -#include #ifdef CONFIG_PM #include #endif #include "s3c2410fb.h" +#include "s3c2410fb-regs-lcd.h" /* Debugging stuff */ #ifdef CONFIG_FB_S3C2410_DEBUG @@ -676,6 +675,9 @@ static inline void modify_gpio(void __iomem *reg, { unsigned long tmp; + if (!reg) + return; + tmp = readl(reg) & ~mask; writel(tmp | set, reg); } @@ -706,10 +708,10 @@ static int s3c2410fb_init_registers(struct fb_info *info) /* modify the gpio(s) with interrupts set (bjd) */ - modify_gpio(S3C2410_GPCUP, mach_info->gpcup, mach_info->gpcup_mask); - modify_gpio(S3C2410_GPCCON, mach_info->gpccon, mach_info->gpccon_mask); - modify_gpio(S3C2410_GPDUP, mach_info->gpdup, mach_info->gpdup_mask); - modify_gpio(S3C2410_GPDCON, mach_info->gpdcon, mach_info->gpdcon_mask); + modify_gpio(mach_info->gpcup_reg, mach_info->gpcup, mach_info->gpcup_mask); + modify_gpio(mach_info->gpccon_reg, mach_info->gpccon, mach_info->gpccon_mask); + modify_gpio(mach_info->gpdup_reg, mach_info->gpdup, mach_info->gpdup_mask); + modify_gpio(mach_info->gpdcon_reg, mach_info->gpdcon, mach_info->gpdcon_mask); local_irq_restore(flags); diff --git a/arch/arm/plat-samsung/include/plat/fb-s3c2410.h b/include/linux/platform_data/fb-s3c2410.h similarity index 57% rename from arch/arm/plat-samsung/include/plat/fb-s3c2410.h rename to include/linux/platform_data/fb-s3c2410.h index 614240d768b4..10c11e6316d6 100644 --- a/arch/arm/plat-samsung/include/plat/fb-s3c2410.h +++ b/include/linux/platform_data/fb-s3c2410.h @@ -8,6 +8,8 @@ #ifndef __ASM_PLAT_FB_S3C2410_H #define __ASM_PLAT_FB_S3C2410_H __FILE__ +#include + struct s3c2410fb_hw { unsigned long lcdcon1; unsigned long lcdcon2; @@ -20,6 +22,17 @@ struct s3c2410fb_hw { struct s3c2410fb_display { /* LCD type */ unsigned type; +#define S3C2410_LCDCON1_DSCAN4 (0<<5) +#define S3C2410_LCDCON1_STN4 (1<<5) +#define S3C2410_LCDCON1_STN8 (2<<5) +#define S3C2410_LCDCON1_TFT (3<<5) + +#define S3C2410_LCDCON1_TFT1BPP (8<<1) +#define S3C2410_LCDCON1_TFT2BPP (9<<1) +#define S3C2410_LCDCON1_TFT4BPP (10<<1) +#define S3C2410_LCDCON1_TFT8BPP (11<<1) +#define S3C2410_LCDCON1_TFT16BPP (12<<1) +#define S3C2410_LCDCON1_TFT24BPP (13<<1) /* Screen size */ unsigned short width; @@ -40,6 +53,19 @@ struct s3c2410fb_display { /* lcd configuration registers */ unsigned long lcdcon5; +#define S3C2410_LCDCON5_BPP24BL (1<<12) +#define S3C2410_LCDCON5_FRM565 (1<<11) +#define S3C2410_LCDCON5_INVVCLK (1<<10) +#define S3C2410_LCDCON5_INVVLINE (1<<9) +#define S3C2410_LCDCON5_INVVFRAME (1<<8) +#define S3C2410_LCDCON5_INVVD (1<<7) +#define S3C2410_LCDCON5_INVVDEN (1<<6) +#define S3C2410_LCDCON5_INVPWREN (1<<5) +#define S3C2410_LCDCON5_INVLEND (1<<4) +#define S3C2410_LCDCON5_PWREN (1<<3) +#define S3C2410_LCDCON5_ENLEND (1<<2) +#define S3C2410_LCDCON5_BSWP (1<<1) +#define S3C2410_LCDCON5_HWSWP (1<<0) }; struct s3c2410fb_mach_info { @@ -59,10 +85,15 @@ struct s3c2410fb_mach_info { unsigned long gpdcon; unsigned long gpdcon_mask; + void __iomem * gpccon_reg; + void __iomem * gpcup_reg; + void __iomem * gpdcon_reg; + void __iomem * gpdup_reg; + /* lpc3600 control register */ unsigned long lpcsel; }; -extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *); +extern void s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *); #endif /* __ASM_PLAT_FB_S3C2410_H */ -- 2.20.0