From: Hao Wu <wuhaotsh@google.com>
To: peter.maydell@linaro.org
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org,
Avi.Fishman@nuvoton.com, kfting@nuvoton.com,
wuhaotsh@google.com, hskinnemoen@google.com, venture@google.com,
dje@google.com
Subject: [PATCH v2 0/5] hw/arm: Add NPCM7XX Tachometer Device
Date: Thu, 11 Mar 2021 10:08:50 -0800 [thread overview]
Message-ID: <20210311180855.149764-1-wuhaotsh@google.com> (raw)
This patch set implements the Tachometer (a.k.a Multi Functional Timer/MFT)
device in NPCM7XX SoC. This device is used by NPCM7XX boards to measure
the RPM of PWM fans.
To provide the RPM of a certain fan, since RPM = MAX_RPM * duty_percentage.
We convert the duty output in NPCM7XX PWM module into GPIOs and feed them
into the MFT module.
The connection of PWM modules and fan modules are derived from their specific
Linux device trees and coded in hw/arm/npcm7xx_boards.c.
We amend the QTest for the PWM module to include verifying the reading from
the Tachometer is correct.
Changes since v1:
- Split implementation of device and addition to board file to separate patches
- Adapt to new Clock API and address conflicts
- Use the new clock_ns_to_ticks API to calculate tachometer counts
Hao Wu (5):
hw/misc: Add GPIOs for duty in NPCM7xx PWM
hw/misc: Add NPCM7XX MFT Module
hw/arm: Add MFT device to NPCM7xx Soc
hw/arm: Connect PWM fans in NPCM7XX boards
tests/qtest: Test PWM fan RPM using MFT in PWM test
docs/system/arm/nuvoton.rst | 2 +-
hw/arm/npcm7xx.c | 45 ++-
hw/arm/npcm7xx_boards.c | 99 ++++++
hw/misc/meson.build | 1 +
hw/misc/npcm7xx_mft.c | 540 +++++++++++++++++++++++++++++++++
hw/misc/npcm7xx_pwm.c | 4 +
hw/misc/trace-events | 8 +
include/hw/arm/npcm7xx.h | 13 +-
include/hw/misc/npcm7xx_mft.h | 70 +++++
include/hw/misc/npcm7xx_pwm.h | 4 +-
tests/qtest/npcm7xx_pwm-test.c | 205 ++++++++++++-
11 files changed, 974 insertions(+), 17 deletions(-)
create mode 100644 hw/misc/npcm7xx_mft.c
create mode 100644 include/hw/misc/npcm7xx_mft.h
--
2.31.0.rc2.261.g7f71774620-goog
next reply other threads:[~2021-03-11 18:11 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-11 18:08 Hao Wu [this message]
2021-03-11 18:08 ` [PATCH v2 1/5] hw/misc: Add GPIOs for duty in NPCM7xx PWM Hao Wu
2021-03-11 18:08 ` [PATCH v2 2/5] hw/misc: Add NPCM7XX MFT Module Hao Wu
2021-03-11 18:08 ` [PATCH v2 3/5] hw/arm: Add MFT device to NPCM7xx Soc Hao Wu
2021-03-11 18:08 ` [PATCH v2 4/5] hw/arm: Connect PWM fans in NPCM7XX boards Hao Wu
2021-03-11 18:08 ` [PATCH v2 5/5] tests/qtest: Test PWM fan RPM using MFT in PWM test Hao Wu
2021-03-14 13:18 ` Peter Maydell
2021-03-12 12:52 ` [PATCH v2 0/5] hw/arm: Add NPCM7XX Tachometer Device Peter Maydell
2021-11-01 17:33 ` Richard Henderson
2021-11-01 17:50 ` Hao Wu
2021-11-02 10:03 ` Richard Henderson
2021-11-02 10:44 ` Peter Maydell
2021-11-02 11:16 ` Richard Henderson
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=20210311180855.149764-1-wuhaotsh@google.com \
--to=wuhaotsh@google.com \
--cc=Avi.Fishman@nuvoton.com \
--cc=dje@google.com \
--cc=hskinnemoen@google.com \
--cc=kfting@nuvoton.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--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).