From nobody Sat May 30 18:35:07 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1779187012; cv=none; d=zohomail.com; s=zohoarc; b=aYVwX+Y4H7a1QvIeK92FZ+5ztmbItSDVUnC3XYwdrJ2ciSpsHYOKtWVucZEYjzUdgOVv42+KGIg21rlkDCOzueTdKd4OrY37q52DKM7xH5+jWjeuMiPNzLm0NAF3++1rp/GgjexN991dhEfaZKNIIDNP2kEZSk703Ks+JYcTAu8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779187012; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=DWGCjJIGPHBo+PyVBXamfy8CAVuBZLEWETFeg3nvIOo=; b=GEgFYdSHUTtbXb935TqGVB+NYajQkfXoUWxe+fzh52apy6GsnmOjksPp263AtXW1dzFw8KTX6fegnTABeQFSFWSo6ANExYDN6niYHuoCSLpoXpUED/tGFR5zAnXI0xfwrundItEeAWDUaiSZQFa67/mDNRZyLh2S/JE6TWPwAHw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17791870124871011.933983504575; Tue, 19 May 2026 03:36:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wPHoA-0005Bk-8X; Tue, 19 May 2026 06:36:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wPHo8-0005B7-WC for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:17 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wPHo6-0005sr-2D for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:16 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-444826c16ffso2935400f8f.1 for ; Tue, 19 May 2026 03:36:13 -0700 (PDT) Received: from localhost ([2a03:2880:30ff:8::]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48fe5cab818sm329581015e9.14.2026.05.19.03.36.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 03:36:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779186972; x=1779791772; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=DWGCjJIGPHBo+PyVBXamfy8CAVuBZLEWETFeg3nvIOo=; b=gpJJ/B30z30YTjsS+igzg6k/2hwJiRdTzZheXXmp3KrwADUngTveX4pq+CKL+L3q2z MKXIynh3ZRDBkV+2IiF6YLpP1/NNPrEUm/JIXlfFIj+JNdwAhJSmJB1QnxiXqXAqbHOc vrf61E59irhfrXcZ0Nf4GjZWCwMMbypAHi6TcIOm428EDMcJwpg46gOwGIqn5PXz99Zd 9qsSO/FS3DXOXoWSb0TJNQGL6lsXzrbEwvAI9EhqANN0xy9tSCMn8OL43ufHX8iTQART 7A3GdeMJjIOBPOLe81ellFMqNtde8uYZ3w3PmoS7WehkO2nC0av8DIr8mWJgZA2RsuLe Vrzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779186972; x=1779791772; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=DWGCjJIGPHBo+PyVBXamfy8CAVuBZLEWETFeg3nvIOo=; b=p+4ooXehJbN17xE+UgZ3PvGQsi96xZIezb+cSX/xURiiLDxsAfpYP7UrLs/dwVaI1E GPIRstSf9pkjO+wVAwTMdhkqQP8z0SV41j7KYkZhyML9iOrI/acIm7OgA8jy3360bjIb obMHHTKnKqKf904p57HYHfcYY9uRRrX68iNfbPHe0xMqGw8svHBn4BSrjcGmEFNhX82m HVLo0MZIXH6SlSnTo02ppQifve1qv56O59QHa/Ja1ZXvUgtXqkJsAbxa4+8a5e21A3F2 ef3N1ZFYtpN98RQq08fllyD8Z3xmbU8j+r2VwnazgQfgbsXB0ar2O3oGWzY+SCFRrt/H QGOg== X-Gm-Message-State: AOJu0Yw9gQM9eJ3WdoJ38QIUNCFBQVv1HMLssxfswlDa+akKZCN0Gthg kN1elNlMHGlh7q/mgnhDJSIA5op/A1qmzrQ9GbPDW5xJMkFFdOcJsf17 X-Gm-Gg: Acq92OF6hJ9aWrr2Ivnw+TXBIITgKLBTgt2o50jdlBbY4H/l2bIi+6qIeMHYJQGTEak p8BqyQnbZ2L3SKjabaTKNOxQMgcKxbzN2NYKE+vc/aTcaMBQNaYlvSTD7bSAGupQpjUXajmQvbB ldaXmuhzaVvyvx56IruddG3df3+EstTZ5S3aMFxE0k6tHstb+LJLb6MAysLUpTKKp+CoI1xAT0U 1pOYVgTm5j+Pj2caIULCREyqq+390sWft1RGw6jfTaoUyjCTjOtLEaoiFay5/Qo+4rsVueSJf8C D91xPLX3+I7J+513uFtJQ4SgYrg/1ck4xrpNFtbU93+1ZY1+qnVqeh8elVGxq/Dj6lFiA99YCOH +Nm3lxbc84l09XH6Df/rcuJbAOgS3SDw4wJ1QFcq0FwWY4QbIHOTEgsEzT4uz6ju3PBC29GpRwG HxGp/aOGZMoHvgdDI2e6QVIQ== X-Received: by 2002:a05:600c:848c:b0:488:9ed3:1492 with SMTP id 5b1f17b1804b1-48fe60ecc19mr294591405e9.10.1779186972179; Tue, 19 May 2026 03:36:12 -0700 (PDT) From: William de Abreu Pinho Date: Tue, 19 May 2026 03:36:03 -0700 Subject: [PATCH v2 1/3] tests/functional/aspeed: introduce FacebookAspeedTest MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-add-anacapa-machine-v2-1-47027867d76a@gmail.com> References: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> In-Reply-To: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> To: qemu-devel@nongnu.org Cc: =?utf-8?q?C=C3=A9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Jamin Lin , Kane Chen , Andrew Jeffery , Joel Stanley , qemu-arm@nongnu.org, William de Abreu Pinho X-Mailer: b4 0.13.0 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=williamdapinho@gmail.com; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1779187014080158500 Facebook OpenBMC Images include an early script [1] that lowers the console log level to warning. This suppresses the "Hostname set to" message from the serial console. Introduce FacebookAspeedTest (a subclass of AspeedTest), that waits for login prompt instead. Update bletchley-bmc and catalina-bmc to use the new class. This is also used by the anacapa-bmc machine introduced in the following patch. [1]: https://github.com/openbmc/openbmc/blob/6a56a45931fb7015a3fc1855341590= 9105b484d6/meta-facebook/recipes-phosphor/initrdscripts/phosphor-static-nor= ootfs-init/999-reduce-printk Signed-off-by: William de Abreu Pinho Reviewed-by: C=C3=A9dric Le Goater --- tests/functional/arm/test_aspeed_bletchley.py | 6 +++--- tests/functional/arm/test_aspeed_catalina.py | 6 +++--- tests/functional/aspeed.py | 8 ++++++++ 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/tests/functional/arm/test_aspeed_bletchley.py b/tests/function= al/arm/test_aspeed_bletchley.py index 5a60b24b3d..3000d0c302 100755 --- a/tests/functional/arm/test_aspeed_bletchley.py +++ b/tests/functional/arm/test_aspeed_bletchley.py @@ -5,10 +5,10 @@ # SPDX-License-Identifier: GPL-2.0-or-later =20 from qemu_test import Asset -from aspeed import AspeedTest +from aspeed import FacebookAspeedTest =20 =20 -class BletchleyMachine(AspeedTest): +class BletchleyMachine(FacebookAspeedTest): =20 ASSET_BLETCHLEY_FLASH =3D Asset( 'https://github.com/legoater/qemu-aspeed-boot/raw/master/images/bl= etchley-bmc/openbmc-20250128071329/obmc-phosphor-image-bletchley-2025012807= 1329.static.mtd.xz', @@ -22,4 +22,4 @@ def test_arm_ast2600_bletchley_openbmc(self): soc=3D'AST2600 rev A3') =20 if __name__ =3D=3D '__main__': - AspeedTest.main() + FacebookAspeedTest.main() diff --git a/tests/functional/arm/test_aspeed_catalina.py b/tests/functiona= l/arm/test_aspeed_catalina.py index dc2f24e7b4..2694e4b005 100755 --- a/tests/functional/arm/test_aspeed_catalina.py +++ b/tests/functional/arm/test_aspeed_catalina.py @@ -5,10 +5,10 @@ # SPDX-License-Identifier: GPL-2.0-or-later =20 from qemu_test import Asset -from aspeed import AspeedTest +from aspeed import FacebookAspeedTest =20 =20 -class CatalinaMachine(AspeedTest): +class CatalinaMachine(FacebookAspeedTest): =20 ASSET_CATALINA_FLASH =3D Asset( 'https://github.com/legoater/qemu-aspeed-boot/raw/a866feb5ef81245b= 4827a214584bf6bcc72939f6/images/catalina-bmc/obmc-phosphor-image-catalina-2= 0250619123021.static.mtd.xz', @@ -22,4 +22,4 @@ def test_arm_ast2600_catalina_openbmc(self): soc=3D'AST2600 rev A3') =20 if __name__ =3D=3D '__main__': - AspeedTest.main() + FacebookAspeedTest.main() diff --git a/tests/functional/aspeed.py b/tests/functional/aspeed.py index 47e84e035b..88b6590934 100644 --- a/tests/functional/aspeed.py +++ b/tests/functional/aspeed.py @@ -28,6 +28,9 @@ def do_test_arm_aspeed_openbmc(self, machine, image, uboo= t=3D'2019.04', self.wait_for_console_pattern(f'Booting Linux on physical CPU {cpu= _id}') self.wait_for_console_pattern(f'ASPEED {soc}') self.wait_for_console_pattern('/init as init process') + self.wait_for_boot_complete(hostname) + + def wait_for_boot_complete(self, hostname): self.wait_for_console_pattern(f'systemd[1]: Hostname set to <{host= name}>.') =20 def do_test_arm_aspeed_buildroot_start(self, image, cpu_id, pattern=3D= 'Aspeed EVB'): @@ -69,3 +72,8 @@ def generate_otpmem_image(self): f.write(pattern) return path =20 + +class FacebookAspeedTest(AspeedTest): + + def wait_for_boot_complete(self, hostname): + self.wait_for_console_pattern(f'{hostname} login:') --=20 2.53.0-Meta From nobody Sat May 30 18:35:07 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1779187014; cv=none; d=zohomail.com; s=zohoarc; b=R4/dJSEq8mwDXTZR9x03y3KnwWAT87x+wk/31d5XGdR1knsVcgCyGCz0VpHxYT2cg//tus2jqb2pGMHcz/LwlpRsD8SSNaGAu4w8WggcgLr3Ye77DJEWmgtAo8MVX4e84ycJ2Nk2m9r60KI0jkuW+j7iOuXt6x5KlRCtXYuAuW0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779187014; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Imn7gRhq8UHf9WD3M2qqYk+mqwg5MZaM7nOmvBSaQWQ=; b=TgSs0o5y/sLtVSTpOahv/aCgBEQLu9Olq+2yVc9TovKSLEq+9n5S5OH/AFmxqRpcGCX9HvvEk395rWJI7E0LBEb6pkcjeGp6LxKqOC/ylQML2gRUR7hvGX2gGt3UIfJho7f9yT4k0/kBXJwAZM8Rgk2aNbZTqQNuqcv5Zw26udQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1779187014619584.685503829606; Tue, 19 May 2026 03:36:54 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wPHoF-0005Fx-2o; Tue, 19 May 2026 06:36:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wPHoC-0005FF-Mi for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:20 -0400 Received: from mail-yw1-x1132.google.com ([2607:f8b0:4864:20::1132]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wPHo9-0005uB-CM for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:20 -0400 Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-7c5d8f45465so28432517b3.1 for ; Tue, 19 May 2026 03:36:17 -0700 (PDT) Received: from localhost ([2a03:2880:f806:3c::]) by smtp.gmail.com with ESMTPSA id 00721157ae682-7cc997cad73sm34558817b3.17.2026.05.19.03.36.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 03:36:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779186976; x=1779791776; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Imn7gRhq8UHf9WD3M2qqYk+mqwg5MZaM7nOmvBSaQWQ=; b=JOt2odyr/eRaIw0oBZay9oPFEEyX8kk2SX3ER9yEO+P7hK8DP8tECxfE5ddZ0iOee2 8te4U39TyTog+9fp1+P7h9oc8/NICG+NIiwfE3W25M4Rv9hd6oIpI0UnJ0i1Q2TgZnwI vU9+/KCnQaQQ4kXamS7Jzn0hZiqfqXdYjOLMVrD2RBU0R17dO5mkQPCbeWj3B/KKiyST jPWr8LzGXTiq2QdvEanaOmUSZrBLLqTIPazO4XLg4b2i+d7NeZqOpPI+fR3QAjdBZmQb YzhS0whMuT4g7IXovCvzdtvLzD+hozrgxacUAqdz5995AQqH8trpxuuAIGPpfWL+dNql JfEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779186976; x=1779791776; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=Imn7gRhq8UHf9WD3M2qqYk+mqwg5MZaM7nOmvBSaQWQ=; b=Nb3+U/y/opGR9mX68XAzsJzcZPVwDY0hnl8l16tcB1Y+Uh4Swzr6I34h0Bn3C3ObNL zBlEFWPyJq/fF3/0kSaggyKBNwuNBSQRnDSgUOK4lJBRA8+U4cobvkNsiX82f4298GQu tA9Uc1reS76gPGSwWJzCbpFtxqnoS0NF5V3NC64bCv9tFgOLoQ1MXgLTI01LD1kLzGL2 lDBQoF8xTEEbUBbCLnYcFdvGpLk1SPTJOCKRik4edyZxK+PNky3BIe/7Hd6wcH+m6Kyl veLdEqJcvEX65YsuQzHglBgkW3eyu39yWxTs0dAttK6ZAcJgrEEpK+aXGug1pvXrZS2D CFtA== X-Gm-Message-State: AOJu0Yx20Pw6oQG7uFwrH0DNBuXWt/SuyNjUwlWFxvA53RVo1sOHf1ur /cW617k8k5huUmebf11FH20nYwDQnc8ebSHFgVF3qorZPj9CulCNximM X-Gm-Gg: Acq92OGD9JOUoNc81Zbudqvm3WEwIioYb5E+SFnX6z8RsutHf/VW7Ec2RGbdhWwr/aC 9i04mW2trmI2sSMbcwu4lB3+uAwSOAeS64MyOUMYCWhiA0PnW9x6i0PSyDAVdxrjZQhM5ZcRIYC tOBrADekAdBMp7Zi7yjz4GqTrFe7IQWOOrqvD87VXbiIs04t6RRY5v+a0O6VEJy0N3WfAfnsvSX EVqd7cAnHVmx+CzDWI0hiE0r90hqCBfIDBnXXyr94FbIzC0DcFU0o8oZ0R7dSsURSDghBpObrej pUxOudSqjEk30uP1L2SiteivtSUUNsJImTI1gObhhwBcHMd715GpMnGrgs33H+wstzkI3JiXIpF 5tv8i3H6JaATrEc7fCZFA5sC1y+wuCHZ9q3Ie1rH7ASiWbgirj/VZXAJ2Wik9iXDdB81P2NIe1J wR8dwgz1+OxHfbBLajK6abtqc= X-Received: by 2002:a05:690c:385:b0:7bd:5cc4:1961 with SMTP id 00721157ae682-7c95d1d32e5mr204295857b3.37.1779186975777; Tue, 19 May 2026 03:36:15 -0700 (PDT) From: William de Abreu Pinho Date: Tue, 19 May 2026 03:36:04 -0700 Subject: [PATCH v2 2/3] hw/arm/aspeed: add anacapa-bmc machine MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-add-anacapa-machine-v2-2-47027867d76a@gmail.com> References: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> In-Reply-To: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> To: qemu-devel@nongnu.org Cc: =?utf-8?q?C=C3=A9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Jamin Lin , Kane Chen , Andrew Jeffery , Joel Stanley , qemu-arm@nongnu.org, William de Abreu Pinho X-Mailer: b4 0.13.0 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::1132; envelope-from=williamdapinho@gmail.com; helo=mail-yw1-x1132.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1779187017032154100 Add the Facebook Anacapa BMC machine. The I2C topology is based on the Linux kernel device tree [1]. Hardware strap register values are taken from real hardware. A functional test is included using the OpenBMC image built from [2], similar to the tests for bletchley-bmc and catalina-bmc. [1]: https://github.com/torvalds/linux/blob/76b4ec8efdc3887cdbf730da2e55881= fc1a18770/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-anacapa.dts [2]: https://github.com/openbmc/openbmc/commit/8e22df918eaaa5d83143471d24ef= 0eeb1c1e3c7c Signed-off-by: William de Abreu Pinho Reviewed-by: C=C3=A9dric Le Goater --- hw/arm/aspeed_ast2600_anacapa.c | 153 ++++++++++++++++++++++++= ++++ hw/arm/meson.build | 1 + tests/functional/arm/meson.build | 2 + tests/functional/arm/test_aspeed_anacapa.py | 25 +++++ 4 files changed, 181 insertions(+) diff --git a/hw/arm/aspeed_ast2600_anacapa.c b/hw/arm/aspeed_ast2600_anacap= a.c new file mode 100644 index 0000000000..c24f00d44c --- /dev/null +++ b/hw/arm/aspeed_ast2600_anacapa.c @@ -0,0 +1,153 @@ +/* + * Facebook Anacapa + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qapi/error.h" +#include "hw/arm/machines-qom.h" +#include "hw/arm/aspeed.h" +#include "hw/arm/aspeed_soc.h" +#include "hw/i2c/i2c_mux_pca954x.h" +#include "hw/gpio/pca9552.h" +#include "hw/nvram/eeprom_at24c.h" + +/* Anacapa hardware value */ +#define ANACAPA_BMC_HW_STRAP1 0x00002002 +#define ANACAPA_BMC_HW_STRAP2 0x00000000 +#define ANACAPA_BMC_RAM_SIZE ASPEED_RAM_SIZE(2 * GiB) + +static void anacapa_bmc_i2c_init(AspeedMachineState *bmc) +{ + /* Reference: aspeed-bmc-facebook-anacapa.dts */ + + AspeedSoCState *soc =3D bmc->soc; + I2CBus *i2c[16] =3D {}; + I2CSlave *i2c_mux; + + for (int i =3D 0; i < ARRAY_SIZE(i2c); i++) { + i2c[i] =3D aspeed_i2c_get_bus(&soc->i2c, i); + } + + /* &i2c0 */ + /* eeprom@50 */ + at24c_eeprom_init(i2c[0], 0x50, 256 * KiB); + /* i2c-mux@70 */ + i2c_slave_create_simple(i2c[0], TYPE_PCA9546, 0x70); + + /* &i2c1 */ + /* eeprom@50 */ + at24c_eeprom_init(i2c[1], 0x50, 256 * KiB); + /* i2c-mux@70 (PCA9546) =E2=80=94 4 channels, empty */ + i2c_slave_create_simple(i2c[1], TYPE_PCA9546, 0x70); + + /* &i2c4 */ + /* i2c-mux@70 (PCA9548) */ + i2c_slave_create_simple(i2c[4], TYPE_PCA9548, 0x70); + + /* &i2c6 */ + /* eeprom@50 */ + at24c_eeprom_init(i2c[6], 0x50, 32 * KiB); + + /* &i2c8 */ + /* i2c-mux@72 (PCA9546) */ + i2c_mux =3D i2c_slave_create_simple(i2c[8], TYPE_PCA9546, 0x72); + + /* i2c8mux ch0 */ + /* adc128d818@1f =E2=80=94 no model */ + /* pca9555@22 */ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 0), + TYPE_PCA9552, 0x22); + /* pca9555@24 */ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 0), + TYPE_PCA9552, 0x24); + /* eeprom@50 */ + at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 0), 0x50, 16 * KiB); + + /* i2c8mux ch1 */ + /* pca9555@22 */ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 1), + TYPE_PCA9552, 0x22); + /* pca9555@24 */ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 1), + TYPE_PCA9552, 0x24); + /* eeprom@50 */ + at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 1), 0x50, 16 * KiB); + + /* &i2c9 */ + /* eeprom@50 */ + at24c_eeprom_init(i2c[9], 0x50, 16 * KiB); + /* eeprom@56 */ + at24c_eeprom_init(i2c[9], 0x56, 8 * KiB); + + /* &i2c10 */ + /* i2c-mux@71 (PCA9548) */ + i2c_mux =3D i2c_slave_create_simple(i2c[10], TYPE_PCA9548, 0x71); + + /* i2c10mux ch5 */ + /* pca9555@22*/ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), + TYPE_PCA9552, 0x22); + /* eeprom@52 */ + at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB); + + /* &i2c11 */ + /* i2c-mux@71 (PCA9548) */ + i2c_mux =3D i2c_slave_create_simple(i2c[11], TYPE_PCA9548, 0x71); + + /* i2c11mux ch0-ch4 =E2=80=94 empty */ + + /* i2c11mux ch5 */ + /* pca9555@22 */ + i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), + TYPE_PCA9552, 0x22); + /* eeprom@52 */ + at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB); + + /* &i2c13 */ + /* i2c-mux@70 (PCA9548) */ + i2c_mux =3D i2c_slave_create_simple(i2c[13], TYPE_PCA9548, 0x70); + + /* i2c13mux ch3 */ + /* adc128d818@1f - no model */ + + /* i2c13mux ch4 */ + /* eeprom@51 */ + at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 4), 0x51, 32 * KiB); + + /* i2c13mux ch7 */ + /* nfc@28 =E2=80=94 no model */ +} + +static void aspeed_machine_anacapa_class_init(ObjectClass *oc, + const void *data) +{ + MachineClass *mc =3D MACHINE_CLASS(oc); + AspeedMachineClass *amc =3D ASPEED_MACHINE_CLASS(oc); + + mc->desc =3D "Facebook Anacapa BMC (Cortex-A7)"; + amc->soc_name =3D "ast2600-a3"; + amc->hw_strap1 =3D ANACAPA_BMC_HW_STRAP1; + amc->hw_strap2 =3D ANACAPA_BMC_HW_STRAP2; + amc->fmc_model =3D "mx66l1g45g"; + amc->spi_model =3D NULL; + amc->num_cs =3D 2; + amc->macs_mask =3D ASPEED_MAC2_ON; + amc->i2c_init =3D anacapa_bmc_i2c_init; + mc->default_ram_size =3D ANACAPA_BMC_RAM_SIZE; + aspeed_machine_class_init_cpus_defaults(mc); +} + +static const TypeInfo aspeed_ast2600_anacapa_types[] =3D { + { + .name =3D MACHINE_TYPE_NAME("anacapa-bmc"), + .parent =3D TYPE_ASPEED_MACHINE, + .class_init =3D aspeed_machine_anacapa_class_init, + .interfaces =3D arm_machine_interfaces, + } +}; + +DEFINE_TYPES(aspeed_ast2600_anacapa_types) diff --git a/hw/arm/meson.build b/hw/arm/meson.build index 84b8ec5fb5..3de3dca8a9 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -56,6 +56,7 @@ arm_ss.add(when: 'CONFIG_ASPEED_SOC', if_true: files( 'aspeed_ast2500_witherspoon.c', 'aspeed_ast2500_yosemitev2.c', 'aspeed_ast2600.c', + 'aspeed_ast2600_anacapa.c', 'aspeed_ast2600_bletchley.c', 'aspeed_ast2600_catalina.c', 'aspeed_ast2600_evb.c', diff --git a/tests/functional/arm/meson.build b/tests/functional/arm/meson.= build index 2f538f29a2..959179a56f 100644 --- a/tests/functional/arm/meson.build +++ b/tests/functional/arm/meson.build @@ -12,6 +12,7 @@ test_arm_timeouts =3D { 'aspeed_ast2600_sdk' : 720, 'aspeed_ast2600_sdk_515' : 720, 'aspeed_ast2600_sdk_otp' : 720, + 'aspeed_anacapa' : 480, 'aspeed_bletchley' : 480, 'aspeed_catalina' : 480, 'aspeed_gb200nvl_bmc' : 480, @@ -45,6 +46,7 @@ tests_arm_system_thorough =3D [ 'aspeed_ast2600_sdk', 'aspeed_ast2600_sdk_515', 'aspeed_ast2600_sdk_otp', + 'aspeed_anacapa', 'aspeed_bletchley', 'aspeed_catalina', 'aspeed_gb200nvl_bmc', diff --git a/tests/functional/arm/test_aspeed_anacapa.py b/tests/functional= /arm/test_aspeed_anacapa.py new file mode 100755 index 0000000000..27f8bd8b56 --- /dev/null +++ b/tests/functional/arm/test_aspeed_anacapa.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +# +# Functional test that boots the ASPEED machines +# +# SPDX-License-Identifier: GPL-2.0-or-later + +from qemu_test import Asset +from aspeed import FacebookAspeedTest + + +class AnacapaMachine(FacebookAspeedTest): + + ASSET_ANACAPA_FLASH =3D Asset( + 'https://github.com/legoater/qemu-aspeed-boot/raw/3fa3212827b04be4= 034d43b5adeef57c27d6ab18/images/anacapa-bmc/openbmc-20260512025228/obmc-pho= sphor-image-anacapa-20260512025228.static.mtd.xz', + '2232e241abcfb6d4f6b82cb6c378ce5ce05e364aac6d118785c2b6cc33fe43f3') + + def test_arm_ast2600_anacapa_openbmc(self): + image_path =3D self.uncompress(self.ASSET_ANACAPA_FLASH) + + self.do_test_arm_aspeed_openbmc('anacapa-bmc', image=3Dimage_path, + uboot=3D'2019.04', cpu_id=3D'0xf00= ', + soc=3D'AST2600 rev A3') + +if __name__ =3D=3D '__main__': + FacebookAspeedTest.main() --=20 2.53.0-Meta From nobody Sat May 30 18:35:07 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1779187022; cv=none; d=zohomail.com; s=zohoarc; b=byD+kgmjosaZhGSim4QoC8UDn89cvTxnxGYO2zkhGP1+4Jz+QTrQCqtszx0zs7upKjP+Fjlw4h49NKbAjZQKv7/5yfhJW4kc1Pl22+qJOwdn/Y/Lvmlk9KQAxVoYqiatYLQetkjIj6RrUF9LYLwcbd+Oh2Jur7YL4FEySUsjyOw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779187022; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8tv8sNGOP2+gDDuYmPlVIIy5gfvrfarZbTKlONa7k1M=; b=FGMSDXXLA8jzTv0OLyTbLFt41+qomY7ayBFoyynFNOkoUSvyN+iGIMBh6j32a3KgC5rf8R9lEIoSSZEByBhjd3FTl1hP7AF7bGSw7w5+84sfruNKfHu0bPM0oOoEDW+Ruj0uMY9yKr3vCYDgtNqBP4lztB3qUzl1PC/o51tdirs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177918702233819.36263241389895; Tue, 19 May 2026 03:37:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wPHoG-0005Gr-In; Tue, 19 May 2026 06:36:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wPHoE-0005G0-IS for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:22 -0400 Received: from mail-yw1-x1129.google.com ([2607:f8b0:4864:20::1129]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wPHoB-0005un-Nd for qemu-devel@nongnu.org; Tue, 19 May 2026 06:36:22 -0400 Received: by mail-yw1-x1129.google.com with SMTP id 00721157ae682-7bd4c61765dso28697677b3.3 for ; Tue, 19 May 2026 03:36:19 -0700 (PDT) Received: from localhost ([2a03:2880:f806:3c::]) by smtp.gmail.com with ESMTPSA id 00721157ae682-7cc9d18dcddsm34260827b3.49.2026.05.19.03.36.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2026 03:36:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779186978; x=1779791778; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8tv8sNGOP2+gDDuYmPlVIIy5gfvrfarZbTKlONa7k1M=; b=qC5tXBI3WCrrRQRnbe/8JctuFDAh642BRNhSABf2pmaImbJmaVXhChYHQ3I1M0WBIm 5Or6O2MyTiNFaJFxpBxYGaxVQtsCgDj8x5jVC6fonTn3MYdKdNaB4bAFAKkTh9tVzRjc w4Z6prDkjXhQvwu9RDxy6IT5EPZMnMN09iuOLGjE9z054+KYYOLYzG35LePIiwLmZMC4 9DugFfIzu/dRMo0Aqhi1qAsgDtk2nIY2xXHcmWZVTD+3SwhOZM/8rWCC6oaVpxOYUSZV 5LbQ1tNO6n/f+0csJllyMb/HX9+l1wQwRpFTzwTDc87pTu2B9YgpyHY0YsdZDxLXVnQi 5dYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779186978; x=1779791778; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=8tv8sNGOP2+gDDuYmPlVIIy5gfvrfarZbTKlONa7k1M=; b=NdtK5OAGQz4zkmV90gN+qjGom3lgysCTqjlYblRlRzWm6cwu4nlL4JvZKcjXTQV0DG VxzX8MWY6/vnf0qDUAJy1HWSdzSBQBtJTARv/oMgQNEC9usEjyvM2X6eaMc6szaLpaht 93f4xwd/8HIlAkEidYEHor1C7m4EKKsftVpDU/54yecbTxUgEcHwji+dvLIMLrLW3ezF Jhbu0cEt9PwT1D3wzP0f5b0VR9w7Y1y7AfuGA3hOUudlZ/9t3m2mzxTEM96xr8R5SfdC MrsnS0pIgqconla/no/Od2yM/cDLxdJs4nozLs1pGidhgfjhfv8UXmfbFYd1I+JfRgvV 8Mew== X-Gm-Message-State: AOJu0Yw6bVOA+m8i/ZdZkyh+kkg8wh4XW9pXryZkQDb3wNFxF3z+Cp1+ pe+tM1m3FZqYWiyy6U56GCSzSRw+aB5XmQq2SxkCAmnxBTwZ7NmC7VRA X-Gm-Gg: Acq92OHb0f6ygAGirbrv2Rz6eOxrZjl6S7yIscPP/ZfTtHJHgfNVuwmtTRQXRmi9rh0 ZSqJ4O1viH37lXXLOy6hGpIO33+THiMmsNdg4H/5LgilHZ7Q18Xs7wG9HM8m3ZX+THC1Ql61pfd qmo6xONujJcoJ+VDNX0Ef8QAqsgWCXuLf6ssVYaADdbyA1MPwxfbSsfT1qU7Nt1oPtSxYJbWRej r16FwZRAtKhLhPgh/rzS4KuHezm+0rlLyzoMDtKSakQeQM3Pk3IYFNZH84rmQ/cpscudlgzvGVq HO94N/5BKC6hllRVd+cT2lpW7IULA1HB5yEQJyrmvGG0N9sc0FPlx7AtgGM2wCzUa+cIiYP6V06 KbkYT6w9IaIjlV/y9xPG4MR7ojJe+vAijIlaG+BE6TZInZo6E/+YL3Zw3qI9kCiiVfOz7WX5JMB QJ763QOa7pw0Vrq0cSvQUgl6k= X-Received: by 2002:a05:690c:c1d5:b0:7bf:9648:8c5c with SMTP id 00721157ae682-7c95a666d76mr165214787b3.18.1779186978395; Tue, 19 May 2026 03:36:18 -0700 (PDT) From: William de Abreu Pinho Date: Tue, 19 May 2026 03:36:05 -0700 Subject: [PATCH v2 3/3] hw/arm/aspeed: anacapa: add FRU EEPROM data MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-add-anacapa-machine-v2-3-47027867d76a@gmail.com> References: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> In-Reply-To: <20260519-add-anacapa-machine-v2-0-47027867d76a@gmail.com> To: qemu-devel@nongnu.org Cc: =?utf-8?q?C=C3=A9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Jamin Lin , Kane Chen , Andrew Jeffery , Joel Stanley , qemu-arm@nongnu.org, William de Abreu Pinho , =?utf-8?q?C=C3=A9dric_Le_Goater?= X-Mailer: b4 0.13.0 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::1129; envelope-from=williamdapinho@gmail.com; helo=mail-yw1-x1129.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1779187023934158500 Use frugen to generate FRU data for the following components: HPM MB, R-PDB, L-PDB, SCM, BSM, R Bridge Board, L Bridge Board, and HPM board ID. Signed-off-by: William de Abreu Pinho Reviewed-by: C=C3=A9dric Le Goater --- hw/arm/aspeed_ast2600_anacapa.c | 225 ++++++++++++++++++++++++++++++++++++= ++-- 1 file changed, 217 insertions(+), 8 deletions(-) diff --git a/hw/arm/aspeed_ast2600_anacapa.c b/hw/arm/aspeed_ast2600_anacap= a.c index c24f00d44c..a1c8111a93 100644 --- a/hw/arm/aspeed_ast2600_anacapa.c +++ b/hw/arm/aspeed_ast2600_anacapa.c @@ -20,6 +20,207 @@ #define ANACAPA_BMC_HW_STRAP2 0x00000000 #define ANACAPA_BMC_RAM_SIZE ASPEED_RAM_SIZE(2 * GiB) =20 +/* + * "Anacapa HPM (MB)" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa QEMU MB EVT2", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t hpm_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0xb4, + 0xa4, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd4, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x51, 0x45, 0x4d, 0x55, + 0x20, 0x4d, 0x42, 0x20, 0x45, 0x56, 0x54, 0x32, 0x47, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xc0, + 0xc1, 0x00, 0x00, 0xb8, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t hpm_eeprom_len =3D sizeof(hpm_eeprom); + +/* + * "Anacapa R-PDB" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa QEMU RPDB", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t rpdb_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0x41, + 0x2d, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd1, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x51, 0x45, 0x4d, 0x55, + 0x20, 0x52, 0x50, 0x44, 0x42, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xc1, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x4d, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t rpdb_eeprom_len =3D sizeof(rpdb_eeprom); + +/* + * "Anacapa L-PDB" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa QEMU LPDB", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t lpdb_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0x41, + 0x2d, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd1, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x51, 0x45, 0x4d, 0x55, + 0x20, 0x4c, 0x50, 0x44, 0x42, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xc1, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x53, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t lpdb_eeprom_len =3D sizeof(lpdb_eeprom); + +/* + * "Anacapa SCM" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Quanta", "pname": "Anacapa SCM", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Quanta", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t scm_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0xf7, 0x01, 0x06, 0x19, 0x41, + 0x2d, 0xf2, 0xc6, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xcb, 0x41, 0x6e, + 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x53, 0x43, 0x4d, 0x47, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, + 0xc0, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc5, 0x01, 0x06, 0x19, 0xc6, + 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, + 0x61, 0x63, 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, + 0x82, 0x2d, 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, + 0x71, 0xd9, 0xd6, 0xc0, 0xc1, 0x00, 0x00, 0xe2 +}; +static const size_t scm_eeprom_len =3D sizeof(scm_eeprom); + +/* + * "Anacapa BMC Storage Module" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Quanta", "pname": "Anacapa BMC Storage Module", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Quanta", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t bsm_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x0a, 0x00, 0x00, 0xf4, 0x01, 0x09, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xda, 0x41, 0x6e, + 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x42, 0x4d, 0x43, 0x20, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x20, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0xce, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0xcb, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0xc0, 0xc1, 0x00, 0x00, 0x10, 0x01, 0x08, 0x00, 0xc6, + 0x51, 0x75, 0x61, 0x6e, 0x74, 0x61, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, + 0x61, 0x63, 0x61, 0x70, 0x61, 0xcb, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x31, 0xc2, 0x4d, 0x50, 0xce, 0x31, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xc4, + 0x51, 0x45, 0x4d, 0x55, 0xc0, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, +}; +static const size_t bsm_eeprom_len =3D sizeof(bsm_eeprom); + +/* + * "Anacapa R Bridge Board" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa QEMU RBB EVT2", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t rbb_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0xb4, + 0xa4, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd5, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x51, 0x45, 0x4d, 0x55, + 0x20, 0x52, 0x42, 0x42, 0x20, 0x45, 0x56, 0x54, 0x32, 0x47, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, + 0xc0, 0xc1, 0x00, 0x70, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t rbb_eeprom_len =3D sizeof(rbb_eeprom); + +/* + * "Anacapa L Bridge Board" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa QEMU LBB EVT2", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t lbb_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0xb4, + 0xa4, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd5, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x51, 0x45, 0x4d, 0x55, + 0x20, 0x4c, 0x42, 0x42, 0x20, 0x45, 0x56, 0x54, 0x32, 0x47, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, + 0xc0, 0xc1, 0x00, 0x76, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t lbb_eeprom_len =3D sizeof(lbb_eeprom); + +/* + * "Anacapa HPM BRD ID" FRU data. Generated with frugen. + * + * { + * "board": { "mfg": "Inventec", "pname": "Anacapa HPM BRD ID", + * "pn": "00000000000", "serial": "00000000000000" }, + * "product": { "mfg": "Inventec", "pname": "CI-Anacapa", + * "pn": "10000000001", "ver": "MP", + * "serial": "10000000000000", "atag": "QEMU" } + * } + */ +static const uint8_t hpm_brd_id_eeprom[] =3D { + 0x01, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0xf6, 0x01, 0x07, 0x19, 0x41, + 0x2d, 0xf2, 0xc8, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x63, 0xd2, + 0x41, 0x6e, 0x61, 0x63, 0x61, 0x70, 0x61, 0x20, 0x48, 0x50, 0x4d, 0x20, + 0x42, 0x52, 0x44, 0x20, 0x49, 0x44, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xc1, 0x00, + 0x00, 0x00, 0x00, 0x42, 0x01, 0x06, 0x19, 0xc8, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x63, 0xca, 0x43, 0x49, 0x2d, 0x41, 0x6e, 0x61, 0x63, + 0x61, 0x70, 0x61, 0x46, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x82, 0x2d, + 0x0c, 0x47, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x71, 0xd9, + 0xd6, 0xc0, 0xc1, 0x0e +}; +static const size_t hpm_brd_id_eeprom_len =3D sizeof(hpm_brd_id_eeprom); + static void anacapa_bmc_i2c_init(AspeedMachineState *bmc) { /* Reference: aspeed-bmc-facebook-anacapa.dts */ @@ -50,7 +251,8 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *bmc) =20 /* &i2c6 */ /* eeprom@50 */ - at24c_eeprom_init(i2c[6], 0x50, 32 * KiB); + at24c_eeprom_init_rom(i2c[6], 0x50, 32 * KiB, + hpm_eeprom, hpm_eeprom_len); =20 /* &i2c8 */ /* i2c-mux@72 (PCA9546) */ @@ -65,7 +267,8 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *bmc) i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 0), TYPE_PCA9552, 0x24); /* eeprom@50 */ - at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 0), 0x50, 16 * KiB); + at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 0), 0x50, 16 * KiB, + rpdb_eeprom, rpdb_eeprom_len); =20 /* i2c8mux ch1 */ /* pca9555@22 */ @@ -75,13 +278,16 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *b= mc) i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 1), TYPE_PCA9552, 0x24); /* eeprom@50 */ - at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 1), 0x50, 16 * KiB); + at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 1), 0x50, 16 * KiB, + lpdb_eeprom, lpdb_eeprom_len); =20 /* &i2c9 */ /* eeprom@50 */ - at24c_eeprom_init(i2c[9], 0x50, 16 * KiB); + at24c_eeprom_init_rom(i2c[9], 0x50, 16 * KiB, + scm_eeprom, scm_eeprom_len); /* eeprom@56 */ - at24c_eeprom_init(i2c[9], 0x56, 8 * KiB); + at24c_eeprom_init_rom(i2c[9], 0x56, 8 * KiB, + bsm_eeprom, bsm_eeprom_len); =20 /* &i2c10 */ /* i2c-mux@71 (PCA9548) */ @@ -92,7 +298,8 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *bmc) i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), TYPE_PCA9552, 0x22); /* eeprom@52 */ - at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB); + at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB, + rbb_eeprom, rbb_eeprom_len); =20 /* &i2c11 */ /* i2c-mux@71 (PCA9548) */ @@ -105,7 +312,8 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *bm= c) i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), TYPE_PCA9552, 0x22); /* eeprom@52 */ - at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB); + at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 5), 0x52, 32 * KiB, + lbb_eeprom, lbb_eeprom_len); =20 /* &i2c13 */ /* i2c-mux@70 (PCA9548) */ @@ -116,7 +324,8 @@ static void anacapa_bmc_i2c_init(AspeedMachineState *bm= c) =20 /* i2c13mux ch4 */ /* eeprom@51 */ - at24c_eeprom_init(pca954x_i2c_get_bus(i2c_mux, 4), 0x51, 32 * KiB); + at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 4), 0x51, 32 * KiB, + hpm_brd_id_eeprom, hpm_brd_id_eeprom_len); =20 /* i2c13mux ch7 */ /* nfc@28 =E2=80=94 no model */ --=20 2.53.0-Meta