From: Rob Clark Subject: [PATCH 2/3] drm/msm/adreno: split out helper to load fw Date: Mon, 16 Oct 2017 11:27:48 -0400 Message-ID: <20171016152749.23104-2-robdclark@gmail.com> References: <20171016152749.23104-1-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171016152749.23104-1-robdclark@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org UHJlcCB3b3JrIGZvciB0aGUgbmV4dCBwYXRjaC4KClNpZ25lZC1vZmYtYnk6IFJvYiBDbGFyayA8 cm9iZGNsYXJrQGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4 X2dwdS5jICAgfCAxMSArKysrKystLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4 eF9wb3dlci5jIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1 LmMgfCAzNSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2FkcmVub19ncHUuaCB8ICAyICsrCiA0IGZpbGVzIGNoYW5nZWQsIDMzIGlu c2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4 X2dwdS5jCmluZGV4IDhkZjg2ZDgzZDg1OS4uNDY5MzY1OWFiYTJlIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9t c20vYWRyZW5vL2E1eHhfZ3B1LmMKQEAgLTI2LDggKzI2LDkgQEAgc3RhdGljIHZvaWQgYTV4eF9k dW1wKHN0cnVjdCBtc21fZ3B1ICpncHUpOwogCiAjZGVmaW5lIEdQVV9QQVNfSUQgMTMKIAotc3Rh dGljIGludCB6YXBfc2hhZGVyX2xvYWRfbWR0KHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hh ciAqZnduYW1lKQorc3RhdGljIGludCB6YXBfc2hhZGVyX2xvYWRfbWR0KHN0cnVjdCBtc21fZ3B1 ICpncHUsIGNvbnN0IGNoYXIgKmZ3bmFtZSkKIHsKKwlzdHJ1Y3QgZGV2aWNlICpkZXYgPSAmZ3B1 LT5wZGV2LT5kZXY7CiAJY29uc3Qgc3RydWN0IGZpcm13YXJlICpmdzsKIAlzdHJ1Y3QgZGV2aWNl X25vZGUgKm5wOwogCXN0cnVjdCByZXNvdXJjZSByOwpAQCAtNTUsMTAgKzU2LDEwIEBAIHN0YXRp YyBpbnQgemFwX3NoYWRlcl9sb2FkX21kdChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIg KmZ3bmFtZSkKIAltZW1fc2l6ZSA9IHJlc291cmNlX3NpemUoJnIpOwogCiAJLyogUmVxdWVzdCB0 aGUgTURUIGZpbGUgZm9yIHRoZSBmaXJtd2FyZSAqLwotCXJldCA9IHJlcXVlc3RfZmlybXdhcmUo JmZ3LCBmd25hbWUsIGRldik7Ci0JaWYgKHJldCkgeworCWZ3ID0gYWRyZW5vX3JlcXVlc3RfZnco dG9fYWRyZW5vX2dwdShncHUpLCBmd25hbWUpOworCWlmIChJU19FUlIoZncpKSB7CiAJCURSTV9E RVZfRVJST1IoZGV2LCAiVW5hYmxlIHRvIGxvYWQgJXNcbiIsIGZ3bmFtZSk7Ci0JCXJldHVybiBy ZXQ7CisJCXJldHVybiBQVFJfRVJSKGZ3KTsKIAl9CiAKIAkvKiBGaWd1cmUgb3V0IGhvdyBtdWNo IG1lbW9yeSB3ZSBuZWVkICovCkBAIC0zODEsNyArMzgyLDcgQEAgc3RhdGljIGludCBhNXh4X3ph cF9zaGFkZXJfaW5pdChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCQlyZXR1cm4gLUVOT0RFVjsKIAl9 CiAKLQlyZXQgPSB6YXBfc2hhZGVyX2xvYWRfbWR0KCZwZGV2LT5kZXYsIGFkcmVub19ncHUtPmlu Zm8tPnphcGZ3KTsKKwlyZXQgPSB6YXBfc2hhZGVyX2xvYWRfbWR0KGdwdSwgYWRyZW5vX2dwdS0+ aW5mby0+emFwZncpOwogCiAJbG9hZGVkID0gIXJldDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYTV4eF9wb3dlci5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJl bm8vYTV4eF9wb3dlci5jCmluZGV4IDA0YWFiMWRjYWUyYi4uYjVkZTJiZTY3NzMyIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X3Bvd2VyLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9wb3dlci5jCkBAIC0yNjQsNyArMjY0LDggQEAgdm9p ZCBhNXh4X2dwbXVfdWNvZGVfaW5pdChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCQlyZXR1cm47CiAK IAkvKiBHZXQgdGhlIGZpcm13YXJlICovCi0JaWYgKHJlcXVlc3RfZmlybXdhcmUoJmZ3LCBhZHJl bm9fZ3B1LT5pbmZvLT5ncG11ZncsIGRybS0+ZGV2KSkgeworCWZ3ID0gYWRyZW5vX3JlcXVlc3Rf ZncoYWRyZW5vX2dwdSwgYWRyZW5vX2dwdS0+aW5mby0+Z3BtdWZ3KTsKKwlpZiAoSVNfRVJSKGZ3 KSkgewogCQlEUk1fRVJST1IoIiVzOiBDb3VsZCBub3QgZ2V0IEdQTVUgZmlybXdhcmUuIEdQTVUg d2lsbCBub3QgYmUgYWN0aXZlXG4iLAogCQkJZ3B1LT5uYW1lKTsKIAkJcmV0dXJuOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jIGIvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCmluZGV4IDhjYWE3ZjFmMDEyZC4uMTllMTIz ODAyOTdlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1 LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCkBAIC02NCwy OCArNjQsMzkgQEAgaW50IGFkcmVub19nZXRfcGFyYW0oc3RydWN0IG1zbV9ncHUgKmdwdSwgdWlu dDMyX3QgcGFyYW0sIHVpbnQ2NF90ICp2YWx1ZSkKIAl9CiB9CiAKLXN0YXRpYyBpbnQgYWRyZW5v X2xvYWRfZncoc3RydWN0IGFkcmVub19ncHUgKmFkcmVub19ncHUpCitjb25zdCBzdHJ1Y3QgZmly bXdhcmUgKgorYWRyZW5vX3JlcXVlc3RfZncoc3RydWN0IGFkcmVub19ncHUgKmFkcmVub19ncHUs IGNvbnN0IGNoYXIgKmZ3bmFtZSkKIHsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZHJtID0gYWRyZW5v X2dwdS0+YmFzZS5kZXY7CisJY29uc3Qgc3RydWN0IGZpcm13YXJlICpmdyA9IE5VTEw7CiAJaW50 IHJldDsKIAorCXJldCA9IHJlcXVlc3RfZmlybXdhcmUoJmZ3LCBmd25hbWUsIGRybS0+ZGV2KTsK KwlpZiAocmV0KSB7CisJCWRldl9lcnIoZHJtLT5kZXYsICJmYWlsZWQgdG8gbG9hZCAlczogJWRc biIsIGZ3bmFtZSwgcmV0KTsKKwkJcmV0dXJuIEVSUl9QVFIocmV0KTsKKwl9CisKKwlyZXR1cm4g Znc7Cit9CisKK3N0YXRpYyBpbnQgYWRyZW5vX2xvYWRfZncoc3RydWN0IGFkcmVub19ncHUgKmFk cmVub19ncHUpCit7CisJY29uc3Qgc3RydWN0IGZpcm13YXJlICpmdzsKKwogCWlmIChhZHJlbm9f Z3B1LT5wbTQpCiAJCXJldHVybiAwOwogCi0JcmV0ID0gcmVxdWVzdF9maXJtd2FyZSgmYWRyZW5v X2dwdS0+cG00LCBhZHJlbm9fZ3B1LT5pbmZvLT5wbTRmdywgZHJtLT5kZXYpOwotCWlmIChyZXQp IHsKLQkJZGV2X2Vycihkcm0tPmRldiwgImZhaWxlZCB0byBsb2FkICVzIFBNNCBmaXJtd2FyZTog JWRcbiIsCi0JCQkJYWRyZW5vX2dwdS0+aW5mby0+cG00ZncsIHJldCk7Ci0JCXJldHVybiByZXQ7 Ci0JfQorCWZ3ID0gYWRyZW5vX3JlcXVlc3RfZncoYWRyZW5vX2dwdSwgYWRyZW5vX2dwdS0+aW5m by0+cG00ZncpOworCWlmIChJU19FUlIoZncpKQorCQlyZXR1cm4gUFRSX0VSUihmdyk7CisJYWRy ZW5vX2dwdS0+cG00ID0gZnc7CiAKLQlyZXQgPSByZXF1ZXN0X2Zpcm13YXJlKCZhZHJlbm9fZ3B1 LT5wZnAsIGFkcmVub19ncHUtPmluZm8tPnBmcGZ3LCBkcm0tPmRldik7Ci0JaWYgKHJldCkgewot CQlkZXZfZXJyKGRybS0+ZGV2LCAiZmFpbGVkIHRvIGxvYWQgJXMgUEZQIGZpcm13YXJlOiAlZFxu IiwKLQkJCQlhZHJlbm9fZ3B1LT5pbmZvLT5wZnBmdywgcmV0KTsKKwlmdyA9IGFkcmVub19yZXF1 ZXN0X2Z3KGFkcmVub19ncHUsIGFkcmVub19ncHUtPmluZm8tPnBmcGZ3KTsKKwlpZiAoSVNfRVJS KGZ3KSkgewogCQlyZWxlYXNlX2Zpcm13YXJlKGFkcmVub19ncHUtPnBtNCk7CiAJCWFkcmVub19n cHUtPnBtNCA9IE5VTEw7Ci0JCXJldHVybiByZXQ7CisJCXJldHVybiBQVFJfRVJSKGZ3KTsKIAl9 CiAKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2Fk cmVub19ncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuaAppbmRl eCA0ZDkxNjVmMjlmNDMuLjNlZGE5OGFmNTQ2ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L21zbS9hZHJlbm8vYWRyZW5vX2dwdS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5v L2FkcmVub19ncHUuaApAQCAtMTk2LDYgKzE5Niw4IEBAIHN0YXRpYyBpbmxpbmUgaW50IGFkcmVu b19pc19hNTMwKHN0cnVjdCBhZHJlbm9fZ3B1ICpncHUpCiB9CiAKIGludCBhZHJlbm9fZ2V0X3Bh cmFtKHN0cnVjdCBtc21fZ3B1ICpncHUsIHVpbnQzMl90IHBhcmFtLCB1aW50NjRfdCAqdmFsdWUp OworY29uc3Qgc3RydWN0IGZpcm13YXJlICphZHJlbm9fcmVxdWVzdF9mdyhzdHJ1Y3QgYWRyZW5v X2dwdSAqYWRyZW5vX2dwdSwKKwkJY29uc3QgY2hhciAqZnduYW1lKTsKIGludCBhZHJlbm9faHdf aW5pdChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKIHVpbnQzMl90IGFkcmVub19sYXN0X2ZlbmNlKHN0 cnVjdCBtc21fZ3B1ICpncHUpOwogdm9pZCBhZHJlbm9fcmVjb3ZlcihzdHJ1Y3QgbXNtX2dwdSAq Z3B1KTsKLS0gCjIuMTMuNgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCg==