[PATCH 2/2] cpufreq: brcmstb-avs-cpufreq: prefer SCMI cpufreq if supported

Sudeep Holla sudeep.holla at arm.com
Thu Apr 19 03:37:29 PDT 2018



On 19/04/18 05:16, Viresh Kumar wrote:
> On 18-04-18, 08:56, Markus Mayer wrote:
>> From: Jim Quinlan <jim2101024 at gmail.com>
>>
>> If the SCMI cpufreq driver is supported, we bail, so that the new
>> approach can be used.
>>
>> Signed-off-by: Jim Quinlan <jim2101024 at gmail.com>
>> Signed-off-by: Markus Mayer <mmayer at broadcom.com>
>> ---
>>  drivers/cpufreq/brcmstb-avs-cpufreq.c | 16 ++++++++++++++++
>>  1 file changed, 16 insertions(+)
>>
>> diff --git a/drivers/cpufreq/brcmstb-avs-cpufreq.c b/drivers/cpufreq/brcmstb-avs-cpufreq.c
>> index b07559b9ed99..b4861a730162 100644
>> --- a/drivers/cpufreq/brcmstb-avs-cpufreq.c
>> +++ b/drivers/cpufreq/brcmstb-avs-cpufreq.c
>> @@ -164,6 +164,8 @@
>>  #define BRCM_AVS_CPU_INTR	"brcm,avs-cpu-l2-intr"
>>  #define BRCM_AVS_HOST_INTR	"sw_intr"
>>  
>> +#define ARM_SCMI_COMPAT		"arm,scmi"
>> +
>>  struct pmap {
>>  	unsigned int mode;
>>  	unsigned int p1;
>> @@ -511,6 +513,20 @@ static int brcm_avs_prepare_init(struct platform_device *pdev)
>>  	struct device *dev;
>>  	int host_irq, ret;
>>  
>> +	/*
>> +	 * If the SCMI cpufreq driver is supported, we bail, so that the more
>> +	 * modern approach can be used.
>> +	 */
>> +	if (IS_ENABLED(CONFIG_ARM_SCMI_PROTOCOL)) {
>> +		struct device_node *np;
>> +
>> +		np = of_find_compatible_node(NULL, NULL, ARM_SCMI_COMPAT);
>> +		if (np) {
>> +			of_node_put(np);
>> +			return -ENXIO;
>> +		}
>> +	}
>> +
> 
> What about adding !CONFIG_ARM_SCMI_PROTOCOL in Kconfig dependency and don't
> compile the driver at all ?
> 

Unfortunately, that may not be good idea with single image needing both
configs to be enabled.

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list