From nobody Wed Apr 2 14:19:57 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=1742751614; cv=none; d=zohomail.com; s=zohoarc; b=IqOO2ARGGJnG/SkIqbl9u3RiAiUftSfc9ZgpBT6lMRtYqm/LBNFsfSM+SNi5ACdupfUKfHYauc96cNglx/cJpsC4pk1+/AmRZMZYw14VqcQUPXuxg3a1aQ40lVLH/JOJ1kEqI5bA0FKKa9cFDGolmpqOtyB9cTG4qHSL975Wm8Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1742751614; h=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=yV8UPagoDasIkYgoCkaTjilWFltLUaMj7KB+817IG98=; b=PLK6sgVY33rv9Olg+iSt4x/wVVYGnr/qja2pWzYu0O3vSu0DZQ5cbrQZch/8ohgCWJVid3y5ZScxeNVr4rNpMRNyH/4W/YH21hAVheb7IWR7PZmo/y3Np2deEg+xPkMfXqAUnvtXta4AJk/wHLZlnNDZty1zGF9jHZtQHeIj8Ls= 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 174275161481483.92689969822948; Sun, 23 Mar 2025 10:40:14 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1twPGc-0005tP-CF; Sun, 23 Mar 2025 13:37:46 -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 1twPGb-0005sd-66 for qemu-devel@nongnu.org; Sun, 23 Mar 2025 13:37:45 -0400 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1twPGZ-0002vc-JK for qemu-devel@nongnu.org; Sun, 23 Mar 2025 13:37:44 -0400 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-223a7065ff8so55787375ad.0 for ; Sun, 23 Mar 2025 10:37:43 -0700 (PDT) Received: from stoup.. (174-21-74-48.tukw.qwest.net. [174.21.74.48]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-22781209ff3sm54075165ad.257.2025.03.23.10.37.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Mar 2025 10:37:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742751462; x=1743356262; 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=yV8UPagoDasIkYgoCkaTjilWFltLUaMj7KB+817IG98=; b=Tl3PuUJJnRg3U19qvXlXGVzXUcNoiI3RsMvDS94oQzDP4v1rkkDbpJ9W7lkdD0mCJq qWfekwmMzS4hBRVN1OXIvAHrPk+mhswf+YfnHqqhnXFKRLkioQtuTbvukeDo6pH2zw8F PA8aNX6KiySWi/gtWsyQQs3xUdn1TugKcV7slSRmf8/n+lhsiqc+H/bPghZPWYGaGHC9 yB1Lt/IZ9UGFJXjBYXP/NJdzjrHgG8497dJXZuyyKUEXa2edszSt4N0+6Tp5JSbcdV6H hDl1b9TDMtr/JxFw+69yizr9gBzVgPlbnAltwaj43TyviUriB62f3dvhOSa3KzQFrlJT c4jA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742751462; x=1743356262; 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=yV8UPagoDasIkYgoCkaTjilWFltLUaMj7KB+817IG98=; b=XWqtfwi+AIWPSq72mMqAPlkzrE1TUsIsm3MnYWhZjOK+Ds6DOuKrfesJh1zlZU/VO8 4PMvTfnDEuoJ9Z3RY55zVXrpCbPIprlbIPhgCAXwT07wADj79y0sEuGiDDwEMtMEhMPQ djeDpuvj6Me9pf8KJfHI16C6er+AMS88vT3J8zZLl/413XStxwhMGODAMNGkj8oNOSzS fGRBWLe9llQLeD0L3zu0S3eqAK3aYGOG/y5f0QTMlENLhaLf/Jn7q0X4CIa1GQ3CYMb3 GPLwYUvaGi/zDkFbOuibKbNAQlcd4hgvzIiC+QR7nl5337Oru6alcSfqawq2Pr9ww4qw 0kSA== X-Gm-Message-State: AOJu0YxcBZzCyoHcsAO3V9CPE47GpXkUARV9ee1MPbu1aD9mNEtdvoBc NnMftLppBNmal/Q7pWh4hcmjHwyjgfA8s/Y1EsH5C9VBzROgKkAsrfVhAIvcrG/fL154u5NQz7f U X-Gm-Gg: ASbGncsuwHC8/k6c80elYmHcC+xtq4rugg/iWOPMLOrEY7W5emwgW5URGKe9PUox4Fq WF/JzdqX5+uBkXibxDkd52MT8UKsoOTzHl9xtgsmLL9IS1edNjcu5TsIiGjLHMfSVdD/KXfCaQ0 WqOTyOEwmhjpnbifGc174x5sy1LpwkOlqlxHqRDxPpPYG3RjJX/AcHcxaDQOwscgVXktnv49x+j pVZz240RKvOlTMhOad5zM+8ZrPgZD4IcBN/sv27ZMITw3XdebOBnLeNHQ4X9ct5A+Ua/+CVyr3O AqnCsn3viR9OvB1KR0gv08F6fD82A3C6hCrkTzv4NDSYlcNioIW1vqXmke0C+Jxxk93CDuWAp1X c X-Google-Smtp-Source: AGHT+IE9oDlQco/2y1TGo8E15QrNuI5/Mx2hOuD4VZZ3dLMJinx76SxGrg2+fqvGdftllnWFWiucxg== X-Received: by 2002:a17:902:f642:b0:21d:3bd7:afdd with SMTP id d9443c01a7336-22780ba18cdmr166709665ad.0.1742751462263; Sun, 23 Mar 2025 10:37:42 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: mrolnik@gmail.com, philmd@linaro.org, pierrick.bouvier@linaro.org Subject: [PATCH 15/17] hw/avr: Pass mcu_type to class_base_init via .class_data Date: Sun, 23 Mar 2025 10:37:27 -0700 Message-ID: <20250323173730.3213964-16-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250323173730.3213964-1-richard.henderson@linaro.org> References: <20250323173730.3213964-1-richard.henderson@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::62d; envelope-from=richard.henderson@linaro.org; helo=mail-pl1-x62d.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: 1742751616928116600 Content-Type: text/plain; charset="utf-8" We want to be able to do more common work on MachineClass. Pass the class name as a string in .class_data. Signed-off-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- hw/avr/arduino.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/hw/avr/arduino.c b/hw/avr/arduino.c index 48ef478346..29cb776848 100644 --- a/hw/avr/arduino.c +++ b/hw/avr/arduino.c @@ -69,6 +69,13 @@ static void arduino_machine_class_init(ObjectClass *oc, = void *data) mc->no_parallel =3D 1; } =20 +static void arduino_machine_class_base_init(ObjectClass *oc, void *data) +{ + ArduinoMachineClass *amc =3D ARDUINO_MACHINE_CLASS(oc); + + amc->mcu_type =3D data; +} + static void arduino_duemilanove_class_init(ObjectClass *oc, void *data) { MachineClass *mc =3D MACHINE_CLASS(oc); @@ -80,7 +87,6 @@ static void arduino_duemilanove_class_init(ObjectClass *o= c, void *data) */ mc->desc =3D "Arduino Duemilanove (ATmega168)", mc->alias =3D "2009"; - amc->mcu_type =3D TYPE_ATMEGA168_MCU; amc->xtal_hz =3D 16 * 1000 * 1000; }; =20 @@ -95,7 +101,6 @@ static void arduino_uno_class_init(ObjectClass *oc, void= *data) */ mc->desc =3D "Arduino UNO (ATmega328P)"; mc->alias =3D "uno"; - amc->mcu_type =3D TYPE_ATMEGA328_MCU; amc->xtal_hz =3D 16 * 1000 * 1000; }; =20 @@ -110,7 +115,6 @@ static void arduino_mega_class_init(ObjectClass *oc, vo= id *data) */ mc->desc =3D "Arduino Mega (ATmega1280)"; mc->alias =3D "mega"; - amc->mcu_type =3D TYPE_ATMEGA1280_MCU; amc->xtal_hz =3D 16 * 1000 * 1000; }; =20 @@ -125,7 +129,6 @@ static void arduino_mega2560_class_init(ObjectClass *oc= , void *data) */ mc->desc =3D "Arduino Mega 2560 (ATmega2560)"; mc->alias =3D "mega2560"; - amc->mcu_type =3D TYPE_ATMEGA2560_MCU; amc->xtal_hz =3D 16 * 1000 * 1000; /* CSTCE16M0V53-R0 */ }; =20 @@ -134,24 +137,29 @@ static const TypeInfo arduino_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("arduino-duemilanove"), .parent =3D TYPE_ARDUINO_MACHINE, .class_init =3D arduino_duemilanove_class_init, + .class_data =3D (void *)TYPE_ATMEGA168_MCU, }, { .name =3D MACHINE_TYPE_NAME("arduino-uno"), .parent =3D TYPE_ARDUINO_MACHINE, .class_init =3D arduino_uno_class_init, + .class_data =3D (void *)TYPE_ATMEGA328_MCU, }, { .name =3D MACHINE_TYPE_NAME("arduino-mega"), .parent =3D TYPE_ARDUINO_MACHINE, .class_init =3D arduino_mega_class_init, + .class_data =3D (void *)TYPE_ATMEGA1280_MCU, }, { .name =3D MACHINE_TYPE_NAME("arduino-mega-2560-v3"), .parent =3D TYPE_ARDUINO_MACHINE, .class_init =3D arduino_mega2560_class_init, + .class_data =3D (void *)TYPE_ATMEGA2560_MCU, }, { .name =3D TYPE_ARDUINO_MACHINE, .parent =3D TYPE_MACHINE, .instance_size =3D sizeof(ArduinoMachineState), .class_size =3D sizeof(ArduinoMachineClass), .class_init =3D arduino_machine_class_init, + .class_base_init =3D arduino_machine_class_base_init, .abstract =3D true, } }; --=20 2.43.0