[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 09/14] hw/sensor: Add IC_DEVICE_ID to ISL voltage regulato
From: |
Titus Rwantare |
Subject: |
Re: [PATCH v3 09/14] hw/sensor: Add IC_DEVICE_ID to ISL voltage regulators |
Date: |
Thu, 30 Jun 2022 12:20:03 -0700 |
On Wed, 29 Jun 2022 at 21:52, Peter Delevoryas <me@pjd.dev> wrote:
>
> From: Peter Delevoryas <pdel@fb.com>
>
> This commit adds a passthrough for PMBUS_IC_DEVICE_ID to allow Renesas
> voltage regulators to return the integrated circuit device ID if they
> would like to.
>
> The behavior is very device specific, so it hasn't been added to the
> general PMBUS model. Additionally, if the device ID hasn't been set,
> then the voltage regulator will respond with the error byte value. The
> guest error message will change slightly for IC_DEVICE_ID with this
> commit.
>
> Signed-off-by: Peter Delevoryas <pdel@fb.com>
> ---
> hw/sensor/isl_pmbus_vr.c | 12 ++++++++++++
> include/hw/sensor/isl_pmbus_vr.h | 5 +++++
> 2 files changed, 17 insertions(+)
>
> diff --git a/hw/sensor/isl_pmbus_vr.c b/hw/sensor/isl_pmbus_vr.c
> index e11e028884..799ea9d89e 100644
> --- a/hw/sensor/isl_pmbus_vr.c
> +++ b/hw/sensor/isl_pmbus_vr.c
> @@ -15,6 +15,18 @@
>
> static uint8_t isl_pmbus_vr_read_byte(PMBusDevice *pmdev)
> {
> + ISLState *s = ISL69260(pmdev);
> +
> + switch (pmdev->code) {
> + case PMBUS_IC_DEVICE_ID:
> + if (!s->ic_device_id_len) {
> + break;
> + }
> + pmbus_send(pmdev, s->ic_device_id, s->ic_device_id_len);
> + pmbus_idle(pmdev);
> + return 0;
> + }
> +
> qemu_log_mask(LOG_GUEST_ERROR,
> "%s: reading from unsupported register: 0x%02x\n",
> __func__, pmdev->code);
> diff --git a/include/hw/sensor/isl_pmbus_vr.h
> b/include/hw/sensor/isl_pmbus_vr.h
> index 3e47ff7e48..aa2c2767df 100644
> --- a/include/hw/sensor/isl_pmbus_vr.h
> +++ b/include/hw/sensor/isl_pmbus_vr.h
> @@ -12,12 +12,17 @@
> #include "hw/i2c/pmbus_device.h"
> #include "qom/object.h"
>
> +#define TYPE_ISL69259 "isl69259"
> #define TYPE_ISL69260 "isl69260"
> #define TYPE_RAA228000 "raa228000"
> #define TYPE_RAA229004 "raa229004"
> +#define ISL_MAX_IC_DEVICE_ID_LEN 16
>
> struct ISLState {
> PMBusDevice parent;
> +
> + uint8_t ic_device_id[ISL_MAX_IC_DEVICE_ID_LEN];
> + uint8_t ic_device_id_len;
> };
>
> OBJECT_DECLARE_SIMPLE_TYPE(ISLState, ISL69260)
> --
> 2.37.0
>
Reviewed-by: Titus Rwantare <titusr@google.com>
- [PATCH v3 01/14] hw/i2c/aspeed: Fix R_I2CD_FUN_CTRL reference, (continued)
- [PATCH v3 01/14] hw/i2c/aspeed: Fix R_I2CD_FUN_CTRL reference, Peter Delevoryas, 2022/06/30
- [PATCH v3 02/14] hw/i2c/aspeed: Fix DMA len write-enable bit handling, Peter Delevoryas, 2022/06/30
- [PATCH v3 03/14] hw/i2c/aspeed: Fix MASTER_EN missing error message, Peter Delevoryas, 2022/06/30
- [PATCH v3 04/14] hw/i2c: support multiple masters, Peter Delevoryas, 2022/06/30
- [PATCH v3 05/14] hw/i2c: add asynchronous send, Peter Delevoryas, 2022/06/30
- [PATCH v3 06/14] hw/i2c/aspeed: add slave device in old register mode, Peter Delevoryas, 2022/06/30
- [PATCH v3 07/14] hw/i2c/aspeed: Add new-registers DMA slave mode RX support, Peter Delevoryas, 2022/06/30
- [PATCH v3 08/14] hw/i2c/pmbus: Add idle state to return 0xff's, Peter Delevoryas, 2022/06/30
- [PATCH v3 09/14] hw/sensor: Add IC_DEVICE_ID to ISL voltage regulators, Peter Delevoryas, 2022/06/30
- Re: [PATCH v3 09/14] hw/sensor: Add IC_DEVICE_ID to ISL voltage regulators,
Titus Rwantare <=
- [PATCH v3 10/14] hw/sensor: Add Renesas ISL69259 device model, Peter Delevoryas, 2022/06/30
- [PATCH v3 11/14] hw/misc/aspeed: Add PECI controller, Peter Delevoryas, 2022/06/30
- [PATCH v3 12/14] hw/misc/aspeed: Add fby35-sb-cpld, Peter Delevoryas, 2022/06/30
- [PATCH v3 13/14] hw/misc/aspeed: Add intel-me, Peter Delevoryas, 2022/06/30