qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 0/5] Add support for PMBus in QEMU


From: Corey Minyard
Subject: Re: [PATCH v4 0/5] Add support for PMBus in QEMU
Date: Wed, 19 May 2021 15:41:00 -0500

On Wed, May 19, 2021 at 09:49:57AM -0700, Titus Rwantare wrote:
> Hello,
> 
> This patch series adds an interface to start supporting PMBus devices in QEMU.
> I’ve included two PMBus devices: MAX34451 and ADM1272.
> 

Ok, I've added this to my next tree.  I moved the files to the sensor
directory, too.

-corey

> PMBus is a variant of SMBus meant for digital management of power supplies.
> PMBus adds to the SMBus standard by defining a number of constants and 
> commands
> used by compliant devices. The specification for PMBus can be found at:
> 
> https://pmbus.org/specification-archives/
> 
> Currently, the goal for these devices is to emulate basic functionality by
> reading and writing registers. Timing, and some logical operation is not
> implemented. This implementation supports nearly all available registers for
> PMBus including:
>    - Voltage inputs and outputs
>    - Current inputs and outputs
>    - Temperature sensors
> 
> Unimplimented registers get passed through to the device model, and device
> models can opt out of using the standard registers with flags. The included
> devices make use of these fields and illustrate how to interface with the 
> pmbus
> class.
> 
> Datasheets for sensors:
> 
> https://datasheets.maximintegrated.com/en/ds/MAX34451.pdf
> https://www.analog.com/media/en/technical-documentation/data-sheets/ADM1272.pdf
> 
> Since v3:
> - added VMState descriptions. Adding PMBusPage info to the vmsd has proven to 
> be tricky, it's a TODO for now.
> 
> Since v2:
> - bump for feedback
> - removed commented out code
> 
> Since v1:
> - addressed Joel's comments
> - split out tests into their own patches
> 
> Thanks for reviewing,
> 
> Titus Rwantare
> 
> Titus Rwantare (5):
>   hw/i2c: add support for PMBus
>   hw/misc: add ADM1272 device
>   tests/qtest: add tests for ADM1272 device model
>   hw/misc: add MAX34451 device
>   tests/qtest: add tests for MAX34451 device model
> 
>  include/hw/i2c/pmbus_device.h |  517 +++++++++++
>  hw/i2c/pmbus_device.c         | 1612 +++++++++++++++++++++++++++++++++
>  hw/misc/adm1272.c             |  544 +++++++++++
>  hw/misc/max34451.c            |  775 ++++++++++++++++
>  tests/qtest/adm1272-test.c    |  445 +++++++++
>  tests/qtest/max34451-test.c   |  336 +++++++
>  hw/arm/Kconfig                |    3 +
>  hw/i2c/Kconfig                |    4 +
>  hw/i2c/meson.build            |    1 +
>  hw/misc/Kconfig               |    8 +
>  hw/misc/meson.build           |    2 +
>  tests/qtest/meson.build       |    2 +
>  12 files changed, 4249 insertions(+)
>  create mode 100644 include/hw/i2c/pmbus_device.h
>  create mode 100644 hw/i2c/pmbus_device.c
>  create mode 100644 hw/misc/adm1272.c
>  create mode 100644 hw/misc/max34451.c
>  create mode 100644 tests/qtest/adm1272-test.c
>  create mode 100644 tests/qtest/max34451-test.c
> 
> -- 
> 2.31.1.751.gd2f1c929bd-goog
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]