From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vince Hsu Subject: [PATCH 3/11] memory: tegra: add flush operation for Tegra124 memory clients Date: Tue, 23 Dec 2014 18:39:56 +0800 Message-ID: <1419331204-26679-4-git-send-email-vinceh@nvidia.com> References: <1419331204-26679-1-git-send-email-vinceh@nvidia.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1419331204-26679-1-git-send-email-vinceh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org, gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, martin.peres-GANU6spQydw@public.gmane.org, seven-FA6nBp6kBxZzu6KWmfFNGwC/G2K4zDHf@public.gmane.org, samuel.pitoiset-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-tegra@vger.kernel.org U2lnbmVkLW9mZi1ieTogVmluY2UgSHN1IDx2aW5jZWhAbnZpZGlhLmNvbT4KLS0tCiBkcml2ZXJz L21lbW9yeS90ZWdyYS90ZWdyYTEyNC5jIHwgODIgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA4MiBpbnNlcnRpb25zKCspCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9tZW1vcnkvdGVncmEvdGVncmExMjQuYyBiL2RyaXZlcnMvbWVtb3J5L3Rl Z3JhL3RlZ3JhMTI0LmMKaW5kZXggMjc4ZDQwYjg1NGMxLi4wMzY5MzU3NDNhMGEgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbWVtb3J5L3RlZ3JhL3RlZ3JhMTI0LmMKKysrIGIvZHJpdmVycy9tZW1vcnkv dGVncmEvdGVncmExMjQuYwpAQCAtNiw2ICs2LDcgQEAKICAqIHB1Ymxpc2hlZCBieSB0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgogICovCiAKKyNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgog I2luY2x1ZGUgPGxpbnV4L29mLmg+CiAjaW5jbHVkZSA8bGludXgvbW0uaD4KIApAQCAtOTU5LDcg Kzk2MCw4NSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHRlZ3JhX3NtbXVfc3dncm91cCB0ZWdyYTEy NF9zd2dyb3Vwc1tdID0gewogCXsgLnN3Z3JvdXAgPSBURUdSQV9TV0dST1VQX1ZJLCAgICAgICAg LnJlZyA9IDB4MjgwIH0sCiB9OwogCitzdGF0aWMgY29uc3Qgc3RydWN0IHRlZ3JhX21jX2hyIHRl Z3JhMTI0X21jX2hyW10gPSB7CisJe1RFR1JBX1NXR1JPVVBfQUZJLCAgICAgICAgMHgyMDAsIDB4 MjAwLCAgMH0sCisJe1RFR1JBX1NXR1JPVVBfQVZQQywgICAgICAgMHgyMDAsIDB4MjAwLCAgMX0s CisJe1RFR1JBX1NXR1JPVVBfREMsICAgICAgICAgMHgyMDAsIDB4MjAwLCAgMn0sCisJe1RFR1JB X1NXR1JPVVBfRENCLCAgICAgICAgMHgyMDAsIDB4MjAwLCAgM30sCisJe1RFR1JBX1NXR1JPVVBf SEMsICAgICAgICAgMHgyMDAsIDB4MjAwLCAgNn0sCisJe1RFR1JBX1NXR1JPVVBfSERBLCAgICAg ICAgMHgyMDAsIDB4MjAwLCAgN30sCisJe1RFR1JBX1NXR1JPVVBfSVNQMiwgICAgICAgMHgyMDAs IDB4MjAwLCAgOH0sCisJe1RFR1JBX1NXR1JPVVBfTVBDT1JFLCAgICAgMHgyMDAsIDB4MjAwLCAg OX0sCisJe1RFR1JBX1NXR1JPVVBfTVBDT1JFTFAsICAgMHgyMDAsIDB4MjAwLCAxMH0sCisJe1RF R1JBX1NXR1JPVVBfTVNFTkMsICAgICAgMHgyMDAsIDB4MjAwLCAxMX0sCisJe1RFR1JBX1NXR1JP VVBfUFBDUywgICAgICAgMHgyMDAsIDB4MjAwLCAxNH0sCisJe1RFR1JBX1NXR1JPVVBfU0FUQSwg ICAgICAgMHgyMDAsIDB4MjAwLCAxNX0sCisJe1RFR1JBX1NXR1JPVVBfVkRFLCAgICAgICAgMHgy MDAsIDB4MjAwLCAxNn0sCisJe1RFR1JBX1NXR1JPVVBfVkksICAgICAgICAgMHgyMDAsIDB4MjAw LCAxN30sCisJe1RFR1JBX1NXR1JPVVBfVklDLCAgICAgICAgMHgyMDAsIDB4MjAwLCAxOH0sCisJ e1RFR1JBX1NXR1JPVVBfWFVTQl9IT1NULCAgMHgyMDAsIDB4MjAwLCAxOX0sCisJe1RFR1JBX1NX R1JPVVBfWFVTQl9ERVYsICAgMHgyMDAsIDB4MjAwLCAyMH0sCisJe1RFR1JBX1NXR1JPVVBfVFNF QywgICAgICAgMHgyMDAsIDB4MjAwLCAyMn0sCisJe1RFR1JBX1NXR1JPVVBfU0RNTUMxQSwgICAg MHgyMDAsIDB4MjAwLCAyOX0sCisJe1RFR1JBX1NXR1JPVVBfU0RNTUMyQSwgICAgMHgyMDAsIDB4 MjAwLCAzMH0sCisJe1RFR1JBX1NXR1JPVVBfU0RNTUMzQSwgICAgMHgyMDAsIDB4MjAwLCAzMX0s CisJe1RFR1JBX1NXR1JPVVBfU0RNTUM0QSwgICAgMHg5NzAsIDB4OTc0LCAgMH0sCisJe1RFR1JB X1NXR1JPVVBfSVNQMkIsICAgICAgMHg5NzAsIDB4OTc0LCAgMX0sCisJe1RFR1JBX1NXR1JPVVBf R1BVLCAgICAgICAgMHg5NzAsIDB4OTc0LCAgMn0sCit9OworCiAjaWZkZWYgQ09ORklHX0FSQ0hf VEVHUkFfMTI0X1NPQworCitzdGF0aWMgYm9vbCB0ZWdyYTEyNF9zdGFibGVfaG90cmVzZXRfY2hl Y2soc3RydWN0IHRlZ3JhX21jICptYywKKwkJdTMyIHJlZywgdTMyICpzdGF0KQoreworCWludCBp OworCXUzMiBjdXJfc3RhdDsKKwl1MzIgcHJ2X3N0YXQ7CisKKwlwcnZfc3RhdCA9IG1jX3JlYWRs KG1jLCByZWcpOworCWZvciAoaSA9IDA7IGkgPCA1OyBpKyspIHsKKwkJY3VyX3N0YXQgPSBtY19y ZWFkbChtYywgcmVnKTsKKwkJaWYgKGN1cl9zdGF0ICE9IHBydl9zdGF0KQorCQkJcmV0dXJuIGZh bHNlOworCX0KKwkqc3RhdCA9IGN1cl9zdGF0OworCXJldHVybiB0cnVlOworfQorCitzdGF0aWMg aW50IHRlZ3JhMTI0X21jX2ZsdXNoKHN0cnVjdCB0ZWdyYV9tYyAqbWMsCisJCWNvbnN0IHN0cnVj dCB0ZWdyYV9tY19ociAqaHJfY2xpZW50LCBib29sIGVuYWJsZSkKK3sKKwl1MzIgdmFsOworCisJ aWYgKCFtYyB8fCAhaHJfY2xpZW50KQorCQlyZXR1cm4gLUVJTlZBTDsKKworCXZhbCA9IG1jX3Jl YWRsKG1jLCBocl9jbGllbnQtPmN0cmwpOworCWlmIChlbmFibGUpCisJCXZhbCB8PSBCSVQoaHJf Y2xpZW50LT5iaXQpOworCWVsc2UKKwkJdmFsICY9IH5CSVQoaHJfY2xpZW50LT5iaXQpOworCW1j X3dyaXRlbChtYywgdmFsLCBocl9jbGllbnQtPmN0cmwpOworCW1jX3JlYWRsKG1jLCBocl9jbGll bnQtPmN0cmwpOworCisJLyogcG9sbCB0aWxsIHRoZSBmbHVzaCBpcyBkb25lICovCisJaWYgKGVu YWJsZSkgeworCQlkbyB7CisJCQl1ZGVsYXkoMTApOworCQkJdmFsID0gMDsKKwkJCWlmICghdGVn cmExMjRfc3RhYmxlX2hvdHJlc2V0X2NoZWNrKG1jLCBocl9jbGllbnQtPnN0YXR1cywgJnZhbCkp CisJCQkJY29udGludWU7CisJCX0gd2hpbGUgKCEodmFsICYgQklUKGhyX2NsaWVudC0+Yml0KSkp OworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IHRlZ3JhX21jX29w cyB0ZWdyYTEyNF9tY19vcHMgPSB7CisJLmZsdXNoID0gdGVncmExMjRfbWNfZmx1c2gsCit9Owor CiBzdGF0aWMgdm9pZCB0ZWdyYTEyNF9mbHVzaF9kY2FjaGUoc3RydWN0IHBhZ2UgKnBhZ2UsIHVu c2lnbmVkIGxvbmcgb2Zmc2V0LAogCQkJCSAgc2l6ZV90IHNpemUpCiB7CkBAIC05OTEsNSArMTA3 MCw4IEBAIGNvbnN0IHN0cnVjdCB0ZWdyYV9tY19zb2MgdGVncmExMjRfbWNfc29jID0gewogCS5u dW1fYWRkcmVzc19iaXRzID0gMzQsCiAJLmF0b21fc2l6ZSA9IDMyLAogCS5zbW11ID0gJnRlZ3Jh MTI0X3NtbXVfc29jLAorCS5ocl9jbGllbnRzID0gdGVncmExMjRfbWNfaHIsCisJLm51bV9ocl9j bGllbnRzID0gQVJSQVlfU0laRSh0ZWdyYTEyNF9tY19ociksCisJLm9wcyA9ICZ0ZWdyYTEyNF9t Y19vcHMsCiB9OwogI2VuZGlmIC8qIENPTkZJR19BUkNIX1RFR1JBXzEyNF9TT0MgKi8KLS0gCjEu OS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOb3V2 ZWF1IG1haWxpbmcgbGlzdApOb3V2ZWF1QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=