U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/6] MSM8916: Bring secondary cores online with spin-table
@ 2026-06-02  7:18 Sam Day via B4 Relay
  2026-06-02  7:18 ` [PATCH v2 1/6] armv8: spin_table: Fix missing includes Sam Day via B4 Relay
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Sam Day via B4 Relay @ 2026-06-02  7:18 UTC (permalink / raw)
  To: Tom Rini, Neil Armstrong, Mark Kettenis, Sumit Garg,
	Casey Connolly, Sumit Garg
  Cc: u-boot, u-boot-qcom, Casey Connolly, Simon Glass, Kory Maincent,
	Yao Zi, Peng Fan, Kuan-Wei Chiu, Raymond Mao, Quentin Schulz,
	Stefan Roese, Jerome Forissier, Philip Molloy, Michael Trimarchi,
	Michal Simek, Sughosh Ganu, Antony Kurniawan Soemardi,
	Aswin Murugan, Varadarajan Narayanan, Marek Vasut, Luca Weiss,
	Ilias Apalodimas, Sam Day

This patch series depends on the "mach-snapdragon: handle platforms
without PSCI support" patch that was submitted earlier today. That first
patch lays some groundwork to handle detecting when a device is booting
without PSCI and deletes the /psci node in that case.

This series builds on top of that detection by rewriting all CPUs with
enable-method="psci" to "spin-table".

Once this is done, the existing spin-table support in U-Boot handles
further patching the nodes with the appropriate cpu-release-addr and
reserving the memory with the spin-table instructions.

Interestingly, this spin-table code doesn't seem to be in active use
anywhere, and it had bitrotted a little. But after blowing the dust off
it and fixing a couple of missing #includes, it works great.

I extended the spin-table support a little to make it easier for
consumers to plug in a method that is called for each CPU that needs to
be brought online. This saves the qcom board code from needing to hook
into ft_board_setup or something that runs before booting the OS.

Signed-off-by: Sam Day <me@samcday.com>
---
Changes in v2:
- Reworked the SCM impl to be a proper firmware driver, and streamlined
  the API so callers aren't forced to deal with calling conventions
  (thanks Casey).
- Link to v1: https://lore.kernel.org/r/20250128-msm8916-smp-support-v1-0-39587f18cf0c@samcday.com

---
Sam Day (6):
      armv8: spin_table: Fix missing includes
      armv8: spin_table: add hook for booting cores
      firmware: Add qcom SCM driver
      mach-snapdragon: fixup CPUs with PSCI enable-method
      mach-snapdragon: MSM8916 spin-table CPU boot support
      qcom_defconfig: enable spin-table support

 MAINTAINERS                            |   2 +
 arch/arm/cpu/armv8/spin_table.c        |  20 +++
 arch/arm/include/asm/spin_table.h      |   3 +
 arch/arm/mach-snapdragon/Makefile      |   1 +
 arch/arm/mach-snapdragon/board.c       |  41 +++++
 arch/arm/mach-snapdragon/msm8916-smp.c | 138 +++++++++++++++++
 configs/qcom_defconfig                 |   3 +
 drivers/firmware/Kconfig               |   9 ++
 drivers/firmware/Makefile              |   1 +
 drivers/firmware/qcom-scm.c            | 274 +++++++++++++++++++++++++++++++++
 include/firmware/qcom/scm.h            |  71 +++++++++
 11 files changed, 563 insertions(+)
---
base-commit: 30b77f6aa146c96b831cb4ece038130b655b6a41
change-id: 20250127-msm8916-smp-support-5f5e7b49d07e

Best regards,
-- 
Sam Day <me@samcday.com>



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2026-06-07  3:49 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-02  7:18 [PATCH v2 0/6] MSM8916: Bring secondary cores online with spin-table Sam Day via B4 Relay
2026-06-02  7:18 ` [PATCH v2 1/6] armv8: spin_table: Fix missing includes Sam Day via B4 Relay
2026-06-02  7:18 ` [PATCH v2 2/6] armv8: spin_table: add hook for booting cores Sam Day via B4 Relay
2026-06-02  7:18 ` [PATCH v2 3/6] firmware: Add qcom SCM driver Sam Day via B4 Relay
2026-06-02  7:19 ` [PATCH v2 4/6] mach-snapdragon: fixup CPUs with PSCI enable-method Sam Day via B4 Relay
2026-06-03 14:05   ` Stephan Gerhold
2026-06-04  6:33   ` Neil Armstrong
2026-06-04  6:53     ` Sam Day
2026-06-04  6:59       ` Neil Armstrong
2026-06-07  3:49         ` Sam Day
2026-06-02  7:19 ` [PATCH v2 5/6] mach-snapdragon: MSM8916 spin-table CPU boot support Sam Day via B4 Relay
2026-06-03 14:12   ` Stephan Gerhold
2026-06-03 23:25     ` Sam Day
2026-06-02  7:19 ` [PATCH v2 6/6] qcom_defconfig: enable spin-table support Sam Day via B4 Relay

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox