From: Damien Hedde <damien.hedde@greensocs.com>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, berrange@redhat.com,
ehabkost@redhat.com, alistair@alistair23.me,
mark.burton@greensocs.com, qemu-arm@nongnu.org,
marcandre.lureau@redhat.com, pbonzini@redhat.com,
philmd@redhat.com, edgar.iglesias@gmail.com
Subject: Re: [Qemu-devel] [PATCH v6 0/9] Clock framework API
Date: Wed, 4 Sep 2019 15:04:34 +0200 [thread overview]
Message-ID: <6df157cb-cdb4-a019-3463-e1468d410f4e@greensocs.com> (raw)
In-Reply-To: <20190904093843.8765-1-damien.hedde@greensocs.con>
I did a typo in the reply-to address. I just resent the series with the
proper one.
Sorry for that...
Damien
On 9/4/19 11:38 AM, damien.hedde@greensocs.con wrote:
> From: Damien Hedde <damien.hedde@greensocs.com>
>
> This series aims to add a way to model clock distribution in qemu. This allows
> to model the clock tree of a platform allowing us to inspect clock
> configuration and detect problems such as disabled clock or bad configured
> pll.
>
> The added clock api is very similar the the gpio api for devices. We can add
> input and output and connect them together.
>
> Very few changes since v5 in the core patches: we were waiting for multi phase
> ability to allow proper initialization of the clock tree. So this is almost a
> simple rebase on top of the current "Multi-phase reset mechanism" series.
> Based-on: <20190821163341.16309-1-damien.hedde@greensocs.com>
>
> Changes since v5:
> - drop the "-port" in file names
> - new patch 2, extracted from patch 1 (to fix some problem with linux-user builds)
> - patch 3, minor modification to better match gpios api and allow non device-related clock
> (I've dropped the reviewed-by, see the patch message for the details of what has changed).
> - patch 6, Philippe's comments and various improvement
> - patches 7/8/9, multi-phase reset addition and scope reduced to uart ref clocks
>
> The patches are organised as follows:
> + Patches 1 to 5 adds the clock support in qemu (1, 4 and 5 are already reviewed and
> also a big part of the 3)
> + Patch 6 add some documentation in docs/devel
> + Patches 7 to 9 adds the uart's clocks to the xilinx_zynq platform as an
> example for this framework. It updates the zynq's slcr clock controller, the
> cadence_uart device, and the zynq toplevel platform.
>
> I've tested this patchset on the xilinx-zynq-a9 machine with the buildroot's
> zynq_zc706_defconfig which package the Xilinx's Linux.
> Clocks are correctly updated and we ends up with a configured baudrate of 115601
> on the console uart (for a theoretical 115200) which is nice. "cadence_uart*" and
> "clock*" traces can be enabled to see what's going on in this platform.
>
> Any comments and suggestion are welcomed.
>
> Thanks to the Xilinx QEMU team who sponsored this development.
>
> Damien Hedde (9):
> hw/core/clock: introduce clock objects
> hw/core/clock-vmstate: define a vmstate entry for clock state
> qdev: add clock input&output support to devices.
> qdev-monitor: print the device's clock with info qtree
> qdev-clock: introduce an init array to ease the device construction
> docs/clocks: add device's clock documentation
> hw/misc/zynq_slcr: add clock generation for uarts
> hw/char/cadence_uart: add clock support
> hw/arm/xilinx_zynq: connect uart clocks to slcr
>
> Makefile.objs | 1 +
> docs/devel/clock.txt | 246 +++++++++++++++++++++++++++++++++
> hw/arm/xilinx_zynq.c | 64 +++++++--
> hw/char/cadence_uart.c | 85 ++++++++++--
> hw/char/trace-events | 3 +
> hw/core/Makefile.objs | 4 +-
> hw/core/clock-vmstate.c | 25 ++++
> hw/core/clock.c | 144 +++++++++++++++++++
> hw/core/qdev-clock.c | 181 ++++++++++++++++++++++++
> hw/core/qdev.c | 32 +++++
> hw/core/trace-events | 6 +
> hw/misc/zynq_slcr.c | 145 ++++++++++++++++++-
> include/hw/char/cadence_uart.h | 1 +
> include/hw/clock.h | 133 ++++++++++++++++++
> include/hw/qdev-clock.h | 134 ++++++++++++++++++
> include/hw/qdev-core.h | 14 ++
> qdev-monitor.c | 13 ++
> tests/Makefile.include | 1 +
> 18 files changed, 1210 insertions(+), 22 deletions(-)
> create mode 100644 docs/devel/clock.txt
> create mode 100644 hw/core/clock-vmstate.c
> create mode 100644 hw/core/clock.c
> create mode 100644 hw/core/qdev-clock.c
> create mode 100644 include/hw/clock.h
> create mode 100644 include/hw/qdev-clock.h
>
next prev parent reply other threads:[~2019-09-04 13:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-04 9:38 [Qemu-devel] [PATCH v6 0/9] Clock framework API damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 1/9] hw/core/clock: introduce clock objects damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 2/9] hw/core/clock-vmstate: define a vmstate entry for clock state damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 3/9] qdev: add clock input&output support to devices damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 4/9] qdev-monitor: print the device's clock with info qtree damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 5/9] qdev-clock: introduce an init array to ease the device construction damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 6/9] docs/clocks: add device's clock documentation damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 7/9] hw/misc/zynq_slcr: add clock generation for uarts damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 8/9] hw/char/cadence_uart: add clock support damien.hedde
2019-09-04 9:38 ` [Qemu-devel] [PATCH v6 9/9] hw/arm/xilinx_zynq: connect uart clocks to slcr damien.hedde
2019-09-04 13:04 ` Damien Hedde [this message]
2019-09-04 12:55 [Qemu-devel] [PATCH v6 0/9] Clock framework API Damien Hedde
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=6df157cb-cdb4-a019-3463-e1468d410f4e@greensocs.com \
--to=damien.hedde@greensocs.com \
--cc=alistair@alistair23.me \
--cc=berrange@redhat.com \
--cc=edgar.iglesias@gmail.com \
--cc=ehabkost@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=mark.burton@greensocs.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
/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).