qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Hao Wu <wuhaotsh@google.com>
To: peter.maydell@linaro.org
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org, wuhaotsh@google.com,
	 venture@google.com, Avi.Fishman@nuvoton.com, kfting@nuvoton.com,
	 hskinnemoen@google.com, titusr@google.com,
	 chli30@nuvoton.corp-partner.google.com, pbonzini@redhat.com,
	 jasowang@redhat.com, alistair@alistair23.me, philmd@linaro.org
Subject: [PATCH v5 00/17] hw/arm: Add NPCM8XX Support
Date: Wed, 19 Feb 2025 10:45:51 -0800	[thread overview]
Message-ID: <20250219184609.1839281-1-wuhaotsh@google.com> (raw)

Changes since v4:

1. Bump vmstate versions on NPCM CLK and GCR modules.
2. Remove "hw/boards.h" include in npcm8xx.h and add it in npcm8xx*.c
3. Use cpu_to_le32 instead of tswap32 in npcm8xx.c

Changes since v3:

1. Removed REGS_END constants according to code review.
2. Added a few asserts according to code review.
3. A few minor style changes.

Changes since v2:

1. Update doc to include npcm845-evb description
2. Add g_assert for register size in CLK and GCR enter_reset function
3. Fix various 8xx SoC and board file issues.

Changes since v1:

1. Updated vbootrom and pc-bios
2. Split out CLK/GCR patches into refactoring and adding new features
3. Fixed a few misc items from the patches.

---

NPCM8XX BMCs are the successors of the NPCM7XX BMCs. They feature
quad-core ARM Cortex A35 that supports both 32 bits and 64 bits
operations. This patch set aims to support basic functionalities
of the NPCM7XX BMCs. The patch set includes:

1. We derive most devices from the 7XX models and
made some modifications.
2. We have constructed a minimum vBootROM similar to the 7XX one at
https://github.com/google/vbootrom/tree/master/npcm8xx
and included it in the patch set.
3.  We added a new NPCM8XX SOC and an evaluation
board machine npcm845-evb.

The OpenBMC for NPCM845 evaluation board can be found at:
https://github.com/Nuvoton-Israel/openbmc/tree/npcm-v2.10/meta-evb/meta-evb-nuvoton/meta-evb-npcm845

The patch set can boot the evaluation board image built from the source
above to login prompt.

Hao Wu (17):
  roms: Update vbootrom to 1287b6e
  pc-bios: Add NPCM8XX vBootrom
  hw/ssi: Make flash size a property in NPCM7XX FIU
  hw/misc: Rename npcm7xx_gcr to npcm_gcr
  hw/misc: Move NPCM7XX GCR to NPCM GCR
  hw/misc: Add nr_regs and cold_reset_values to NPCM GCR
  hw/misc: Add support for NPCM8XX GCR
  hw/misc: Store DRAM size in NPCM8XX GCR Module
  hw/misc: Support 8-bytes memop in NPCM GCR module
  hw/misc: Rename npcm7xx_clk to npcm_clk
  hw/misc: Move NPCM7XX CLK to NPCM CLK
  hw/misc: Add nr_regs and cold_reset_values to NPCM CLK
  hw/misc: Support NPCM8XX CLK Module Registers
  hw/net: Add NPCM8XX PCS Module
  hw/arm: Add NPCM8XX SoC
  hw/arm: Add NPCM845 Evaluation board
  docs/system/arm: Add Description for NPCM8XX SoC

 MAINTAINERS                                   |   1 +
 configs/devices/aarch64-softmmu/default.mak   |   1 +
 docs/system/arm/nuvoton.rst                   |  27 +-
 hw/arm/Kconfig                                |  13 +
 hw/arm/meson.build                            |   1 +
 hw/arm/npcm7xx.c                              |   6 +
 hw/arm/npcm8xx.c                              | 805 ++++++++++++++++++
 hw/arm/npcm8xx_boards.c                       | 254 ++++++
 hw/misc/meson.build                           |   4 +-
 hw/misc/npcm7xx_gcr.c                         | 264 ------
 hw/misc/{npcm7xx_clk.c => npcm_clk.c}         | 235 +++--
 hw/misc/npcm_gcr.c                            | 482 +++++++++++
 hw/misc/trace-events                          |  12 +-
 hw/net/meson.build                            |   1 +
 hw/net/npcm_pcs.c                             | 410 +++++++++
 hw/net/trace-events                           |   4 +-
 hw/ssi/npcm7xx_fiu.c                          |  16 +-
 include/hw/arm/npcm7xx.h                      |   8 +-
 include/hw/arm/npcm8xx.h                      | 127 +++
 include/hw/misc/{npcm7xx_clk.h => npcm_clk.h} |  43 +-
 include/hw/misc/{npcm7xx_gcr.h => npcm_gcr.h} |  29 +-
 include/hw/net/npcm_pcs.h                     |  42 +
 include/hw/ssi/npcm7xx_fiu.h                  |   1 +
 pc-bios/README                                |   8 +-
 pc-bios/meson.build                           |   1 +
 pc-bios/npcm7xx_bootrom.bin                   | Bin 768 -> 768 bytes
 pc-bios/npcm8xx_bootrom.bin                   | Bin 0 -> 608 bytes
 roms/Makefile                                 |   6 +
 roms/vbootrom                                 |   2 +-
 29 files changed, 2434 insertions(+), 369 deletions(-)
 create mode 100644 hw/arm/npcm8xx.c
 create mode 100644 hw/arm/npcm8xx_boards.c
 delete mode 100644 hw/misc/npcm7xx_gcr.c
 rename hw/misc/{npcm7xx_clk.c => npcm_clk.c} (82%)
 create mode 100644 hw/misc/npcm_gcr.c
 create mode 100644 hw/net/npcm_pcs.c
 create mode 100644 include/hw/arm/npcm8xx.h
 rename include/hw/misc/{npcm7xx_clk.h => npcm_clk.h} (83%)
 rename include/hw/misc/{npcm7xx_gcr.h => npcm_gcr.h} (76%)
 create mode 100644 include/hw/net/npcm_pcs.h
 create mode 100644 pc-bios/npcm8xx_bootrom.bin

