From: Ninad Palsule <ninad@linux.vnet.ibm.com>
To: "Cédric Le Goater" <clg@kaod.org>,
"Ninad Palsule" <ninad@linux.ibm.com>,
qemu-devel@nongnu.org, peter.maydell@linaro.org, andrew@aj.id.au,
joel@jms.id.au
Cc: qemu-arm@nongnu.org
Subject: Re: [PATCH v3 1/1] hw/arm/aspeed:Add vpd data for Rainier machine
Date: Wed, 24 May 2023 20:26:01 -0500 [thread overview]
Message-ID: <1f3d8799-7c12-e9d4-91bd-5fead72b7f82@linux.vnet.ibm.com> (raw)
In-Reply-To: <7fadea2f-39e0-902f-848a-8f9bd7ff1f52@kaod.org>
Hello Cedric,
On 5/24/23 1:36 AM, Cédric Le Goater wrote:
> On 5/23/23 23:45, Ninad Palsule wrote:
>> The current modeling of Rainier machine creates zero filled
>> VPDs(EEPROMs).
>> This makes some services and applications unhappy and causing them to
>> fail.
>> Hence this drop adds some fabricated data for system and BMC FRU so that
>> vpd services are happy and active.
>>
>> Tested:
>> - The system-vpd.service is active.
>> - VPD service related to bmc is active.
>>
>> Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
>
> You can keep the R-b tag when you resend, unless there are a lot of
> changes.
Yes, Sure. Sorry about that.
>
> Reviewed-by: Cédric Le Goater <clg@kaod.org>
>
> Since I am curious, I started a rainier machine under QEMU and ran some
> commands :
> root@p10bmc:~# hexdump -C /sys/bus/i2c/devices/i2c-8/8-0050/eeprom
> 00000000 00 00 00 00 00 00 00 00 00 00 00 84 28 00 52 54
> |............(.RT|
> 00000010 04 56 48 44 52 56 44 02 01 00 50 54 0e 56 54 4f
> |.VHDRVD...PT.VTO|
> 00000020 43 00 00 37 00 4a 00 00 00 00 00 50 46 08 00 00
> |C..7.J.....PF...|
> 00000030 00 00 00 00 00 00 00 00 46 00 52 54 04 56 54 4f
> |........F.RT.VTO|
> 00000040 43 50 54 38 56 49 4e 49 00 00 81 00 3a 00 00 00
> |CPT8VINI....:...|
> 00000050 00 00 56 53 59 53 00 00 bb 00 27 00 00 00 00 00
> |..VSYS....'.....|
> 00000060 56 43 45 4e 00 00 e2 00 27 00 00 00 00 00 56 53
> |VCEN....'.....VS|
> 00000070 42 50 00 00 09 01 19 00 00 00 00 00 50 46 01 00
> |BP..........PF..|
> 00000080 00 00 36 00 52 54 04 56 49 4e 49 44 52 04 44 45
> |..6.RT.VINIDR.DE|
> 00000090 53 43 48 57 02 30 31 43 43 04 33 34 35 36 46 4e
> |SCHW.01CC.3456FN|
> 000000a0 04 46 52 34 39 53 4e 04 53 52 31 32 50 4e 04 50
> |.FR49SN.SR12PN.P|
> 000000b0 52 39 39 50 46 04 00 00 00 00 00 00 23 00 52 54
> |R99PF.......#.RT|
> 000000c0 04 56 53 59 53 53 45 07 49 42 4d 53 59 53 31 54
> |.VSYSSE.IBMSYS1T|
> 000000d0 4d 08 32 32 32 32 2d 32 32 32 50 46 04 00 00 00
> |M.2222-222PF....|
> 000000e0 00 00 00 23 00 52 54 04 56 43 45 4e 53 45 07 31
> |...#.RT.VCENSE.1|
> 000000f0 32 33 34 35 36 37 46 43 08 31 31 31 31 2d 31 31
> |234567FC.1111-11|
> 00000100 31 50 46 04 00 00 00 00 00 00 15 00 52 54 04 56
> |1PF.........RT.V|
> 00000110 53 42 50 49 4d 04 50 00 10 01 50 46 04 00 00 00
> |SBPIM.P...PF....|
> 00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> |................|
> *
> 00002000
> root@p10bmc:~# hexdump -C /sys/bus/i2c/devices/i2c-8/8-0051/eeprom
> 00000000 00 00 00 00 00 00 00 00 00 00 00 84 28 00 52 54
> |............(.RT|
> 00000010 04 56 48 44 52 56 44 02 01 00 50 54 0e 56 54 4f
> |.VHDRVD...PT.VTO|
> 00000020 43 00 00 37 00 20 00 00 00 00 00 50 46 08 00 00 |C..7.
> .....PF...|
> 00000030 00 00 00 00 00 00 00 00 1c 00 52 54 04 56 54 4f
> |..........RT.VTO|
> 00000040 43 50 54 0e 56 49 4e 49 00 00 57 00 1e 00 00 00
> |CPT.VINI..W.....|
> 00000050 00 00 50 46 01 00 00 00 1a 00 52 54 04 56 49 4e
> |..PF......RT.VIN|
> 00000060 49 44 52 04 44 45 53 43 48 57 02 30 31 50 46 04
> |IDR.DESCHW.01PF.|
> 00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> |................|
>
> and
>
> root@p10bmc:~# systemctl status com.ibm.VPD.Manager.service -l
> * com.ibm.VPD.Manager.service - IBM VPD Manager
> Loaded: loaded
> (/lib/systemd/system/com.ibm.VPD.Manager.service; enabled; preset:
> enabled)
> Active: active (running) since Wed 2023-05-24 06:26:34 UTC;
> 1min 28s ago
> Main PID: 2784 (vpd-manager)
> CPU: 101ms
> CGroup: /system.slice/com.ibm.VPD.Manager.service
> `-2784 /usr/bin/vpd-manager
>
Thank you for checking.
> But, I also got this :
>
> root@p10bmc:~# [ 91.656331] watchdog: watchdog0: watchdog did not
> stop!
> [ 91.734858] systemd-shutdown[1]: Using hardware watchdog
> 'aspeed_wdt', version 0, device /dev/watchdog0
> [ 91.735766] systemd-shutdown[1]: Watchdog running with a timeout
> of 1min.
> [ 91.987363] systemd-shutdown[1]: Syncing filesystems and block
> devices.
> [ 93.471897] systemd-shutdown[1]: Sending SIGTERM to remaining
> processes...
This is a different issue. I am also hitting it without my changes.
>
> and the machine rebooted.
>
> Joel had the same problem :
> https://github.com/openbmc/qemu/issues/39
> Is it unrelated ? I haven't started a rainier in 2 years at least so
> I can
> not tell.
> Thanks,
> C.
>
>
>
>
>
>
>> ---
>> hw/arm/aspeed.c | 6 ++++--
>> hw/arm/aspeed_eeprom.c | 45 +++++++++++++++++++++++++++++++++++++++++-
>> hw/arm/aspeed_eeprom.h | 5 +++++
>> 3 files changed, 53 insertions(+), 3 deletions(-)
>>
>> diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
>> index 0b29028fe1..bfc2070bd2 100644
>> --- a/hw/arm/aspeed.c
>> +++ b/hw/arm/aspeed.c
>> @@ -788,8 +788,10 @@ static void
>> rainier_bmc_i2c_init(AspeedMachineState *bmc)
>> 0x48);
>> i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), TYPE_TMP105,
>> 0x4a);
>> - at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 8), 0x50, 64 *
>> KiB);
>> - at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 8), 0x51, 64 *
>> KiB);
>> + at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 8), 0x50,
>> + 64 * KiB, rainier_bb_fruid,
>> rainier_bb_fruid_len);
>> + at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 8), 0x51,
>> + 64 * KiB, rainier_bmc_fruid,
>> rainier_bmc_fruid_len);
>> create_pca9552(soc, 8, 0x60);
>> create_pca9552(soc, 8, 0x61);
>> /* Bus 8: ucd90320@11 */
>> diff --git a/hw/arm/aspeed_eeprom.c b/hw/arm/aspeed_eeprom.c
>> index dc33a88a54..ace5266cec 100644
>> --- a/hw/arm/aspeed_eeprom.c
>> +++ b/hw/arm/aspeed_eeprom.c
>> @@ -119,9 +119,52 @@ const uint8_t yosemitev2_bmc_fruid[] = {
>> 0x6e, 0x66, 0x69, 0x67, 0x20, 0x41, 0xc1, 0x45,
>> };
>> +const uint8_t rainier_bb_fruid[] = {
>> + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
>> 0x00, 0x84,
>> + 0x28, 0x00, 0x52, 0x54, 0x04, 0x56, 0x48, 0x44, 0x52, 0x56,
>> 0x44, 0x02,
>> + 0x01, 0x00, 0x50, 0x54, 0x0e, 0x56, 0x54, 0x4f, 0x43, 0x00,
>> 0x00, 0x37,
>> + 0x00, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x46, 0x08,
>> 0x00, 0x00,
>> + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x00,
>> 0x52, 0x54,
>> + 0x04, 0x56, 0x54, 0x4f, 0x43, 0x50, 0x54, 0x38, 0x56, 0x49,
>> 0x4e, 0x49,
>> + 0x00, 0x00, 0x81, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00,
>> 0x56, 0x53,
>> + 0x59, 0x53, 0x00, 0x00, 0xbb, 0x00, 0x27, 0x00, 0x00, 0x00,
>> 0x00, 0x00,
>> + 0x56, 0x43, 0x45, 0x4e, 0x00, 0x00, 0xe2, 0x00, 0x27, 0x00,
>> 0x00, 0x00,
>> + 0x00, 0x00, 0x56, 0x53, 0x42, 0x50, 0x00, 0x00, 0x09, 0x01,
>> 0x19, 0x00,
>> + 0x00, 0x00, 0x00, 0x00, 0x50, 0x46, 0x01, 0x00, 0x00, 0x00,
>> 0x36, 0x00,
>> + 0x52, 0x54, 0x04, 0x56, 0x49, 0x4e, 0x49, 0x44, 0x52, 0x04,
>> 0x44, 0x45,
>> + 0x53, 0x43, 0x48, 0x57, 0x02, 0x30, 0x31, 0x43, 0x43, 0x04,
>> 0x33, 0x34,
>> + 0x35, 0x36, 0x46, 0x4e, 0x04, 0x46, 0x52, 0x34, 0x39, 0x53,
>> 0x4e, 0x04,
>> + 0x53, 0x52, 0x31, 0x32, 0x50, 0x4e, 0x04, 0x50, 0x52, 0x39,
>> 0x39, 0x50,
>> + 0x46, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00,
>> 0x52, 0x54,
>> + 0x04, 0x56, 0x53, 0x59, 0x53, 0x53, 0x45, 0x07, 0x49, 0x42,
>> 0x4d, 0x53,
>> + 0x59, 0x53, 0x31, 0x54, 0x4d, 0x08, 0x32, 0x32, 0x32, 0x32,
>> 0x2d, 0x32,
>> + 0x32, 0x32, 0x50, 0x46, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
>> 0x00, 0x23,
>> + 0x00, 0x52, 0x54, 0x04, 0x56, 0x43, 0x45, 0x4e, 0x53, 0x45,
>> 0x07, 0x31,
>> + 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x46, 0x43, 0x08, 0x31,
>> 0x31, 0x31,
>> + 0x31, 0x2d, 0x31, 0x31, 0x31, 0x50, 0x46, 0x04, 0x00, 0x00,
>> 0x00, 0x00,
>> + 0x00, 0x00, 0x15, 0x00, 0x52, 0x54, 0x04, 0x56, 0x53, 0x42,
>> 0x50, 0x49,
>> + 0x4d, 0x04, 0x50, 0x00, 0x10, 0x01, 0x50, 0x46, 0x04, 0x00,
>> 0x00, 0x00,
>> + 0x00, 0x00,
>> +};
>> +
>> +/* Rainier BMC FRU */
>> +const uint8_t rainier_bmc_fruid[] = {
>> + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
>> 0x00, 0x84,
>> + 0x28, 0x00, 0x52, 0x54, 0x04, 0x56, 0x48, 0x44, 0x52, 0x56,
>> 0x44, 0x02,
>> + 0x01, 0x00, 0x50, 0x54, 0x0e, 0x56, 0x54, 0x4f, 0x43, 0x00,
>> 0x00, 0x37,
>> + 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x46, 0x08,
>> 0x00, 0x00,
>> + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00,
>> 0x52, 0x54,
>> + 0x04, 0x56, 0x54, 0x4f, 0x43, 0x50, 0x54, 0x0e, 0x56, 0x49,
>> 0x4e, 0x49,
>> + 0x00, 0x00, 0x57, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00,
>> 0x50, 0x46,
>> + 0x01, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x52, 0x54, 0x04, 0x56,
>> 0x49, 0x4e,
>> + 0x49, 0x44, 0x52, 0x04, 0x44, 0x45, 0x53, 0x43, 0x48, 0x57,
>> 0x02, 0x30,
>> + 0x31, 0x50, 0x46, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
>> +};
>> +
>> const size_t tiogapass_bmc_fruid_len = sizeof(tiogapass_bmc_fruid);
>> const size_t fby35_nic_fruid_len = sizeof(fby35_nic_fruid);
>> const size_t fby35_bb_fruid_len = sizeof(fby35_bb_fruid);
>> const size_t fby35_bmc_fruid_len = sizeof(fby35_bmc_fruid);
>> -
>> const size_t yosemitev2_bmc_fruid_len = sizeof(yosemitev2_bmc_fruid);
>> +const size_t rainier_bb_fruid_len = sizeof(rainier_bb_fruid);
>> +const size_t rainier_bmc_fruid_len = sizeof(rainier_bmc_fruid);
>> diff --git a/hw/arm/aspeed_eeprom.h b/hw/arm/aspeed_eeprom.h
>> index 86db6f0479..bbf9e54365 100644
>> --- a/hw/arm/aspeed_eeprom.h
>> +++ b/hw/arm/aspeed_eeprom.h
>> @@ -22,4 +22,9 @@ extern const size_t fby35_bmc_fruid_len;
>> extern const uint8_t yosemitev2_bmc_fruid[];
>> extern const size_t yosemitev2_bmc_fruid_len;
>> +extern const uint8_t rainier_bb_fruid[];
>> +extern const size_t rainier_bb_fruid_len;
>> +extern const uint8_t rainier_bmc_fruid[];
>> +extern const size_t rainier_bmc_fruid_len;
>> +
>> #endif
>
prev parent reply other threads:[~2023-05-25 1:27 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-23 21:45 [PATCH v3 0/1] Add vpd data for Rainier machine Ninad Palsule
2023-05-23 21:45 ` [PATCH v3 1/1] hw/arm/aspeed:Add " Ninad Palsule
2023-05-24 6:36 ` Cédric Le Goater
2023-05-24 7:44 ` Joel Stanley
2023-05-24 8:35 ` Cédric Le Goater
2023-05-25 0:30 ` Andrew Jeffery
2023-05-25 6:37 ` Cédric Le Goater
2023-05-25 19:57 ` Ninad Palsule
2023-05-26 6:18 ` Cédric Le Goater
2023-06-01 14:36 ` Ninad Palsule
2023-05-25 1:26 ` Ninad Palsule [this message]
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=1f3d8799-7c12-e9d4-91bd-5fead72b7f82@linux.vnet.ibm.com \
--to=ninad@linux.vnet.ibm.com \
--cc=andrew@aj.id.au \
--cc=clg@kaod.org \
--cc=joel@jms.id.au \
--cc=ninad@linux.ibm.com \
--cc=peter.maydell@linaro.org \
--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).