From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 41E3D181 for ; Mon, 31 Oct 2022 08:46:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8961EC433D6; Mon, 31 Oct 2022 08:46:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667205990; bh=CQnvT/64qalh+dfsTFZ1is5YyXfiHf+XDAMhOUOk+SY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=H4wWcHjTqn44oFfZptvhUFjoCZdC01pzV2ykeg3FV6aFrac6PScYbnPu6kEENBbPz 1AkySNJDTLamK/ZUE2sJcK6mZFSx6eBPDX55/AeE1Wj4NtJH6kHEnTflFaXdty/dfc TGF8nY6QS42XUQTuBdVybUotBss2OtT6S2808HOy/Xkvq79NYBzXJye0cv0roA0OwA R+4pXje+Z7H0owKcMY0mmk4FeBvoJOGeI46YHee+/FztR9K55daHL4OfpGMuqZU6b1 Irjth0vD53c9BvsKw9aNkSzxkmQUxlkhIRwUTVjgX6NNdqu1urfggmsBpwM6zLi+td E2/99PizDruIA== Date: Mon, 31 Oct 2022 08:46:25 +0000 From: Lee Jones To: "Russell King (Oracle)" Cc: Hector Martin , Arnd Bergmann , Linus Walleij , Alyssa Rosenzweig , asahi@lists.linux.dev, Bartosz Golaszewski , linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, Sven Peter Subject: Re: [PATCH 4/6] platform/apple: Add new Apple Mac SMC driver Message-ID: References: <45ed0a37-60ac-3a06-92d1-6b30e18261ff@marcan.st> <8f30a490-f970-6605-20cb-c2256daab9de@marcan.st> <82088b05-2a0d-69cc-ba2c-d61c74c9d855@marcan.st> Precedence: bulk X-Mailing-List: asahi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Fri, 28 Oct 2022, Russell King (Oracle) wrote: > On Mon, Sep 12, 2022 at 11:55:14AM +0100, Lee Jones wrote: > > > I'm guessing this series is now dead, and Hector needs to re-spin the > > > patch set according to your views. I'm guessing this is going to take > > > a major re-work of the patch series. > > > > > > I suspect my attempt and trying to get this upstream has made things > > > more complicated, because I doubt Hector has updated his patch set > > > with the review comments that have been made so far... so this is > > > now quite a mess. I think, once this is sorted, the entire series > > > will need to be re-reviewed entirely afresh. > > > > I have no insight into what Hector is doing, or plans to do. > > It seems there's no plans by Hector to address this, so it comes down > to me. > > So, guessing what you're after, would something like the following > work for you? I don't see *any* point in creating more yet more > platform devices unless we're on a mission to maximise wasted memory > resources (which this split will already be doing by creating two > small modules instead of one.) > > Obviously, this is not an official patch yet, it's just to find out > what code structure you are looking for. > > diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile > index 78c6d9d99c3f..8d4c0508a2c8 100644 > --- a/drivers/mfd/Makefile > +++ b/drivers/mfd/Makefile > @@ -18,6 +18,8 @@ obj-$(CONFIG_MFD_ENE_KB3930) += ene-kb3930.o > obj-$(CONFIG_MFD_EXYNOS_LPASS) += exynos-lpass.o > obj-$(CONFIG_MFD_GATEWORKS_GSC) += gateworks-gsc.o > > +obj-$(CONFIG_APPLE_SMC) += apple-smc.o > + > obj-$(CONFIG_HTC_PASIC3) += htc-pasic3.o > obj-$(CONFIG_HTC_I2CPLD) += htc-i2cpld.o > > diff --git a/drivers/mfd/apple-smc.c b/drivers/mfd/apple-smc.c > new file mode 100644 > index 000000000000..bc59d1c5e13d > --- /dev/null > +++ b/drivers/mfd/apple-smc.c > @@ -0,0 +1,38 @@ > +#include > +#include > + > +static const struct mfd_cell apple_smc_devs[] = { > + { > + .name = "macsmc-gpio", > + .of_compatible = "apple,smc-gpio", > + }, > + { > + .name = "macsmc-hid", > + }, > + { > + .name = "macsmc-power", > + }, > + { > + .name = "macsmc-reboot", > + }, > + { > + .name = "macsmc-rtc", > + }, > +}; > + > +int apple_smc_mfd_probe(struct device *dev) > +{ > + return mfd_add_devices(dev, -1, apple_smc_devs, > + ARRAY_SIZE(apple_smc_devs), NULL, 0, NULL); > +} > +EXPORT_SYMBOL(apple_smc_mfd_probe); > + > +void apple_smc_mfd_remove(struct device *dev) > +{ > + mfd_remove_devices(dev); > +} > +EXPORT_SYMBOL(apple_smc_mfd_remove); > + > +MODULE_AUTHOR("Hector Martin "); > +MODULE_LICENSE("Dual MIT/GPL"); > +MODULE_DESCRIPTION("Apple SMC MFD core"); Conceptually interesting, not seen this one before, but clearly a hack, no? Pretty sure all of the other cores in MFD are represented by a Platform Device. Why not implement the inverse? The Apple SMC is clearly an MFD, in Linux terms, so why not move the Platform Device into here, fetch all of the global resources, register the sub-devices, then call into the rtkit implementation in drivers/platform? -- Lee Jones [李琼斯] 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 D0B8AFA3742 for ; Mon, 31 Oct 2022 08:47:38 +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=0P9V1vybS67J66PqJJS8Z//QZTkZERPbq/I/rDfXmt4=; b=u9QN4slXAlbto5 8AdM/OtoAQfqQFqH/re9oFHO9U3sYxg0/cPR30m5NO+SWH18tGsu2ODUf2WrsgEuA3wVm1Uw4HiIM zxpzuVsAsx8bPNqqKUDlSuWrEU0cU/Ik9pWg6BLD8MzO2hg5pbCPRfNRLHVAUGERwgpRFqhONZm49 k6+rDbHOuIriTZzctGWzgNZ+Ijjld82n2IIUAgfldjxf750CPRZ8Ofg0CgBBiZ0H5cxZhaLbkH8VQ E3tKmRyB8T1rCkpOhRVMBt22xwAfRD+paZkNUBfBOoePP1ktB1XLZ78HZ0RnU9JoF4/yFCxEqLeaE sF3E6UtTX83Xyta+yQ7A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1opQRI-009jIf-PX; Mon, 31 Oct 2022 08:46:36 +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 1opQRF-009jDn-D5 for linux-arm-kernel@lists.infradead.org; Mon, 31 Oct 2022 08:46:34 +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 861E360FA7; Mon, 31 Oct 2022 08:46:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8961EC433D6; Mon, 31 Oct 2022 08:46:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667205990; bh=CQnvT/64qalh+dfsTFZ1is5YyXfiHf+XDAMhOUOk+SY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=H4wWcHjTqn44oFfZptvhUFjoCZdC01pzV2ykeg3FV6aFrac6PScYbnPu6kEENBbPz 1AkySNJDTLamK/ZUE2sJcK6mZFSx6eBPDX55/AeE1Wj4NtJH6kHEnTflFaXdty/dfc TGF8nY6QS42XUQTuBdVybUotBss2OtT6S2808HOy/Xkvq79NYBzXJye0cv0roA0OwA R+4pXje+Z7H0owKcMY0mmk4FeBvoJOGeI46YHee+/FztR9K55daHL4OfpGMuqZU6b1 Irjth0vD53c9BvsKw9aNkSzxkmQUxlkhIRwUTVjgX6NNdqu1urfggmsBpwM6zLi+td E2/99PizDruIA== Date: Mon, 31 Oct 2022 08:46:25 +0000 From: Lee Jones To: "Russell King (Oracle)" Cc: Hector Martin , Arnd Bergmann , Linus Walleij , Alyssa Rosenzweig , asahi@lists.linux.dev, Bartosz Golaszewski , linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, Sven Peter Subject: Re: [PATCH 4/6] platform/apple: Add new Apple Mac SMC driver Message-ID: References: <45ed0a37-60ac-3a06-92d1-6b30e18261ff@marcan.st> <8f30a490-f970-6605-20cb-c2256daab9de@marcan.st> <82088b05-2a0d-69cc-ba2c-d61c74c9d855@marcan.st> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221031_014633_603517_07A98501 X-CRM114-Status: GOOD ( 33.71 ) 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 T24gRnJpLCAyOCBPY3QgMjAyMiwgUnVzc2VsbCBLaW5nIChPcmFjbGUpIHdyb3RlOgoKPiBPbiBN b24sIFNlcCAxMiwgMjAyMiBhdCAxMTo1NToxNEFNICswMTAwLCBMZWUgSm9uZXMgd3JvdGU6Cj4g PiA+IEknbSBndWVzc2luZyB0aGlzIHNlcmllcyBpcyBub3cgZGVhZCwgYW5kIEhlY3RvciBuZWVk cyB0byByZS1zcGluIHRoZQo+ID4gPiBwYXRjaCBzZXQgYWNjb3JkaW5nIHRvIHlvdXIgdmlld3Mu IEknbSBndWVzc2luZyB0aGlzIGlzIGdvaW5nIHRvIHRha2UKPiA+ID4gYSBtYWpvciByZS13b3Jr IG9mIHRoZSBwYXRjaCBzZXJpZXMuCj4gPiA+IAo+ID4gPiBJIHN1c3BlY3QgbXkgYXR0ZW1wdCBh bmQgdHJ5aW5nIHRvIGdldCB0aGlzIHVwc3RyZWFtIGhhcyBtYWRlIHRoaW5ncwo+ID4gPiBtb3Jl IGNvbXBsaWNhdGVkLCBiZWNhdXNlIEkgZG91YnQgSGVjdG9yIGhhcyB1cGRhdGVkIGhpcyBwYXRj aCBzZXQKPiA+ID4gd2l0aCB0aGUgcmV2aWV3IGNvbW1lbnRzIHRoYXQgaGF2ZSBiZWVuIG1hZGUg c28gZmFyLi4uIHNvIHRoaXMgaXMKPiA+ID4gbm93IHF1aXRlIGEgbWVzcy4gSSB0aGluaywgb25j ZSB0aGlzIGlzIHNvcnRlZCwgdGhlIGVudGlyZSBzZXJpZXMKPiA+ID4gd2lsbCBuZWVkIHRvIGJl IHJlLXJldmlld2VkIGVudGlyZWx5IGFmcmVzaC4KPiA+IAo+ID4gSSBoYXZlIG5vIGluc2lnaHQg aW50byB3aGF0IEhlY3RvciBpcyBkb2luZywgb3IgcGxhbnMgdG8gZG8uCj4gCj4gSXQgc2VlbXMg dGhlcmUncyBubyBwbGFucyBieSBIZWN0b3IgdG8gYWRkcmVzcyB0aGlzLCBzbyBpdCBjb21lcyBk b3duCj4gdG8gbWUuCj4gCj4gU28sIGd1ZXNzaW5nIHdoYXQgeW91J3JlIGFmdGVyLCB3b3VsZCBz b21ldGhpbmcgbGlrZSB0aGUgZm9sbG93aW5nCj4gd29yayBmb3IgeW91PyBJIGRvbid0IHNlZSAq YW55KiBwb2ludCBpbiBjcmVhdGluZyBtb3JlIHlldCBtb3JlCj4gcGxhdGZvcm0gZGV2aWNlcyB1 bmxlc3Mgd2UncmUgb24gYSBtaXNzaW9uIHRvIG1heGltaXNlIHdhc3RlZCBtZW1vcnkKPiByZXNv dXJjZXMgKHdoaWNoIHRoaXMgc3BsaXQgd2lsbCBhbHJlYWR5IGJlIGRvaW5nIGJ5IGNyZWF0aW5n IHR3bwo+IHNtYWxsIG1vZHVsZXMgaW5zdGVhZCBvZiBvbmUuKQo+IAo+IE9idmlvdXNseSwgdGhp cyBpcyBub3QgYW4gb2ZmaWNpYWwgcGF0Y2ggeWV0LCBpdCdzIGp1c3QgdG8gZmluZCBvdXQKPiB3 aGF0IGNvZGUgc3RydWN0dXJlIHlvdSBhcmUgbG9va2luZyBmb3IuCj4gCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvbWZkL01ha2VmaWxlIGIvZHJpdmVycy9tZmQvTWFrZWZpbGUKPiBpbmRleCA3OGM2 ZDlkOTljM2YuLjhkNGMwNTA4YTJjOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21mZC9NYWtlZmls ZQo+ICsrKyBiL2RyaXZlcnMvbWZkL01ha2VmaWxlCj4gQEAgLTE4LDYgKzE4LDggQEAgb2JqLSQo Q09ORklHX01GRF9FTkVfS0IzOTMwKQkrPSBlbmUta2IzOTMwLm8KPiAgb2JqLSQoQ09ORklHX01G RF9FWFlOT1NfTFBBU1MpCSs9IGV4eW5vcy1scGFzcy5vCj4gIG9iai0kKENPTkZJR19NRkRfR0FU RVdPUktTX0dTQykJKz0gZ2F0ZXdvcmtzLWdzYy5vCj4gIAo+ICtvYmotJChDT05GSUdfQVBQTEVf U01DKQkJKz0gYXBwbGUtc21jLm8KPiArCj4gIG9iai0kKENPTkZJR19IVENfUEFTSUMzKQkrPSBo dGMtcGFzaWMzLm8KPiAgb2JqLSQoQ09ORklHX0hUQ19JMkNQTEQpCSs9IGh0Yy1pMmNwbGQubwo+ ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZmQvYXBwbGUtc21jLmMgYi9kcml2ZXJzL21mZC9h cHBsZS1zbWMuYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMDAwLi5i YzU5ZDFjNWUxM2QKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJpdmVycy9tZmQvYXBwbGUtc21j LmMKPiBAQCAtMCwwICsxLDM4IEBACj4gKyNpbmNsdWRlIDxsaW51eC9tZmQvY29yZS5oPgo+ICsj aW5jbHVkZSA8bGludXgvbWZkL2FwcGxlLXNtYy5oPgo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVj dCBtZmRfY2VsbCBhcHBsZV9zbWNfZGV2c1tdID0gewo+ICsJewo+ICsJCS5uYW1lID0gIm1hY3Nt Yy1ncGlvIiwKPiArCQkub2ZfY29tcGF0aWJsZSA9ICJhcHBsZSxzbWMtZ3BpbyIsCj4gKwl9LAo+ ICsJewo+ICsJCS5uYW1lID0gIm1hY3NtYy1oaWQiLAo+ICsJfSwKPiArCXsKPiArCQkubmFtZSA9 ICJtYWNzbWMtcG93ZXIiLAo+ICsJfSwKPiArCXsKPiArCQkubmFtZSA9ICJtYWNzbWMtcmVib290 IiwKPiArCX0sCj4gKwl7Cj4gKwkJLm5hbWUgPSAibWFjc21jLXJ0YyIsCj4gKwl9LAo+ICt9Owo+ ICsKPiAraW50IGFwcGxlX3NtY19tZmRfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2KQo+ICt7Cj4g KwlyZXR1cm4gbWZkX2FkZF9kZXZpY2VzKGRldiwgLTEsIGFwcGxlX3NtY19kZXZzLAo+ICsJCQkg ICAgICAgQVJSQVlfU0laRShhcHBsZV9zbWNfZGV2cyksIE5VTEwsIDAsIE5VTEwpOwo+ICt9Cj4g K0VYUE9SVF9TWU1CT0woYXBwbGVfc21jX21mZF9wcm9iZSk7Cj4gKwo+ICt2b2lkIGFwcGxlX3Nt Y19tZmRfcmVtb3ZlKHN0cnVjdCBkZXZpY2UgKmRldikKPiArewo+ICsJbWZkX3JlbW92ZV9kZXZp Y2VzKGRldik7Cj4gK30KPiArRVhQT1JUX1NZTUJPTChhcHBsZV9zbWNfbWZkX3JlbW92ZSk7Cj4g Kwo+ICtNT0RVTEVfQVVUSE9SKCJIZWN0b3IgTWFydGluIDxtYXJjYW5AbWFyY2FuLnN0PiIpOwo+ ICtNT0RVTEVfTElDRU5TRSgiRHVhbCBNSVQvR1BMIik7Cj4gK01PRFVMRV9ERVNDUklQVElPTigi QXBwbGUgU01DIE1GRCBjb3JlIik7CgpDb25jZXB0dWFsbHkgaW50ZXJlc3RpbmcsIG5vdCBzZWVu IHRoaXMgb25lIGJlZm9yZSwgYnV0IGNsZWFybHkgYQpoYWNrLCBubz8gIFByZXR0eSBzdXJlIGFs bCBvZiB0aGUgb3RoZXIgY29yZXMgaW4gTUZEIGFyZSByZXByZXNlbnRlZApieSBhIFBsYXRmb3Jt IERldmljZS4KCldoeSBub3QgaW1wbGVtZW50IHRoZSBpbnZlcnNlPyAgVGhlIEFwcGxlIFNNQyBp cyBjbGVhcmx5IGFuIE1GRCwgaW4KTGludXggdGVybXMsIHNvIHdoeSBub3QgbW92ZSB0aGUgUGxh dGZvcm0gRGV2aWNlIGludG8gaGVyZSwgZmV0Y2ggYWxsCm9mIHRoZSBnbG9iYWwgcmVzb3VyY2Vz LCByZWdpc3RlciB0aGUgc3ViLWRldmljZXMsIHRoZW4gY2FsbCBpbnRvIHRoZQpydGtpdCBpbXBs ZW1lbnRhdGlvbiBpbiBkcml2ZXJzL3BsYXRmb3JtPyAKCi0tIApMZWUgSm9uZXMgW+adjueQvOaW r10KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4 LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFk Lm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFy bS1rZXJuZWwK