-- 
2.48.1.601.g30ceb7b040-goog



             reply	other threads:[~2025-02-19 18:50 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-19 18:45 Hao Wu [this message]
2025-02-19 18:45 ` [PATCH v5 01/17] roms: Update vbootrom to 1287b6e Hao Wu
2025-02-19 18:45 ` [PATCH v5 02/17] pc-bios: Add NPCM8XX vBootrom Hao Wu
2025-02-19 18:45 ` [PATCH v5 03/17] hw/ssi: Make flash size a property in NPCM7XX FIU Hao Wu
2025-02-20 15:21   ` Peter Maydell
2025-02-19 18:45 ` [PATCH v5 04/17] hw/misc: Rename npcm7xx_gcr to npcm_gcr Hao Wu
2025-02-19 18:45 ` [PATCH v5 05/17] hw/misc: Move NPCM7XX GCR to NPCM GCR Hao Wu
2025-02-19 18:45 ` [PATCH v5 06/17] hw/misc: Add nr_regs and cold_reset_values " Hao Wu
2025-02-24 20:52   ` Pierrick Bouvier
2025-02-24 20:54     ` Hao Wu
2025-02-25 13:49   ` Peter Maydell
2025-02-19 18:45 ` [PATCH v5 07/17] hw/misc: Add support for NPCM8XX GCR Hao Wu
2025-02-19 18:45 ` [PATCH v5 08/17] hw/misc: Store DRAM size in NPCM8XX GCR Module Hao Wu
2025-02-19 18:46 ` [PATCH v5 09/17] hw/misc: Support 8-bytes memop in NPCM GCR module Hao Wu
2025-02-19 18:46 ` [PATCH v5 10/17] hw/misc: Rename npcm7xx_clk to npcm_clk Hao Wu
2025-02-19 18:46 ` [PATCH v5 11/17] hw/misc: Move NPCM7XX CLK to NPCM CLK Hao Wu
2025-02-19 18:46 ` [PATCH v5 12/17] hw/misc: Add nr_regs and cold_reset_values " Hao Wu
2025-02-19 18:46 ` [PATCH v5 13/17] hw/misc: Support NPCM8XX CLK Module Registers Hao Wu
2025-02-19 18:46 ` [PATCH v5 14/17] hw/net: Add NPCM8XX PCS Module Hao Wu
2025-02-19 18:46 ` [PATCH v5 15/17] hw/arm: Add NPCM8XX SoC Hao Wu
2025-02-19 18:46 ` [PATCH v5 16/17] hw/arm: Add NPCM845 Evaluation board Hao Wu
2025-02-19 18:46 ` [PATCH v5 17/17] docs/system/arm: Add Description for NPCM8XX SoC Hao Wu
2025-02-20 16:18 ` [PATCH v5 00/17] hw/arm: Add NPCM8XX Support Peter Maydell
2025-02-20 16:53   ` Hao Wu

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=20250219184609.1839281-1-wuhaotsh@google.com \
    --to=wuhaotsh@google.com \
    --cc=Avi.Fishman@nuvoton.com \
    --cc=alistair@alistair23.me \
    --cc=chli30@nuvoton.corp-partner.google.com \
    --cc=hskinnemoen@google.com \
    --cc=jasowang@redhat.com \
    --cc=kfting@nuvoton.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=titusr@google.com \
    --cc=venture@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).