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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 59AF8ECAAA1 for ; Mon, 31 Oct 2022 15:43:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=GENphAO0wEyqCSIZG8dvSwO0pfXJ9iahMEDYPUhDzvc=; b=nFzzln+6faFL3P ABEsIpEpnfIszQtTXMCGjsaGdvUI4aWqrPOIxqF2XD/GT/ShbuUYe8vUnDKJp5RgPKKcYvOU0y+k+ a0CuayqDky6HjfEuGypwK0ppaQ6ErG+Q2pTCYFtAdjN2vxuaE2VX6TFYOxPoWfyHVSfE7G4TEZysT 4YYxiYEahuNAWNWGeybIiLpwXJ16I+nP8V9FHrJc4yFG7S/aezGB1YfdNcME/OK+LLMQG2927zlh2 sP9vRiq8zw/w7IrIKBsNSxEZ21ErnezSo0ktZt9YuIkodRicUpgzcD8QQVjcVfTw6I49SYBjstAi/ SdQ5jiZXvLrkOIgjzL3Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1opWvS-00CgnQ-JT; Mon, 31 Oct 2022 15:42:10 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1opWtT-00CfhQ-Sy for linux-arm-kernel@lists.infradead.org; Mon, 31 Oct 2022 15:40:10 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 56561612DD; Mon, 31 Oct 2022 15:40:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8AEE8C433C1; Mon, 31 Oct 2022 15:40:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667230806; bh=20CiDKyUsGR6BS3eLU7VUNZhLLx9cdC239GNR/hWuj8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=tuwo0S3eIZwXtbNV7Q+HSezRfkaUguuCIWLWWWjRsrbladPXKDTRtHZJnZni0COkt UUZ0jtigxeWXs29tGfC0VQHZ1vA1kWZQH3gr+nC3qsDjwsaVGQSmwxEf1kZIq0tVHZ hkhrAVcXz+0PP0AVu60kvrWaTfr4O7duE/Yq526gko679kIua2kt1AwmoR0yqM9CoW T+pmZ2hel6qqqgWeKQ5TpwXCNfFgLzgTf/hIvln9IkIG9ddx7jhyfJP+8sQOYj64O0 qAsAFh6OxOFjFlo3OeXoSzvt3yVdqp5JlyNE4fY+TVni1vyfzWWNk7Fi5meSaoJaQd ruSPX/rMtensw== Date: Mon, 31 Oct 2022 15:40:01 +0000 From: Lee Jones To: Liu Ying Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com Subject: Re: [PATCH RESEND] mfd: Add Freescale i.MX8qxp Control and Status Registers (CSR) module driver Message-ID: References: <20221017075702.4182846-1-victor.liu@nxp.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20221017075702.4182846-1-victor.liu@nxp.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221031_084008_077625_AF70A473 X-CRM114-Status: GOOD ( 30.45 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gTW9uLCAxNyBPY3QgMjAyMiwgTGl1IFlpbmcgd3JvdGU6Cgo+IEZyZWVzY2FsZSBpLk1YOHF4 cCBDb250cm9sIGFuZCBTdGF0dXMgUmVnaXN0ZXJzIChDU1IpIG1vZHVsZSBpcyBhIHN5c3RlbQo+ IGNvbnRyb2xsZXIuIEl0IHJlcHJlc2VudHMgYSBzZXQgb2YgbWlzY2VsbGFuZW91cyByZWdpc3Rl cnMgb2YgYSBzcGVjaWZpYwo+IHN1YnN5c3RlbS4gSXQgbWF5IHByb3ZpZGUgY29udHJvbCBhbmQv b3Igc3RhdHVzIHJlcG9ydCBpbnRlcmZhY2VzIHRvIGEKPiBtaXggb2Ygc3RhbmRhbG9uZSBoYXJk d2FyZSBkZXZpY2VzIHdpdGhpbiB0aGF0IHN1YnN5c3RlbS4KPiAKPiBUaGUgQ1NSIG1vZHVsZSBp biBpLk1YOHFtL3F4cCBTb0NzIGlzIGEgY2hpbGQgbm9kZSBvZiBhIHNpbXBsZSBwb3dlci1tYW5h Z2VkCj4gYnVzKGkuTVg4cXhwIHBpeGVsIGxpbmsgTVNJIGJ1cykuIFRvIHByb3BhZ2F0ZSBwb3dl ciBtYW5hZ2VtZW50IG9wZXJhdGlvbnMKPiBvZiB0aGUgQ1NSIG1vZHVsZSdzIGNoaWxkIGRldmlj ZXMgdG8gdGhhdCBzaW1wbGUgcG93ZXItbWFuYWdlZCBidXMsIGFkZCBhCj4gZGVkaWNhdGVkIGRy aXZlciBmb3IgdGhlIENTUiBtb2R1bGUuIEFsc28sIHRoZSBkcml2ZXIgd291bGQgcG9wdWxhdGUg dGhlIENTUgo+IG1vZHVsZSdzIGNoaWxkIGRldmljZXMuCj4gCj4gU2lnbmVkLW9mZi1ieTogTGl1 IFlpbmcgPHZpY3Rvci5saXVAbnhwLmNvbT4KPiAtLS0KPiBUaGUgRnJlZXNjYWxlIGkuTVg4cXhw IENTUiBEVCBiaW5kaW5ncyBpcyBhdAo+IERvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5n cy9tZmQvZnNsLGlteDhxeHAtY3NyLnlhbWwuCj4gCj4gUmVzZW5kIHRoZSBwYXRjaCBiYXNlZCBv biB2Ni4xLXJjMS4KPiAKPiAgZHJpdmVycy9tZmQvS2NvbmZpZyAgICAgICAgICAgfCAxMCArKysr KysrCj4gIGRyaXZlcnMvbWZkL01ha2VmaWxlICAgICAgICAgIHwgIDEgKwo+ICBkcml2ZXJzL21m ZC9mc2wtaW14OHF4cC1jc3IuYyB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gIDMgZmlsZXMgY2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKQo+ICBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9tZmQvZnNsLWlteDhxeHAtY3NyLmMKPiAKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9tZmQvS2NvbmZpZyBiL2RyaXZlcnMvbWZkL0tjb25maWcKPiBpbmRleCA4YjkzODU2ZGU0 MzIuLjk2NmEyNTBkNzkxMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21mZC9LY29uZmlnCj4gKysr IGIvZHJpdmVycy9tZmQvS2NvbmZpZwo+IEBAIC00OTksNiArNDk5LDE2IEBAIGNvbmZpZyBNRkRf TVgyNV9UU0FEQwo+ICAJICBpLk1YMjUgcHJvY2Vzc29ycy4gVGhleSBjb25zaXN0IG9mIGEgY29u dmVyc2lvbiBxdWV1ZSBmb3IgZ2VuZXJhbAo+ICAJICBwdXJwb3NlIEFEQyBhbmQgYSBxdWV1ZSBm b3IgVG91Y2hzY3JlZW5zLgo+ICAKPiArY29uZmlnIE1GRF9NWDhRWFBfQ1NSCj4gKwl0cmlzdGF0 ZSAiRnJlZXNjYWxlIGkuTVg4cXhwIENvbnRyb2wgYW5kIFN0YXR1cyBSZWdpc3RlcnMgKENTUikg TW9kdWxlIgo+ICsJZGVwZW5kcyBvbiAoQVJDSF9NWEMgJiYgT0YpIHx8IENPTVBJTEVfVEVTVAo+ ICsJaGVscAo+ICsJICBFbmFibGUgc3VwcG9ydCBmb3IgRnJlZXNjYWxlIGkuTVg4cW0vcXhwIENv bnRyb2wgYW5kIFN0YXR1cyBSZWdpc3RlcnMKPiArCSAgKENTUikgTW9kdWxlLiBBcyBhIHN5c3Rl bSBjb250cm9sbGVyLCBDU1IgcmVwcmVzZW50cyBhIHNldCBvZgo+ICsJICBtaXNjZWxsYW5lb3Vz IHJlZ2lzdGVycyBvZiBhIHNwZWNpZmljIHN1YnN5c3RlbS4gSXQgbWF5IHByb3ZpZGUKPiArCSAg Y29udHJvbCBhbmQvb3Igc3RhdHVzIHJlcG9ydCBpbnRlcmZhY2VzIHRvIGEgbWl4IG9mIHN0YW5k YWxvbmUKPiArCSAgaGFyZHdhcmUgZGV2aWNlcyB3aXRoaW4gdGhhdCBzdWJzeXN0ZW0uCj4gKwo+ ICBjb25maWcgTUZEX0hJNjQyMV9QTUlDCj4gIAl0cmlzdGF0ZSAiSGlTaWxpY29uIEhpNjQyMSBQ TVUvQ29kZWMgSUMiCj4gIAlkZXBlbmRzIG9uIE9GCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWZk L01ha2VmaWxlIGIvZHJpdmVycy9tZmQvTWFrZWZpbGUKPiBpbmRleCA3ZWQzZWY0YTY5OGMuLjVj M2MxM2Q3Y2U4NSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21mZC9NYWtlZmlsZQo+ICsrKyBiL2Ry aXZlcnMvbWZkL01ha2VmaWxlCj4gQEAgLTExMyw2ICsxMTMsNyBAQCBvYmotJChDT05GSUdfTUZE X1RXTDQwMzBfQVVESU8pCSs9IHR3bDQwMzAtYXVkaW8ubwo+ICBvYmotJChDT05GSUdfVFdMNjA0 MF9DT1JFKQkrPSB0d2w2MDQwLm8KPiAgCj4gIG9iai0kKENPTkZJR19NRkRfTVgyNV9UU0FEQykJ Kz0gZnNsLWlteDI1LXRzYWRjLm8KPiArb2JqLSQoQ09ORklHX01GRF9NWDhRWFBfQ1NSKQkrPSBm c2wtaW14OHF4cC1jc3Iubwo+ICAKPiAgb2JqLSQoQ09ORklHX01GRF9NQzEzWFhYKQkrPSBtYzEz eHh4LWNvcmUubwo+ICBvYmotJChDT05GSUdfTUZEX01DMTNYWFhfU1BJKQkrPSBtYzEzeHh4LXNw aS5vCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWZkL2ZzbC1pbXg4cXhwLWNzci5jIGIvZHJpdmVy cy9tZmQvZnNsLWlteDhxeHAtY3NyLmMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAw MDAwMDAwMDAwMC4uMzkxNWQzZDZjYTY1Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZlcnMv bWZkL2ZzbC1pbXg4cXhwLWNzci5jCj4gQEAgLTAsMCArMSw1MyBAQAo+ICsvLyBTUERYLUxpY2Vu c2UtSWRlbnRpZmllcjogR1BMLTIuMCsKPiArCj4gKy8qCj4gKyAqIENvcHlyaWdodCAyMDIyIE5Y UAo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4KPiArI2luY2x1ZGUgPGxp bnV4L29mX3BsYXRmb3JtLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4K PiArI2luY2x1ZGUgPGxpbnV4L3BtX3J1bnRpbWUuaD4KPiArCj4gK3N0YXRpYyBpbnQgaW14OHF4 cF9jc3JfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiArewo+ICsJaW50IHJl dDsKPiArCj4gKwlwbV9ydW50aW1lX2VuYWJsZSgmcGRldi0+ZGV2KTsKPiArCj4gKwlyZXQgPSBk ZXZtX29mX3BsYXRmb3JtX3BvcHVsYXRlKCZwZGV2LT5kZXYpOwoKVGhlIHVzZSBvZiB0aGlzIEFQ SSBkb2VzIG5vdCBjb25zdGl0dXRlIGEgTUZELgoKUGxlYXNlIHVzZSAic2ltcGxlLW1mZCIgaW5z dGVhZC4KCj4gKwlpZiAocmV0IDwgMCkgewo+ICsJCWRldl9lcnIoJnBkZXYtPmRldiwgImZhaWxl ZCB0byBwb3B1bGF0ZSBzdWItZGV2aWNlczogJWRcbiIsIHJldCk7Cj4gKwkJcG1fcnVudGltZV9k aXNhYmxlKCZwZGV2LT5kZXYpOwo+ICsJfQo+ICsKPiArCXJldHVybiByZXQ7Cj4gK30KPiArCj4g K3N0YXRpYyBpbnQgaW14OHF4cF9jc3JfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpCj4gK3sKPiArCXBtX3J1bnRpbWVfZGlzYWJsZSgmcGRldi0+ZGV2KTsKPiArCXJldHVybiAw Owo+ICt9Cj4gKwo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBpbXg4cXhwX2Nz cl9vZl9tYXRjaFtdID0gewo+ICsJeyAuY29tcGF0aWJsZSA9ICJmc2wsaW14OHF4cC1taXBpLWx2 ZHMtY3NyIiwgfSwKPiArCXsgLmNvbXBhdGlibGUgPSAiZnNsLGlteDhxbS1sdmRzLWNzciIsIH0s Cj4gKwl7IC8qIHNlbnRpbmVsICovIH0KPiArfTsKPiArTU9EVUxFX0RFVklDRV9UQUJMRShvZiwg aW14OHF4cF9jc3Jfb2ZfbWF0Y2gpOwo+ICsKPiArc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kcml2 ZXIgaW14OHF4cF9jc3JfZHJpdmVyID0gewo+ICsJLnByb2JlID0gaW14OHF4cF9jc3JfcHJvYmUs Cj4gKwkucmVtb3ZlID0gaW14OHF4cF9jc3JfcmVtb3ZlLAo+ICsJLmRyaXZlciA9IHsKPiArCQku bmFtZSA9ICJpbXg4cXhwLWNzciIsCj4gKwkJLm9mX21hdGNoX3RhYmxlID0gaW14OHF4cF9jc3Jf b2ZfbWF0Y2gsCj4gKwl9LAo+ICt9Owo+ICsKPiArbW9kdWxlX3BsYXRmb3JtX2RyaXZlcihpbXg4 cXhwX2Nzcl9kcml2ZXIpOwo+ICsKPiArTU9EVUxFX0RFU0NSSVBUSU9OKCJGcmVlc2NhbGUgaS5N WDhxbS9xeHAgQ29udHJvbCBhbmQgU3RhdHVzIFJlZ2lzdGVycyBNb2R1bGUgRHJpdmVyIik7Cj4g K01PRFVMRV9BVVRIT1IoIkxpdSBZaW5nIDx2aWN0b3IubGl1QG54cC5jb20+Iik7Cj4gK01PRFVM RV9MSUNFTlNFKCJHUEwgdjIiKTsKCi0tIApMZWUgSm9uZXMgW+adjueQvOaWr10KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwg bWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8v bGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK 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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D9BE0ECAAA1 for ; Mon, 31 Oct 2022 15:40:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231899AbiJaPk0 (ORCPT ); Mon, 31 Oct 2022 11:40:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45952 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231883AbiJaPkK (ORCPT ); Mon, 31 Oct 2022 11:40:10 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BD25A65A5 for ; Mon, 31 Oct 2022 08:40:07 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 5A319612F1 for ; Mon, 31 Oct 2022 15:40:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8AEE8C433C1; Mon, 31 Oct 2022 15:40:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667230806; bh=20CiDKyUsGR6BS3eLU7VUNZhLLx9cdC239GNR/hWuj8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=tuwo0S3eIZwXtbNV7Q+HSezRfkaUguuCIWLWWWjRsrbladPXKDTRtHZJnZni0COkt UUZ0jtigxeWXs29tGfC0VQHZ1vA1kWZQH3gr+nC3qsDjwsaVGQSmwxEf1kZIq0tVHZ hkhrAVcXz+0PP0AVu60kvrWaTfr4O7duE/Yq526gko679kIua2kt1AwmoR0yqM9CoW T+pmZ2hel6qqqgWeKQ5TpwXCNfFgLzgTf/hIvln9IkIG9ddx7jhyfJP+8sQOYj64O0 qAsAFh6OxOFjFlo3OeXoSzvt3yVdqp5JlyNE4fY+TVni1vyfzWWNk7Fi5meSaoJaQd ruSPX/rMtensw== Date: Mon, 31 Oct 2022 15:40:01 +0000 From: Lee Jones To: Liu Ying Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com Subject: Re: [PATCH RESEND] mfd: Add Freescale i.MX8qxp Control and Status Registers (CSR) module driver Message-ID: References: <20221017075702.4182846-1-victor.liu@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20221017075702.4182846-1-victor.liu@nxp.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 17 Oct 2022, Liu Ying wrote: > Freescale i.MX8qxp Control and Status Registers (CSR) module is a system > controller. It represents a set of miscellaneous registers of a specific > subsystem. It may provide control and/or status report interfaces to a > mix of standalone hardware devices within that subsystem. > > The CSR module in i.MX8qm/qxp SoCs is a child node of a simple power-managed > bus(i.MX8qxp pixel link MSI bus). To propagate power management operations > of the CSR module's child devices to that simple power-managed bus, add a > dedicated driver for the CSR module. Also, the driver would populate the CSR > module's child devices. > > Signed-off-by: Liu Ying > --- > The Freescale i.MX8qxp CSR DT bindings is at > Documentation/devicetree/bindings/mfd/fsl,imx8qxp-csr.yaml. > > Resend the patch based on v6.1-rc1. > > drivers/mfd/Kconfig | 10 +++++++ > drivers/mfd/Makefile | 1 + > drivers/mfd/fsl-imx8qxp-csr.c | 53 +++++++++++++++++++++++++++++++++++ > 3 files changed, 64 insertions(+) > create mode 100644 drivers/mfd/fsl-imx8qxp-csr.c > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index 8b93856de432..966a250d7910 100644 > --- a/drivers/mfd/Kconfig > +++ b/drivers/mfd/Kconfig > @@ -499,6 +499,16 @@ config MFD_MX25_TSADC > i.MX25 processors. They consist of a conversion queue for general > purpose ADC and a queue for Touchscreens. > > +config MFD_MX8QXP_CSR > + tristate "Freescale i.MX8qxp Control and Status Registers (CSR) Module" > + depends on (ARCH_MXC && OF) || COMPILE_TEST > + help > + Enable support for Freescale i.MX8qm/qxp Control and Status Registers > + (CSR) Module. As a system controller, CSR represents a set of > + miscellaneous registers of a specific subsystem. It may provide > + control and/or status report interfaces to a mix of standalone > + hardware devices within that subsystem. > + > config MFD_HI6421_PMIC > tristate "HiSilicon Hi6421 PMU/Codec IC" > depends on OF > diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile > index 7ed3ef4a698c..5c3c13d7ce85 100644 > --- a/drivers/mfd/Makefile > +++ b/drivers/mfd/Makefile > @@ -113,6 +113,7 @@ obj-$(CONFIG_MFD_TWL4030_AUDIO) += twl4030-audio.o > obj-$(CONFIG_TWL6040_CORE) += twl6040.o > > obj-$(CONFIG_MFD_MX25_TSADC) += fsl-imx25-tsadc.o > +obj-$(CONFIG_MFD_MX8QXP_CSR) += fsl-imx8qxp-csr.o > > obj-$(CONFIG_MFD_MC13XXX) += mc13xxx-core.o > obj-$(CONFIG_MFD_MC13XXX_SPI) += mc13xxx-spi.o > diff --git a/drivers/mfd/fsl-imx8qxp-csr.c b/drivers/mfd/fsl-imx8qxp-csr.c > new file mode 100644 > index 000000000000..3915d3d6ca65 > --- /dev/null > +++ b/drivers/mfd/fsl-imx8qxp-csr.c > @@ -0,0 +1,53 @@ > +// SPDX-License-Identifier: GPL-2.0+ > + > +/* > + * Copyright 2022 NXP > + */ > + > +#include > +#include > +#include > +#include > + > +static int imx8qxp_csr_probe(struct platform_device *pdev) > +{ > + int ret; > + > + pm_runtime_enable(&pdev->dev); > + > + ret = devm_of_platform_populate(&pdev->dev); The use of this API does not constitute a MFD. Please use "simple-mfd" instead. > + if (ret < 0) { > + dev_err(&pdev->dev, "failed to populate sub-devices: %d\n", ret); > + pm_runtime_disable(&pdev->dev); > + } > + > + return ret; > +} > + > +static int imx8qxp_csr_remove(struct platform_device *pdev) > +{ > + pm_runtime_disable(&pdev->dev); > + return 0; > +} > + > +static const struct of_device_id imx8qxp_csr_of_match[] = { > + { .compatible = "fsl,imx8qxp-mipi-lvds-csr", }, > + { .compatible = "fsl,imx8qm-lvds-csr", }, > + { /* sentinel */ } > +}; > +MODULE_DEVICE_TABLE(of, imx8qxp_csr_of_match); > + > +static struct platform_driver imx8qxp_csr_driver = { > + .probe = imx8qxp_csr_probe, > + .remove = imx8qxp_csr_remove, > + .driver = { > + .name = "imx8qxp-csr", > + .of_match_table = imx8qxp_csr_of_match, > + }, > +}; > + > +module_platform_driver(imx8qxp_csr_driver); > + > +MODULE_DESCRIPTION("Freescale i.MX8qm/qxp Control and Status Registers Module Driver"); > +MODULE_AUTHOR("Liu Ying "); > +MODULE_LICENSE("GPL v2"); -- Lee Jones [李琼斯]