From nobody Tue Feb 10 06:27:04 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) client-ip=209.85.221.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1620062002; cv=none; d=zohomail.com; s=zohoarc; b=UhqLCuqU5ph3G2mFfI0g/tU//iVxoCpsj/akgjImmU00wVt7/OlaxO05EhVHR1ywQd3C3Ykis6+zwtE9HnL60RqNTxvBqOIgtsvMnXj6jtzjhpgS4qTChsimg5PzDKxD1TxnP2pQjTvq2ET8XWdyJnJkqg9BziQOCMOOi9y7U9Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1620062002; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=NSAUfhvZ8S+K3xT3LS2vCoaFcUxzcXCC2t65XqyqTdw=; b=iWDViAx3kCPPfYXBeAh7VY/jwU9JvDIyfd57FEJ0v7/6DuqLkXtY3OO2CCwDbcsno6FrL/O0i4aPhg0Dof5FTjN4yFVKIvtYIKtmqVEef9pcoqXAaJzAIBw4YDSuYgG5mfINAVRW5X++1Z6Lwb0uAQFSZuMVzytKVzlvcZoUFl8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by mx.zohomail.com with SMTPS id 1620062002888374.9457829933731; Mon, 3 May 2021 10:13:22 -0700 (PDT) Received: by mail-wr1-f42.google.com with SMTP id x7so6370353wrw.10 for ; Mon, 03 May 2021 10:13:22 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (anancy-651-1-208-144.w109-217.abo.wanadoo.fr. [109.217.237.144]) by smtp.gmail.com with ESMTPSA id a2sm9699733wrn.13.2021.05.03.10.13.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 May 2021 10:13:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=NSAUfhvZ8S+K3xT3LS2vCoaFcUxzcXCC2t65XqyqTdw=; b=H6GDBC4X4wjmY7GFvVGJz3aUZyrDxDM5gPJsZGDtai3t99ZY/t3EOGMUkQHL0RUdwU OSkdOuYuyBu400Bt1xnSGHu4zXd0kZq8pbp7gYVVTMyMiveLKXZFMrMmGuYzQBxLxaWr L9w24t7pXrpwkesc7Wwu2iTiA7BQ5CE3TCSj3sIVZ470h92mQngEW8mGv7CqK7wIKLcK N+9vRzAiW7raMQQB85pJB8etCfySSwT+XE7nYI9H5iOaTqxKyH0epBK8QpSlgrywx5mr FrUAhicBgZJ32rpanM/LQzuoo495yGkeTOBmAte3WaroXSVz3SU6zZezD8hwCtLHMW/F jc4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=NSAUfhvZ8S+K3xT3LS2vCoaFcUxzcXCC2t65XqyqTdw=; b=IXuuMBO78iFBOPP5tliRti5s5BwmwElpEYih4uQf5nWO+OMWTGeC4rcNifaKncu3KJ lHPtOkx5ArSuryCUFA0HGwrRrG4W0arTuSZFrXz6r24SZsUkGHeTnLCWcu+WW0HVG2ib IUjvgGGfbbJ23UH0v0XUVN4PFUbcx7wujEi9Vrv48I94WhyECMwrORQv0BLrK9fAo3ke Y2KEPZWjRifJ2sc9ZaYy1jwWEvyWBseU0kCx4LsEQvvhpOdG0E3OS+XtDBNZ++YMquMh DCcRz/DyJ2yeoQ+WGbKcp9drfq9QbNYNb6hLBfaV6oLKm+nulbBuyOE9TpUymyiimJGz o5bQ== X-Gm-Message-State: AOAM533w86dJKQ3XfFZdFctii18xr41KoAG8k7bPP830CnetLrtNCgJa asuu3HefkjeExTyxp5z6dtA= X-Google-Smtp-Source: ABdhPJyhh7/gh/l1o0W5UuyE1IpMxhYcpiW0TiB4z1XD9ISiIiZTWbduLU6STLDiTywXTKrklCo1/w== X-Received: by 2002:adf:f190:: with SMTP id h16mr23352942wro.221.1620062001062; Mon, 03 May 2021 10:13:21 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Artyom Tarasenko , Mark Cave-Ayland , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PATCH v3 3/6] hw/sparc/sun4m: Factor out sun4m_machine_class_init() Date: Mon, 3 May 2021 19:13:00 +0200 Message-Id: <20210503171303.822501-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210503171303.822501-1-f4bug@amsat.org> References: <20210503171303.822501-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Factor out the class_init code common to all machines to sun4m_machine_class_init(). Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sparc/sun4m.c | 103 ++++------------------------------------------- 1 file changed, 8 insertions(+), 95 deletions(-) diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c index c2bc8a9fa50..56f927e66ca 100644 --- a/hw/sparc/sun4m.c +++ b/hw/sparc/sun4m.c @@ -1374,58 +1374,15 @@ static const struct sun4m_hwdef sun4m_hwdefs[] =3D { }, }; =20 -/* SPARCstation 5 hardware initialisation */ -static void ss5_init(MachineState *machine) +static void sun4m_machine_class_init(ObjectClass *oc, void *data) { - sun4m_hw_init(machine); -} + MachineClass *mc =3D MACHINE_CLASS(oc); =20 -/* SPARCstation 10 hardware initialisation */ -static void ss10_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCserver 600MP hardware initialisation */ -static void ss600mp_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCstation 20 hardware initialisation */ -static void ss20_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCstation Voyager hardware initialisation */ -static void vger_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCstation LX hardware initialisation */ -static void ss_lx_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCstation 4 hardware initialisation */ -static void ss4_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCClassic hardware initialisation */ -static void scls_init(MachineState *machine) -{ - sun4m_hw_init(machine); -} - -/* SPARCbook hardware initialisation */ -static void sbook_init(MachineState *machine) -{ - sun4m_hw_init(machine); + mc->init =3D sun4m_hw_init; + mc->block_default_type =3D IF_SCSI; + mc->default_boot_order =3D "c"; + mc->default_display =3D "tcx"; + mc->default_ram_id =3D "sun4m.ram"; } =20 static void ss5_class_init(ObjectClass *oc, void *data) @@ -1434,13 +1391,8 @@ static void ss5_class_init(ObjectClass *oc, void *da= ta) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation 5"; - mc->init =3D ss5_init; - mc->block_default_type =3D IF_SCSI; mc->is_default =3D true; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("Fujitsu-MB86904"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[0]; } =20 @@ -1456,13 +1408,8 @@ static void ss10_class_init(ObjectClass *oc, void *d= ata) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation 10"; - mc->init =3D ss10_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 4; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-SuperSparc-II"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[1]; } =20 @@ -1478,13 +1425,8 @@ static void ss600mp_class_init(ObjectClass *oc, void= *data) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCserver 600MP"; - mc->init =3D ss600mp_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 4; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-SuperSparc-II"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[2]; } =20 @@ -1500,13 +1442,8 @@ static void ss20_class_init(ObjectClass *oc, void *d= ata) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation 20"; - mc->init =3D ss20_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 4; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-SuperSparc-II"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[3]; } =20 @@ -1522,12 +1459,7 @@ static void voyager_class_init(ObjectClass *oc, void= *data) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation Voyager"; - mc->init =3D vger_init; - mc->block_default_type =3D IF_SCSI; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("Fujitsu-MB86904"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[4]; } =20 @@ -1543,12 +1475,7 @@ static void ss_lx_class_init(ObjectClass *oc, void *= data) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation LX"; - mc->init =3D ss_lx_init; - mc->block_default_type =3D IF_SCSI; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-MicroSparc-I"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[5]; } =20 @@ -1564,12 +1491,7 @@ static void ss4_class_init(ObjectClass *oc, void *da= ta) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCstation 4"; - mc->init =3D ss4_init; - mc->block_default_type =3D IF_SCSI; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("Fujitsu-MB86904"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[6]; } =20 @@ -1585,12 +1507,7 @@ static void scls_class_init(ObjectClass *oc, void *d= ata) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCClassic"; - mc->init =3D scls_init; - mc->block_default_type =3D IF_SCSI; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-MicroSparc-I"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[7]; } =20 @@ -1606,12 +1523,7 @@ static void sbook_class_init(ObjectClass *oc, void *= data) Sun4mMachineClass *smc =3D SUN4M_MACHINE_CLASS(mc); =20 mc->desc =3D "Sun4m platform, SPARCbook"; - mc->init =3D sbook_init; - mc->block_default_type =3D IF_SCSI; - mc->default_boot_order =3D "c"; mc->default_cpu_type =3D SPARC_CPU_TYPE_NAME("TI-MicroSparc-I"); - mc->default_display =3D "tcx"; - mc->default_ram_id =3D "sun4m.ram"; smc->hwdef =3D &sun4m_hwdefs[8]; } =20 @@ -1626,6 +1538,7 @@ static const TypeInfo sun4m_machine_types[] =3D { .name =3D TYPE_SUN4M_MACHINE, .parent =3D TYPE_MACHINE, .class_size =3D sizeof(Sun4mMachineClass), + .class_init =3D sun4m_machine_class_init, .abstract =3D true, } }; --=20 2.26.3