Skip to content
  • Arnd Bergmann's avatar
    PM / OPP: pass cpumask by reference · ddbb74bc
    Arnd Bergmann authored
    
    
    The new use of dev_pm_opp_set_sharing_cpus resulted in a harmless compiler
    warning with CONFIG_CPUMASK_OFFSTACK=y:
    
    drivers/cpufreq/mvebu-cpufreq.c: In function 'armada_xp_pmsu_cpufreq_init':
    include/linux/cpumask.h:550:25: error: passing argument 2 of 'dev_pm_opp_set_sharing_cpus' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
    
    The problem here is that cpumask_var_t gets passed by reference, but
    by declaring a 'const cpumask_var_t' argument, only the pointer is
    constant, not the actual mask. This is harmless because the function
    does not actually modify the mask.
    
    This patch changes the function prototypes for all of the related functions
    to pass a 'struct cpumask *' instead of 'cpumask_var_t', matching what
    most other such functions do in the kernel. This lets us mark all the
    other similar functions as taking a 'const' mask where possible,
    and it avoids the warning without any change in object code.
    
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Fixes: 947bd567
    
     (mvebu: Use dev_pm_opp_set_sharing_cpus() to mark OPP tables as shared)
    Acked-by: default avatarPavel Machek <pavel@ucw.cz>
    Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
    Reviewed-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    ddbb74bc