{"id":2175325,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2175325/?format=json","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.0/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20251217-catalina-eeproms-v1-3-dc7b276efd57@stwcx.xyz>","date":"2025-12-17T19:11:30","name":"[03/11] hw/arm/aspeed: catalina: add PDB FRU EEPROM","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"7afe84b19a3d342a1985fb10e37277b423405ceb","submitter":{"id":67046,"url":"http://patchwork.ozlabs.org/api/1.0/people/67046/?format=json","name":"Patrick Williams","email":"patrick@stwcx.xyz"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20251217-catalina-eeproms-v1-3-dc7b276efd57@stwcx.xyz/mbox/","series":[{"id":485752,"url":"http://patchwork.ozlabs.org/api/1.0/series/485752/?format=json","date":"2025-12-17T19:11:31","name":"hw/arm/aspeed: catalina: add eeproms images","version":1,"mbox":"http://patchwork.ozlabs.org/series/485752/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2175325/checks/","tags":{},"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=stwcx.xyz header.i=@stwcx.xyz header.a=rsa-sha256\n header.s=fm3 header.b=GXwC3eHM;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=messagingengine.com header.i=@messagingengine.com\n header.a=rsa-sha256 header.s=fm1 header.b=JJuripEM;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dWk2h175Dz1y0P\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 18 Dec 2025 06:12:44 +1100 (AEDT)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vVww4-0005hi-1h; Wed, 17 Dec 2025 14:11:44 -0500","from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <patrick@stwcx.xyz>)\n id 1vVwvw-0005cA-Qu; Wed, 17 Dec 2025 14:11:36 -0500","from fout-a8-smtp.messagingengine.com ([103.168.172.151])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <patrick@stwcx.xyz>)\n id 1vVwvu-00014r-Mc; Wed, 17 Dec 2025 14:11:36 -0500","from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43])\n by mailfout.phl.internal (Postfix) with ESMTP id D5924EC011C;\n Wed, 17 Dec 2025 14:11:33 -0500 (EST)","from phl-frontend-04 ([10.202.2.163])\n by phl-compute-03.internal (MEProxy); Wed, 17 Dec 2025 14:11:33 -0500","by mail.messagingengine.com (Postfix) with ESMTPA; Wed,\n 17 Dec 2025 14:11:33 -0500 (EST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=stwcx.xyz; h=cc\n :cc:content-transfer-encoding:content-type:content-type:date\n :date:from:from:in-reply-to:in-reply-to:message-id:mime-version\n :references:reply-to:subject:subject:to:to; s=fm3; t=1765998693;\n x=1766085093; bh=IYNyEYtFuolxuLICrRO3YgG3x5tAFKgZGLn8f+nn+AM=; b=\n GXwC3eHMtN+RqXYLPZjTju/Mut97Z8eA0GeOlQm8IltLQPa2e9NeWDatd5cux1mB\n LCatP9deUr2XuZOAXmtq0W+V05sSd25ud1kGzN123mbcetVfnnjecz+LQVlef56c\n xNjsukJLu8LTqrY+SSLptdae9tCgDWIkYV7HhkfAbLTcgMDSIlEsTauo3FzKkiHo\n bKaKUU9hgQ9neD2eCNqEjNcKQRY6JlAPUKfnKXTiJxeMIBSw8c+BvZwkim6WawU+\n XL6xSzb7octU3HQrnb+qp53ZoNnnYzi1+adcsE6gF9A+InZYNTUU+FhMacmd3/RH\n KR/2BBC7zi567FFFYNfJkA==","v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n messagingengine.com; h=cc:cc:content-transfer-encoding\n :content-type:content-type:date:date:feedback-id:feedback-id\n :from:from:in-reply-to:in-reply-to:message-id:mime-version\n :references:reply-to:subject:subject:to:to:x-me-proxy\n :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1765998693; x=\n 1766085093; bh=IYNyEYtFuolxuLICrRO3YgG3x5tAFKgZGLn8f+nn+AM=; b=J\n JuripEMixPr9lkiO2sLtpPMZqkXI6rHMD1KHM6O1j/imo6xR9+KetGVROKLjgbQm\n qDDoIu260ZuvMdiK2JIMbclcyOTA9DZVreb+pLoXUjBEI/lC+LlKN5KZNnDeV+aO\n LyFAs89qjtjClGO43C/eH1WzbQKA0KGJb5MWE6eyw0sdUOx+8A4CJJreLVjZL1gK\n M4hAIEr5yLJpZyJQoH0l8ORVy3CAHoNQ/hDl+c5j8WgBX8LqfyYftZGmYhR7EfgM\n ae3mWXJ/XsKtdqRt/yNjFwQdvAf8Q8cInIxkJps6F0JtQRIt7/ui+BmxsQQk4REp\n 5yJUq5xAPb5/leCr407JQ=="],"X-ME-Sender":"<xms:ZQBDaTeMTEYKaICxWOi4d_YXWO7o4d8d2a9-09O3xSvaAptT2QOgNw>\n <xme:ZQBDacQeutkMC5yrzHuSxucf34HLfetozRyOxu25gA9qmy_uUPhMDJLQ-BD2nET0d\n LVSFMNWoWUqA_ZSRactl1pFgCtU-k0YJJAP6vT3PqtAkynozD_nFBQ>","X-ME-Received":"\n <xmr:ZQBDaXIJsZyJIMRtwGfgRenq4jlHSCFK11TgejECir7K17lvFBz_lJHMUR4>","X-ME-Proxy-Cause":"\n gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdegfeefjecutefuodetggdotefrod\n ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr\n ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenfghrlh\n cuvffnffculdejtddmnecujfgurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdej\n necuhfhrohhmpefrrghtrhhitghkucghihhllhhirghmshcuoehprghtrhhitghksehsth\n iftgigrdighiiiqeenucggtffrrghtthgvrhhnpeehjeejhfektedtuedtgfegjeekvdej\n gfehveelhedtfffhudevjeeikeehgfeltdenucevlhhushhtvghrufhiiigvpedtnecurf\n grrhgrmhepmhgrihhlfhhrohhmpehprghtrhhitghksehsthiftgigrdighiiipdhnsggp\n rhgtphhtthhopedutddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepphgrthhrih\n gtkhesshhtfigtgidrgiihiidprhgtphhtthhopehpvghtvghrrdhmrgihuggvlhhlsehl\n ihhnrghrohdrohhrghdprhgtphhtthhopehsthgvvhgvnhgplhgvvgesrghsphgvvgguth\n gvtghhrdgtohhmpdhrtghpthhtohepqhgvmhhuqdgrrhhmsehnohhnghhnuhdrohhrghdp\n rhgtphhtthhopehjrghmihhnpghlihhnsegrshhpvggvughtvggthhdrtghomhdprhgtph\n htthhopegrnhgurhgvfiestghouggvtghonhhsthhruhgtthdrtghomhdrrghupdhrtghp\n thhtoheplhgvvghtrhhohiesghhmrghilhdrtghomhdprhgtphhtthhopehqvghmuhdqug\n gvvhgvlhesnhhonhhgnhhurdhorhhgpdhrtghpthhtohepjhhovghlsehjmhhsrdhiugdr\n rghu","X-ME-Proxy":"<xmx:ZQBDaRLp9y9dDmwrsVA5kONEw8snnt-gEtUOPTt5gWijszXkWeRAvw>\n <xmx:ZQBDaajRTDSYvRX3IUQxUaDU8zhMX36IYKCrOBlzctGE-oI0RnID4A>\n <xmx:ZQBDaTNFZAIJ4-SANllJbt-nXhpmBlp1JKenKxt0KN7lB2TOMEwehA>\n <xmx:ZQBDadoKXKkU-KsYgsxGH60zGlM59nt77SwyzY4Vkl-4ven3DqUEJw>\n <xmx:ZQBDaRX2esLNYzIC9ljJxLTNeYy6qPAtI54hCCNmSaTtNzd45Kn64-p5>","Feedback-ID":"i68a1478a:Fastmail","From":"Patrick Williams <patrick@stwcx.xyz>","Date":"Wed, 17 Dec 2025 14:11:30 -0500","Subject":"[PATCH 03/11] hw/arm/aspeed: catalina: add PDB FRU EEPROM","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20251217-catalina-eeproms-v1-3-dc7b276efd57@stwcx.xyz>","References":"<20251217-catalina-eeproms-v1-0-dc7b276efd57@stwcx.xyz>","In-Reply-To":"<20251217-catalina-eeproms-v1-0-dc7b276efd57@stwcx.xyz>","To":"qemu-devel@nongnu.org","Cc":"=?utf-8?q?C=C3=A9dric_Le_Goater?= <clg@kaod.org>,\n  Peter Maydell <peter.maydell@linaro.org>,\n  Steven Lee <steven_lee@aspeedtech.com>, Troy Lee <leetroy@gmail.com>,\n  Jamin Lin <jamin_lin@aspeedtech.com>,\n  Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n  qemu-arm@nongnu.org, Patrick Williams <patrick@stwcx.xyz>","X-Mailer":"b4 0.14.3","X-Developer-Signature":"v=1; a=openpgp-sha256; l=3439; i=patrick@stwcx.xyz;\n h=from:subject:message-id;\n bh=743vlcsdT8g1t/2Q0+AWKYAMdQDwHhTqybRKjZPrPVI=;\n b=owEBbQKS/ZANAwAIAasDR8wtAMEZAcsmYgBpQwBgbh2DvhB1ArR7mzF27ViTfiAV4CawtMjeK\n hHPjBEzMNaJAjMEAAEIAB0WIQQEYP2KLgsT1w1uokGrA0fMLQDBGQUCaUMAYAAKCRCrA0fMLQDB\n GY1gD/0b7HRp/1SjkoZmxbs8IblvgBWgZISK/QTXWYf3D+f91bfL/h70LNrK9PhwLXxKukzTNJx\n ASyJKFT4FSE1WWsbGs9DqqRpX7ScXF6wqQmRg8EH9aaSNAsP42Y5lhMJvaDQ2e1eqCtxCTYXhcu\n 48R2oYqfBcW9HEj+eAwePgJtR7ZtOU2WOREjclOE8x32nRCzmxvZvg0gZwuqa+ON6APlHjvbsN8\n TVM/zU0yln6aqrEkY6cm0HocLlWEmDitTCxxu4BHpQ13mBKkHPSapcQMBlxo5EGSb3VqtnFxUAA\n F6dvF9iwsvGOZC1cgCkbyAdxTnm0LlyPmrvzjkrdpxHP0G3xBwv9echLk7ztas3O7/sQaHZwq71\n acWF29aKf7ZVa71cKDi6B5y1FKHHJpI3KXOCb+bymqxIwmQ8L2DrnXa8yS4GHaEQnaZqiyl46sX\n MmpdNeeQW8XEfI06mYIFs7FpkVBfA5jAvfXWftsDQ1MX5fzLK5uRg2B0f9T1ONmUUG3jIREKYwr\n hvmLKvjG1urhV/p7gWGqldbHYEQBHmZPy4bxvKUZbOzm1h8Y88w49TXI2SnTfCqWexZpM1mOhvn\n zvjLJQ1MS2Uc4r9ptn+tKovaW9+vna9PLtCi5MYJZKfxGZ/sfvmqnEtf7T7jRpHk9TQ22iCnksO\n ZUF+70MFsA4AQbw==","X-Developer-Key":"i=patrick@stwcx.xyz; a=openpgp;\n fpr=0460FD8A2E0B13D70D6EA241AB0347CC2D00C119","Received-SPF":"pass client-ip=103.168.172.151; envelope-from=patrick@stwcx.xyz;\n helo=fout-a8-smtp.messagingengine.com","X-Spam_score_int":"-2","X-Spam_score":"-0.3","X-Spam_bar":"/","X-Spam_report":"(-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n FROM_SUSPICIOUS_NTLD=0.498, PDS_OTHER_BAD_TLD=1.997, RCVD_IN_DNSWL_LOW=-0.7,\n RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,\n SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"},"content":"Use ipmitool/frugen tool to generate a PDB image based on a\nsanitized set of data from a real device EEPROM.\n\nSigned-off-by: Patrick Williams <patrick@stwcx.xyz>\n---\n hw/arm/aspeed_ast2600_catalina.c | 51 +++++++++++++++++++++++++++++++++++++++-\n 1 file changed, 50 insertions(+), 1 deletion(-)","diff":"diff --git a/hw/arm/aspeed_ast2600_catalina.c b/hw/arm/aspeed_ast2600_catalina.c\nindex 6e8f4d39d9..2ba2c5c088 100644\n--- a/hw/arm/aspeed_ast2600_catalina.c\n+++ b/hw/arm/aspeed_ast2600_catalina.c\n@@ -103,6 +103,54 @@ static const uint8_t scm_eeprom[] = {\n };\n static const size_t scm_eeprom_len = sizeof(scm_eeprom);\n \n+/*\n+ * \"Power Distribution Board\" FRU data. Generated with frugen.\n+ *\n+ *    {\n+ *        \"board\": {\n+ *            \"mfg\": \"Quanta\",\n+ *            \"pname\": \"Catalina PDB MP (QEMU)\",\n+ *            \"pn\": \"00000000000\",\n+ *            \"serial\": \"00000000000000\",\n+ *            \"date\": \"01/12/2025 00:00\",\n+ *            \"custom\": [\n+ *                \"19-100579\",\n+ *                \"\",\n+ *                \"\",\n+ *                \"hsc-ltc fsc-max vr-delta gndsen-ina p12vsen-ina p12vfan-mps\"\n+ *            ]\n+ *        },\n+ *        \"product\": {\n+ *            \"mfg\": \"Quanta\",\n+ *            \"pname\": \"CI-Catalina\",\n+ *            \"pn\": \"10000000001\",\n+ *            \"ver\": \"MP\",\n+ *            \"serial\": \"10000000000000\",\n+ *            \"atag\": \"QEMU\"\n+ *        }\n+ *    }\n+ */\n+static const uint8_t pdb_eeprom[] = {\n+    0x01, 0x00, 0x00, 0x01, 0x12, 0x00, 0x00, 0xec, 0x01, 0x11, 0x19, 0x8c,\n+    0x19, 0xf0, 0xc6, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xd6, 0x43, 0x61,\n+    0x74, 0x61, 0x6c, 0x69, 0x6e, 0x61, 0x20, 0x50, 0x44, 0x42, 0x20, 0x4d,\n+    0x50, 0x20, 0x28, 0x51, 0x45, 0x4d, 0x55, 0x29, 0x8b, 0x10, 0x04, 0x41,\n+    0x10, 0x04, 0x41, 0x10, 0x04, 0x41, 0x10, 0x04, 0x89, 0x10, 0x04, 0x41,\n+    0x10, 0x04, 0x41, 0x10, 0x04, 0x01, 0xc0, 0x87, 0x51, 0xd6, 0x44, 0x10,\n+    0x54, 0x5d, 0x19, 0xc0, 0xc0, 0xfb, 0x68, 0x73, 0x63, 0x2d, 0x6c, 0x74,\n+    0x63, 0x20, 0x66, 0x73, 0x63, 0x2d, 0x6d, 0x61, 0x78, 0x20, 0x76, 0x72,\n+    0x2d, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x20, 0x67, 0x6e, 0x64, 0x73, 0x65,\n+    0x6e, 0x2d, 0x69, 0x6e, 0x61, 0x20, 0x70, 0x31, 0x32, 0x76, 0x73, 0x65,\n+    0x6e, 0x2d, 0x69, 0x6e, 0x61, 0x20, 0x70, 0x31, 0x32, 0x76, 0x66, 0x61,\n+    0x6e, 0x2d, 0x6d, 0x70, 0x73, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,\n+    0x01, 0x07, 0x19, 0xc6, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xcb, 0x43,\n+    0x49, 0x2d, 0x43, 0x61, 0x74, 0x61, 0x6c, 0x69, 0x6e, 0x61, 0x89, 0x11,\n+    0x04, 0x41, 0x10, 0x04, 0x41, 0x10, 0x14, 0x01, 0x82, 0x2d, 0x0c, 0x8b,\n+    0x11, 0x04, 0x41, 0x10, 0x04, 0x41, 0x10, 0x04, 0x41, 0x10, 0x04, 0x83,\n+    0x71, 0xd9, 0xd6, 0xc0, 0xc1, 0x00, 0x00, 0x37\n+};\n+static const size_t pdb_eeprom_len = sizeof(pdb_eeprom);\n+\n static void catalina_bmc_i2c_init(AspeedMachineState *bmc)\n {\n     /* Reference from v6.16-rc2 aspeed-bmc-facebook-catalina.dts */\n@@ -166,7 +214,8 @@ static void catalina_bmc_i2c_init(AspeedMachineState *bmc)\n \n     /* i2c1mux0ch5 */\n     /* eeprom@54 */\n-    at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 5), 0x54, 8 * KiB);\n+    at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 5), 0x54, 8 * KiB,\n+                          pdb_eeprom, pdb_eeprom_len);\n     /* tpm75@4f */\n     i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), TYPE_TMP75, 0x4f);\n \n","prefixes":["03/11"]}