All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jamin Lin <jamin_lin@aspeedtech.com>
To: "Cédric Le Goater" <clg@kaod.org>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Steven Lee" <steven_lee@aspeedtech.com>,
	"Troy Lee" <leetroy@gmail.com>,
	"Kane Chen" <kane_chen@aspeedtech.com>,
	"Andrew Jeffery" <andrew@codeconstruct.com.au>,
	"Joel Stanley" <joel@jms.id.au>,
	"Pierrick Bouvier" <pierrick.bouvier@oss.qualcomm.com>,
	"open list:ASPEED BMCs" <qemu-arm@nongnu.org>,
	"open list:All patches CC here" <qemu-devel@nongnu.org>
Cc: Jamin Lin <jamin_lin@aspeedtech.com>, Troy Lee <troy_lee@aspeedtech.com>
Subject: [PATCH v6 00/11] Add SSP/TSP power control and DRAM remap support for AST2700
Date: Thu, 23 Jul 2026 02:23:00 +0000	[thread overview]
Message-ID: <20260723022300.4174471-1-jamin_lin@aspeedtech.com> (raw)

This series improves AST2700 platform support by aligning SSP/TSP
power and reset behavior with hardware, and enabling DRAM remapping
required for proper firmware boot flow.

This series depends on:
[v4,0/9] Refactor AST2700 SCU preparation for coprocessors
https://patchwork.kernel.org/project/qemu-devel/cover/20260717084559.3477061-1-jamin_lin@aspeedtech.com/

v1:
  1. The changes move DRAM/SDMC initialization earlier to support memory
aliasing, add DRAM aliases for SSP/TSP SDRAM remap, and implement
SSP/TSP reset, power-on, and remap controls via SCU registers.
  2. With these updates, SSP and TSP can be booted via PSP and load their
binaries from DRAM. Functional tests and documentation are updated
accordingly.

v2:
  Fix "make check" failure caused by both AST2700 and AST1700 realizing the same
  TYPE_AST2700_SCU model.
  
v3:
 1. Drop "Move DRAM and SDMC initialization earlier to support memory aliasing"
 2. Support SPI/FMC FIFO Mode
 3. Add unimplemented devices

v4:
 1. Introduce Aspeed2700SCU subclass and separate from generic SCU.
 2. Add separate reset handler for AST2700 SCUIO
 3. Add AST2700 SCUIO RNG control and data registers
 4. Share single SCUIO instance across PSP, SSP, and TSP
 5. Fix AST2700 FC hardware strap settings

v5:
 1. To speed up the review process, move the following patches into a separate 
    patch series, as they are not directly related to the main topic of this series:
 
    [v4,01/21] hw/misc/aspeed_scu: Introduce Aspeed2700SCU subclass and separate from generic SCU
    [v4,02/21] hw/misc/aspeed_scu: Add separate reset handler for AST2700 SCUIO
    [v4,11/21] hw/arm/ast27x0: Share FMC controller with SSP and TSP
    [v4,12/21] hw/arm/aspeed_ast27x0: Add unimplemented Privilege Controller MMIO regions for SSP/TSP (Merged)
    [v4,13/21] hw/arm/aspeed_ast27x0: Add unimplemented OTP controller MMIO regions for SSP/TSP (Merged)
    [v4,14/21] hw/block/m25p80: Implement volatile status register write enable for Winbond
    [v4,15/21] hw/ssi/aspeed_smc: Add Data FIFO-based flash access support for AST2700
    [v4,16/21] hw/misc/aspeed_scu: Drop noisy unhandled read logs for AST2700 SCU/SCUIO (Merged)
    [v4,17/21] hw/misc/aspeed_scu: Add AST2700 SCUIO RNG control and data registers (Merged)
    [v4,18/21] hw/arm/ast27x0: Share single SCUIO instance across PSP, SSP, and TSP
    [v4,19/21] hw/arm/aspeed_ast27x0-fc: Fix hardware strap settings (Merged)
    
  2. Add memory_region_transaction_begin() and memory_region_transaction_commit()
     to protect the transaction.

v6:
  1. Move the DRAM remap MemoryRegions from the SCU to the SSP/TSP
     coprocessor state itself.
  2. Set ssp_cpuid/tsp_cpuid directly once the SSP/TSP's armv7m core is
     realized, instead of pre-guessing them from board code via a QOM
     property.
  3. Correct AST2700 SCU to SCUIO to AST1700

