From mboxrd@z Thu Jan 1 00:00:00 1970 From: thomas.petazzoni@free-electrons.com (Thomas Petazzoni) Date: Mon, 21 Jul 2014 13:12:03 +0200 Subject: [PATCHv2 12/17] cpuidle: mvebu: make the cpuidle driver capable of handling multiple SoCs In-Reply-To: <53CCF295.6030907@linaro.org> References: <1404913221-17343-1-git-send-email-thomas.petazzoni@free-electrons.com> <1404913221-17343-13-git-send-email-thomas.petazzoni@free-electrons.com> <53CCF295.6030907@linaro.org> Message-ID: <20140721131203.2746bbaa@free-electrons.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Dear Daniel Lezcano, On Mon, 21 Jul 2014 12:59:33 +0200, Daniel Lezcano wrote: > > In order to prepare the add of new SoCs supports for this cpuidle > > driver, this patch extends the platform_data understood by the > > cpuidle-mvebu-v7 driver to contain a "type" identifying which specific > > SoC the cpuidle driver is being probed for. It will be used by the > > cpuidle driver to know the list of states for the current SoC. > > It makes more sense to use/implement a 'soc_is_xxx' macro or > 'of_machine_is_compatible', like the other cpuidle drivers, no ? > > Is there a good reason to implement a new way to check the board ? > > It isn't possible to do: > > if (of_machine_is_compatible("marvell,armada-370-xp-pmsu")) > cpuidle_register(&armadaxp_cpuidle_driver, NULL); So you suggest to have a different cpuidle driver, with a different name, one for each SoC ? Or do you suggest to have the cpuidle probe() function call of_machine_is_compatible() to find out the SoC type? Thanks, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com