[PATCH v2 0/3] MIPS: CPS: Optimise delay CPU calibration and cluster helper function

Gregory CLEMENT posted 3 patches 3 months ago
There is a newer version of this series
arch/mips/Kconfig                |  7 +++++++
arch/mips/include/asm/mips-cps.h | 18 ++++++++++++++++--
arch/mips/kernel/mips-cm.c       | 40 +++++++---------------------------------
arch/mips/kernel/smp-cps.c       | 13 +++++++++++++
4 files changed, 43 insertions(+), 35 deletions(-)
[PATCH v2 0/3] MIPS: CPS: Optimise delay CPU calibration and cluster helper function
Posted by Gregory CLEMENT 3 months ago
This series allow booting faster by reusing the delay calibration
across the CPU belonging of the same cluster. While doing it we now
reuse the mips_cps_first_online_in_cluster() that we improve also.

This series enables faster booting by reusing delay calibration across
CPUs within the same cluster. During this process, we reuse the
improved mips_cps_first_online_in_cluster function.

With the introduction of this series, a configuration running 32 cores
spread across two clusters sees a significant reduction in boot time
by approximately 600 milliseconds.

Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
---
Changes in v2:
- Add a patch improving mips_cps_first_online_in_cluster()
- Use mips_cps_first_online_in_cluster() in calibrate_delay_is_known()
  as suggested by Jiaxun
- Link to v1: https://lore.kernel.org/r/20250520-smp_calib-v1-1-cd04f0a78648@bootlin.com

---
Gregory CLEMENT (3):
      MIPS: CPS: Improve mips_cps_first_online_in_cluster()
      MIPS: CPS: Change default cluster value for EyeQ SoCs
      MIPS: CPS: Optimise delay CPU calibration for SMP

 arch/mips/Kconfig                |  7 +++++++
 arch/mips/include/asm/mips-cps.h | 18 ++++++++++++++++--
 arch/mips/kernel/mips-cm.c       | 40 +++++++---------------------------------
 arch/mips/kernel/smp-cps.c       | 13 +++++++++++++
 4 files changed, 43 insertions(+), 35 deletions(-)
---
base-commit: 86731a2a651e58953fc949573895f2fa6d456841
change-id: 20250520-smp_calib-6d3009e1f5b9

Best regards,
-- 
Grégory CLEMENT, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com