Jamin Lin (11):
  hw/arm/aspeed_ast1700: Correct AST2700 SCU to SCUIO
  hw/arm/ast27x0: Start SSP in powered-off state to match hardware
    behavior
  hw/arm/ast27x0: Start TSP in powered-off state to match hardware
    behavior
  hw/arm/ast27x0: Add DRAM alias for SSP SDRAM remap
  hw/arm/ast27x0: Add DRAM alias for TSP SDRAM remap
  hw/misc/aspeed_scu: Implement SSP reset and power-on control via SCU
    registers
  hw/misc/aspeed_scu: Implement TSP reset and power-on control via SCU
    registers
  hw/misc/aspeed_scu: Add SCU support for SSP SDRAM remap
  hw/misc/aspeed_scu: Add SCU support for TSP SDRAM remap
  tests/functional/aarch64/test_aspeed_ast2700fc: Boot SSP/TSP via PSP
    and load binaries from DRAM
  docs: Add support vbootrom and update Manual boot for ast2700fc

 docs/system/arm/aspeed.rst                    |  42 ++-
 include/hw/arm/aspeed_ast1700.h               |   2 +-
 include/hw/arm/aspeed_coprocessor.h           |   2 +
 include/hw/misc/aspeed_scu.h                  |   5 +
 hw/arm/aspeed_ast1700.c                       |  22 +-
 hw/arm/aspeed_ast27x0-fc.c                    |   4 +
 hw/arm/aspeed_ast27x0-ssp.c                   |  45 ++++
 hw/arm/aspeed_ast27x0-tsp.c                   |  37 +++
 hw/misc/aspeed_scu.c                          | 240 ++++++++++++++++++
 .../aarch64/test_aspeed_ast2700fc.py          |  29 ++-
 10 files changed, 396 insertions(+), 32 deletions(-)

-- 
2.43.0


             reply	other threads:[~2026-07-23  2:23 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-23  2:23 Jamin Lin [this message]
2026-07-23  2:23 ` [PATCH v6 01/11] hw/arm/aspeed_ast1700: Correct AST2700 SCU to SCUIO Jamin Lin
2026-07-23  2:23 ` [PATCH v6 02/11] hw/arm/ast27x0: Start SSP in powered-off state to match hardware behavior Jamin Lin
2026-07-23  2:23 ` [PATCH v6 03/11] hw/arm/ast27x0: Start TSP " Jamin Lin
2026-07-23  2:23 ` [PATCH v6 04/11] hw/arm/ast27x0: Add DRAM alias for SSP SDRAM remap Jamin Lin
2026-07-23  2:23 ` [PATCH v6 05/11] hw/arm/ast27x0: Add DRAM alias for TSP " Jamin Lin
2026-07-23  2:23 ` [PATCH v6 06/11] hw/misc/aspeed_scu: Implement SSP reset and power-on control via SCU registers Jamin Lin
2026-07-23  2:23 ` [PATCH v6 07/11] hw/misc/aspeed_scu: Implement TSP " Jamin Lin
2026-07-23  2:23 ` [PATCH v6 08/11] hw/misc/aspeed_scu: Add SCU support for SSP SDRAM remap Jamin Lin
2026-07-23  2:23 ` [PATCH v6 09/11] hw/misc/aspeed_scu: Add SCU support for TSP " Jamin Lin
2026-07-23  2:23 ` [PATCH v6 10/11] tests/functional/aarch64/test_aspeed_ast2700fc: Boot SSP/TSP via PSP and load binaries from DRAM Jamin Lin
2026-07-23  2:23 ` [PATCH v6 11/11] docs: Add support vbootrom and update Manual boot for ast2700fc Jamin Lin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260723022300.4174471-1-jamin_lin@aspeedtech.com \
    --to=jamin_lin@aspeedtech.com \
    --cc=andrew@codeconstruct.com.au \
    --cc=clg@kaod.org \
    --cc=joel@jms.id.au \
    --cc=kane_chen@aspeedtech.com \
    --cc=leetroy@gmail.com \
    --cc=peter.maydell@linaro.org \
    --cc=pierrick.bouvier@oss.qualcomm.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=steven_lee@aspeedtech.com \
    --cc=troy_lee@aspeedtech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.