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.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MIME_BASE64_TEXT,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, USER_AGENT_GIT autolearn=ham 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 568BBC35280 for ; Fri, 8 May 2020 02:22:15 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2630C21841 for ; Fri, 8 May 2020 02:22:15 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="K9un19w9" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727774AbgEHCWO (ORCPT ); Thu, 7 May 2020 22:22:14 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:13439 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1727124AbgEHCVt (ORCPT ); Thu, 7 May 2020 22:21:49 -0400 X-UUID: 734d15c0b6c142428623976393a6cbd7-20200508 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=YR3WVUBpJWVy4V0NupKjoDogylR3fVDOP+kf7Ez3qa0=; b=K9un19w9uwDQCQc8DJJ5IgDSQFj691hPkaPDBxpSdAhc96OGdlE1vdZDgOITmMro5tIiwbroz7HNQrWSwzS3593GD4WZRc4O1stSXgj4xvLFknQjS84UrMznqXK/qW179/yt4k/vwEIqhETSfdmTSzriZwQ1bIEyaFFJ7Tg6utA=; X-UUID: 734d15c0b6c142428623976393a6cbd7-20200508 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1927093853; Fri, 08 May 2020 10:21:43 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 8 May 2020 10:21:42 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Fri, 8 May 2020 10:21:42 +0800 From: Stanley Chu To: , , , , , CC: , , , , , , , , , , , Stanley Chu Subject: [PATCH v7 5/8] scsi: ufs: add "index" in parameter list of ufshcd_query_flag() Date: Fri, 8 May 2020 10:21:38 +0800 Message-ID: <20200508022141.10783-6-stanley.chu@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20200508022141.10783-1-stanley.chu@mediatek.com> References: <20200508022141.10783-1-stanley.chu@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Rm9yIHByZXBhcmF0aW9uIG9mIExVIERlZGljYXRlZCBidWZmZXIgbW9kZSBzdXBwb3J0IG9uIFdy aXRlQm9vc3Rlcg0KZmVhdHVyZSwgImluZGV4IiBwYXJhbWV0ZXIgc2hhbGwgYmUgYWRkZWQgYW5k IGFsbG93ZWQgdG8gYmUgc3BlY2lmaWVkDQpieSBjYWxsZXJzLg0KDQpTaWduZWQtb2ZmLWJ5OiBT dGFubGV5IENodSA8c3RhbmxleS5jaHVAbWVkaWF0ZWsuY29tPg0KUmV2aWV3ZWQtYnk6IEJlYW4g SHVvIDxiZWFuaHVvQG1pY3Jvbi5jb20+DQpSZXZpZXdlZC1ieTogQXZyaSBBbHRtYW4gPGF2cmku YWx0bWFuQHdkYy5jb20+DQpSZXZpZXdlZC1ieTogQ2FuIEd1byA8Y2FuZ0Bjb2RlYXVyb3JhLm9y Zz4NCi0tLQ0KIGRyaXZlcnMvc2NzaS91ZnMvdWZzLXN5c2ZzLmMgfCAgMiArLQ0KIGRyaXZlcnMv c2NzaS91ZnMvdWZzaGNkLmMgICAgfCAyOCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tDQog ZHJpdmVycy9zY3NpL3Vmcy91ZnNoY2QuaCAgICB8ICAyICstDQogMyBmaWxlcyBjaGFuZ2VkLCAx NyBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv c2NzaS91ZnMvdWZzLXN5c2ZzLmMgYi9kcml2ZXJzL3Njc2kvdWZzL3Vmcy1zeXNmcy5jDQppbmRl eCA5MzQ4NDQwOGJjNDAuLmI4NmI2YTQwZDdlNiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvc2NzaS91 ZnMvdWZzLXN5c2ZzLmMNCisrKyBiL2RyaXZlcnMvc2NzaS91ZnMvdWZzLXN5c2ZzLmMNCkBAIC02 MzEsNyArNjMxLDcgQEAgc3RhdGljIHNzaXplX3QgX25hbWUjI19zaG93KHN0cnVjdCBkZXZpY2Ug KmRldiwJCQkJXA0KIAlzdHJ1Y3QgdWZzX2hiYSAqaGJhID0gZGV2X2dldF9kcnZkYXRhKGRldik7 CQkJXA0KIAlwbV9ydW50aW1lX2dldF9zeW5jKGhiYS0+ZGV2KTsJCQkJCVwNCiAJcmV0ID0gdWZz aGNkX3F1ZXJ5X2ZsYWcoaGJhLCBVUElVX1FVRVJZX09QQ09ERV9SRUFEX0ZMQUcsCVwNCi0JCVFV RVJZX0ZMQUdfSUROIyNfdW5hbWUsICZmbGFnKTsJCQkJXA0KKwkJUVVFUllfRkxBR19JRE4jI191 bmFtZSwgMCwgJmZsYWcpOwkJCVwNCiAJcG1fcnVudGltZV9wdXRfc3luYyhoYmEtPmRldik7CQkJ CQlcDQogCWlmIChyZXQpCQkJCQkJCVwNCiAJCXJldHVybiAtRUlOVkFMOwkJCQkJCVwNCmRpZmYg LS1naXQgYS9kcml2ZXJzL3Njc2kvdWZzL3Vmc2hjZC5jIGIvZHJpdmVycy9zY3NpL3Vmcy91ZnNo Y2QuYw0KaW5kZXggNjYzYWU4NDJlYTlhLi5iZmRlYmZhNTRhM2QgMTAwNjQ0DQotLS0gYS9kcml2 ZXJzL3Njc2kvdWZzL3Vmc2hjZC5jDQorKysgYi9kcml2ZXJzL3Njc2kvdWZzL3Vmc2hjZC5jDQpA QCAtMjc4MiwxMyArMjc4MiwxMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdWZzaGNkX2luaXRfcXVl cnkoc3RydWN0IHVmc19oYmEgKmhiYSwNCiB9DQogDQogc3RhdGljIGludCB1ZnNoY2RfcXVlcnlf ZmxhZ19yZXRyeShzdHJ1Y3QgdWZzX2hiYSAqaGJhLA0KLQllbnVtIHF1ZXJ5X29wY29kZSBvcGNv ZGUsIGVudW0gZmxhZ19pZG4gaWRuLCBib29sICpmbGFnX3JlcykNCisJZW51bSBxdWVyeV9vcGNv ZGUgb3Bjb2RlLCBlbnVtIGZsYWdfaWRuIGlkbiwgdTggaW5kZXgsIGJvb2wgKmZsYWdfcmVzKQ0K IHsNCiAJaW50IHJldDsNCiAJaW50IHJldHJpZXM7DQogDQogCWZvciAocmV0cmllcyA9IDA7IHJl dHJpZXMgPCBRVUVSWV9SRVFfUkVUUklFUzsgcmV0cmllcysrKSB7DQotCQlyZXQgPSB1ZnNoY2Rf cXVlcnlfZmxhZyhoYmEsIG9wY29kZSwgaWRuLCBmbGFnX3Jlcyk7DQorCQlyZXQgPSB1ZnNoY2Rf cXVlcnlfZmxhZyhoYmEsIG9wY29kZSwgaWRuLCBpbmRleCwgZmxhZ19yZXMpOw0KIAkJaWYgKHJl dCkNCiAJCQlkZXZfZGJnKGhiYS0+ZGV2LA0KIAkJCQkiJXM6IGZhaWxlZCB3aXRoIGVycm9yICVk LCByZXRyaWVzICVkXG4iLA0KQEAgLTI4MDksMTYgKzI4MDksMTcgQEAgc3RhdGljIGludCB1ZnNo Y2RfcXVlcnlfZmxhZ19yZXRyeShzdHJ1Y3QgdWZzX2hiYSAqaGJhLA0KICAqIEBoYmE6IHBlci1h ZGFwdGVyIGluc3RhbmNlDQogICogQG9wY29kZTogZmxhZyBxdWVyeSB0byBwZXJmb3JtDQogICog QGlkbjogZmxhZyBpZG4gdG8gYWNjZXNzDQorICogQGluZGV4OiBmbGFnIGluZGV4IHRvIGFjY2Vz cw0KICAqIEBmbGFnX3JlczogdGhlIGZsYWcgdmFsdWUgYWZ0ZXIgdGhlIHF1ZXJ5IHJlcXVlc3Qg Y29tcGxldGVzDQogICoNCiAgKiBSZXR1cm5zIDAgZm9yIHN1Y2Nlc3MsIG5vbi16ZXJvIGluIGNh c2Ugb2YgZmFpbHVyZQ0KICAqLw0KIGludCB1ZnNoY2RfcXVlcnlfZmxhZyhzdHJ1Y3QgdWZzX2hi YSAqaGJhLCBlbnVtIHF1ZXJ5X29wY29kZSBvcGNvZGUsDQotCQkJZW51bSBmbGFnX2lkbiBpZG4s IGJvb2wgKmZsYWdfcmVzKQ0KKwkJCWVudW0gZmxhZ19pZG4gaWRuLCB1OCBpbmRleCwgYm9vbCAq ZmxhZ19yZXMpDQogew0KIAlzdHJ1Y3QgdWZzX3F1ZXJ5X3JlcSAqcmVxdWVzdCA9IE5VTEw7DQog CXN0cnVjdCB1ZnNfcXVlcnlfcmVzICpyZXNwb25zZSA9IE5VTEw7DQotCWludCBlcnIsIGluZGV4 ID0gMCwgc2VsZWN0b3IgPSAwOw0KKwlpbnQgZXJyLCBzZWxlY3RvciA9IDA7DQogCWludCB0aW1l b3V0ID0gUVVFUllfUkVRX1RJTUVPVVQ7DQogDQogCUJVR19PTighaGJhKTsNCkBAIC00MTc1LDcg KzQxNzYsNyBAQCBzdGF0aWMgaW50IHVmc2hjZF9jb21wbGV0ZV9kZXZfaW5pdChzdHJ1Y3QgdWZz X2hiYSAqaGJhKQ0KIAlib29sIGZsYWdfcmVzID0gdHJ1ZTsNCiANCiAJZXJyID0gdWZzaGNkX3F1 ZXJ5X2ZsYWdfcmV0cnkoaGJhLCBVUElVX1FVRVJZX09QQ09ERV9TRVRfRkxBRywNCi0JCVFVRVJZ X0ZMQUdfSUROX0ZERVZJQ0VJTklULCBOVUxMKTsNCisJCVFVRVJZX0ZMQUdfSUROX0ZERVZJQ0VJ TklULCAwLCBOVUxMKTsNCiAJaWYgKGVycikgew0KIAkJZGV2X2VycihoYmEtPmRldiwNCiAJCQki JXMgc2V0dGluZyBmRGV2aWNlSW5pdCBmbGFnIGZhaWxlZCB3aXRoIGVycm9yICVkXG4iLA0KQEAg LTQxODYsNyArNDE4Nyw3IEBAIHN0YXRpYyBpbnQgdWZzaGNkX2NvbXBsZXRlX2Rldl9pbml0KHN0 cnVjdCB1ZnNfaGJhICpoYmEpDQogCS8qIHBvbGwgZm9yIG1heC4gMTAwMCBpdGVyYXRpb25zIGZv ciBmRGV2aWNlSW5pdCBmbGFnIHRvIGNsZWFyICovDQogCWZvciAoaSA9IDA7IGkgPCAxMDAwICYm ICFlcnIgJiYgZmxhZ19yZXM7IGkrKykNCiAJCWVyciA9IHVmc2hjZF9xdWVyeV9mbGFnX3JldHJ5 KGhiYSwgVVBJVV9RVUVSWV9PUENPREVfUkVBRF9GTEFHLA0KLQkJCVFVRVJZX0ZMQUdfSUROX0ZE RVZJQ0VJTklULCAmZmxhZ19yZXMpOw0KKwkJCVFVRVJZX0ZMQUdfSUROX0ZERVZJQ0VJTklULCAw LCAmZmxhZ19yZXMpOw0KIA0KIAlpZiAoZXJyKQ0KIAkJZGV2X2VycihoYmEtPmRldiwNCkBAIC01 MDAxLDcgKzUwMDIsNyBAQCBzdGF0aWMgaW50IHVmc2hjZF9lbmFibGVfYXV0b19ia29wcyhzdHJ1 Y3QgdWZzX2hiYSAqaGJhKQ0KIAkJZ290byBvdXQ7DQogDQogCWVyciA9IHVmc2hjZF9xdWVyeV9m bGFnX3JldHJ5KGhiYSwgVVBJVV9RVUVSWV9PUENPREVfU0VUX0ZMQUcsDQotCQkJUVVFUllfRkxB R19JRE5fQktPUFNfRU4sIE5VTEwpOw0KKwkJCVFVRVJZX0ZMQUdfSUROX0JLT1BTX0VOLCAwLCBO VUxMKTsNCiAJaWYgKGVycikgew0KIAkJZGV2X2VycihoYmEtPmRldiwgIiVzOiBmYWlsZWQgdG8g ZW5hYmxlIGJrb3BzICVkXG4iLA0KIAkJCQlfX2Z1bmNfXywgZXJyKTsNCkBAIC01MDUxLDcgKzUw NTIsNyBAQCBzdGF0aWMgaW50IHVmc2hjZF9kaXNhYmxlX2F1dG9fYmtvcHMoc3RydWN0IHVmc19o YmEgKmhiYSkNCiAJfQ0KIA0KIAllcnIgPSB1ZnNoY2RfcXVlcnlfZmxhZ19yZXRyeShoYmEsIFVQ SVVfUVVFUllfT1BDT0RFX0NMRUFSX0ZMQUcsDQotCQkJUVVFUllfRkxBR19JRE5fQktPUFNfRU4s IE5VTEwpOw0KKwkJCVFVRVJZX0ZMQUdfSUROX0JLT1BTX0VOLCAwLCBOVUxMKTsNCiAJaWYgKGVy cikgew0KIAkJZGV2X2VycihoYmEtPmRldiwgIiVzOiBmYWlsZWQgdG8gZGlzYWJsZSBia29wcyAl ZFxuIiwNCiAJCQkJX19mdW5jX18sIGVycik7DQpAQCAtNTIxNyw3ICs1MjE4LDcgQEAgc3RhdGlj IGludCB1ZnNoY2Rfd2JfY3RybChzdHJ1Y3QgdWZzX2hiYSAqaGJhLCBib29sIGVuYWJsZSkNCiAJ CW9wY29kZSA9IFVQSVVfUVVFUllfT1BDT0RFX0NMRUFSX0ZMQUc7DQogDQogCXJldCA9IHVmc2hj ZF9xdWVyeV9mbGFnX3JldHJ5KGhiYSwgb3Bjb2RlLA0KLQkJCQkgICAgICBRVUVSWV9GTEFHX0lE Tl9XQl9FTiwgTlVMTCk7DQorCQkJCSAgICAgIFFVRVJZX0ZMQUdfSUROX1dCX0VOLCAwLCBOVUxM KTsNCiAJaWYgKHJldCkgew0KIAkJZGV2X2VycihoYmEtPmRldiwgIiVzIHdyaXRlIGJvb3N0ZXIg JXMgZmFpbGVkICVkXG4iLA0KIAkJCV9fZnVuY19fLCBlbmFibGUgPyAiZW5hYmxlIiA6ICJkaXNh YmxlIiwgcmV0KTsNCkBAIC01MjQxLDcgKzUyNDIsNyBAQCBzdGF0aWMgaW50IHVmc2hjZF93Yl90 b2dnbGVfZmx1c2hfZHVyaW5nX2g4KHN0cnVjdCB1ZnNfaGJhICpoYmEsIGJvb2wgc2V0KQ0KIAkJ dmFsID0gVVBJVV9RVUVSWV9PUENPREVfQ0xFQVJfRkxBRzsNCiANCiAJcmV0dXJuIHVmc2hjZF9x dWVyeV9mbGFnX3JldHJ5KGhiYSwgdmFsLA0KLQkJCSAgICAgICBRVUVSWV9GTEFHX0lETl9XQl9C VUZGX0ZMVVNIX0RVUklOR19ISUJFUk44LA0KKwkJCSAgICAgICBRVUVSWV9GTEFHX0lETl9XQl9C VUZGX0ZMVVNIX0RVUklOR19ISUJFUk44LCAwLA0KIAkJCQkgICAgICAgTlVMTCk7DQogfQ0KIA0K QEAgLTUyNjIsNyArNTI2Myw4IEBAIHN0YXRpYyBpbnQgdWZzaGNkX3diX2J1Zl9mbHVzaF9lbmFi bGUoc3RydWN0IHVmc19oYmEgKmhiYSkNCiAJCXJldHVybiAwOw0KIA0KIAlyZXQgPSB1ZnNoY2Rf cXVlcnlfZmxhZ19yZXRyeShoYmEsIFVQSVVfUVVFUllfT1BDT0RFX1NFVF9GTEFHLA0KLQkJCQkg ICAgICBRVUVSWV9GTEFHX0lETl9XQl9CVUZGX0ZMVVNIX0VOLCBOVUxMKTsNCisJCQkJICAgICAg UVVFUllfRkxBR19JRE5fV0JfQlVGRl9GTFVTSF9FTiwNCisJCQkJICAgICAgMCwgTlVMTCk7DQog CWlmIChyZXQpDQogCQlkZXZfZXJyKGhiYS0+ZGV2LCAiJXMgV0IgLSBidWYgZmx1c2ggZW5hYmxl IGZhaWxlZCAlZFxuIiwNCiAJCQlfX2Z1bmNfXywgcmV0KTsNCkBAIC01MjgxLDcgKzUyODMsNyBA QCBzdGF0aWMgaW50IHVmc2hjZF93Yl9idWZfZmx1c2hfZGlzYWJsZShzdHJ1Y3QgdWZzX2hiYSAq aGJhKQ0KIAkJcmV0dXJuIDA7DQogDQogCXJldCA9IHVmc2hjZF9xdWVyeV9mbGFnX3JldHJ5KGhi YSwgVVBJVV9RVUVSWV9PUENPREVfQ0xFQVJfRkxBRywNCi0JCQkJICAgICAgUVVFUllfRkxBR19J RE5fV0JfQlVGRl9GTFVTSF9FTiwgTlVMTCk7DQorCQkJCSAgICAgIFFVRVJZX0ZMQUdfSUROX1dC X0JVRkZfRkxVU0hfRU4sIDAsIE5VTEwpOw0KIAlpZiAocmV0KSB7DQogCQlkZXZfd2FybihoYmEt PmRldiwgIiVzOiBXQiAtIGJ1ZiBmbHVzaCBkaXNhYmxlIGZhaWxlZCAlZFxuIiwNCiAJCQkgX19m dW5jX18sIHJldCk7DQpAQCAtNzI3NCw3ICs3Mjc2LDcgQEAgc3RhdGljIGludCB1ZnNoY2RfZGV2 aWNlX3BhcmFtc19pbml0KHN0cnVjdCB1ZnNfaGJhICpoYmEpDQogCXVmc2hjZF9nZXRfcmVmX2Ns a19nYXRpbmdfd2FpdChoYmEpOw0KIA0KIAlpZiAoIXVmc2hjZF9xdWVyeV9mbGFnX3JldHJ5KGhi YSwgVVBJVV9RVUVSWV9PUENPREVfUkVBRF9GTEFHLA0KLQkJCVFVRVJZX0ZMQUdfSUROX1BXUl9P Tl9XUEUsICZmbGFnKSkNCisJCQlRVUVSWV9GTEFHX0lETl9QV1JfT05fV1BFLCAwLCAmZmxhZykp DQogCQloYmEtPmRldl9pbmZvLmZfcG93ZXJfb25fd3BfZW4gPSBmbGFnOw0KIA0KIAkvKiBQcm9i ZSBtYXhpbXVtIHBvd2VyIG1vZGUgY28tc3VwcG9ydGVkIGJ5IGJvdGggVUZTIGhvc3QgYW5kIGRl dmljZSAqLw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS91ZnMvdWZzaGNkLmggYi9kcml2ZXJz L3Njc2kvdWZzL3Vmc2hjZC5oDQppbmRleCA0ZDI5NmFjYWRkNmYuLjgyNjJhNDhlYjllYiAxMDA2 NDQNCi0tLSBhL2RyaXZlcnMvc2NzaS91ZnMvdWZzaGNkLmgNCisrKyBiL2RyaXZlcnMvc2NzaS91 ZnMvdWZzaGNkLmgNCkBAIC05NDgsNyArOTQ4LDcgQEAgaW50IHVmc2hjZF9yZWFkX2Rlc2NfcGFy YW0oc3RydWN0IHVmc19oYmEgKmhiYSwNCiBpbnQgdWZzaGNkX3F1ZXJ5X2F0dHIoc3RydWN0IHVm c19oYmEgKmhiYSwgZW51bSBxdWVyeV9vcGNvZGUgb3Bjb2RlLA0KIAkJICAgICAgZW51bSBhdHRy X2lkbiBpZG4sIHU4IGluZGV4LCB1OCBzZWxlY3RvciwgdTMyICphdHRyX3ZhbCk7DQogaW50IHVm c2hjZF9xdWVyeV9mbGFnKHN0cnVjdCB1ZnNfaGJhICpoYmEsIGVudW0gcXVlcnlfb3Bjb2RlIG9w Y29kZSwNCi0JZW51bSBmbGFnX2lkbiBpZG4sIGJvb2wgKmZsYWdfcmVzKTsNCisJZW51bSBmbGFn X2lkbiBpZG4sIHU4IGluZGV4LCBib29sICpmbGFnX3Jlcyk7DQogDQogdm9pZCB1ZnNoY2RfYXV0 b19oaWJlcm44X2VuYWJsZShzdHJ1Y3QgdWZzX2hiYSAqaGJhKTsNCiB2b2lkIHVmc2hjZF9hdXRv X2hpYmVybjhfdXBkYXRlKHN0cnVjdCB1ZnNfaGJhICpoYmEsIHUzMiBhaGl0KTsNCi0tIA0KMi4x OC4wDQo= 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.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,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 1B208C35280 for ; Fri, 8 May 2020 02:23:13 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DC0CD2070B for ; Fri, 8 May 2020 02:23:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="iA2QLRlJ"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="K9un19w9" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DC0CD2070B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=kfwg0SsOv7LdfL6Yix79ZrFlkJwt3uHbdqL0wO8cu8I=; b=iA2QLRlJQH4oNS aoNH18Y6OQpm1Pw5iVECEsCjgJ+FMVAaRRe5AAZ7in7MI9b8CMM5d6fV2/O2vETD8TvPdDw7e661i JhAjjogSkF1dNvL4L2UkFlKADwq6q69Y9qlWfI+h/Yo6RA4qeRT5tcEhz4roERuwOF1JACm9S6OTc 2aRyricGGz2DJGxftjCAW2RmYRYPxX47MAeed+r8x077Tso59YtzpOGUXynsP3FYRr97XmiHBKK4a UVKsAcx/OnJxYnODpfN5jbAjrvrl8APa4sEhRj0DmQZsa2AURvF6yrr2aSeoLTJUTqJWhOPs9WkjC SBogd78ilClbWSCmqGrQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jWsfH-0004LH-7A; Fri, 08 May 2020 02:23:03 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jWseC-0003HC-N4; Fri, 08 May 2020 02:21:58 +0000 X-UUID: caf2ffac7a80483ca2efe480af63c28d-20200507 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=YR3WVUBpJWVy4V0NupKjoDogylR3fVDOP+kf7Ez3qa0=; b=K9un19w9uwDQCQc8DJJ5IgDSQFj691hPkaPDBxpSdAhc96OGdlE1vdZDgOITmMro5tIiwbroz7HNQrWSwzS3593GD4WZRc4O1stSXgj4xvLFknQjS84UrMznqXK/qW179/yt4k/vwEIqhETSfdmTSzriZwQ1bIEyaFFJ7Tg6utA=; X-UUID: caf2ffac7a80483ca2efe480af63c28d-20200507 Received: from mtkcas67.mediatek.inc [(172.29.193.45)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 1985938314; Thu, 07 May 2020 18:21:50 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 7 May 2020 19:21:47 -0700 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 8 May 2020 10:21:42 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Fri, 8 May 2020 10:21:42 +0800 From: Stanley Chu To: , , , , , Subject: [PATCH v7 5/8] scsi: ufs: add "index" in parameter list of ufshcd_query_flag() Date: Fri, 8 May 2020 10:21:38 +0800 Message-ID: <20200508022141.10783-6-stanley.chu@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20200508022141.10783-1-stanley.chu@mediatek.com> References: <20200508022141.10783-1-stanley.chu@mediatek.com> MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200507_192156_774260_D3C4271A X-CRM114-Status: GOOD ( 12.92 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: bvanassche@acm.org, andy.teng@mediatek.com, chun-hung.wu@mediatek.com, kuohong.wang@mediatek.com, linux-kernel@vger.kernel.org, cang@codeaurora.org, linux-mediatek@lists.infradead.org, peter.wang@mediatek.com, matthias.bgg@gmail.com, Stanley Chu , linux-arm-kernel@lists.infradead.org, beanhuo@micron.com Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org For preparation of LU Dedicated buffer mode support on WriteBooster feature, "index" parameter shall be added and allowed to be specified by callers. Signed-off-by: Stanley Chu Reviewed-by: Bean Huo Reviewed-by: Avri Altman Reviewed-by: Can Guo --- drivers/scsi/ufs/ufs-sysfs.c | 2 +- drivers/scsi/ufs/ufshcd.c | 28 +++++++++++++++------------- drivers/scsi/ufs/ufshcd.h | 2 +- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/drivers/scsi/ufs/ufs-sysfs.c b/drivers/scsi/ufs/ufs-sysfs.c index 93484408bc40..b86b6a40d7e6 100644 --- a/drivers/scsi/ufs/ufs-sysfs.c +++ b/drivers/scsi/ufs/ufs-sysfs.c @@ -631,7 +631,7 @@ static ssize_t _name##_show(struct device *dev, \ struct ufs_hba *hba = dev_get_drvdata(dev); \ pm_runtime_get_sync(hba->dev); \ ret = ufshcd_query_flag(hba, UPIU_QUERY_OPCODE_READ_FLAG, \ - QUERY_FLAG_IDN##_uname, &flag); \ + QUERY_FLAG_IDN##_uname, 0, &flag); \ pm_runtime_put_sync(hba->dev); \ if (ret) \ return -EINVAL; \ diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 663ae842ea9a..bfdebfa54a3d 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -2782,13 +2782,13 @@ static inline void ufshcd_init_query(struct ufs_hba *hba, } static int ufshcd_query_flag_retry(struct ufs_hba *hba, - enum query_opcode opcode, enum flag_idn idn, bool *flag_res) + enum query_opcode opcode, enum flag_idn idn, u8 index, bool *flag_res) { int ret; int retries; for (retries = 0; retries < QUERY_REQ_RETRIES; retries++) { - ret = ufshcd_query_flag(hba, opcode, idn, flag_res); + ret = ufshcd_query_flag(hba, opcode, idn, index, flag_res); if (ret) dev_dbg(hba->dev, "%s: failed with error %d, retries %d\n", @@ -2809,16 +2809,17 @@ static int ufshcd_query_flag_retry(struct ufs_hba *hba, * @hba: per-adapter instance * @opcode: flag query to perform * @idn: flag idn to access + * @index: flag index to access * @flag_res: the flag value after the query request completes * * Returns 0 for success, non-zero in case of failure */ int ufshcd_query_flag(struct ufs_hba *hba, enum query_opcode opcode, - enum flag_idn idn, bool *flag_res) + enum flag_idn idn, u8 index, bool *flag_res) { struct ufs_query_req *request = NULL; struct ufs_query_res *response = NULL; - int err, index = 0, selector = 0; + int err, selector = 0; int timeout = QUERY_REQ_TIMEOUT; BUG_ON(!hba); @@ -4175,7 +4176,7 @@ static int ufshcd_complete_dev_init(struct ufs_hba *hba) bool flag_res = true; err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_FDEVICEINIT, NULL); + QUERY_FLAG_IDN_FDEVICEINIT, 0, NULL); if (err) { dev_err(hba->dev, "%s setting fDeviceInit flag failed with error %d\n", @@ -4186,7 +4187,7 @@ static int ufshcd_complete_dev_init(struct ufs_hba *hba) /* poll for max. 1000 iterations for fDeviceInit flag to clear */ for (i = 0; i < 1000 && !err && flag_res; i++) err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_READ_FLAG, - QUERY_FLAG_IDN_FDEVICEINIT, &flag_res); + QUERY_FLAG_IDN_FDEVICEINIT, 0, &flag_res); if (err) dev_err(hba->dev, @@ -5001,7 +5002,7 @@ static int ufshcd_enable_auto_bkops(struct ufs_hba *hba) goto out; err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_BKOPS_EN, NULL); + QUERY_FLAG_IDN_BKOPS_EN, 0, NULL); if (err) { dev_err(hba->dev, "%s: failed to enable bkops %d\n", __func__, err); @@ -5051,7 +5052,7 @@ static int ufshcd_disable_auto_bkops(struct ufs_hba *hba) } err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_CLEAR_FLAG, - QUERY_FLAG_IDN_BKOPS_EN, NULL); + QUERY_FLAG_IDN_BKOPS_EN, 0, NULL); if (err) { dev_err(hba->dev, "%s: failed to disable bkops %d\n", __func__, err); @@ -5217,7 +5218,7 @@ static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable) opcode = UPIU_QUERY_OPCODE_CLEAR_FLAG; ret = ufshcd_query_flag_retry(hba, opcode, - QUERY_FLAG_IDN_WB_EN, NULL); + QUERY_FLAG_IDN_WB_EN, 0, NULL); if (ret) { dev_err(hba->dev, "%s write booster %s failed %d\n", __func__, enable ? "enable" : "disable", ret); @@ -5241,7 +5242,7 @@ static int ufshcd_wb_toggle_flush_during_h8(struct ufs_hba *hba, bool set) val = UPIU_QUERY_OPCODE_CLEAR_FLAG; return ufshcd_query_flag_retry(hba, val, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8, + QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8, 0, NULL); } @@ -5262,7 +5263,8 @@ static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba) return 0; ret = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, NULL); + QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, + 0, NULL); if (ret) dev_err(hba->dev, "%s WB - buf flush enable failed %d\n", __func__, ret); @@ -5281,7 +5283,7 @@ static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba) return 0; ret = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_CLEAR_FLAG, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, NULL); + QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, 0, NULL); if (ret) { dev_warn(hba->dev, "%s: WB - buf flush disable failed %d\n", __func__, ret); @@ -7274,7 +7276,7 @@ static int ufshcd_device_params_init(struct ufs_hba *hba) ufshcd_get_ref_clk_gating_wait(hba); if (!ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_READ_FLAG, - QUERY_FLAG_IDN_PWR_ON_WPE, &flag)) + QUERY_FLAG_IDN_PWR_ON_WPE, 0, &flag)) hba->dev_info.f_power_on_wp_en = flag; /* Probe maximum power mode co-supported by both UFS host and device */ diff --git a/drivers/scsi/ufs/ufshcd.h b/drivers/scsi/ufs/ufshcd.h index 4d296acadd6f..8262a48eb9eb 100644 --- a/drivers/scsi/ufs/ufshcd.h +++ b/drivers/scsi/ufs/ufshcd.h @@ -948,7 +948,7 @@ int ufshcd_read_desc_param(struct ufs_hba *hba, int ufshcd_query_attr(struct ufs_hba *hba, enum query_opcode opcode, enum attr_idn idn, u8 index, u8 selector, u32 *attr_val); int ufshcd_query_flag(struct ufs_hba *hba, enum query_opcode opcode, - enum flag_idn idn, bool *flag_res); + enum flag_idn idn, u8 index, bool *flag_res); void ufshcd_auto_hibern8_enable(struct ufs_hba *hba); void ufshcd_auto_hibern8_update(struct ufs_hba *hba, u32 ahit); -- 2.18.0 _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek 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.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_GIT autolearn=ham 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 33209C35280 for ; Fri, 8 May 2020 02:22:38 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0267E2070B for ; Fri, 8 May 2020 02:22:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="dB8B3xfl"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="K9un19w9" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0267E2070B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=AbZ5CseRLEKJsj/+acUrTl6jyl2GTXt7KFEDY0ZZMuQ=; b=dB8B3xflFwGhN5 +Jp+Xwsb+dtuFXH73H2r9GWmpXYMS6mpWNbPGyUd8NODX2AflmY58e8h3sJfKYfdMg2UJtHdZrZRu 8k7r99RIcKCV2PIixdBm20hpTDRB46B1HgyezgLyfYppRJxNc6M9ZEKPFClZhc9Nr0IXimwQQFKh1 LB1aosqkaqu/2XFT4SfASSUepOzlYfLj2hwpnAw4+FuvugYyEqMmgJE+YfBiLhUnLqZIuAZOkdkmV Gqfa+XR2QhC7lIWiBtzzy0qzNcdoe1ZY/Ns6eocjA5iYbU2Laz9YiaAGx8AKEDpwRQ90GQc7qzsXR 0LOAikCS12sW58Gg8lnA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jWsen-0003sn-Tr; Fri, 08 May 2020 02:22:33 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jWseC-0003HC-N4; Fri, 08 May 2020 02:21:58 +0000 X-UUID: caf2ffac7a80483ca2efe480af63c28d-20200507 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=YR3WVUBpJWVy4V0NupKjoDogylR3fVDOP+kf7Ez3qa0=; b=K9un19w9uwDQCQc8DJJ5IgDSQFj691hPkaPDBxpSdAhc96OGdlE1vdZDgOITmMro5tIiwbroz7HNQrWSwzS3593GD4WZRc4O1stSXgj4xvLFknQjS84UrMznqXK/qW179/yt4k/vwEIqhETSfdmTSzriZwQ1bIEyaFFJ7Tg6utA=; X-UUID: caf2ffac7a80483ca2efe480af63c28d-20200507 Received: from mtkcas67.mediatek.inc [(172.29.193.45)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 1985938314; Thu, 07 May 2020 18:21:50 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 7 May 2020 19:21:47 -0700 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 8 May 2020 10:21:42 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Fri, 8 May 2020 10:21:42 +0800 From: Stanley Chu To: , , , , , Subject: [PATCH v7 5/8] scsi: ufs: add "index" in parameter list of ufshcd_query_flag() Date: Fri, 8 May 2020 10:21:38 +0800 Message-ID: <20200508022141.10783-6-stanley.chu@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20200508022141.10783-1-stanley.chu@mediatek.com> References: <20200508022141.10783-1-stanley.chu@mediatek.com> MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200507_192156_774260_D3C4271A X-CRM114-Status: GOOD ( 12.92 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: bvanassche@acm.org, andy.teng@mediatek.com, chun-hung.wu@mediatek.com, kuohong.wang@mediatek.com, linux-kernel@vger.kernel.org, cang@codeaurora.org, linux-mediatek@lists.infradead.org, peter.wang@mediatek.com, matthias.bgg@gmail.com, Stanley Chu , linux-arm-kernel@lists.infradead.org, beanhuo@micron.com Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org For preparation of LU Dedicated buffer mode support on WriteBooster feature, "index" parameter shall be added and allowed to be specified by callers. Signed-off-by: Stanley Chu Reviewed-by: Bean Huo Reviewed-by: Avri Altman Reviewed-by: Can Guo --- drivers/scsi/ufs/ufs-sysfs.c | 2 +- drivers/scsi/ufs/ufshcd.c | 28 +++++++++++++++------------- drivers/scsi/ufs/ufshcd.h | 2 +- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/drivers/scsi/ufs/ufs-sysfs.c b/drivers/scsi/ufs/ufs-sysfs.c index 93484408bc40..b86b6a40d7e6 100644 --- a/drivers/scsi/ufs/ufs-sysfs.c +++ b/drivers/scsi/ufs/ufs-sysfs.c @@ -631,7 +631,7 @@ static ssize_t _name##_show(struct device *dev, \ struct ufs_hba *hba = dev_get_drvdata(dev); \ pm_runtime_get_sync(hba->dev); \ ret = ufshcd_query_flag(hba, UPIU_QUERY_OPCODE_READ_FLAG, \ - QUERY_FLAG_IDN##_uname, &flag); \ + QUERY_FLAG_IDN##_uname, 0, &flag); \ pm_runtime_put_sync(hba->dev); \ if (ret) \ return -EINVAL; \ diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 663ae842ea9a..bfdebfa54a3d 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -2782,13 +2782,13 @@ static inline void ufshcd_init_query(struct ufs_hba *hba, } static int ufshcd_query_flag_retry(struct ufs_hba *hba, - enum query_opcode opcode, enum flag_idn idn, bool *flag_res) + enum query_opcode opcode, enum flag_idn idn, u8 index, bool *flag_res) { int ret; int retries; for (retries = 0; retries < QUERY_REQ_RETRIES; retries++) { - ret = ufshcd_query_flag(hba, opcode, idn, flag_res); + ret = ufshcd_query_flag(hba, opcode, idn, index, flag_res); if (ret) dev_dbg(hba->dev, "%s: failed with error %d, retries %d\n", @@ -2809,16 +2809,17 @@ static int ufshcd_query_flag_retry(struct ufs_hba *hba, * @hba: per-adapter instance * @opcode: flag query to perform * @idn: flag idn to access + * @index: flag index to access * @flag_res: the flag value after the query request completes * * Returns 0 for success, non-zero in case of failure */ int ufshcd_query_flag(struct ufs_hba *hba, enum query_opcode opcode, - enum flag_idn idn, bool *flag_res) + enum flag_idn idn, u8 index, bool *flag_res) { struct ufs_query_req *request = NULL; struct ufs_query_res *response = NULL; - int err, index = 0, selector = 0; + int err, selector = 0; int timeout = QUERY_REQ_TIMEOUT; BUG_ON(!hba); @@ -4175,7 +4176,7 @@ static int ufshcd_complete_dev_init(struct ufs_hba *hba) bool flag_res = true; err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_FDEVICEINIT, NULL); + QUERY_FLAG_IDN_FDEVICEINIT, 0, NULL); if (err) { dev_err(hba->dev, "%s setting fDeviceInit flag failed with error %d\n", @@ -4186,7 +4187,7 @@ static int ufshcd_complete_dev_init(struct ufs_hba *hba) /* poll for max. 1000 iterations for fDeviceInit flag to clear */ for (i = 0; i < 1000 && !err && flag_res; i++) err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_READ_FLAG, - QUERY_FLAG_IDN_FDEVICEINIT, &flag_res); + QUERY_FLAG_IDN_FDEVICEINIT, 0, &flag_res); if (err) dev_err(hba->dev, @@ -5001,7 +5002,7 @@ static int ufshcd_enable_auto_bkops(struct ufs_hba *hba) goto out; err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_BKOPS_EN, NULL); + QUERY_FLAG_IDN_BKOPS_EN, 0, NULL); if (err) { dev_err(hba->dev, "%s: failed to enable bkops %d\n", __func__, err); @@ -5051,7 +5052,7 @@ static int ufshcd_disable_auto_bkops(struct ufs_hba *hba) } err = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_CLEAR_FLAG, - QUERY_FLAG_IDN_BKOPS_EN, NULL); + QUERY_FLAG_IDN_BKOPS_EN, 0, NULL); if (err) { dev_err(hba->dev, "%s: failed to disable bkops %d\n", __func__, err); @@ -5217,7 +5218,7 @@ static int ufshcd_wb_ctrl(struct ufs_hba *hba, bool enable) opcode = UPIU_QUERY_OPCODE_CLEAR_FLAG; ret = ufshcd_query_flag_retry(hba, opcode, - QUERY_FLAG_IDN_WB_EN, NULL); + QUERY_FLAG_IDN_WB_EN, 0, NULL); if (ret) { dev_err(hba->dev, "%s write booster %s failed %d\n", __func__, enable ? "enable" : "disable", ret); @@ -5241,7 +5242,7 @@ static int ufshcd_wb_toggle_flush_during_h8(struct ufs_hba *hba, bool set) val = UPIU_QUERY_OPCODE_CLEAR_FLAG; return ufshcd_query_flag_retry(hba, val, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8, + QUERY_FLAG_IDN_WB_BUFF_FLUSH_DURING_HIBERN8, 0, NULL); } @@ -5262,7 +5263,8 @@ static int ufshcd_wb_buf_flush_enable(struct ufs_hba *hba) return 0; ret = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_SET_FLAG, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, NULL); + QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, + 0, NULL); if (ret) dev_err(hba->dev, "%s WB - buf flush enable failed %d\n", __func__, ret); @@ -5281,7 +5283,7 @@ static int ufshcd_wb_buf_flush_disable(struct ufs_hba *hba) return 0; ret = ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_CLEAR_FLAG, - QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, NULL); + QUERY_FLAG_IDN_WB_BUFF_FLUSH_EN, 0, NULL); if (ret) { dev_warn(hba->dev, "%s: WB - buf flush disable failed %d\n", __func__, ret); @@ -7274,7 +7276,7 @@ static int ufshcd_device_params_init(struct ufs_hba *hba) ufshcd_get_ref_clk_gating_wait(hba); if (!ufshcd_query_flag_retry(hba, UPIU_QUERY_OPCODE_READ_FLAG, - QUERY_FLAG_IDN_PWR_ON_WPE, &flag)) + QUERY_FLAG_IDN_PWR_ON_WPE, 0, &flag)) hba->dev_info.f_power_on_wp_en = flag; /* Probe maximum power mode co-supported by both UFS host and device */ diff --git a/drivers/scsi/ufs/ufshcd.h b/drivers/scsi/ufs/ufshcd.h index 4d296acadd6f..8262a48eb9eb 100644 --- a/drivers/scsi/ufs/ufshcd.h +++ b/drivers/scsi/ufs/ufshcd.h @@ -948,7 +948,7 @@ int ufshcd_read_desc_param(struct ufs_hba *hba, int ufshcd_query_attr(struct ufs_hba *hba, enum query_opcode opcode, enum attr_idn idn, u8 index, u8 selector, u32 *attr_val); int ufshcd_query_flag(struct ufs_hba *hba, enum query_opcode opcode, - enum flag_idn idn, bool *flag_res); + enum flag_idn idn, u8 index, bool *flag_res); void ufshcd_auto_hibern8_enable(struct ufs_hba *hba); void ufshcd_auto_hibern8_update(struct ufs_hba *hba, u32 ahit); -- 2.18.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel