From nobody Tue Feb 10 07:22:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) client-ip=209.85.221.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1619981700; cv=none; d=zohomail.com; s=zohoarc; b=RL7V/YSVgOwStDPP3fiGtrEs9r+tokPb6IAB3glIQ+VSx4Xe9tpXcSdIlXjKgZit6ZjAo6bobLHNxpQe54ViPigucRuWINQO/olYWH9O6p8W60942GQsqqhZrgyVSTOSW8AN/AvGhRl0mNR47A0nimpOjMXsXedAqY89qi6rPl8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619981700; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=yF+3uGpjysT1HviFnkbcw6nMCr/LSI0PjwhjHOnIHGg=; b=JQOUpzPHpYfQA7LeUj1H3bAbfOiEMcvwXlcWgtaOpdyRLE4FAHhtZd0ZrXknOuqi/ckml315/zdFchESqIiR7S/aNrFse/psvtQ/Y/oaumNPd2nfkF6QbnybVTdwKIkLo9m/8o/YAYuiK7yjTpDTKy1kRPP3nRiSQ8Rp7br5QFM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by mx.zohomail.com with SMTPS id 1619981700614818.3747849437657; Sun, 2 May 2021 11:55:00 -0700 (PDT) Received: by mail-wr1-f52.google.com with SMTP id l14so3337799wrx.5 for ; Sun, 02 May 2021 11:55:00 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (anancy-651-1-208-144.w109-217.abo.wanadoo.fr. [109.217.237.144]) by smtp.gmail.com with ESMTPSA id a15sm9592312wrr.53.2021.05.02.11.54.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 May 2021 11:54:58 -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=yF+3uGpjysT1HviFnkbcw6nMCr/LSI0PjwhjHOnIHGg=; b=BEBaAdFThGNA9MEJYcFmjrOPmoS9KQ56T5Ahml3uLfXK1nxHxLoWp5Y+Sz4Jl7WMxz bmaYKc2SsPphsxL/LuVqVZU01D4sC4pwN4c0cOREx7EN+cxQyiQCOWF97ZYv2A4R2ruy w8lXxNDqEGLQVTc61ht+JA9o1yKmx7iD+27GumfIznTODbTbM1n6jEJc72HWIXxMxTJ8 u6y35IM9BNVkZfmtnxNsK9xHWXsCzXikgJZ8zemgAB8J4845yQ6ZEV2zTOyMERxahRi8 9jXbyqI/XJhpnWbpXGCKc2XxWWyqd72am0++DEHzD9Wx4USiz0U6xubQP/Z6gA20+TW1 s3Sw== 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=yF+3uGpjysT1HviFnkbcw6nMCr/LSI0PjwhjHOnIHGg=; b=eLUs1AFPnvsvHsVOjh0rw3UWTtQmpulBGlDkjT5geyRtXnZAWaT4R5NYNVv3jBmbRK 6+4dzNPDwcSgaSpqzKUJQ2GLz8K6Y3fMEMyb00oIi81LcIm0fuD3in9vzn8NAKrPH+Ua 3xd1UcVqPBu43/DcenCmOTh5ngwFrMTVB0hHSOsh3Xfaw6wlVN1+IfMLUf3GnRxsgv2n NqJtoxOUSZOe++HUpx6te/PnkP4u9Te5sc9iZHSU0eIDvgirlb2D06gI8rqw/rcIrIV7 jxQABxFUEOPXXkK9yQ2B5A8jZ3cc3omSe/gbLzx1Rt6PuUKQ3/j8M90tIESUyLcl1QND ZphQ== X-Gm-Message-State: AOAM532nJYLhFRN9rmkKN8rnI6wO2suWMv1uiQv0MTHu2i52VY8CXbZZ P2nNwZifL0YbnRuPtsgIyPA= X-Google-Smtp-Source: ABdhPJxIi3KEnCh+g7UFdHRLU2EUsVjHLJ+SWJZKJoSInUhVZgxCirehdHHbewos5OJRGI2mc4xRNQ== X-Received: by 2002:a5d:544d:: with SMTP id w13mr2820223wrv.273.1619981698893; Sun, 02 May 2021 11:54:58 -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: Mark Cave-Ayland , Artyom Tarasenko , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v2 3/6] hw/sparc/sun4m: Factor out sun4m_machine_class_init() Date: Sun, 2 May 2021 20:54:38 +0200 Message-Id: <20210502185441.599980-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210502185441.599980-1-f4bug@amsat.org> References: <20210502185441.599980-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(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- 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