Commit bc22bb22 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'vexpress-fixes-5.18' of...

Merge tag 'vexpress-fixes-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/fixes

ARM Vexpress fixes for 5.18

Couple of fixes to address negative array index access and kernel-doc
build warnings.

* tag 'vexpress-fixes-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  ARM: vexpress/spc: Fix all the kernel-doc build warnings
  ARM: vexpress/spc: Fix kernel-doc build warning for ve_spc_cpu_in_wfi
  ARM: vexpress/spc: Avoid negative array index when !SMP

Link: https://lore.kernel.org/r/20220407110828.1436206-1-sudeep.holla@arm.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents f455742a 42a997f0
...@@ -122,13 +122,13 @@ static inline bool cluster_is_a15(u32 cluster) ...@@ -122,13 +122,13 @@ static inline bool cluster_is_a15(u32 cluster)
} }
/** /**
* ve_spc_global_wakeup_irq() * ve_spc_global_wakeup_irq() - sets/clears global wakeup IRQs
*
* @set: if true, global wake-up IRQs are set, if false they are cleared
* *
* Function to set/clear global wakeup IRQs. Not protected by locking since * Function to set/clear global wakeup IRQs. Not protected by locking since
* it might be used in code paths where normal cacheable locks are not * it might be used in code paths where normal cacheable locks are not
* working. Locking must be provided by the caller to ensure atomicity. * working. Locking must be provided by the caller to ensure atomicity.
*
* @set: if true, global wake-up IRQs are set, if false they are cleared
*/ */
void ve_spc_global_wakeup_irq(bool set) void ve_spc_global_wakeup_irq(bool set)
{ {
...@@ -145,15 +145,15 @@ void ve_spc_global_wakeup_irq(bool set) ...@@ -145,15 +145,15 @@ void ve_spc_global_wakeup_irq(bool set)
} }
/** /**
* ve_spc_cpu_wakeup_irq() * ve_spc_cpu_wakeup_irq() - sets/clears per-CPU wake-up IRQs
*
* Function to set/clear per-CPU wake-up IRQs. Not protected by locking since
* it might be used in code paths where normal cacheable locks are not
* working. Locking must be provided by the caller to ensure atomicity.
* *
* @cluster: mpidr[15:8] bitfield describing cluster affinity level * @cluster: mpidr[15:8] bitfield describing cluster affinity level
* @cpu: mpidr[7:0] bitfield describing cpu affinity level * @cpu: mpidr[7:0] bitfield describing cpu affinity level
* @set: if true, wake-up IRQs are set, if false they are cleared * @set: if true, wake-up IRQs are set, if false they are cleared
*
* Function to set/clear per-CPU wake-up IRQs. Not protected by locking since
* it might be used in code paths where normal cacheable locks are not
* working. Locking must be provided by the caller to ensure atomicity.
*/ */
void ve_spc_cpu_wakeup_irq(u32 cluster, u32 cpu, bool set) void ve_spc_cpu_wakeup_irq(u32 cluster, u32 cpu, bool set)
{ {
...@@ -200,14 +200,14 @@ void ve_spc_set_resume_addr(u32 cluster, u32 cpu, u32 addr) ...@@ -200,14 +200,14 @@ void ve_spc_set_resume_addr(u32 cluster, u32 cpu, u32 addr)
} }
/** /**
* ve_spc_powerdown() * ve_spc_powerdown() - enables/disables cluster powerdown
*
* @cluster: mpidr[15:8] bitfield describing cluster affinity level
* @enable: if true enables powerdown, if false disables it
* *
* Function to enable/disable cluster powerdown. Not protected by locking * Function to enable/disable cluster powerdown. Not protected by locking
* since it might be used in code paths where normal cacheable locks are not * since it might be used in code paths where normal cacheable locks are not
* working. Locking must be provided by the caller to ensure atomicity. * working. Locking must be provided by the caller to ensure atomicity.
*
* @cluster: mpidr[15:8] bitfield describing cluster affinity level
* @enable: if true enables powerdown, if false disables it
*/ */
void ve_spc_powerdown(u32 cluster, bool enable) void ve_spc_powerdown(u32 cluster, bool enable)
{ {
...@@ -228,7 +228,7 @@ static u32 standbywfi_cpu_mask(u32 cpu, u32 cluster) ...@@ -228,7 +228,7 @@ static u32 standbywfi_cpu_mask(u32 cpu, u32 cluster)
} }
/** /**
* ve_spc_cpu_in_wfi(u32 cpu, u32 cluster) * ve_spc_cpu_in_wfi() - Checks if the specified CPU is in WFI or not
* *
* @cpu: mpidr[7:0] bitfield describing CPU affinity level within cluster * @cpu: mpidr[7:0] bitfield describing CPU affinity level within cluster
* @cluster: mpidr[15:8] bitfield describing cluster affinity level * @cluster: mpidr[15:8] bitfield describing cluster affinity level
...@@ -580,7 +580,7 @@ static int __init ve_spc_clk_init(void) ...@@ -580,7 +580,7 @@ static int __init ve_spc_clk_init(void)
} }
cluster = topology_physical_package_id(cpu_dev->id); cluster = topology_physical_package_id(cpu_dev->id);
if (init_opp_table[cluster]) if (cluster < 0 || init_opp_table[cluster])
continue; continue;
if (ve_init_opp_table(cpu_dev)) if (ve_init_opp_table(cpu_dev))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment