From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [15/18] gbefb: switch to managed version of the DMA allocator From: Christoph Hellwig Message-Id: <20190201084801.10983-16-hch@lst.de> Date: Fri, 1 Feb 2019 09:47:58 +0100 To: John Crispin , Vinod Koul , Dmitry Tarnyagin , Nicolas Ferre , Sudip Mukherjee , Felipe Balbi , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org, dmaengine@vger.kernel.org, netdev@vger.kernel.org, linux-usb@vger.kernel.org, linux-fbdev@vger.kernel.org, alsa-devel@alsa-project.org Cc: iommu@lists.linux-foundation.org List-ID: Z2JlZmIgdXNlcyBtYW5hZ2VkIHJlc291cmNlcywgc28gaXQgc2hvdWxkIGRvIHRoZSBzYW1lIGZv ciBETUEKYWxsb2NhdGlvbnMuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpc3RvcGggSGVsbHdpZyA8aGNo QGxzdC5kZT4KLS0tCiBkcml2ZXJzL3ZpZGVvL2ZiZGV2L2diZWZiLmMgfCAyNCArKysrKysrKy0t LS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdmlkZW8vZmJkZXYvZ2JlZmIuYyBiL2RyaXZl cnMvdmlkZW8vZmJkZXYvZ2JlZmIuYwppbmRleCAxYTI0MmIxMzM4ZTkuLjNmY2IzMzIzMmJhMyAx MDA2NDQKLS0tIGEvZHJpdmVycy92aWRlby9mYmRldi9nYmVmYi5jCisrKyBiL2RyaXZlcnMvdmlk ZW8vZmJkZXYvZ2JlZmIuYwpAQCAtMTE2Miw5ICsxMTYyLDkgQEAgc3RhdGljIGludCBnYmVmYl9w cm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwX2RldikKIAl9CiAJZ2JlX3JldmlzaW9uID0g Z2JlLT5jdHJsc3RhdCAmIDE1OwogCi0JZ2JlX3RpbGVzLmNwdSA9Ci0JCWRtYV9hbGxvY19jb2hl cmVudChOVUxMLCBHQkVfVExCX1NJWkUgKiBzaXplb2YodWludDE2X3QpLAotCQkJCSAgICZnYmVf dGlsZXMuZG1hLCBHRlBfS0VSTkVMKTsKKwlnYmVfdGlsZXMuY3B1ID0gZG1hbV9hbGxvY19jb2hl cmVudCgmcF9kZXYtPmRldiwKKwkJCQlHQkVfVExCX1NJWkUgKiBzaXplb2YodWludDE2X3QpLAor CQkJCSZnYmVfdGlsZXMuZG1hLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWdiZV90aWxlcy5jcHUpIHsK IAkJcHJpbnRrKEtFUk5fRVJSICJnYmVmYjogY291bGRuJ3QgYWxsb2NhdGUgdGlsZXMgdGFibGVc biIpOwogCQlyZXQgPSAtRU5PTUVNOwpAQCAtMTE3OCwxOSArMTE3OCwyMCBAQCBzdGF0aWMgaW50 IGdiZWZiX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBfZGV2KQogCQlpZiAoIWdiZV9t ZW0pIHsKIAkJCXByaW50ayhLRVJOX0VSUiAiZ2JlZmI6IGNvdWxkbid0IG1hcCBmcmFtZWJ1ZmZl clxuIik7CiAJCQlyZXQgPSAtRU5PTUVNOwotCQkJZ290byBvdXRfdGlsZXNfZnJlZTsKKwkJCWdv dG8gb3V0X3JlbGVhc2VfbWVtX3JlZ2lvbjsKIAkJfQogCiAJCWdiZV9kbWFfYWRkciA9IDA7CiAJ fSBlbHNlIHsKIAkJLyogdHJ5IHRvIGFsbG9jYXRlIG1lbW9yeSB3aXRoIHRoZSBjbGFzc2ljYWwg YWxsb2NhdG9yCiAJCSAqIHRoaXMgaGFzIGhpZ2ggY2hhbmNlIHRvIGZhaWwgb24gbG93IG1lbW9y eSBtYWNoaW5lcyAqLwotCQlnYmVfbWVtID0gZG1hX2FsbG9jX3djKE5VTEwsIGdiZV9tZW1fc2l6 ZSwgJmdiZV9kbWFfYWRkciwKLQkJCQkgICAgICAgR0ZQX0tFUk5FTCk7CisJCWdiZV9tZW0gPSBk bWFtX2FsbG9jX2F0dHJzKCZwX2Rldi0+ZGV2LCBnYmVfbWVtX3NpemUsCisJCQkJJmdiZV9kbWFf YWRkciwgR0ZQX0tFUk5FTCwKKwkJCQlETUFfQVRUUl9XUklURV9DT01CSU5FKTsKIAkJaWYgKCFn YmVfbWVtKSB7CiAJCQlwcmludGsoS0VSTl9FUlIgImdiZWZiOiBjb3VsZG4ndCBhbGxvY2F0ZSBm cmFtZWJ1ZmZlciBtZW1vcnlcbiIpOwogCQkJcmV0ID0gLUVOT01FTTsKLQkJCWdvdG8gb3V0X3Rp bGVzX2ZyZWU7CisJCQlnb3RvIG91dF9yZWxlYXNlX21lbV9yZWdpb247CiAJCX0KIAogCQlnYmVf bWVtX3BoeXMgPSAodW5zaWduZWQgbG9uZykgZ2JlX2RtYV9hZGRyOwpAQCAtMTIzNywxMSArMTIz OCw2IEBAIHN0YXRpYyBpbnQgZ2JlZmJfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcF9k ZXYpCiAKIG91dF9nYmVfdW5tYXA6CiAJYXJjaF9waHlzX3djX2RlbChwYXItPndjX2Nvb2tpZSk7 Ci0JaWYgKGdiZV9kbWFfYWRkcikKLQkJZG1hX2ZyZWVfd2MoTlVMTCwgZ2JlX21lbV9zaXplLCBn YmVfbWVtLCBnYmVfbWVtX3BoeXMpOwotb3V0X3RpbGVzX2ZyZWU6Ci0JZG1hX2ZyZWVfY29oZXJl bnQoTlVMTCwgR0JFX1RMQl9TSVpFICogc2l6ZW9mKHVpbnQxNl90KSwKLQkJCSAgKHZvaWQgKiln YmVfdGlsZXMuY3B1LCBnYmVfdGlsZXMuZG1hKTsKIG91dF9yZWxlYXNlX21lbV9yZWdpb246CiAJ cmVsZWFzZV9tZW1fcmVnaW9uKEdCRV9CQVNFLCBzaXplb2Yoc3RydWN0IHNnaV9nYmUpKTsKIG91 dF9yZWxlYXNlX2ZyYW1lYnVmZmVyOgpAQCAtMTI1OCwxMCArMTI1NCw2IEBAIHN0YXRpYyBpbnQg Z2JlZmJfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UqIHBfZGV2KQogCXVucmVnaXN0ZXJf ZnJhbWVidWZmZXIoaW5mbyk7CiAJZ2JlX3R1cm5fb2ZmKCk7CiAJYXJjaF9waHlzX3djX2RlbChw YXItPndjX2Nvb2tpZSk7Ci0JaWYgKGdiZV9kbWFfYWRkcikKLQkJZG1hX2ZyZWVfd2MoTlVMTCwg Z2JlX21lbV9zaXplLCBnYmVfbWVtLCBnYmVfbWVtX3BoeXMpOwotCWRtYV9mcmVlX2NvaGVyZW50 KE5VTEwsIEdCRV9UTEJfU0laRSAqIHNpemVvZih1aW50MTZfdCksCi0JCQkgICh2b2lkICopZ2Jl X3RpbGVzLmNwdSwgZ2JlX3RpbGVzLmRtYSk7CiAJcmVsZWFzZV9tZW1fcmVnaW9uKEdCRV9CQVNF LCBzaXplb2Yoc3RydWN0IHNnaV9nYmUpKTsKIAlnYmVmYl9yZW1vdmVfc3lzZnMoJnBfZGV2LT5k ZXYpOwogCWZyYW1lYnVmZmVyX3JlbGVhc2UoaW5mbyk7Cg==