From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020368; cv=none; d=zohomail.com; s=zohoarc; b=c58EFLo/hSMyZPge2v8ldkcdEv1G1AI6Xifb8u0y5bv6fauyjFoOs+1iI7pkZlNpqptr1RF7FsLOg1wFrY48Xu9lJNR7Rid+RAf068zznliDQlc7oZrXM1UMveMMfg+vjsvgaFeHAmNZzfq7/fQFjAYTSveLUn5LCc9iXM55o8Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020368; 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=gnUlApX+7h7Kk05znUtWIMQVcOTxmH3EZMk7MU+Bn4g=; b=Cno3E8J6Hh/K3qYseQHeFlVm/a+pzLAdpy5s980pIJfbmyRrEbjVI3HJRsnpPyV/2ao1jBhoh/cfX/v53RjP7fdEzQu4v5pvNEwrB/dv+LbflXSjGlu/UmAXXrFiZ/OhkHZFC7Du+AExLJI+5ysCywIFy1/q0FkxSDELNDnyH6s= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020368266344.9125725357301; Thu, 9 Oct 2025 07:32:48 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgE-0002M3-9O; Thu, 09 Oct 2025 10:31:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rfx-0002HC-3D for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:28 -0400 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rfn-00030K-Vf for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:24 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3ee64bc6b85so1142258f8f.3 for ; Thu, 09 Oct 2025 07:31:15 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46fb482624fsm396965e9.6.2025.10.09.07.31.12 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020273; x=1760625073; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=gnUlApX+7h7Kk05znUtWIMQVcOTxmH3EZMk7MU+Bn4g=; b=fXPRJ6DJRyP5AO2+IcCWTwQTYcHl3CgqQdW70kF38alxorHnRaAuX1xS/l3iC/Sm5X gqbaKU/Ks+svxkt0H+8C5+uwugAjZZTC1H0wKoSul4cMkezmnmYfAEQmwQaA5lpyM7Hn vkx73ArWAUgjuC/Z/kk2Jd/YD9Y/I8V1DJHRGkW2jBruIkIt3pNFr6HYGi8FapP6ICyr 31vOdwWPmVXg1qCqTW36FMCgfYL186jScpR37K/joCNhC5jL9kijnSyDkzxhJxZYz3M/ MhLjXSaH2c5n9BXSGZumn/9lXaYTc8+HGErsQy6E5JfpDgu/QvWPPvgCnuABhGarn1MZ 8mmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020273; x=1760625073; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gnUlApX+7h7Kk05znUtWIMQVcOTxmH3EZMk7MU+Bn4g=; b=LZEs/ztwvmPbI1RKMmBFmMUnoWMf0p+6kW1sqze1IBxx6iUSdLv/yBGhpBdXXQkJ3p 3uzQ4izYt7VwKtp57jOl2LzbSOFoccakmDxe8UMDItlZki3O/Cmd4yFFtmUL4FsMivCk mk8gmDajmwpZloICwtYcpDMkdl6Ftz71AgKnAXsr5ywlgZTB4iNlR3LHAi9KWeBHU7dd mBsShPw659bzEY64Q84In7MCV1pLNxoZKxY4JopoLukvXnnW4BYvLYPUQtzctnZgMwTm kNfEyKvr2tV41JYCyzE2q/BAuCDkeESs0eueOqBgwujac+s/LUF3lUJS1R9AizE+f0kW oP9g== X-Gm-Message-State: AOJu0YyVJb2IwfUm6eQtrenK2S3ASQ8PMFlHNPQWtj7CPY+VRfIlAiKj Dr4F1l2VsQ0/HIsK5m/m66MJObe9wY8Pcsp71YLTgD9cPbyDTDZrDogWyjYPDk6jf5j9R2zyWfV U3lDg8zAhkQ== X-Gm-Gg: ASbGncs2xHuN6bibk94MJTVAtH4CcbxpSIbn2L0oXKf83eudINFUDByxAHnIFp3i/Mx kB9Zr5T5Ub3fKvNRCSzglnLztotjtYwpcaqU+HLjO9dcBmkw671DGK8I+X8P+EXcbVN1q0epMfC zsKIyc7F+h+mWreT/KuyhH//5qIZdyF2rdd7InELUETFlYSOPB5V7NkMZrKvrRHwE58WnOUYrkT 5eWcS80ATm+ojgDww9G08puHGY1tJq4EqoD+0gtvdhaDcVv+wnhmqeaPzosDxjdqh0vNmQ2zd4D oZ8G/IqQNBG8YKmvNmwuE8ul3lPSUNTCa9Pnfne8Wi/nGK7ziPOkd6xV6vz01++aFcY1VJd3sGd jdwnAczBrJ8hg+FvfB6EKYxZMFnFuQdigr0qYWLyh9Lb9/fF1PcpmbqdVRoirUNwzYxDAHsZow2 /6/TFXRJdEed1RD1xT7NJhAjJj X-Google-Smtp-Source: AGHT+IFdAnyIk1GYu1RZARP9Y3YLUwJfJqGDexlvlnAAzrPXNCHgn4iio8tKbh8NSaokHBfxOypOyQ== X-Received: by 2002:a05:6000:2504:b0:3ee:141a:ede5 with SMTP id ffacd0b85a97d-4266e8e66a4mr4804740f8f.57.1760020273143; Thu, 09 Oct 2025 07:31:13 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 1/6] hw/hppa: Use the machine default boot order at reset Date: Thu, 9 Oct 2025 16:31:01 +0200 Message-ID: <20251009143106.22724-2-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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, 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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020371642154100 Since new machines might be added with different boot order than 'c', take the machine default one at reset. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/hppa/machine.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index dacedc5409c..1cce5c47b91 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -640,6 +640,7 @@ static void machine_HP_C3700_init(MachineState *machine) =20 static void hppa_machine_reset(MachineState *ms, ResetType type) { + MachineClass *mc =3D MACHINE_GET_CLASS(ms); unsigned int smp_cpus =3D ms->smp.cpus; int i; =20 @@ -671,7 +672,7 @@ static void hppa_machine_reset(MachineState *ms, ResetT= ype type) cpu[0]->env.kernel_entry =3D 0; cpu[0]->env.initrd_base =3D 0; cpu[0]->env.initrd_end =3D 0; - cpu[0]->env.cmdline_or_bootorder =3D 'c'; + cpu[0]->env.cmdline_or_bootorder =3D mc->default_boot_order[0]; } =20 static void hppa_nmi(NMIState *n, int cpu_index, Error **errp) --=20 2.51.0 From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020371; cv=none; d=zohomail.com; s=zohoarc; b=A6TaExkJVBOQm/JrlCqrqPB9JLgc2knwqnUKWgvXh5K1eScE+pmOGltxH4mVxaNQ0KHj+kIJ+gw5jZxO2iHKYRUjks/h3tBIdU/xxqU2FiIOwoluIw2GpNVE+CGW45uDl0gGfAKIjdgYF+BH5/jCvwWGrmvUn3WOYEC3iYv8LfE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020371; 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=vOp3rKosIyx799fK4DaxcBNnF6lqgIhXIx3NHPcTKew=; b=c61Fb64m0Fz29Bxu2WBa2BBOKAAJqizO6dHy0lNZuDWXwHG5EiK+TTMOTNeg5I9GAugcyiXWPrdPGAplN2fWtbXnmYzyyrzznUralJR9W2JOefHzjBoAWYDOpemW8+0Mv+Ef69MQ1xPjy7+6gcSEtX1N/gx+ii9p1PaJVun9D4Y= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020371156133.29372487939668; Thu, 9 Oct 2025 07:32:51 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgL-0002Oe-5e; Thu, 09 Oct 2025 10:31:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rg2-0002Jh-CY for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:30 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rfx-00030d-TF for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:29 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-46faa5b0372so7045845e9.1 for ; Thu, 09 Oct 2025 07:31:20 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46fb4826160sm530825e9.7.2025.10.09.07.31.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020278; x=1760625078; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vOp3rKosIyx799fK4DaxcBNnF6lqgIhXIx3NHPcTKew=; b=QwvkFqypQDky7QeVvS3ES96Q4ix7jAuAp3rGBQEju4QD8DWXL7jROeMDsecBK988oC fKm97VhNJM3xXBVPrfsnTP9F57W7bS63cRC92THB0w1lRHiauzK9tA3AGeAw5c2kH3pL 2YRG/HOAx6u/TuGSbiEctbnZZd6SQJ09fYzRV47Hj/rODJekpc0vMyQefmpjyR+zFi4t CsTuP4hDFjoUSLYxcCpyiaoQqBHhi3KSCQYDkmtFRl7n6TWSF4wThUZvZiKu5sGThe9W 6znG7fzgeHB2yAIv6rVsB+tx7tAGMqQLr1KCiMqhbv4Chi7z/u5amTIjQKfXP1s8qt3G e8ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020278; x=1760625078; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vOp3rKosIyx799fK4DaxcBNnF6lqgIhXIx3NHPcTKew=; b=rf58dp7p6oldRGckmKeAHcQDmXwyasg8Ffv4Mj4bzWIKjHS1tB9pxOOikLGXSaZ+JT /Q/RyHNnu2Y2RTzaNkhH6X+42KnrG/YT+hlxaXMKOn5UHMBnjMJPljWZlKZiipWc6z81 OTK/4sm5YkqXgBA2tYLjZFjROKyEaGh3OigCYbaTdVfjGDDBIhTXtpSEPHz0OCUa+IU5 Ypaw9O+RmsDSaNp+UDAKJfB8L1/xq0vXbD7T70BW6oXGvxwwvvgbUnNEfC8+aTt9gvSU YBKHmOnwz0WxADmBjLW7/Vhv7kEZgEDrfLLW7lvfzP7MA8oOMJieeVtEonJrvuTjNKz7 5D6A== X-Gm-Message-State: AOJu0YxIXQ9z8FU6i4DUOMAhcXoyb5/+RnzbmBupoHnCmNDwatug0d8B qfif9i0mX+lbqhbxZYNT/eFP8ibW1qev666v0misxQojHaHf0RJl5JI4A+lHdMsGvnG3sRnxeW6 C3tTYCeWK6A== X-Gm-Gg: ASbGncuJlaqVmE95D0sai2RT+HuZkFXmUul1rfWnuzjuSs+N8iK4b8NMPJfBoyQb8Hk PyQAWd3SYdfgHNXJul9vUrIVyJSWvUsq3r2bKuat6NrbmtJWb2rwsKHtWBgdxxpLA9vWXproi+9 M0Nxn5RCXfNl8ZiNea2im/8Byz2GCotyia28cBh7dFQG3c+CRXpxIgqiui0nsWXxzcXNakqNafQ eGJmI1BK32LSsOTWVOw3z9qOgxg5L4kH76dlbWjoULeWU3521xBmV9Fi2Pi20SuFUvn/DgJzU3X jzpkRIabN8102ydJKijl4vuQguv5MDosNUWVJ1IUvRoLDIAygZ2u1veEgZ4Bd+3dgQ+5aV+sxcx jOsKH/G2ATJMqkyS9Xytz05DaNFD65Bsosi6pyT+CjanGK/+qdqWEnoidgkvc/2oZ3isRW9Ny5J UmTNhvtpKtbE4NjHDXigbtgz9/ X-Google-Smtp-Source: AGHT+IFLG1nnYSg/DKr4/FZlS4UWM9ZY/6sVwiWcR/kr1c0EnQJ1E0j6e2abCw1C0ZVDb+T/Ybbn4w== X-Received: by 2002:a05:600c:3e1a:b0:46e:1d8d:cfa2 with SMTP id 5b1f17b1804b1-46fa9af9842mr54538885e9.20.1760020277823; Thu, 09 Oct 2025 07:31:17 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 2/6] hw/hppa: Convert type_init() -> DEFINE_TYPES() Date: Thu, 9 Oct 2025 16:31:02 +0200 Message-ID: <20251009143106.22724-3-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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, 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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020382792116600 Prefer DEFINE_TYPES() macro over type_init() to register multiple QOM types. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- hw/hppa/machine.c | 42 ++++++++++++++++++------------------------ 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index 1cce5c47b91..bbee70022f1 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -710,16 +710,6 @@ static void HP_B160L_machine_init_class_init(ObjectCla= ss *oc, const void *data) nc->nmi_monitor_handler =3D hppa_nmi; } =20 -static const TypeInfo HP_B160L_machine_init_typeinfo =3D { - .name =3D MACHINE_TYPE_NAME("B160L"), - .parent =3D TYPE_MACHINE, - .class_init =3D HP_B160L_machine_init_class_init, - .interfaces =3D (const InterfaceInfo[]) { - { TYPE_NMI }, - { } - }, -}; - static void HP_C3700_machine_init_class_init(ObjectClass *oc, const void *= data) { static const char * const valid_cpu_types[] =3D { @@ -746,20 +736,24 @@ static void HP_C3700_machine_init_class_init(ObjectCl= ass *oc, const void *data) nc->nmi_monitor_handler =3D hppa_nmi; } =20 -static const TypeInfo HP_C3700_machine_init_typeinfo =3D { - .name =3D MACHINE_TYPE_NAME("C3700"), - .parent =3D TYPE_MACHINE, - .class_init =3D HP_C3700_machine_init_class_init, - .interfaces =3D (const InterfaceInfo[]) { - { TYPE_NMI }, - { } +static const TypeInfo hppa_machine_types[] =3D { + { + .name =3D MACHINE_TYPE_NAME("B160L"), + .parent =3D TYPE_MACHINE, + .class_init =3D HP_B160L_machine_init_class_init, + .interfaces =3D (const InterfaceInfo[]) { + { TYPE_NMI }, + { } + }, + }, { + .name =3D MACHINE_TYPE_NAME("C3700"), + .parent =3D TYPE_MACHINE, + .class_init =3D HP_C3700_machine_init_class_init, + .interfaces =3D (const InterfaceInfo[]) { + { TYPE_NMI }, + { } + }, }, }; =20 -static void hppa_machine_init_register_types(void) -{ - type_register_static(&HP_B160L_machine_init_typeinfo); - type_register_static(&HP_C3700_machine_init_typeinfo); -} - -type_init(hppa_machine_init_register_types) +DEFINE_TYPES(hppa_machine_types) --=20 2.51.0 From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020366; cv=none; d=zohomail.com; s=zohoarc; b=d0gvOBQnSqmav5Gv3s4MFrGAFloI4pGcTW69qKg/gTr5TmS3KcZW/d454IJCLlvJR0m3IklZd12RigimzyEil+08n3JXe9zVcmPGz53yaCsA2jZ0m2FZBZmPJcrMrH9p16RkwlJJT1u6p+qy023q062NN6t4NqaQJhvj9MI0pCE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020366; 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=dwFIDtFtxNXLSEqUSWVPJnSjwK+TsqhfUr7EN1Jw144=; b=mwdyclaJHyq2K7dnQs8nA68LKvF7GC+hpGqQ78bTA/2vtlAJG5xGcci6LrZ7KHpJJuZovtREU1lhTGAtze7jBShh05q7s5cTT03iKqzj5I4vDLZdlCoz1xHwoPVmhsPEhwNeWouNad1aZajck71oRUcyD72zXh8NTthf3PYFZzI= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020366970983.6561966849475; Thu, 9 Oct 2025 07:32:46 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgM-0002Os-Va; Thu, 09 Oct 2025 10:31:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rg5-0002KC-79 for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:35 -0400 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rfy-00031A-N3 for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:32 -0400 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-3f2cf786abeso967959f8f.3 for ; Thu, 09 Oct 2025 07:31:26 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4255d8a6b77sm35107042f8f.6.2025.10.09.07.31.21 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020283; x=1760625083; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dwFIDtFtxNXLSEqUSWVPJnSjwK+TsqhfUr7EN1Jw144=; b=r+bZ2aJZuQEo1wswF92qM0/QSVdgl/bcz6qTacRxTORz0HOG8a5xf4BIJfY5dZBvg1 alBmT0HfAV2T05/c/8mkiu5+hoTRi5IDq9NhF1ONN9s7dLsUjw5LkNLQmbbJFHeVoXbH jL0Mmbesh33ddsCJz5Qo66fkRX9DBcCWsBhb0zEhxuKYY+TE1igcL4KqPMGMIc6gdWH2 fBGc1xycsy/GevO/wEEmolszOP//kr2laQkf1RvaQA5YVivQjCBu+cdQk06eUX0tp1L7 Ja2u+hkxOIj1N3v0EwZQ4GkCILNnRn0ZssY9tCSLYxya9/18qWqz0o3bf/VikBRBpOwS s0IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020283; x=1760625083; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dwFIDtFtxNXLSEqUSWVPJnSjwK+TsqhfUr7EN1Jw144=; b=r+HmgncCwTW38cQ3w0h06K9ntpfJ1obwg3PO3IQPbtZz3yAgEwSAdeRUIZInpsDm1z xzKsuallAwUVBcz53hDXtpeVgOzlfjqtUtLR0s3quI/Obr83DxNg4lYyDXW/741iJZgU ApOikMOCf4PcnPbnjPNki5Y4KOHq6UiGXJl7Cz+YeWWi7YFRYGGgzFvcWq7o7C4o0TdW /cMNmXfehIB4XtHsx2qRkkl/RZI78Kkt1bHLqVcbl9Y9ERW1QrJifWh+bA7EstoluKSI 80axTrhs8XfoIa3cel6S0KAwaqbYN9/3aNNR4m4ekqyTix9U9EtVBbNjE/MAkGNEU5Sl 6mRA== X-Gm-Message-State: AOJu0YxaHmRW7uPUtPuGjbZj4/qQ94ulHN+6HouxyzhVNta6v/D8yfpk UXeWc//9NU679pQzFkNFiil9/K3zZMVgEixkFDv44gamhmnViJ+8vDk2qRU1bMyFTihLGqndBHf r9vDMKpU8VQ== X-Gm-Gg: ASbGnctMvASBfJRWu3Rnzp3/+Mu2qGlLUZFsdEZBdIU0+fzD8mPTSuxsGDGITUdSyHK 2jjvFsOIw7+mYLJRQV1MAus9a7iEaf0tcd1iB4C3UdbkI2LbXxCIjpEmyoejClonv7uYKW4lVo3 eyYDJ4/78zjB6fEdLTU8QtHWDTvSIzr4/sgDiwfu38QHRXu0kcKHxnc/NGQE1cQIHZ5rD0l9DNd 89kThXtO53OGIO8KwnJ1A9jRvUClHjrSWgTCBnL5wGZBvXDXOH0sWnvZ0qfnRGFdRVYrG0k/tCc YOlaATCE4u2uLbYRp+64/AVStekj3hgcqJ3qTWYEanaULIKsPPeptIsi3yDLtIfmHKnhN355vP+ +xOEM0XzYyqMC7PYlNJ8Na8zTEAImtaEZ1MTqqt8V/NPeIjNftgBeMcz5y0w9Y2rs0uQWN3Tt3l YPiTAPuQwL1ZYUPHLYyyOpKUbA X-Google-Smtp-Source: AGHT+IEO+VWavkgmGAbv6sBVzruWugFyJP0Esd9/LubTi2bH5V4gPC8QtmNio8t+96bL2nzHFumxiA== X-Received: by 2002:a05:6000:24ca:b0:40b:c42e:fe39 with SMTP id ffacd0b85a97d-4266e8d8c7bmr5259785f8f.40.1760020282526; Thu, 09 Oct 2025 07:31:22 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 3/6] hw/hppa: Factor QOM HPPA_COMMON_MACHINE out Date: Thu, 9 Oct 2025 16:31:03 +0200 Message-ID: <20251009143106.22724-4-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.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, 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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020369556154100 B160L and C3700 share a lot of common code. Factor it out as an abstract HPPA_COMMON_MACHINE QOM parent. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- hw/hppa/machine.c | 61 +++++++++++++++++++++++++---------------------- 1 file changed, 33 insertions(+), 28 deletions(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index bbee70022f1..a2996ef7682 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -36,6 +36,13 @@ #include "net/net.h" #include "qemu/log.h" =20 +#define TYPE_HPPA_COMMON_MACHINE MACHINE_TYPE_NAME("hppa-common") +OBJECT_DECLARE_SIMPLE_TYPE(HppaMachineState, HPPA_COMMON_MACHINE) + +struct HppaMachineState { + MachineState parent_obj; +}; + #define MIN_SEABIOS_HPPA_VERSION 12 /* require at least this fw version */ =20 #define HPA_POWER_BUTTON (FIRMWARE_END - 0x10) @@ -684,6 +691,22 @@ static void hppa_nmi(NMIState *n, int cpu_index, Error= **errp) } } =20 +static void hppa_machine_common_class_init(ObjectClass *oc, const void *da= ta) +{ + MachineClass *mc =3D MACHINE_CLASS(oc); + NMIClass *nc =3D NMI_CLASS(oc); + + mc->reset =3D hppa_machine_reset; + mc->block_default_type =3D IF_SCSI; + mc->default_cpus =3D 1; + mc->max_cpus =3D HPPA_MAX_CPUS; + mc->default_boot_order =3D "cd"; + mc->default_ram_id =3D "ram"; + mc->default_nic =3D "tulip"; + + nc->nmi_monitor_handler =3D hppa_nmi; +} + static void HP_B160L_machine_init_class_init(ObjectClass *oc, const void *= data) { static const char * const valid_cpu_types[] =3D { @@ -691,23 +714,13 @@ static void HP_B160L_machine_init_class_init(ObjectCl= ass *oc, const void *data) NULL }; MachineClass *mc =3D MACHINE_CLASS(oc); - NMIClass *nc =3D NMI_CLASS(oc); =20 mc->desc =3D "HP B160L workstation"; mc->default_cpu_type =3D TYPE_HPPA_CPU; mc->valid_cpu_types =3D valid_cpu_types; mc->init =3D machine_HP_B160L_init; - mc->reset =3D hppa_machine_reset; - mc->block_default_type =3D IF_SCSI; - mc->max_cpus =3D HPPA_MAX_CPUS; - mc->default_cpus =3D 1; mc->is_default =3D true; mc->default_ram_size =3D 512 * MiB; - mc->default_boot_order =3D "cd"; - mc->default_ram_id =3D "ram"; - mc->default_nic =3D "tulip"; - - nc->nmi_monitor_handler =3D hppa_nmi; } =20 static void HP_C3700_machine_init_class_init(ObjectClass *oc, const void *= data) @@ -717,42 +730,34 @@ static void HP_C3700_machine_init_class_init(ObjectCl= ass *oc, const void *data) NULL }; MachineClass *mc =3D MACHINE_CLASS(oc); - NMIClass *nc =3D NMI_CLASS(oc); =20 mc->desc =3D "HP C3700 workstation"; mc->default_cpu_type =3D TYPE_HPPA64_CPU; mc->valid_cpu_types =3D valid_cpu_types; mc->init =3D machine_HP_C3700_init; - mc->reset =3D hppa_machine_reset; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D HPPA_MAX_CPUS; - mc->default_cpus =3D 1; - mc->is_default =3D false; mc->default_ram_size =3D 1024 * MiB; - mc->default_boot_order =3D "cd"; - mc->default_ram_id =3D "ram"; - mc->default_nic =3D "tulip"; - - nc->nmi_monitor_handler =3D hppa_nmi; } =20 static const TypeInfo hppa_machine_types[] =3D { { - .name =3D MACHINE_TYPE_NAME("B160L"), - .parent =3D TYPE_MACHINE, - .class_init =3D HP_B160L_machine_init_class_init, + .name =3D TYPE_HPPA_COMMON_MACHINE, + .parent =3D TYPE_MACHINE, + .instance_size =3D sizeof(HppaMachineState), + .class_init =3D hppa_machine_common_class_init, + .abstract =3D true, .interfaces =3D (const InterfaceInfo[]) { { TYPE_NMI }, { } }, + }, { + .name =3D MACHINE_TYPE_NAME("B160L"), + .parent =3D TYPE_HPPA_COMMON_MACHINE, + .class_init =3D HP_B160L_machine_init_class_init, }, { .name =3D MACHINE_TYPE_NAME("C3700"), - .parent =3D TYPE_MACHINE, + .parent =3D TYPE_HPPA_COMMON_MACHINE, .class_init =3D HP_C3700_machine_init_class_init, - .interfaces =3D (const InterfaceInfo[]) { - { TYPE_NMI }, - { } - }, }, }; =20 --=20 2.51.0 From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020392; cv=none; d=zohomail.com; s=zohoarc; b=mXqKahOW3oga0I0n3AK+K5qMfpPccVQcqftCFJsGUfYuraxZhmNyPcyJEBffKWPeVy3LGv4qC08cQmfs7uNE7Ju62OhvtujsF2SUFap/BauueSQBeV1IXUUZBzqUPf5vBpgxbXfZIWJpLmbv66MSlPFvrqZrCV5MmCRMVSlYazo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020392; 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=NnULxl1nc/+onQALJYBkRQ6S/r+kyq2mZM+b+Qs2hhE=; b=YEu1P/ujfFwmYSG82GWA6SoFoDOGmCDZACYlTjI95qJofJyUXEkkgigXML6c+ynEepeRiK9kR7+iTJS3PEcIg5A/H67LfoYwa+Bi7Vd/lyOoulVc+GYO3TVH7pHx4uPTnKeFs2h6LbHxIhWPCk7MzNb5DWOuKfPd5WeO7PpEL2o= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020392387166.38516031621407; Thu, 9 Oct 2025 07:33:12 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgH-0002MD-Bs; Thu, 09 Oct 2025 10:31:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rg8-0002KX-Ds for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:36 -0400 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rg4-00031g-JC for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:36 -0400 Received: by mail-wm1-x344.google.com with SMTP id 5b1f17b1804b1-46e6ba26c50so5808785e9.2 for ; Thu, 09 Oct 2025 07:31:30 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46fb484f5e3sm228785e9.18.2025.10.09.07.31.26 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020287; x=1760625087; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NnULxl1nc/+onQALJYBkRQ6S/r+kyq2mZM+b+Qs2hhE=; b=nrLkSsIcUydo1WkfRHkgr4w3E08Wjqo90K4eX5au9F8XEnkr3GEl9hwMFGbz/rmhuK BMGRLvU/Tx0y6Kvv27gah+6zLoO7zvRAhUaknv1l/Y6zFpSklhHJYJeeoEz5aYmhEWI0 QgHVsels5E+IFj35ECMS/6UEgkZ6bLEO5b0O6nEQRpl8m+NX6lOPrI6sfSX2Hj0vmB/T HPE7a1w4y5oodFGwUBoTAuE8uHvBLrYpCPOzVJy4Nyghh3o2lWZof10DsoLTPAhw+Ejc 7PbcB8prigo/GUSHieuO8hThR/e7hcwLAmscs2uwIsodYvfIS8ol7iFibY3Kqjz3M6J5 5PQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020287; x=1760625087; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NnULxl1nc/+onQALJYBkRQ6S/r+kyq2mZM+b+Qs2hhE=; b=tcVUPJPYce19ckCI1gzfU2Ix1BHXAkzB96LgJ5MMI148aadK3DQ97Tsyq7eXTFZz2c YWQauXXnI6LB6Fj77xdwkVtr4z7MCuH9yHINmdW2S8jhrzxnlEhBzzW79aMms9ifCgg8 cL7sLknErCdVsXz+zeekpV1eJSsc/xJmJwNCV32oFf7wO9hwEfr9QZ0WMuRPm0A3iHA6 0X/NKvhXZyeJMgq8U46CdaYqa59MeuaOxikAcy8O0CXXJPm3rJWTsflRJwKiNcD3yxl8 80zSm2bk6k0vaTNuYBRfO0voEZx+lrVQtIydYEYD5sA6Jluqa1ecNSAdflmheruhOzmZ 2qaQ== X-Gm-Message-State: AOJu0YwhI2D04PK3uqt/pSwsk6ETXAMl376Fc7pwvjoNNQ4oVq0C1RrY gp3/prIrh/0ntnyEKYPYCuxm070l8e7l/nVEPt26EgnpfpbIdWD/BNgG1II+hy1wDmOFvDFUAlq tXplqeMB8jMBe X-Gm-Gg: ASbGncuxhf9MifTyEs0Rnlayf3X0l+ADN7QhHt9mCmmp8n3iR91LmlKInkA1eLD+vUS zFN9e71pEMwBU+6D57uQYkm6m3z/Kyaq1EaALm6x1za7GetMZrZPv+zVnxMjlmPzNucnW0YC0TK kHTcd3EpmgFnEQXmy0C5KWwwAfurgipKDaB/plAJ25Ofaqn70piNtVKJM/fYM26agpS/rv13CKm AMnCWrslHdoxx75Ok8nS1dv1AXPzEZ4RGegWOAE4wNEEP/I4bs9uT7nC0KdJkvPXylp1Yr3MNBT Vp3bDbE10izglzlvAXKvwSQz0LKAom41ofy/bJYGOfqvsJMfcxf1I0dzkThBTEkpX/QzbNkTB/W ZFRskGziBaQGob63kbn4D58H+BMqyDXP6IdCqYzg3gclKSjXTIHQtPUnNy5sB0KwZr3MBX8Txrt xJFAMVHK/ZCixskWGNhS9vB/Qh X-Google-Smtp-Source: AGHT+IEDBovvG+vahWcTz/2c7xGgzoUV59ybKxtDVSMIspRsEbcgIic6oTnFsrqdECw6U82vWqmaUQ== X-Received: by 2002:a05:600c:4ed4:b0:45d:d505:a1c3 with SMTP id 5b1f17b1804b1-46fa9b13b04mr47445505e9.37.1760020287529; Thu, 09 Oct 2025 07:31:27 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 4/6] hw/hppa: Introduce HppaMachineState::boot_info::firmware structure Date: Thu, 9 Oct 2025 16:31:04 +0200 Message-ID: <20251009143106.22724-5-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::344; envelope-from=philmd@linaro.org; helo=mail-wm1-x344.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, 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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020395880116600 Current code uses CPUHPPAState::@kernel_entry to hold either: - kernel entry virtual address - firmware interactive mode and CPUHPPAState::@cmdline_or_bootorder to hold either: - kernel &cmdline physical address - firmware boot order Besides, these variables don't belong to CPUHPPAState, they depend on how the machine is started, and only apply to the first CPU. Introduce firmware specific fields in HppaMachineState, using their correct type. Introduce the @is_kernel field, to allow distinguishing between firmware or kernel mode. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/hppa/machine.c | 36 ++++++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index a2996ef7682..138cd97efd9 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -41,6 +41,16 @@ OBJECT_DECLARE_SIMPLE_TYPE(HppaMachineState, HPPA_COMMON= _MACHINE) =20 struct HppaMachineState { MachineState parent_obj; + + struct { + bool is_kernel; /* kernel:1 firmware:0 */ + union { + struct { + char bootorder; + bool interactive_mode; + } firmware; + }; + } boot_info; }; =20 #define MIN_SEABIOS_HPPA_VERSION 12 /* require at least this fw version */ @@ -356,6 +366,7 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, const char *initrd_filename =3D machine->initrd_filename; const char *firmware =3D machine->firmware; MachineClass *mc =3D MACHINE_GET_CLASS(machine); + HppaMachineState *hms =3D HPPA_COMMON_MACHINE(machine); DeviceState *dev; PCIDevice *pci_dev; char *firmware_filename; @@ -481,6 +492,7 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, "-0x%08" PRIx64 ", entry at 0x%08" PRIx64 ", size %" PRIu64 " kB\n", kernel_low, kernel_high, kernel_entry, size / KiB); + hms->boot_info.is_kernel =3D true; =20 if (kernel_cmdline) { cpu[0]->env.cmdline_or_bootorder =3D 0x4000; @@ -519,13 +531,15 @@ static void machine_HP_common_init_tail(MachineState = *machine, PCIBus *pci_bus, } } =20 - if (!kernel_entry) { + if (!hms->boot_info.is_kernel) { /* When booting via firmware, tell firmware if we want interactive - * mode (kernel_entry=3D1), and to boot from CD (cmdline_or_bootor= der=3D'd') - * or hard disc (cmdline_or_bootorder=3D'c'). + * mode (interactive_mode=3D1), and to boot from CD (bootorder=3D'= d') + * or hard disc (bootorder=3D'c'). */ - kernel_entry =3D machine->boot_config.has_menu ? machine->boot_con= fig.menu : 0; - cpu[0]->env.cmdline_or_bootorder =3D machine->boot_config.order[0]; + hms->boot_info.firmware.interactive_mode =3D machine->boot_config.= has_menu + ? machine->boot_config.m= enu + : 0; + hms->boot_info.firmware.bootorder =3D machine->boot_config.order[0= ]; } =20 /* Keep initial kernel_entry for first boot */ @@ -648,6 +662,7 @@ static void machine_HP_C3700_init(MachineState *machine) static void hppa_machine_reset(MachineState *ms, ResetType type) { MachineClass *mc =3D MACHINE_GET_CLASS(ms); + HppaMachineState *hms =3D HPPA_COMMON_MACHINE(ms); unsigned int smp_cpus =3D ms->smp.cpus; int i; =20 @@ -668,8 +683,12 @@ static void hppa_machine_reset(MachineState *ms, Reset= Type type) } =20 cpu[0]->env.gr[26] =3D ms->ram_size; - cpu[0]->env.gr[25] =3D cpu[0]->env.kernel_entry; - cpu[0]->env.gr[24] =3D cpu[0]->env.cmdline_or_bootorder; + cpu[0]->env.gr[25] =3D hms->boot_info.is_kernel + ? cpu[0]->env.kernel_entry + : hms->boot_info.firmware.interactive_mode; + cpu[0]->env.gr[24] =3D hms->boot_info.is_kernel + ? cpu[0]->env.cmdline_or_bootorder + : hms->boot_info.firmware.bootorder; cpu[0]->env.gr[23] =3D cpu[0]->env.initrd_base; cpu[0]->env.gr[22] =3D cpu[0]->env.initrd_end; cpu[0]->env.gr[21] =3D smp_cpus; @@ -679,7 +698,8 @@ static void hppa_machine_reset(MachineState *ms, ResetT= ype type) cpu[0]->env.kernel_entry =3D 0; cpu[0]->env.initrd_base =3D 0; cpu[0]->env.initrd_end =3D 0; - cpu[0]->env.cmdline_or_bootorder =3D mc->default_boot_order[0]; + cpu[0]->env.cmdline_or_bootorder =3D 0; + hms->boot_info.firmware.bootorder =3D mc->default_boot_order[0]; } =20 static void hppa_nmi(NMIState *n, int cpu_index, Error **errp) --=20 2.51.0 From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020399; cv=none; d=zohomail.com; s=zohoarc; b=VtDusGsk4grK4OXoKlbE0DOZzczyjcLkSKJ2H4ZJe2g4cn97DNchELkkUNwE2FRvvmZ0ouKiyq8FhWmWTYPSI3WetV7OvZKWblO9I+mCgobuH13X6HytFFpO0SYHAmuo1lFHYX+80k1M4jc948gsFmFw2tpZzLx73FRHxRP6+OM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020399; 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=OHGiYHHnFd1U2KRhE1wPaGotMJPdoqLk98PjO3xtvD4=; b=I/lxFNUfJHesyQLxYQ4g3HzPh0hQ3BuX1E9rtf14BeECPPLjX19sj5kkq8x9yPdYopktNMJP82Rjfx7UW+dKwJ014HYmvZ7YlKea7a0b4rxgVYsCZ4diJuWX9t29ZBHgnlUq5XM68CsqHX6Uu78jYLzQBc2J6C7QXZAPrtObaAM= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020399843302.14573197219624; Thu, 9 Oct 2025 07:33:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgN-0002Q8-JH; Thu, 09 Oct 2025 10:31:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rgC-0002M1-Oe for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:41 -0400 Received: from mail-wm1-x342.google.com ([2a00:1450:4864:20::342]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rg8-00032K-F9 for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:39 -0400 Received: by mail-wm1-x342.google.com with SMTP id 5b1f17b1804b1-46e6ba26c50so5809295e9.2 for ; Thu, 09 Oct 2025 07:31:35 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46fb484f5e3sm231055e9.18.2025.10.09.07.31.31 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020292; x=1760625092; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OHGiYHHnFd1U2KRhE1wPaGotMJPdoqLk98PjO3xtvD4=; b=fb0i9jdRJmZoxZdzuuF6MsGSn4WoW/mBe8Umd/3QAzd5XZUbVQf+Szt3bQMJBGMjtw bEXlYSQ3N/NvfpOGJjSnDcBONs5tPtkDs2sQwU6xeArkhTp6L68jhfTopWpsi6T9FsKw /FNwHoJGALSRMc0XS+pZEJcm8W7+Sms7K6afTjme4iX5ZKzzBt+2TmLMvr49H2jzQb0M QVRrJLM4gQlm1oreVcAMdQdKbgrfSWFHtTMc1SNBDH9Oa3rOokT5SbdT8RG3Depv1C8J Zxi39jmpodzydnxTsBKnXLd54Sug6uhXxcwp/w/wElJtB8AcxBm9IYavUohSNfHUNYtV Tg0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020292; x=1760625092; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OHGiYHHnFd1U2KRhE1wPaGotMJPdoqLk98PjO3xtvD4=; b=l24jf8JSljgMXaj19IGVbejiH2nBYZXqnYmFIr+bQyoaeMfR9a+WtpmBVGgRdfbqAU PQN530zvN+1n02yLDTe0SyRMzJoxFfCadFsnmh9FwN2sEB9uapenA61Jc9laTpLWPMDU n+SmmEAP2cIy2HzIF0d2B5+7FACjdlIfQ5MaCmBrZAzaarHwxITGLvUBsgicGw4hfYC6 uHOMhGiMJb5eTfIap1aD5FbJeXr7eGPvqBduUnRIhikiWkX7wRqxZupQn90pQWySvpVO sVXdKcxS8lhJ8TbLzdCZmuEDOUAj8i1B8gkXuX+7EBAqULbsXL3qT1tahMijSyrChpr2 xNig== X-Gm-Message-State: AOJu0YzY5cwtHZvoRDhB/H3LzSgog0AZZ5WEQTOpwTSDAjETci0pge7Z Jt9vBlZrdjUVCbdR38H5GqLgPkxGoCHvs3W3xGHE9i4+NVc1TWVvIya/+U0v7HPC54XF1S25jVi N/OR9jhMOQecN X-Gm-Gg: ASbGnctJb90cTfRJx5bA9NOLA4h3+84Ow0FxltHyQvDQ/uSqcxLLui/BYOGFNoqPBkW 14ppDqgaIlAXRzOr6sSR8pJVI57VhVE+V4oFeSqn/82bnvgWVGsXHXFhF5hcu+8FC6Hqo7T6GQI YkH6cjxj0fJ28ooGQWXKFsDXku+sZSD75OaCS7wlZfcgpjU595ZwwjNNSpt9CtnVmSJ5QYe1t0y 6s9WKijukS491UB9ZXr/wGRRWHmkOlr7M8K0NyppNycgzbU02Z+Jm7ljOQ5a8Zu18l3ryzy+2DR EmMdfF6PU90FClsMNZS87xj/WcmooqCVxBxfNMRzbqPsjt+awFNeHIczizwI9TEhovIQr+FOAGq Hh3rHcxEqdlFoWl9IzrEvQRH0Fj/wmn1zePiWSiVX+YBQXkPlO20J+2kMyKoBNfe4+otTOCXWKu zo7cJpNmFcGfBhNBF1cpJKuZe7tquSOZCkpWg= X-Google-Smtp-Source: AGHT+IEccTWO1378fJBOylbAmaJBWCmzZuadQBA26EBPDsJUMzrsFYzpqrTCVsSjhDfLm1gm6BrZjQ== X-Received: by 2002:a05:600c:810b:b0:468:4350:c84d with SMTP id 5b1f17b1804b1-46fa9a8657fmr53893765e9.7.1760020292153; Thu, 09 Oct 2025 07:31:32 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 5/6] hw/hppa: Introduce HppaMachineState::boot_info::kernel structure Date: Thu, 9 Oct 2025 16:31:05 +0200 Message-ID: <20251009143106.22724-6-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::342; envelope-from=philmd@linaro.org; helo=mail-wm1-x342.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, 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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020401861154100 CPUHPPAState::@cmdline_or_bootorder is now only used in kernel mode. Move it to HppaMachineState::kernel, and use the 'hwaddr' type. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/hppa/cpu.h | 1 - hw/hppa/machine.c | 11 +++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h index e14f238827b..0aa06f6ebec 100644 --- a/target/hppa/cpu.h +++ b/target/hppa/cpu.h @@ -273,7 +273,6 @@ typedef struct CPUArchState { bool is_pa20; =20 target_ulong kernel_entry; /* Linux kernel was loaded here */ - target_ulong cmdline_or_bootorder; target_ulong initrd_base, initrd_end; } CPUHPPAState; =20 diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index 138cd97efd9..c315d13ea01 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -49,6 +49,9 @@ struct HppaMachineState { char bootorder; bool interactive_mode; } firmware; + struct { + hwaddr cmdline_paddr; + } kernel; }; } boot_info; }; @@ -495,8 +498,8 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, hms->boot_info.is_kernel =3D true; =20 if (kernel_cmdline) { - cpu[0]->env.cmdline_or_bootorder =3D 0x4000; - pstrcpy_targphys("cmdline", cpu[0]->env.cmdline_or_bootorder, + hms->boot_info.kernel.cmdline_paddr =3D 0x4000; + pstrcpy_targphys("cmdline", hms->boot_info.kernel.cmdline_padd= r, TARGET_PAGE_SIZE, kernel_cmdline); } =20 @@ -687,7 +690,7 @@ static void hppa_machine_reset(MachineState *ms, ResetT= ype type) ? cpu[0]->env.kernel_entry : hms->boot_info.firmware.interactive_mode; cpu[0]->env.gr[24] =3D hms->boot_info.is_kernel - ? cpu[0]->env.cmdline_or_bootorder + ? hms->boot_info.kernel.cmdline_paddr : hms->boot_info.firmware.bootorder; cpu[0]->env.gr[23] =3D cpu[0]->env.initrd_base; cpu[0]->env.gr[22] =3D cpu[0]->env.initrd_end; @@ -698,7 +701,7 @@ static void hppa_machine_reset(MachineState *ms, ResetT= ype type) cpu[0]->env.kernel_entry =3D 0; cpu[0]->env.initrd_base =3D 0; cpu[0]->env.initrd_end =3D 0; - cpu[0]->env.cmdline_or_bootorder =3D 0; + hms->boot_info.kernel.cmdline_paddr =3D 0; hms->boot_info.firmware.bootorder =3D mc->default_boot_order[0]; } =20 --=20 2.51.0 From nobody Fri Nov 14 22:18:08 2025 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=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1760020365; cv=none; d=zohomail.com; s=zohoarc; b=YP52TQIfGfjMFAL/pEzOLAVXsw2e+HseN8cxb6T9pCcLKwaudZQjlCqnXkrOLVWDof62oVruOfMVh7vqkhpQeJAZuBzqP120N/7hOfp+wTz7IzmGnB43bJzATvv9QlnhOqLo4yH63iEUr9Iof8PibPis3iQ8hMeMlKRU78wojeo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760020365; 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=en3dcYp1l8Mnw3yI5A0cTlQE3qzHT+C3z70ER6xSWVg=; b=eVaStZAYnrW/tnllVjb9I/Dz1398DVO+hduhGJO+2hSECbIe1TIT/ftkItF+kL91ZwH1ePR+JgnvUnSxKNmTNU5U7FVzyYXbxJuY9WUwBUsDZ33Ga38JADUkwDkfn2qIba3YFo81zy+Ccz1UO99DtWc3O3W9K9/0IbZPEQ6IZLM= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1760020365352506.9957151303872; Thu, 9 Oct 2025 07:32:45 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v6rgO-0002QD-7L; Thu, 09 Oct 2025 10:31:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1v6rgJ-0002Nc-7l for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:49 -0400 Received: from mail-wm1-x343.google.com ([2a00:1450:4864:20::343]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v6rgC-00032j-Rr for qemu-devel@nongnu.org; Thu, 09 Oct 2025 10:31:46 -0400 Received: by mail-wm1-x343.google.com with SMTP id 5b1f17b1804b1-45b4d89217aso6314275e9.2 for ; Thu, 09 Oct 2025 07:31:40 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46fab3e3520sm40997635e9.2.2025.10.09.07.31.36 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 09 Oct 2025 07:31:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760020297; x=1760625097; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=en3dcYp1l8Mnw3yI5A0cTlQE3qzHT+C3z70ER6xSWVg=; b=eZoHrsg1wQXHYXaMzLRcp/VUtBXKAaijst3LEc+rDjvMDS4qWkRbTtACntBHPIwtuB RUuhMJth14Kvhy7NriPLV8NA9a2nYfBR1kJea8A7U+MiZ93Dp7rB6kjHF89MRbNhuciK YYFouHsIXSosksjVL4i0aAvTmKlQJfYThGPBifiSY3iF/GfEIUioUvOoiDe442yOf8tx efOx30ME5x57/xm8I7Ww0CQr5JH8ofHppKZI4RUUEYjdDlZMXdq80XWN8MAtMTgUCUBb TT30gleeZ3bz+Dm9QVgNd1nmVapuVZWF06kkGs1976zz/QyPeywCmIdmL9887Dc1w1it /gVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760020297; x=1760625097; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=en3dcYp1l8Mnw3yI5A0cTlQE3qzHT+C3z70ER6xSWVg=; b=UCG1WHo/MdvcgSC7cvetlsNUGmNL5UxuDMZhSts9EZwNdZ1bw0I3QXrJlNmvVrvRdi QlujR18WzxorrVBuZqmIIsPBdppt6R7j0ZVQuSKSAuSXP3hiNORL4HJ5i/IAsdDxb6W2 B0bbzpBwVOeb94Psqpb9Ri+h7c15+dQ5HfqZ1x7lVzVwGXi3z0puBLSJyETMsC5O+5jz G4a80UedgcqYioGi+E67NxIlxumcmit3v0CFn53yoL7uP+zKMpM0H+jaHAu0YSqvExco M67ytBNvX9Ti/GjRzd20vL/QP3gyw8kL/2JoUt11ut51qlQw02ALCjByG05effav6yBj O5iQ== X-Gm-Message-State: AOJu0YzhCf2IlRA5wH6ZpSoGbv3kZXJ0aRMEVCuorekXnrQbYPvHfiac bm+8Ol7yVpYglmsxjV9OXNPtwdxLMjYDA0wLrJ5aq05wAdjmnr99Eq/NFv1lXp/YLR4hmwVy9wY 6SRyxUvIiGmGP X-Gm-Gg: ASbGncscp2zvwzT+NfuloEqh2scpUBm60tNK1bExxtRBWLjFvqJ+wAeCSAfUWYMakLV nTWk3gSJhWCu74W40g4yJwejHVba+oqfr5m9uGhtYLsXovJvHk5a1pyfo9bG0MxuoIRD32UMoVd 9Ov7Rp01QiUn0b1UgW7Ey+TKN0fa10SWZ4ZJJtltGqmPwnGiIRChVZUWTxqtgCSiLPI/3nHFRp7 ZcaAmXsd0ZYIKcFptHbLpjO5BrRqcfxYBDHqG8lr4npqGX0HXPiYOj9xAJ8NXQTM7p38cp2WU7I gNpmBr9kBIDStvNMhU7YAqt6q+BjxzChbJXqYQ/1dCnVmQzcgGXsowcpLS38JIYK40aLJniWOC/ l9c7+1dEfhk8b5qyO2xBmha7h0t1e6gLuR8Ki5PjH+bpOVlzKDfOcYGBPNgwfNoCGKAahwd1tC2 Pu7Yk3pygQ5fcUHmR1USlS8w1/oy3U3LMkZS8= X-Google-Smtp-Source: AGHT+IE6XCqrEkYZB1CG3bgwp5GUeW9YMKqRzVMsUEGq39whnB9SXoJMtxcUNrfxeOCsEaZVfxA/xg== X-Received: by 2002:a05:600c:4584:b0:46f:b42e:e367 with SMTP id 5b1f17b1804b1-46fb42ee40cmr5271085e9.41.1760020296961; Thu, 09 Oct 2025 07:31:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Anton Johansson , Helge Deller , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 6/6] hw/hppa: Move kernel addresses to HppaMachineState::boot_info structure Date: Thu, 9 Oct 2025 16:31:06 +0200 Message-ID: <20251009143106.22724-7-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251009143106.22724-1-philmd@linaro.org> References: <20251009143106.22724-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::343; envelope-from=philmd@linaro.org; helo=mail-wm1-x343.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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: 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 @linaro.org) X-ZM-MESSAGEID: 1760020367576154100 Restrict kernel* related variables scope, move fields that don't belong to CPUHPPAState to HppaMachineState::boot_info::kernel. Replace target_ulong -> vaddr type for virtual addresses. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/hppa/cpu.h | 3 --- hw/hppa/machine.c | 31 +++++++++++++++++-------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h index 0aa06f6ebec..49d0243f677 100644 --- a/target/hppa/cpu.h +++ b/target/hppa/cpu.h @@ -271,9 +271,6 @@ typedef struct CPUArchState { struct {} end_reset_fields; =20 bool is_pa20; - - target_ulong kernel_entry; /* Linux kernel was loaded here */ - target_ulong initrd_base, initrd_end; } CPUHPPAState; =20 /** diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index c315d13ea01..a50efac375d 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -50,6 +50,8 @@ struct HppaMachineState { bool interactive_mode; } firmware; struct { + vaddr entry; /* Linux kernel was loaded here */ + vaddr initrd_base, initrd_end; hwaddr cmdline_paddr; } kernel; }; @@ -365,8 +367,6 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, TranslateFn *translate) { const char *kernel_filename =3D machine->kernel_filename; - const char *kernel_cmdline =3D machine->kernel_cmdline; - const char *initrd_filename =3D machine->initrd_filename; const char *firmware =3D machine->firmware; MachineClass *mc =3D MACHINE_GET_CLASS(machine); HppaMachineState *hms =3D HPPA_COMMON_MACHINE(machine); @@ -375,7 +375,6 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, char *firmware_filename; uint64_t firmware_low, firmware_high; long size; - uint64_t kernel_entry =3D 0, kernel_low, kernel_high; MemoryRegion *addr_space =3D get_system_memory(); MemoryRegion *rom_region; SysBusDevice *s; @@ -481,6 +480,11 @@ static void machine_HP_common_init_tail(MachineState *= machine, PCIBus *pci_bus, =20 /* Load kernel */ if (kernel_filename) { + uint64_t kernel_entry; + uint64_t kernel_low, kernel_high; + const char *kernel_cmdline =3D machine->kernel_cmdline; + const char *initrd_filename =3D machine->initrd_filename; + size =3D load_elf(kernel_filename, NULL, linux_kernel_virt_to_phys, NULL, &kernel_entry, &kernel_low, &kernel_high, NU= LL, ELFDATA2MSB, EM_PARISC, 0, 0); @@ -496,6 +500,8 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, ", size %" PRIu64 " kB\n", kernel_low, kernel_high, kernel_entry, size / KiB); hms->boot_info.is_kernel =3D true; + /* Keep initial kernel_entry for first boot */ + hms->boot_info.kernel.entry =3D kernel_entry; =20 if (kernel_cmdline) { hms->boot_info.kernel.cmdline_paddr =3D 0x4000; @@ -529,8 +535,8 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, } =20 load_image_targphys(initrd_filename, initrd_base, initrd_size); - cpu[0]->env.initrd_base =3D initrd_base; - cpu[0]->env.initrd_end =3D initrd_base + initrd_size; + hms->boot_info.kernel.initrd_base =3D initrd_base; + hms->boot_info.kernel.initrd_end =3D initrd_base + initrd_siz= e; } } =20 @@ -544,9 +550,6 @@ static void machine_HP_common_init_tail(MachineState *m= achine, PCIBus *pci_bus, : 0; hms->boot_info.firmware.bootorder =3D machine->boot_config.order[0= ]; } - - /* Keep initial kernel_entry for first boot */ - cpu[0]->env.kernel_entry =3D kernel_entry; } =20 /* @@ -687,20 +690,20 @@ static void hppa_machine_reset(MachineState *ms, Rese= tType type) =20 cpu[0]->env.gr[26] =3D ms->ram_size; cpu[0]->env.gr[25] =3D hms->boot_info.is_kernel - ? cpu[0]->env.kernel_entry + ? hms->boot_info.kernel.entry : hms->boot_info.firmware.interactive_mode; cpu[0]->env.gr[24] =3D hms->boot_info.is_kernel ? hms->boot_info.kernel.cmdline_paddr : hms->boot_info.firmware.bootorder; - cpu[0]->env.gr[23] =3D cpu[0]->env.initrd_base; - cpu[0]->env.gr[22] =3D cpu[0]->env.initrd_end; + cpu[0]->env.gr[23] =3D hms->boot_info.kernel.initrd_base; + cpu[0]->env.gr[22] =3D hms->boot_info.kernel.initrd_end; cpu[0]->env.gr[21] =3D smp_cpus; cpu[0]->env.gr[19] =3D FW_CFG_IO_BASE; =20 /* reset static fields to avoid starting Linux kernel & initrd on rebo= ot */ - cpu[0]->env.kernel_entry =3D 0; - cpu[0]->env.initrd_base =3D 0; - cpu[0]->env.initrd_end =3D 0; + hms->boot_info.kernel.entry =3D 0; + hms->boot_info.kernel.initrd_base =3D 0; + hms->boot_info.kernel.initrd_end =3D 0; hms->boot_info.kernel.cmdline_paddr =3D 0; hms->boot_info.firmware.bootorder =3D mc->default_boot_order[0]; } --=20 2.51.0