From nobody Thu Oct 16 01:45:16 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=1744937620; cv=none; d=zohomail.com; s=zohoarc; b=Up3OJ/7S3YS/11Te268aqHVKFSg+0W6mdE0bt/mjCZ/kbsCKFwfevxHkrd6sdiQi2Pqy68PuRPq1qZ30MGpA6QQt+SmerBJwT0sRx5qkEuur2V0ym87ElNyVWpGbHwToTfoAy1auKP5WxXrA8W8gHPkT7qERMbdx8JJo5mejaTQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937620; 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=e+EWdOmeXtjoMOdMj9vCcTmXULED5K7o4s48YuBpbO8=; b=QCdEh3eKD5hf+Nfm8NaBqik5fLQh9wPWEVDlhTOO1toJBD8ABENkEcp4cwmu+luPbymGVaTzua+cC3UEPxDZOyD/6PradGyCmBxwLsts31AV5aMwi5QMii+JH0s57x0RfMJVkMTQIgcfTPTalZ4pxSf3FonxujOBhgHKhCOR8I8= 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 17449376203011005.4037055492018; Thu, 17 Apr 2025 17:53:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zwl-0001hp-Vm; Thu, 17 Apr 2025 20:51:12 -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 1u5Zwk-0001hF-BJ for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:10 -0400 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5Zwi-0005mU-Lr for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:10 -0400 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-39ee651e419so808518f8f.3 for ; Thu, 17 Apr 2025 17:51:08 -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-4406d5d7a3dsm2052675e9.38.2025.04.17.17.51.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937467; x=1745542267; 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=e+EWdOmeXtjoMOdMj9vCcTmXULED5K7o4s48YuBpbO8=; b=QJr2qU7YGz58hkgOcIuq4w77dREfTZGV4XCa2U26dpkg6nE3FuqsHrHsJQAVquqYVF M8+usJGIxTWYh2lh3RKKsunjmMaaUB2fMhzzFEc3jjTem9l6k0NyHZMqom0PfOb5t7BM hmxSBkh1QNhr3qjcIQInMVv73I/aDY1HU/JTCBE6U/wMc852QgOPX+uF7A6CRRVUHAPG sk82weUtKQZMK4JLP/716kZYEPBGGNx/oaLYUY4dnrBZv2mn7vI/bqy5W5EoQEbRHW0/ MNrZZkHARyI0AbATVXgeat23ottyTpKodN2fsIHXLGIcajCCWtfi//GxKTWZZcGhQorL x5Tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937467; x=1745542267; 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=e+EWdOmeXtjoMOdMj9vCcTmXULED5K7o4s48YuBpbO8=; b=LYoi4C+sK7RWPinzGwthouFEGdgV2ZHG4QcOfTcFL+deGtuAsXqDQw6/dT9z/z7Pd0 WyyObFpad9RhqDYQOhteH9MmhbSFsFkbVPVbEEvjeg+VM7WRKzJvvnpJzKEQzrfVqyjv m8GrSYUNhrJ8J5PnRsVnwrudON2Se3kvKfYZvJ0uZDKqjw4d/v/xDCduvxnHVBtn4l9t PPyj131jI4uxd58xC4/xBcOU54d7ZBjGk+SzuKPoQWPu4oyF0yL0RDYecWg7rKdmoVVn YtSYAOwZR9oKfhXkL8LqXWGCSbMe5j3GYrd/dv5jQOmFnCPZjlSNLcdAD8wsiyIPoSQ7 WbMw== X-Forwarded-Encrypted: i=1; AJvYcCXAfMhr/Wjmct6S2wZ5/O7M4LelN1BqXtnaMkxKE9O2ANE3RjTYwGvDF8STd6KQAQl5br6nn5HlHFR6@nongnu.org X-Gm-Message-State: AOJu0YzlXbUXn6bHZ0573uL5bhLlXQ+yHoZaWQTAkKCXQZdfkV/RVgTR y4cyK5GbLpDDnrCUVpPbTfXUp644Cs8qkqbwpBDwFKZW4SKCO4Vfflm5EOMJfuE= X-Gm-Gg: ASbGncvL1rZBwK+mYpP054E69UyTVTlndU4jZFRLBn/X9/A+6sTQO9v2tkfJBFTKf8Q RihQT9uS8l3YgDgaycF3NAY400kPpBldaPK6dCCcTNsoq6UC85SjPdCG1pooLM4nw3LPh2M5GcZ E9Wci8PU8oBd5ExufzhGHLPV6IhqG0VvDUWDlrvgBLIFxl6vq6ROBJEnV15Wd9d2vCpSBNdrg8s rJkrRttSKZ7txpPvZiz+yK7O0AFsiRzzAbL5yGvD9zMe/eWli6MsRXXIOq+n8Wqf57mwGXTt2im wORqmmfJhZy5RMUcM+CIvyg21r1sFxdaVLRaKXHQ+yAac1EScL//AD3Ja/qOHRaJJMEkZZ8frDI K0WsTacYi3r8kjdezyZL9 X-Google-Smtp-Source: AGHT+IHMG2PQBagcsTEyTLIoYbqpdV5Wx2qAwSaizor9gVAHVM5XpX+Cc0KkEz30rg7eyutvVJAsyg== X-Received: by 2002:a05:6000:2503:b0:38d:cf33:31d6 with SMTP id ffacd0b85a97d-39efba2f341mr590610f8f.3.1744937467118; Thu, 17 Apr 2025 17:51:07 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 01/11] qapi: Rename TargetInfo structure as BinaryTargetInfo Date: Fri, 18 Apr 2025 02:50:49 +0200 Message-ID: <20250418005059.4436-2-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::42a; envelope-from=philmd@linaro.org; helo=mail-wr1-x42a.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937622233019100 The QAPI-generated 'TargetInfo' structure name is only used in a single file. We want to heavily use another structure similarly named. Rename the QAPI one, since structure names are not part of the public API. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- qapi/machine.json | 12 ++++++------ hw/core/machine-qmp-cmds.c | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/qapi/machine.json b/qapi/machine.json index a6b8795b09e..3246212f048 100644 --- a/qapi/machine.json +++ b/qapi/machine.json @@ -275,15 +275,15 @@ { 'command': 'query-current-machine', 'returns': 'CurrentMachineParams' } =20 ## -# @TargetInfo: +# @BinaryTargetInfo: # -# Information describing the QEMU target. +# Information describing the QEMU binary target. # -# @arch: the target architecture +# @arch: the binary target architecture # # Since: 1.2 ## -{ 'struct': 'TargetInfo', +{ 'struct': 'BinaryTargetInfo', 'data': { 'arch': 'SysEmuTarget' } } =20 ## @@ -291,11 +291,11 @@ # # Return information about the target for this QEMU # -# Returns: TargetInfo +# Returns: BinaryTargetInfo # # Since: 1.2 ## -{ 'command': 'query-target', 'returns': 'TargetInfo' } +{ 'command': 'query-target', 'returns': 'BinaryTargetInfo' } =20 ## # @UuidInfo: diff --git a/hw/core/machine-qmp-cmds.c b/hw/core/machine-qmp-cmds.c index 3130c5cd456..408994b67d7 100644 --- a/hw/core/machine-qmp-cmds.c +++ b/hw/core/machine-qmp-cmds.c @@ -132,9 +132,9 @@ CurrentMachineParams *qmp_query_current_machine(Error *= *errp) return params; } =20 -TargetInfo *qmp_query_target(Error **errp) +BinaryTargetInfo *qmp_query_target(Error **errp) { - TargetInfo *info =3D g_malloc0(sizeof(*info)); + BinaryTargetInfo *info =3D g_malloc0(sizeof(*info)); =20 info->arch =3D qapi_enum_parse(&SysEmuTarget_lookup, target_name(), -1, &error_abort); --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937612; cv=none; d=zohomail.com; s=zohoarc; b=E67/F4DaxapoDyYe9lkgi3kX6bBklxkt/gIEEaZL8XgLOJdiX+nHqY9h1ne7ijJiWTD/OJu7pamimvUdZfpcyZ/N2ljQ5tdWgiqWYjBtU9sTGN4wsnia4D0CX0ixdVY0sCmdYXogcBgtiYs05fyKJmXgAWqdTWcbaFd+hl4rst4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937612; 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=OmLiEEj8BsSlPrrh5/WyA2e/HFVflcBaJVJKNxqZAeQ=; b=X4744CUPoR4yTGzZsmHF2Pm5aCB6Die2oUZ29rROSD3xyvjfrvToqz1Fq8HkK2RxZ2jRNmLeEJPUpCsyUbnL16EvkINVD+uhAS6wxhnPCGh45aPFR1FFcw/HvDMfLxAO+Me0e/4jMhekJjthFM01FYDojzm9D7Zbf97j7BBKZso= 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 17449376124471021.5319620621972; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zws-0001it-CY; Thu, 17 Apr 2025 20:51:18 -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 1u5Zwp-0001iL-GV for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:15 -0400 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5Zwn-0005o6-Jc for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:15 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43cfebc343dso11173695e9.2 for ; Thu, 17 Apr 2025 17:51:13 -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-4406d5ccd38sm2121845e9.28.2025.04.17.17.51.10 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937472; x=1745542272; 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=OmLiEEj8BsSlPrrh5/WyA2e/HFVflcBaJVJKNxqZAeQ=; b=eAUcS54g2Dx97tCwyf0cOWiiQBOLpVsoIl5s0okrJtxmhiYuzc5lxqOgIEAcKsFPtY wKmdWBCxgdPItIvnGSI/xQDkMsaiJVynu10CLCp4pRGrglYIXbKfF4DuHpMNtPmSKaAe dDi8j8/383JQbYgu4ILZEAPdKJ86Y8ckZsnITDuesanvt4sci+CZXtGnVZBgRyisI6be CLWeUut3G8eUp3lJZtL8HNS1na05vuo7D0qeVgNE+VYGlrW3W2zq0tFqepmrPqniK2as IfyDg0zaolkkYMrfRyCtp7ylP21QYiDibxiMtu8kxx5PTgFABgTvJRvCtY/O1SZz2NnU RtwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937472; x=1745542272; 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=OmLiEEj8BsSlPrrh5/WyA2e/HFVflcBaJVJKNxqZAeQ=; b=pQz7dyZ0GYkninCqP5aUp4fsS0ALsx1VAFQqlRRRR2bzFdGrtY5jVZ0fiVMDu0zdQm f7EOBjnAR52rcLsH1i0zpiUo+ur7p5qJ84cCZjJXoKnSBonc5+zwtVcH9lJ36qHYxQof 2YDas8GQ+Pxa+JS6is9UYSEJqts2L5nXBy+haXlTssUgX5W/+Q/JGAkLGskz1Pzw2CdQ 3F1+ZmfCgvHIb9Ci1Rn4FGt3TYRhX0edIxOnp0MieAc6oSSsqM8T+kbZj2TiF/m/LCKG GLL/4IGJ04Xlgs13sNW8cE4Onk3FC0CxIIEnI4Pax713B6nXoqEJ3vlJYivfWP4dQ/Zz yEOg== X-Forwarded-Encrypted: i=1; AJvYcCVuJRt6Kawe+fFn5PtjlvgyzEQQ2rVypE8NNnQBagdzZCXzdobwAIRQhsK6wOIvfqx6P7z4uKR3vZD+@nongnu.org X-Gm-Message-State: AOJu0YwMb3mGAPiTuQNCFjCj3gx7zi4KE+ru50GdHMsIy5EnvEpBqzhv J7L73BuKcbgUmcJerRINUgiig2PF5gZqst4LDONHyR+jdflfy240V4KrKYu6Ggc= X-Gm-Gg: ASbGncvv/0IlU4OQHWzIMiFDzLa/eHvhp0f55mjqNVAORjDK/FFji7MzFeMjg3x8obX cxdxPD2cVGCH7PLNN768hwOjk8Hm47uBvx3ws7QW8YjktfRYeoaxZ18zqV7FAENh0NlynFv+EcZ mJimSThSjfkSOaiQc52zq9XFJOi20Pch5l7uD5o8k1K2u4wctbqLbYYO6e6kj4yshjbIKOVWmq2 uOivY5RCn9+2RMt40w0uV1wO89jF8obSgL1o/ZUjfVOdKzrQ6XDoZYId7TT1kUnL9fbu490GXRL RdcUz2DQi2RpoOLVS1lLY3nf3QgPSuTqOxDmELABbbrnWiI4p0Pq5sFglgcb7xUTKJI843/3gvL y21pYoYz7qbk94x8d2Jhu X-Google-Smtp-Source: AGHT+IGXWvm0tYpsQUuwQFAaacstbh59eAuSi8HShuS1xlIPYXzeVr6Ko90ngJ4IPUc/WJt7FEw2Gw== X-Received: by 2002:a05:600c:3b0d:b0:43d:7413:cb3e with SMTP id 5b1f17b1804b1-4406ab7f548mr5341965e9.1.1744937471779; Thu, 17 Apr 2025 17:51:11 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 02/11] qemu: Convert target_name() to TargetInfo API Date: Fri, 18 Apr 2025 02:50:50 +0200 Message-ID: <20250418005059.4436-3-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937614281019000 Have target_name() be a target-agnostic method, dispatching to a per-target TargetInfo singleton structure. By default a stub singleton is used. No logical change expected. Inspired-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- meson.build | 3 +++ include/hw/core/cpu.h | 2 -- include/qemu/target_info-impl.h | 23 +++++++++++++++++++++++ include/qemu/target_info.h | 19 +++++++++++++++++++ cpu-target.c | 5 ----- hw/core/machine-qmp-cmds.c | 1 + plugins/loader.c | 2 +- system/vl.c | 2 +- target_info-stub.c | 19 +++++++++++++++++++ target_info.c | 16 ++++++++++++++++ 10 files changed, 83 insertions(+), 9 deletions(-) create mode 100644 include/qemu/target_info-impl.h create mode 100644 include/qemu/target_info.h create mode 100644 target_info-stub.c create mode 100644 target_info.c diff --git a/meson.build b/meson.build index bcb9d39a387..49a050a28a3 100644 --- a/meson.build +++ b/meson.build @@ -3807,6 +3807,9 @@ endif common_ss.add(pagevary) specific_ss.add(files('page-target.c', 'page-vary-target.c')) =20 +common_ss.add(files('target_info.c')) +specific_ss.add(files('target_info-stub.c')) + subdir('backends') subdir('disas') subdir('migration') diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 5b645df59f5..9d9448341d1 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -1115,8 +1115,6 @@ bool cpu_exec_realizefn(CPUState *cpu, Error **errp); void cpu_exec_unrealizefn(CPUState *cpu); void cpu_exec_reset_hold(CPUState *cpu); =20 -const char *target_name(void); - #ifdef COMPILING_PER_TARGET =20 extern const VMStateDescription vmstate_cpu_common; diff --git a/include/qemu/target_info-impl.h b/include/qemu/target_info-imp= l.h new file mode 100644 index 00000000000..d5c94ed5296 --- /dev/null +++ b/include/qemu/target_info-impl.h @@ -0,0 +1,23 @@ +/* + * QEMU binary/target API ... + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef QEMU_TARGET_INFO_IMPL_H +#define QEMU_TARGET_INFO_IMPL_H + +#include "qemu/target_info.h" + +typedef struct TargetInfo { + + /* runtime equivalent of TARGET_NAME definition */ + const char *const name; + +} TargetInfo; + +const TargetInfo *target_info(void); + +#endif diff --git a/include/qemu/target_info.h b/include/qemu/target_info.h new file mode 100644 index 00000000000..3f6cbbbd300 --- /dev/null +++ b/include/qemu/target_info.h @@ -0,0 +1,19 @@ +/* + * QEMU binary/target API + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef QEMU_TARGET_INFO_H +#define QEMU_TARGET_INFO_H + +/** + * target_name: + * + * Returns: Canonical target name (i.e. "i386"). + */ +const char *target_name(void); + +#endif diff --git a/cpu-target.c b/cpu-target.c index c99d208a7c4..3f82d3ea444 100644 --- a/cpu-target.c +++ b/cpu-target.c @@ -165,8 +165,3 @@ bool target_words_bigendian(void) { return TARGET_BIG_ENDIAN; } - -const char *target_name(void) -{ - return TARGET_NAME; -} diff --git a/hw/core/machine-qmp-cmds.c b/hw/core/machine-qmp-cmds.c index 408994b67d7..b317aec234f 100644 --- a/hw/core/machine-qmp-cmds.c +++ b/hw/core/machine-qmp-cmds.c @@ -19,6 +19,7 @@ #include "qapi/qobject-input-visitor.h" #include "qapi/type-helpers.h" #include "qemu/uuid.h" +#include "qemu/target_info.h" #include "qom/qom-qobject.h" #include "system/hostmem.h" #include "system/hw_accel.h" diff --git a/plugins/loader.c b/plugins/loader.c index 7523d554f03..36a4e88d4db 100644 --- a/plugins/loader.c +++ b/plugins/loader.c @@ -29,7 +29,7 @@ #include "qemu/xxhash.h" #include "qemu/plugin.h" #include "qemu/memalign.h" -#include "hw/core/cpu.h" +#include "qemu/target_info.h" #include "exec/tb-flush.h" =20 #include "plugin.h" diff --git a/system/vl.c b/system/vl.c index c17945c4939..d8a0fe713c9 100644 --- a/system/vl.c +++ b/system/vl.c @@ -40,6 +40,7 @@ #include "qemu/help_option.h" #include "qemu/hw-version.h" #include "qemu/uuid.h" +#include "qemu/target_info.h" #include "system/reset.h" #include "system/runstate.h" #include "system/runstate-action.h" @@ -79,7 +80,6 @@ #include "hw/block/block.h" #include "hw/i386/x86.h" #include "hw/i386/pc.h" -#include "hw/core/cpu.h" #include "migration/cpr.h" #include "migration/misc.h" #include "migration/snapshot.h" diff --git a/target_info-stub.c b/target_info-stub.c new file mode 100644 index 00000000000..1e44bb6f6fb --- /dev/null +++ b/target_info-stub.c @@ -0,0 +1,19 @@ +/* + * QEMU target info stubs + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qemu/target_info-impl.h" + +static const TargetInfo target_info_stub =3D { + .name =3D TARGET_NAME, +}; + +const TargetInfo *target_info(void) +{ + return &target_info_stub; +} diff --git a/target_info.c b/target_info.c new file mode 100644 index 00000000000..877a6a15014 --- /dev/null +++ b/target_info.c @@ -0,0 +1,16 @@ +/* + * QEMU binary/target helpers + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qemu/target_info-impl.h" +#include "qemu/target_info.h" + +const char *target_name(void) +{ + return target_info()->name; +} --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937577; cv=none; d=zohomail.com; s=zohoarc; b=LUUWSptx5oHUwU8wTG2NvKvSjE+l4d1dQAjtD0InAqoee8iQPiveo9urOdCz6xZ0eoWxGkjQSSUtUTg8cpwRo+ZFBUIlsZq4SsMuLLegGuuhYgkZQX8477XmdfuDvp4bcwqGBM8EJxftITt5FWVOt3cALQwI7N3C+oq0MFxfFQw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937577; 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=Oo7hyyEFu8S8sgeHFv9utYRkdVF6oYH3JMKp75dwFuo=; b=cs8JerWaTs1q5Ii3wL2X1nCVKNpdtinXNf7YRQi4H/JF9ermTAdEPD29ucf7OSU7ds0ZA2/+2IAJMSImIN+YqwUq8mhpA5WSbQw5ZIMHadDzGzaDJAEGoeAkrEYLNv82o6HJFoT5Tuf/YKZZ9wVaT8viSh1UDx7y2SwQexr4X0g= 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 1744937577318347.97926917226175; Thu, 17 Apr 2025 17:52:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zwy-0001jS-7S; Thu, 17 Apr 2025 20:51:24 -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 1u5Zwx-0001jH-1V for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:23 -0400 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5Zwv-0005qe-71 for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:22 -0400 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-3913b539aabso865943f8f.2 for ; Thu, 17 Apr 2025 17:51:17 -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-4406d5a9dd6sm2255525e9.3.2025.04.17.17.51.15 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937476; x=1745542276; 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=Oo7hyyEFu8S8sgeHFv9utYRkdVF6oYH3JMKp75dwFuo=; b=YD+GMgW5yP/Fy9sVtIdfP7XKHWB0ODLmJQJOIiDalZS8Vetk43dO057GSJLnXylLfY RBtGMxbAz25ZnAw64QcosVAzX4QfmBUssyqg61Kk6AMDbjV4yvGGpmaBwkIc3LjsFEUC kigNiXcbxaiVzCpuV9s9bf0CHSoy5iWPRG5macipZrG6RHfLOcRQvejjGm/efoWpTBlE JVUZ5yZpy5RXs+Bmj4u38gTlncJDhI0QNNdGVPjdk9AINHQpb2bbUSfq92FP6N3NRQyh cxaLMoljiruGaCncwZTTdEsm8YSLcPLD/JslOxp3CkT0QYbNhtnHcwCRAlLkGJxXsNoK 5UFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937476; x=1745542276; 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=Oo7hyyEFu8S8sgeHFv9utYRkdVF6oYH3JMKp75dwFuo=; b=FSP7FWyofQVJELrfpUfWjU/BZ6yD5CIHpWMBgH1004dcNb9DlNEcFkds1/eAXAtehW ouR3vLke2Og+8HKSb8PWylkU1SOiLZic//JfmyY6J4jh9XS3Pp/iIc35hrtWdv/PEHo2 3GeFU8lY+efSvbHC/F9dqCRYRzhVq0jUT4Es+yacQwVxcWiPE7jtVFiJiIzE3PQFaIIl 2IJYotycCwm4DtCxR6yMH9GBPMUy9J0Ju+ZJSkdkveUv7Pvf9LQsG81RnFXBh5aUxH0/ f3UrQ/Z8Fl1zYrYl7sNOvOFFys4igmmy8vWSOH2fK/GjysR8yAYeNfe6wJXTC2zDs+1h 3qFQ== X-Forwarded-Encrypted: i=1; AJvYcCVJ54vRZBCY6kIdEzDQE3SdmFjRteDdZQXlgH/FiaQj0NEk7zYSSGdcOK82Hqxd1aDQds0dr+rfDv6O@nongnu.org X-Gm-Message-State: AOJu0YzjgzMz9zeS7SFGpv1zGFyCL9t0MoqHfMmBAKQRkhnMUe2vC93A p8KRCpaB13KLJMqJDenXHuI5rqg/pOLWB+mteG7JuRkonDNov/mvUqdqpmcG2yorHRBrQBNi2dF x X-Gm-Gg: ASbGncttu7aje37nPRoSYLlpLlnXUULpfO77NA6wINwMYpv5rG3NYahYZdzRffwjeUv AuQTyvGJgbromK4jrZgXntXIAnuN+sRfmTd11pagpEEWFpKWId1CqHTT5M8hg9Oy6+vwprXGMiG gqrqBAnvq9Yhx+u2q7aZ/f1TkFNcd8T43kFzGJn1k5jkU4sKOt5PW42aBHiM/6cKMKF/Ev7Jer7 KFJahAA/FGY4HUNkx8Pww1DBV1p5kv0rwqz4NLFZwr7JA3/wl5kG4mBaE6XmhqecodiIipBPkdL mJPgxhPP/XmD+CQUjLq/txUfbQjY13ZIRvzgjW9i0xOkxRI9zG60Qazd82bG0m/EK7RxJnvAkoi XgihM4m5Fh0GDCMpOpP3M X-Google-Smtp-Source: AGHT+IH71bpUn0KaJvis1Eb3mWHdM0qWJ3W9E+ZQa0rVSnxDVLiUx3DYdnfAlOwp2kIGPrerB77QBw== X-Received: by 2002:a5d:5f92:0:b0:39c:2688:6edd with SMTP id ffacd0b85a97d-39efba526dcmr604605f8f.15.1744937476369; Thu, 17 Apr 2025 17:51:16 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 03/11] system/vl: Filter machine list available for a particular target binary Date: Fri, 18 Apr 2025 02:50:51 +0200 Message-ID: <20250418005059.4436-4-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::42c; envelope-from=philmd@linaro.org; helo=mail-wr1-x42c.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937579982019100 Binaries can register a QOM type to filter their machines by filling their TargetInfo::machine_typename field. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/qemu/target_info-impl.h | 3 +++ include/qemu/target_info.h | 8 ++++++++ system/vl.c | 14 ++++++++++++++ target_info.c | 5 +++++ 4 files changed, 30 insertions(+) diff --git a/include/qemu/target_info-impl.h b/include/qemu/target_info-imp= l.h index d5c94ed5296..990fb067d20 100644 --- a/include/qemu/target_info-impl.h +++ b/include/qemu/target_info-impl.h @@ -16,6 +16,9 @@ typedef struct TargetInfo { /* runtime equivalent of TARGET_NAME definition */ const char *const name; =20 + /* QOM typename machines for this binary must implement */ + const char *const machine_typename; + } TargetInfo; =20 const TargetInfo *target_info(void); diff --git a/include/qemu/target_info.h b/include/qemu/target_info.h index 3f6cbbbd300..e9fd2fdd7b0 100644 --- a/include/qemu/target_info.h +++ b/include/qemu/target_info.h @@ -16,4 +16,12 @@ */ const char *target_name(void); =20 +/** + * target_machine_interface_typename: + * + * Returns: Name of the QOM interface implemented by machines + * usable on this target binary. + */ +const char *target_machine_interface_typename(void); + #endif diff --git a/system/vl.c b/system/vl.c index d8a0fe713c9..4e43e55afe7 100644 --- a/system/vl.c +++ b/system/vl.c @@ -27,6 +27,7 @@ #include "qemu/datadir.h" #include "qemu/units.h" #include "qemu/module.h" +#include "qemu/target_info.h" #include "exec/cpu-common.h" #include "exec/page-vary.h" #include "hw/qdev-properties.h" @@ -836,11 +837,17 @@ static bool usb_parse(const char *cmdline, Error **er= rp) static MachineClass *find_machine(const char *name, GSList *machines) { GSList *el; + const char *qom_typename_filter =3D target_machine_interface_typename(= ); =20 for (el =3D machines; el; el =3D el->next) { MachineClass *mc =3D el->data; =20 if (!strcmp(mc->name, name) || !g_strcmp0(mc->alias, name)) { + if (qom_typename_filter + && !object_class_dynamic_cast(el->data, qom_typename_filte= r)) { + /* Machine is not for this binary: fail */ + return NULL; + } return mc; } } @@ -1563,6 +1570,7 @@ static void machine_help_func(const QDict *qdict) g_autoptr(GSList) machines =3D NULL; GSList *el; const char *type =3D qdict_get_try_str(qdict, "type"); + const char *qom_typename_filter =3D target_machine_interface_typename(= ); =20 machines =3D object_class_get_list(TYPE_MACHINE, false); if (type) { @@ -1577,6 +1585,12 @@ static void machine_help_func(const QDict *qdict) machines =3D g_slist_sort(machines, machine_class_cmp); for (el =3D machines; el; el =3D el->next) { MachineClass *mc =3D el->data; + + if (qom_typename_filter + && !object_class_dynamic_cast(el->data, qom_typename_filter)) { + /* Machine is not for this binary: skip */ + continue; + } if (mc->alias) { printf("%-20s %s (alias of %s)\n", mc->alias, mc->desc, mc->na= me); } diff --git a/target_info.c b/target_info.c index 877a6a15014..226eed1fd7d 100644 --- a/target_info.c +++ b/target_info.c @@ -14,3 +14,8 @@ const char *target_name(void) { return target_info()->name; } + +const char *target_machine_interface_typename(void) +{ + return target_info()->machine_typename; +} --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937500; cv=none; d=zohomail.com; s=zohoarc; b=atAqYeQikFmf01E139Vb6KUc0yVnL06/KSZ3gLP7vKyaigrSRvuNxdqiKbyIgEfzzcn7krAx0DtglUAY2o520xEqbXdzON9gA5qnAWd4lL5UgX70gSPmCieIKPuRTl/2sMvi4ygLaAozGLgMq5iZrM+yAg6SwxEAp7NHdwx0Fms= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937500; 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=YXcKH0xxrTvGXKj1WGS/noBtY0dqyqmEMfZoCxBxxzk=; b=RbA66mbCuNZ0sYIZRDC66ACadsk7wdGTBjMcHLmAz34Z+1QIeQVLvJQ3iwPGgpOc0HKeKQvmrBGDW6rlJpoetj7V02Wcmbus2wo9gcpkwKd6VNQ/3njnjvVRaxrAgvqVlrK8z23JV0zOySSNGJLf8pflCCmFMcWdEr2C8+zVJ3w= 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 1744937500458924.2157277961226; Thu, 17 Apr 2025 17:51:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zwz-0001k3-T4; Thu, 17 Apr 2025 20:51:25 -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 1u5Zwy-0001jW-QJ for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:24 -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 1u5Zwx-0005rm-8Z for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:24 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3913958ebf2so1301426f8f.3 for ; Thu, 17 Apr 2025 17:51:22 -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-39efa43ce6bsm1172056f8f.55.2025.04.17.17.51.20 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937481; x=1745542281; 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=YXcKH0xxrTvGXKj1WGS/noBtY0dqyqmEMfZoCxBxxzk=; b=z6Sx9VHQZVW9Bt3yBfwHFBfmWXPMXN6QowbhOIhcbLHTfcj4Eq40RaY7YcoRAvDDCO aZ7dgNGYMyuhDS0l6N481stqzgd7QRX9peLvB2KgjV3EFZqaLuGD7r5SQkCvR+AVPELI kWHjDHGus4ihNj1mDnFYSrfAlk/Ju8t3ASW/DUN/4c8AEoIb3tt3JWpnT64DKM2jMaAN sND5U8K2xQpp9YX+zcGWWJnnm0o+xOUUxTj/CZjg5240eBi+WeNCFEQzHkmFuznj9NOR Fo4AUSN8NlUq04myeVdg3NOuy0SORoJLkJ0VFmmTA5s0sUYSiSTUMPzm+a1+aRqZPS40 yiJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937481; x=1745542281; 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=YXcKH0xxrTvGXKj1WGS/noBtY0dqyqmEMfZoCxBxxzk=; b=OseYy/nuIEXOqYantf0PwBB85wCtQh6dFgm2wKhf7pF6+/8fZb5j8LnomegZlB+kZj SSRLZgmU+29Xh4HKetvbfIPaiod66I+bMtizieUH42eHcy3IWkjrOMDF3qGLSxdQi60q EYlRe1jV9vouo5KF+pMxpSVwqt+lWC/mH9PVTO266PcfcormMPYGMiYg8VNVgSvKmjIT mdetGWPaYVr6xtjKs9BlyAqgp9Sc2jkBwKVEXCSwRzE873afzZvv5ssfSgn1juijed2u tziyEVlaa77LwPAv/KZlSDNdZdeszQTe9X0rXEGZitC8OtnmQp/y10+E/1XK5Wu02eM8 39gg== X-Forwarded-Encrypted: i=1; AJvYcCUEoGsR0jA6XxCWkG4LtN9LdHA1KDq5qQ8ivjPpt3e2YTdhSMszEkElRHa5P6DLYy5bV2x1DXHFBFLF@nongnu.org X-Gm-Message-State: AOJu0Yz8+d+g1BrzoaxitT26kdBlGtdjF6v8uU1UGcL7dM9+lKA+1jOI A0uIlx6Sg1Q77CDhJOeKfMbVr6zqunnnIIvvqTHE5SpEe5dxeYczonPBpGcpnQrgzBQrDKEuggq 3 X-Gm-Gg: ASbGnctccblFgIuOByoF0dqS35tuRu2aMbIFiksYihP/4Ctm4vfq0DUZr22HoLLSkzj 6y5GhJgXTx1m3H95Ymr+76Dq3vaeNvAn5XXfT2puusy8b+13fSkHxpS+RAP3I6gnnH9QqK6bD+5 2/u/I4DoYCl/06McL5i1GpmHNNIx0EGjLh5fx1I/rCAQDgnLr0taA3oJUwA+cERDwo2K1UkQRH+ YVa3R0rgjUMJBMsiUuYAHbqmwPr+GEvKY2ai0blleqJTtAQrqrJfqXU5JIsFEK6dSGRO8FcmEId /APiX6OY/Spv7CKd7Xqsm0uZKUVYBuqWXKvguMbBxkSQ3tnvITaMZFX6rsDKfc+ZQg6E1RmbcAP H10NVYyt29mz7FjpZ+LqF X-Google-Smtp-Source: AGHT+IG9XUdq/ZgMV5TjkXcqjIYK3A4MrcsKw02GUFk0PeuxTwq3UpAun+YHG7Uz3/wA/Q1I60Uh6A== X-Received: by 2002:a5d:47aa:0:b0:39c:1258:7e17 with SMTP id ffacd0b85a97d-39efbaf245amr634098f8f.56.1744937481115; Thu, 17 Apr 2025 17:51:21 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 04/11] hw/arm: Register TYPE_TARGET_ARM/AARCH64_CPU QOM interfaces Date: Fri, 18 Apr 2025 02:50:52 +0200 Message-ID: <20250418005059.4436-5-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 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, RCVD_IN_XBL=0.375, 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: 1744937501947019100 Define the TYPE_TARGET_ARM_MACHINE and TYPE_TARGET_AARCH64_MACHINE QOM interface names to allow machines to implement them. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- meson.build | 1 + include/hw/boards.h | 1 + include/qemu/target_info-qom.h | 18 ++++++++++++++++++ target_info-qom.c | 24 ++++++++++++++++++++++++ 4 files changed, 44 insertions(+) create mode 100644 include/qemu/target_info-qom.h create mode 100644 target_info-qom.c diff --git a/meson.build b/meson.build index 49a050a28a3..168b07b5887 100644 --- a/meson.build +++ b/meson.build @@ -3808,6 +3808,7 @@ common_ss.add(pagevary) specific_ss.add(files('page-target.c', 'page-vary-target.c')) =20 common_ss.add(files('target_info.c')) +system_ss.add(files('target_info-qom.c')) specific_ss.add(files('target_info-stub.c')) =20 subdir('backends') diff --git a/include/hw/boards.h b/include/hw/boards.h index 02f43ac5d4d..b1bbf3c34d4 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -7,6 +7,7 @@ #include "system/hostmem.h" #include "system/blockdev.h" #include "qapi/qapi-types-machine.h" +#include "qemu/target_info-qom.h" #include "qemu/module.h" #include "qom/object.h" #include "hw/core/cpu.h" diff --git a/include/qemu/target_info-qom.h b/include/qemu/target_info-qom.h new file mode 100644 index 00000000000..7eb9b6bd254 --- /dev/null +++ b/include/qemu/target_info-qom.h @@ -0,0 +1,18 @@ +/* + * QEMU binary/target API (QOM types) + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef QEMU_TARGET_INFO_QOM_H +#define QEMU_TARGET_INFO_QOM_H + +#define TYPE_TARGET_ARM_MACHINE \ + "target-info-arm-machine" + +#define TYPE_TARGET_AARCH64_MACHINE \ + "target-info-aarch64-machine" + +#endif diff --git a/target_info-qom.c b/target_info-qom.c new file mode 100644 index 00000000000..d3fee57361b --- /dev/null +++ b/target_info-qom.c @@ -0,0 +1,24 @@ +/* + * QEMU binary/target API (QOM types) + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qemu/target_info-qom.h" +#include "qom/object.h" + +static const TypeInfo target_info_types[] =3D { + { + .name =3D TYPE_TARGET_ARM_MACHINE, + .parent =3D TYPE_INTERFACE, + }, + { + .name =3D TYPE_TARGET_AARCH64_MACHINE, + .parent =3D TYPE_INTERFACE, + }, +}; + +DEFINE_TYPES(target_info_types) --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937501; cv=none; d=zohomail.com; s=zohoarc; b=dVbIgeXRk5WI4iFlToWEVROPWUPnH5tD1k4vXdTgBqHqvVcWDGxfhaPwR3HPylP07cD8S/L91g0G/WGLuTbdsCtoG6g1D0USAeu9ygWtCs0fPFt8Dzsm0+0BC/atJ8JZaAbusxUjqgMd7uf1ZQAC1sAS0eybRLjiy4BdElGjh7M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937501; 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=eV8KJV0xXZ4TO2mnmTIb3sgdLgRIDuDlODWFeGQ6aQY=; b=U+RvEZQKuSAIr2he00TOt4g4MbHFeCc+PvaBeUYvQmpjWMC9daPmSmSLOGUq/QZcjcBXN0bhzGLlZotDAqgN51GY0mhPcL1ONx1pTsXROW1US7cFXKuln+FLazi40HY8j5BuZilcGbfIK13r3AOonNG0zkV205UkdwHmLTYEmTw= 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 1744937501392297.1038986337502; Thu, 17 Apr 2025 17:51:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zx9-0001p3-1o; Thu, 17 Apr 2025 20:51:35 -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 1u5Zx6-0001om-LJ for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:32 -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 1u5Zx2-0005t5-JQ for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:32 -0400 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-39c0dfad22aso925190f8f.2 for ; Thu, 17 Apr 2025 17:51:28 -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-39efa43d22esm1183287f8f.52.2025.04.17.17.51.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937487; x=1745542287; 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=eV8KJV0xXZ4TO2mnmTIb3sgdLgRIDuDlODWFeGQ6aQY=; b=N3vxloPYlS9q6zujsh44qcMV28WR/m3o5noKHEThaQcK3ve0WNJahOftyvmT3r7wmL aVJ0zgCJugF/5Ez1CznMk0jbhyVzMtdupuNvxTu/WETrEgACzAgStFKMqRvFwrYu2Vv3 rONRFcdeRfgX0n9MTnm1q3YpNfzErPVMgslNZasGVStV+RCre4TcVxkX4VpGpEeFYwDU xULuM+h3BN6G+WXSyHpJ6VpF12V/N8Ie4UMJVBdQ79mTC6VyvSNwbQ+JDwcp7vu/DmeC zQbArAdV8Hzl1eNy5PTDY4sHYf0ZCbdrcmjQMzF3JFx6m8eHoGq+Q1anZ/85oLshSpl7 3gjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937487; x=1745542287; 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=eV8KJV0xXZ4TO2mnmTIb3sgdLgRIDuDlODWFeGQ6aQY=; b=YS2c7EFpLiqk962d5ArOfBCwHX5XO5CzydAg8fxILSOuMCoRz1xds6Bdm4lX97TFv7 citF4aI2XAAFDlUvrY4FPWnMHne7PYjB9MgA+SZHynanDHPyxVv8Bb2x+eqw4B5pEeoW VFz/dxCPjnvxCGjdOJE+4S3syaX52siUnYA0FHjjFa6m7QLpRIXRbQSfIxiuibP9qifs MJRMAKSPLfYqnex7nx15DLycIpvTSqb/EsQgInrfY/UHX4iQNRpVMY2YTUYkzndm+BGS CXqA3jsL3ZMhQvpqRKStI7jTf/0cf+H35tNTJvhCvN9i9vxl+17Xt0t63XWVQSzRJ8Pv /gtw== X-Forwarded-Encrypted: i=1; AJvYcCVvpUtsL19p9Ro+QaUeRTcVpo+rk7MiOKjegyofWsNC9dzaiA1ArV9TWuN5cOljeAeKkhhy3rcj8SM5@nongnu.org X-Gm-Message-State: AOJu0Yy5YyOWg7cWeFduoGqUNLC9vpTFgG7ZVVLMTDmWbZI4nR63tfwn d9oHJYVBl8VloVE12h2ODvtIyXud/u5d6ju9eTD1Oh9TDfPLuJ1jyX40r6+Cc+8= X-Gm-Gg: ASbGnctQL9MDuAl6xTuiB5T9WesL1Y37dvtrX6bE5+UKBTSj+5pK+bPOMlo0/kfU0VO ryepj/C+xCYpEWGU+b/t2FiXIlcLVY4LOO0ugQ06PD8bBpMqSy7FfkOJuzRfzeDrq015P125+fT VlG5MR0ndwHbuV5cq9UeNkmkD+E10r4kfWvKwp7eMQ/knna1D61WPeELDatEGsCVnEL9b8iL+uQ wcJAiiW6QGV2y9KosknEDg2yg8BjKfLrD83aPISXR6KW17K1F3HWt/MprARHp4aDR4/y6CQ8a5A eQ0PlTV2r3+4Azfqj44qRwB8krymKzxm7Yaw9tDOlQCCZ4mYCGpP4o+j8WgMH0+2qIVgfJsNny8 XoF2vr3Pf56wi3wYl8Q4nHbSbfJBbcVY= X-Google-Smtp-Source: AGHT+IHs0+NWwgo4AVBXY3+lcgi4oCbOvjVDwdDAOmLbf6mkEx6YSDTr1UVUyVPZJqIIS4D7MCT42w== X-Received: by 2002:a5d:5c84:0:b0:397:8ef9:9963 with SMTP id ffacd0b85a97d-39efbb092e4mr604035f8f.55.1744937486746; Thu, 17 Apr 2025 17:51:26 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 05/11] hw/arm: Filter machine types for qemu-system-aarch64 binary Date: Fri, 18 Apr 2025 02:50:53 +0200 Message-ID: <20250418005059.4436-6-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 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, RCVD_IN_XBL=0.375, 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: 1744937505187019100 Since the qemu-system-aarch64 binary is able to run all machines indistinctly, simply register the TYPE_TARGET_AARCH64_MACHINE interface for all existing machines under the hw/arm/ directory. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/aspeed.c | 88 ++++++++++++++++++++++++++++++++++++++ hw/arm/b-l475e-iot01a.c | 4 ++ hw/arm/bananapi_m2u.c | 4 ++ hw/arm/collie.c | 4 ++ hw/arm/cubieboard.c | 4 ++ hw/arm/digic_boards.c | 4 ++ hw/arm/exynos4_boards.c | 8 ++++ hw/arm/fby35.c | 4 ++ hw/arm/highbank.c | 8 ++++ hw/arm/imx25_pdk.c | 4 ++ hw/arm/imx8mp-evk.c | 4 ++ hw/arm/integratorcp.c | 4 ++ hw/arm/kzm.c | 4 ++ hw/arm/mcimx6ul-evk.c | 4 ++ hw/arm/mcimx7d-sabre.c | 4 ++ hw/arm/microbit.c | 4 ++ hw/arm/mps2-tz.c | 16 +++++++ hw/arm/mps2.c | 16 +++++++ hw/arm/mps3r.c | 4 ++ hw/arm/msf2-som.c | 4 ++ hw/arm/musca.c | 8 ++++ hw/arm/musicpal.c | 4 ++ hw/arm/netduino2.c | 4 ++ hw/arm/netduinoplus2.c | 4 ++ hw/arm/npcm7xx_boards.c | 20 +++++++++ hw/arm/npcm8xx_boards.c | 4 ++ hw/arm/olimex-stm32-h405.c | 4 ++ hw/arm/omap_sx1.c | 8 ++++ hw/arm/orangepi.c | 4 ++ hw/arm/raspi.c | 20 +++++++++ hw/arm/raspi4b.c | 4 ++ hw/arm/realview.c | 16 +++++++ hw/arm/sabrelite.c | 4 ++ hw/arm/sbsa-ref.c | 4 ++ hw/arm/stellaris.c | 8 ++++ hw/arm/stm32vldiscovery.c | 4 ++ hw/arm/versatilepb.c | 8 ++++ hw/arm/vexpress.c | 8 ++++ hw/arm/virt.c | 4 ++ hw/arm/xilinx_zynq.c | 4 ++ hw/arm/xlnx-versal-virt.c | 4 ++ hw/arm/xlnx-zcu102.c | 4 ++ 42 files changed, 348 insertions(+) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index 82f42582fa3..ca7004c335a 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -1760,91 +1760,179 @@ static const TypeInfo aspeed_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("palmetto-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_palmetto_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("supermicrox11-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_supermicrox11_bmc_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("supermicro-x11spi-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_supermicro_x11spi_bmc_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("ast2500-evb"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2500_evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("romulus-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_romulus_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("sonorapass-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_sonorapass_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("witherspoon-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_witherspoon_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("ast2600-evb"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2600_evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("yosemitev2-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_yosemitev2_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("tiogapass-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_tiogapass_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("g220a-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_g220a_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("qcom-dc-scm-v1-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_qcom_dc_scm_v1_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("qcom-firework-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_qcom_firework_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("fp5280g2-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_fp5280g2_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("quanta-q71l-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_quanta_q71l_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("rainier-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_rainier_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("fuji-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_fuji_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("bletchley-bmc"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_bletchley_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("fby35-bmc"), .parent =3D MACHINE_TYPE_NAME("ast2600-evb"), .class_init =3D aspeed_machine_fby35_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("ast1030-evb"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_minibmc_machine_ast1030_evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #ifdef TARGET_AARCH64 }, { .name =3D MACHINE_TYPE_NAME("ast2700a0-evb"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2700a0_evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("ast2700a1-evb"), .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2700a1_evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #endif }, { .name =3D TYPE_ASPEED_MACHINE, diff --git a/hw/arm/b-l475e-iot01a.c b/hw/arm/b-l475e-iot01a.c index c9a5209216c..cc4b9d6c3b5 100644 --- a/hw/arm/b-l475e-iot01a.c +++ b/hw/arm/b-l475e-iot01a.c @@ -131,6 +131,10 @@ static const TypeInfo bl475e_machine_type[] =3D { .parent =3D TYPE_MACHINE, .instance_size =3D sizeof(Bl475eMachineState), .class_init =3D bl475e_machine_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, } }; =20 diff --git a/hw/arm/bananapi_m2u.c b/hw/arm/bananapi_m2u.c index 724ee4b05e5..d9871a796bb 100644 --- a/hw/arm/bananapi_m2u.c +++ b/hw/arm/bananapi_m2u.c @@ -150,6 +150,10 @@ static const TypeInfo bananapi_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("bpim2u"), .parent =3D TYPE_MACHINE, .class_init =3D bpim2u_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/collie.c b/hw/arm/collie.c index e83aee58c6b..16e862e15b6 100644 --- a/hw/arm/collie.c +++ b/hw/arm/collie.c @@ -86,6 +86,10 @@ static const TypeInfo collie_machine_typeinfo =3D { .parent =3D TYPE_MACHINE, .class_init =3D collie_machine_class_init, .instance_size =3D sizeof(CollieMachineState), + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void collie_machine_register_types(void) diff --git a/hw/arm/cubieboard.c b/hw/arm/cubieboard.c index 36062ac7037..dd40d65554d 100644 --- a/hw/arm/cubieboard.c +++ b/hw/arm/cubieboard.c @@ -131,6 +131,10 @@ static const TypeInfo cubieboard_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("cubieboard"), .parent =3D TYPE_MACHINE, .class_init =3D cubieboard_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/digic_boards.c b/hw/arm/digic_boards.c index 3c0cc6e4370..f55309082ac 100644 --- a/hw/arm/digic_boards.c +++ b/hw/arm/digic_boards.c @@ -152,6 +152,10 @@ static const TypeInfo digic_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("canon-a1100"), .parent =3D TYPE_MACHINE, .class_init =3D digic_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c index 2d8f2d73265..b55e364d962 100644 --- a/hw/arm/exynos4_boards.c +++ b/hw/arm/exynos4_boards.c @@ -172,6 +172,10 @@ static const TypeInfo nuri_type =3D { .name =3D MACHINE_TYPE_NAME("nuri"), .parent =3D TYPE_MACHINE, .class_init =3D nuri_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void smdkc210_class_init(ObjectClass *oc, void *data) @@ -192,6 +196,10 @@ static const TypeInfo smdkc210_type =3D { .name =3D MACHINE_TYPE_NAME("smdkc210"), .parent =3D TYPE_MACHINE, .class_init =3D smdkc210_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void exynos4_machines_init(void) diff --git a/hw/arm/fby35.c b/hw/arm/fby35.c index 6d3663f14a1..de6b32ce532 100644 --- a/hw/arm/fby35.c +++ b/hw/arm/fby35.c @@ -187,6 +187,10 @@ static const TypeInfo fby35_types[] =3D { .class_init =3D fby35_class_init, .instance_size =3D sizeof(Fby35State), .instance_init =3D fby35_instance_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c index 0f3c207d548..e517cf3c7f6 100644 --- a/hw/arm/highbank.c +++ b/hw/arm/highbank.c @@ -363,6 +363,10 @@ static const TypeInfo highbank_type =3D { .name =3D MACHINE_TYPE_NAME("highbank"), .parent =3D TYPE_MACHINE, .class_init =3D highbank_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void midway_class_init(ObjectClass *oc, void *data) @@ -387,6 +391,10 @@ static const TypeInfo midway_type =3D { .name =3D MACHINE_TYPE_NAME("midway"), .parent =3D TYPE_MACHINE, .class_init =3D midway_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void calxeda_machines_init(void) diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c index a90def7f1a2..da8479ca608 100644 --- a/hw/arm/imx25_pdk.c +++ b/hw/arm/imx25_pdk.c @@ -157,6 +157,10 @@ static const TypeInfo imx25_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("imx25-pdk"), .parent =3D TYPE_MACHINE, .class_init =3D imx25_pdk_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/imx8mp-evk.c b/hw/arm/imx8mp-evk.c index c7d87d99230..bc8a3abd04a 100644 --- a/hw/arm/imx8mp-evk.c +++ b/hw/arm/imx8mp-evk.c @@ -79,6 +79,10 @@ static const TypeInfo imx8_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("imx8mp-evk"), .parent =3D TYPE_MACHINE, .class_init =3D imx8mp_evk_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c index f95916b517d..5599cf60707 100644 --- a/hw/arm/integratorcp.c +++ b/hw/arm/integratorcp.c @@ -760,6 +760,10 @@ static const TypeInfo integratorcp_machine_types[] =3D= { .name =3D MACHINE_TYPE_NAME("integratorcp"), .parent =3D TYPE_MACHINE, .class_init =3D integratorcp_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/kzm.c b/hw/arm/kzm.c index b56cabe9f94..208546205be 100644 --- a/hw/arm/kzm.c +++ b/hw/arm/kzm.c @@ -146,6 +146,10 @@ static const TypeInfo kzm_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("kzm"), .parent =3D TYPE_MACHINE, .class_init =3D kzm_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/mcimx6ul-evk.c b/hw/arm/mcimx6ul-evk.c index d947836d2be..65e6134862e 100644 --- a/hw/arm/mcimx6ul-evk.c +++ b/hw/arm/mcimx6ul-evk.c @@ -84,6 +84,10 @@ static const TypeInfo imx6_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("mcimx6ul-evk"), .parent =3D TYPE_MACHINE, .class_init =3D mcimx6ul_evk_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/mcimx7d-sabre.c b/hw/arm/mcimx7d-sabre.c index f5dc9c211dd..1f88dc03915 100644 --- a/hw/arm/mcimx7d-sabre.c +++ b/hw/arm/mcimx7d-sabre.c @@ -84,6 +84,10 @@ static const TypeInfo imx7_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("mcimx7d-sabre"), .parent =3D TYPE_MACHINE, .class_init =3D mcimx7d_sabre_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/microbit.c b/hw/arm/microbit.c index ade363daaa4..e537735e247 100644 --- a/hw/arm/microbit.c +++ b/hw/arm/microbit.c @@ -74,6 +74,10 @@ static const TypeInfo microbit_info =3D { .parent =3D TYPE_MACHINE, .instance_size =3D sizeof(MicrobitMachineState), .class_init =3D microbit_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void microbit_machine_init(void) diff --git a/hw/arm/mps2-tz.c b/hw/arm/mps2-tz.c index b0633a5a69e..6cd36ee4037 100644 --- a/hw/arm/mps2-tz.c +++ b/hw/arm/mps2-tz.c @@ -1463,24 +1463,40 @@ static const TypeInfo mps2tz_an505_info =3D { .name =3D TYPE_MPS2TZ_AN505_MACHINE, .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps2tz_an505_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps2tz_an521_info =3D { .name =3D TYPE_MPS2TZ_AN521_MACHINE, .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps2tz_an521_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps3tz_an524_info =3D { .name =3D TYPE_MPS3TZ_AN524_MACHINE, .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps3tz_an524_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps3tz_an547_info =3D { .name =3D TYPE_MPS3TZ_AN547_MACHINE, .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps3tz_an547_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void mps2tz_machine_init(void) diff --git a/hw/arm/mps2.c b/hw/arm/mps2.c index 6958485a668..709d7d0a08e 100644 --- a/hw/arm/mps2.c +++ b/hw/arm/mps2.c @@ -563,24 +563,40 @@ static const TypeInfo mps2_an385_info =3D { .name =3D TYPE_MPS2_AN385_MACHINE, .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an385_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps2_an386_info =3D { .name =3D TYPE_MPS2_AN386_MACHINE, .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an386_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps2_an500_info =3D { .name =3D TYPE_MPS2_AN500_MACHINE, .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an500_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo mps2_an511_info =3D { .name =3D TYPE_MPS2_AN511_MACHINE, .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an511_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void mps2_machine_init(void) diff --git a/hw/arm/mps3r.c b/hw/arm/mps3r.c index 4dd1e8a7180..d1a72c7775b 100644 --- a/hw/arm/mps3r.c +++ b/hw/arm/mps3r.c @@ -634,6 +634,10 @@ static const TypeInfo mps3r_machine_types[] =3D { .name =3D TYPE_MPS3R_AN536_MACHINE, .parent =3D TYPE_MPS3R_MACHINE, .class_init =3D mps3r_an536_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/msf2-som.c b/hw/arm/msf2-som.c index 6ce47eaa27a..11988b6aa6d 100644 --- a/hw/arm/msf2-som.c +++ b/hw/arm/msf2-som.c @@ -114,6 +114,10 @@ static const TypeInfo msf2_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("emcraft-sf2"), .parent =3D TYPE_MACHINE, .class_init =3D emcraft_sf2_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/musca.c b/hw/arm/musca.c index a4f43f1992b..3a11b3d1cd6 100644 --- a/hw/arm/musca.c +++ b/hw/arm/musca.c @@ -657,12 +657,20 @@ static const TypeInfo musca_a_info =3D { .name =3D TYPE_MUSCA_A_MACHINE, .parent =3D TYPE_MUSCA_MACHINE, .class_init =3D musca_a_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo musca_b1_info =3D { .name =3D TYPE_MUSCA_B1_MACHINE, .parent =3D TYPE_MUSCA_MACHINE, .class_init =3D musca_b1_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void musca_machine_init(void) diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c index f7c488cd1d6..9cf8eec8b13 100644 --- a/hw/arm/musicpal.c +++ b/hw/arm/musicpal.c @@ -1381,6 +1381,10 @@ static const TypeInfo musicpal_types[] =3D { .name =3D MACHINE_TYPE_NAME("musicpal"), .parent =3D TYPE_MACHINE, .class_init =3D musicpal_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/netduino2.c b/hw/arm/netduino2.c index 52c30055d44..e6e140ed6bf 100644 --- a/hw/arm/netduino2.c +++ b/hw/arm/netduino2.c @@ -71,6 +71,10 @@ static const TypeInfo netduino_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("netduino2"), .parent =3D TYPE_MACHINE, .class_init =3D netduino2_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/netduinoplus2.c b/hw/arm/netduinoplus2.c index 2735d3a0e2b..b54e990b5bd 100644 --- a/hw/arm/netduinoplus2.c +++ b/hw/arm/netduinoplus2.c @@ -71,6 +71,10 @@ static const TypeInfo netduino_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("netduinoplus2"), .parent =3D TYPE_MACHINE, .class_init =3D netduinoplus2_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/npcm7xx_boards.c b/hw/arm/npcm7xx_boards.c index eb28b97ad83..4d2c52f3422 100644 --- a/hw/arm/npcm7xx_boards.c +++ b/hw/arm/npcm7xx_boards.c @@ -549,22 +549,42 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("npcm750-evb"), .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D npcm750_evb_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("quanta-gsj"), .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D gsj_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("quanta-gbs-bmc"), .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D gbs_bmc_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("kudo-bmc"), .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D kudo_bmc_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("mori-bmc"), .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D mori_bmc_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/npcm8xx_boards.c b/hw/arm/npcm8xx_boards.c index 3fb8478e72e..1b5a3080436 100644 --- a/hw/arm/npcm8xx_boards.c +++ b/hw/arm/npcm8xx_boards.c @@ -248,6 +248,10 @@ static const TypeInfo npcm8xx_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("npcm845-evb"), .parent =3D TYPE_NPCM8XX_MACHINE, .class_init =3D npcm845_evb_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/olimex-stm32-h405.c b/hw/arm/olimex-stm32-h405.c index 795218c93cf..4344bef4db1 100644 --- a/hw/arm/olimex-stm32-h405.c +++ b/hw/arm/olimex-stm32-h405.c @@ -77,6 +77,10 @@ static const TypeInfo olimex_stm32_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("olimex-stm32-h405"), .parent =3D TYPE_MACHINE, .class_init =3D olimex_stm32_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/omap_sx1.c b/hw/arm/omap_sx1.c index aa1e96b3ad7..9f90f95b9ee 100644 --- a/hw/arm/omap_sx1.c +++ b/hw/arm/omap_sx1.c @@ -219,6 +219,10 @@ static const TypeInfo sx1_machine_v2_type =3D { .name =3D MACHINE_TYPE_NAME("sx1"), .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v2_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void sx1_machine_v1_class_init(ObjectClass *oc, void *data) @@ -238,6 +242,10 @@ static const TypeInfo sx1_machine_v1_type =3D { .name =3D MACHINE_TYPE_NAME("sx1-v1"), .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v1_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void sx1_machine_init(void) diff --git a/hw/arm/orangepi.c b/hw/arm/orangepi.c index 6821033bfd7..f539b2fc3a4 100644 --- a/hw/arm/orangepi.c +++ b/hw/arm/orangepi.c @@ -130,6 +130,10 @@ static const TypeInfo orangepi_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("orangepi-pc"), .parent =3D TYPE_MACHINE, .class_init =3D orangepi_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c index dce35ca11aa..b8b947bc29e 100644 --- a/hw/arm/raspi.c +++ b/hw/arm/raspi.c @@ -394,23 +394,43 @@ static const TypeInfo raspi_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("raspi0"), .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi0_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("raspi1ap"), .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi1ap_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("raspi2b"), .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi2b_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #ifdef TARGET_AARCH64 }, { .name =3D MACHINE_TYPE_NAME("raspi3ap"), .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi3ap_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name =3D MACHINE_TYPE_NAME("raspi3b"), .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi3b_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #endif }, { .name =3D TYPE_RASPI_MACHINE, diff --git a/hw/arm/raspi4b.c b/hw/arm/raspi4b.c index f6de103a3e1..8074cd80b4d 100644 --- a/hw/arm/raspi4b.c +++ b/hw/arm/raspi4b.c @@ -127,6 +127,10 @@ static const TypeInfo raspi4b_machine_type =3D { .parent =3D TYPE_RASPI_BASE_MACHINE, .instance_size =3D sizeof(Raspi4bMachineState), .class_init =3D raspi4b_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void raspi4b_machine_register_type(void) diff --git a/hw/arm/realview.c b/hw/arm/realview.c index 008eeaf049a..2ccee583117 100644 --- a/hw/arm/realview.c +++ b/hw/arm/realview.c @@ -431,6 +431,10 @@ static const TypeInfo realview_eb_type =3D { .name =3D MACHINE_TYPE_NAME("realview-eb"), .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void realview_eb_mpcore_class_init(ObjectClass *oc, void *data) @@ -452,6 +456,10 @@ static const TypeInfo realview_eb_mpcore_type =3D { .name =3D MACHINE_TYPE_NAME("realview-eb-mpcore"), .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_mpcore_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void realview_pb_a8_class_init(ObjectClass *oc, void *data) @@ -471,6 +479,10 @@ static const TypeInfo realview_pb_a8_type =3D { .name =3D MACHINE_TYPE_NAME("realview-pb-a8"), .parent =3D TYPE_MACHINE, .class_init =3D realview_pb_a8_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void realview_pbx_a9_class_init(ObjectClass *oc, void *data) @@ -491,6 +503,10 @@ static const TypeInfo realview_pbx_a9_type =3D { .name =3D MACHINE_TYPE_NAME("realview-pbx-a9"), .parent =3D TYPE_MACHINE, .class_init =3D realview_pbx_a9_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void realview_machine_init(void) diff --git a/hw/arm/sabrelite.c b/hw/arm/sabrelite.c index ea59ba301e7..a4c1dd7edc1 100644 --- a/hw/arm/sabrelite.c +++ b/hw/arm/sabrelite.c @@ -120,6 +120,10 @@ static const TypeInfo sabrelite_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("sabrelite"), .parent =3D TYPE_MACHINE, .class_init =3D sabrelite_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c index aa09d7a0917..138b8a4bf7f 100644 --- a/hw/arm/sbsa-ref.c +++ b/hw/arm/sbsa-ref.c @@ -920,6 +920,10 @@ static const TypeInfo sbsa_ref_info =3D { .instance_init =3D sbsa_ref_instance_init, .class_init =3D sbsa_ref_class_init, .instance_size =3D sizeof(SBSAMachineState), + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void sbsa_ref_machine_init(void) diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c index cbe914c93e9..1e696e25c42 100644 --- a/hw/arm/stellaris.c +++ b/hw/arm/stellaris.c @@ -1427,6 +1427,10 @@ static const TypeInfo lm3s811evb_type =3D { .name =3D MACHINE_TYPE_NAME("lm3s811evb"), .parent =3D TYPE_MACHINE, .class_init =3D lm3s811evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 /* @@ -1448,6 +1452,10 @@ static const TypeInfo lm3s6965evb_type =3D { .name =3D MACHINE_TYPE_NAME("lm3s6965evb"), .parent =3D TYPE_MACHINE, .class_init =3D lm3s6965evb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void stellaris_machine_init(void) diff --git a/hw/arm/stm32vldiscovery.c b/hw/arm/stm32vldiscovery.c index 3a9728ca719..7c267fd880b 100644 --- a/hw/arm/stm32vldiscovery.c +++ b/hw/arm/stm32vldiscovery.c @@ -74,6 +74,10 @@ static const TypeInfo stm32vldiscovery_machine_types[] = =3D { .name =3D MACHINE_TYPE_NAME("stm32vldiscovery"), .parent =3D TYPE_MACHINE, .class_init =3D stm32vldiscovery_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c index 35766445fa4..4c71a73b3b1 100644 --- a/hw/arm/versatilepb.c +++ b/hw/arm/versatilepb.c @@ -431,6 +431,10 @@ static const TypeInfo versatilepb_type =3D { .name =3D MACHINE_TYPE_NAME("versatilepb"), .parent =3D TYPE_MACHINE, .class_init =3D versatilepb_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void versatileab_class_init(ObjectClass *oc, void *data) @@ -452,6 +456,10 @@ static const TypeInfo versatileab_type =3D { .name =3D MACHINE_TYPE_NAME("versatileab"), .parent =3D TYPE_MACHINE, .class_init =3D versatileab_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void versatile_machine_init(void) diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index 76c6107766c..fad4a9b8cfa 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -850,6 +850,10 @@ static const TypeInfo vexpress_a9_info =3D { .parent =3D TYPE_VEXPRESS_MACHINE, .class_init =3D vexpress_a9_class_init, .instance_init =3D vexpress_a9_instance_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static const TypeInfo vexpress_a15_info =3D { @@ -857,6 +861,10 @@ static const TypeInfo vexpress_a15_info =3D { .parent =3D TYPE_VEXPRESS_MACHINE, .class_init =3D vexpress_a15_class_init, .instance_init =3D vexpress_a15_instance_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void vexpress_machine_init(void) diff --git a/hw/arm/virt.c b/hw/arm/virt.c index a96452f17a4..41918eb760b 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -123,6 +123,10 @@ static void arm_virt_compat_set(MachineClass *mc) .name =3D MACHINE_VER_TYPE_NAME("virt", __VA_ARGS__), \ .parent =3D TYPE_VIRT_MACHINE, \ .class_init =3D MACHINE_VER_SYM(class_init, virt, __VA_ARGS__), \ + .interfaces =3D (InterfaceInfo[]) { \ + { TYPE_TARGET_AARCH64_MACHINE }, \ + { }, \ + }, \ }; \ static void MACHINE_VER_SYM(register, virt, __VA_ARGS__)(void) \ { \ diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index b8916665ed6..efcbddffda0 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -480,6 +480,10 @@ static const TypeInfo zynq_machine_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D zynq_machine_class_init, .instance_size =3D sizeof(ZynqMachineState), + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void zynq_machine_register_types(void) diff --git a/hw/arm/xlnx-versal-virt.c b/hw/arm/xlnx-versal-virt.c index 0c6f0359e3d..89fd79f81e3 100644 --- a/hw/arm/xlnx-versal-virt.c +++ b/hw/arm/xlnx-versal-virt.c @@ -833,6 +833,10 @@ static const TypeInfo versal_virt_machine_init_typeinf= o =3D { .instance_init =3D versal_virt_machine_instance_init, .instance_size =3D sizeof(VersalVirt), .instance_finalize =3D versal_virt_machine_finalize, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void versal_virt_machine_init_register_types(void) diff --git a/hw/arm/xlnx-zcu102.c b/hw/arm/xlnx-zcu102.c index 4fdb153e4d8..1ca4ac6a675 100644 --- a/hw/arm/xlnx-zcu102.c +++ b/hw/arm/xlnx-zcu102.c @@ -303,6 +303,10 @@ static const TypeInfo xlnx_zcu102_machine_init_typeinf= o =3D { .class_init =3D xlnx_zcu102_machine_class_init, .instance_init =3D xlnx_zcu102_machine_instance_init, .instance_size =3D sizeof(XlnxZCU102), + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; =20 static void xlnx_zcu102_machine_init_register_types(void) --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937538; cv=none; d=zohomail.com; s=zohoarc; b=dK0ErUbcAW3hJVt5jdRvzXoBWAgMLui9/FG/gqRklhEW03mescOer3kLT8Wj9MI3iaRgCgI2/hAaM4q2uccA+nu/ibZ+lOnBxj1xMGK1ymUFxvMv+azc6RO6hGc59qzOxkcFE7/19FYQUlARLPbvSiNaTOkl29wglY29lBW1XAI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937538; 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=uj/SXX9ORqUNqwaIUFCu3a62k7kjC1ko71xFmGry47g=; b=O3Qt80o2WZ16pNqnutATQoiiej9RltH8dwbimHOvdrDgkPZN1YTaLQ4f5X7mUow88IXw5WjK/5iznaAHFntfQknwdSHtFFG9GF9TiXQfiiCokT7dzpoK2ZtQNMW2Axg2ZjvzO9MDIWaQZ/YefJNwWraHut0m+dJIrgigTuLo+ZA= 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 174493753880222.978076679267815; Thu, 17 Apr 2025 17:52:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5ZxC-0001po-VG; Thu, 17 Apr 2025 20:51:38 -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 1u5ZxA-0001pW-KM for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:36 -0400 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5Zx7-0005u9-8F for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:36 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43ce70f9afbso11923295e9.0 for ; Thu, 17 Apr 2025 17:51:32 -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-39efa4207e6sm1159350f8f.7.2025.04.17.17.51.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937491; x=1745542291; 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=uj/SXX9ORqUNqwaIUFCu3a62k7kjC1ko71xFmGry47g=; b=FyV6x8S+M6eW+TM3EL1NvIw9mB/3USlRwLJuMYXTFNFskIc35zUGQW4mQZYaVcZIPV qA3BGwyKe5CdAnHFburvLnQSldVwhsxOubk+ODjCuWNcnfnolAmioBVuGuoUXGho9UV+ LoqExbNvnSxrHgt8vl56UQ4U02t0mzsT6W0u7CDKchZ/DkbzOz9qahQzVyfGHxUJijiU RDz564xyr+8S0Lm0A+rHkhf62xjtihNqZxIcATDcrokPCrLTFHWu+YDIUlEfZO/oxjfk A+li4POtqm8QtkuJFHQ405iPGyNIe6JMyUCWohzPaGP1+KIQ3PDYzelSW0/Kd8h3TmDZ 7kiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937491; x=1745542291; 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=uj/SXX9ORqUNqwaIUFCu3a62k7kjC1ko71xFmGry47g=; b=HRTSvX3OihvtIoEpnuy/0q5MiTA5FxQxLXv6cLnIO4uzNb0/ZZ9OQgZvNUFiW4sphW NkkZNELzqtqNw+uIJ7H3zbehgJYWfn3nttLVSrqtBKJGSqwjJ+zBnvEWnsm8xbEHlZGc sXxhHW087nU0ABmVEvAaz/hsdse3Oy37WMGY87EOL4TTf/CxU0zU1ksnKPlVwT6uMVX/ cDc2qm4elF69NopsMAlAFmIe69AjA3MYMa8T8QfgysAiVG0l4Rctvo35rNnXYzwtV0Mi PX6VOqy+px094C60q8/fvyW5j0jOjEe/VflP9EOfMwcUneZt9IS9IEe7hAB3gbP6GqET wpGA== X-Forwarded-Encrypted: i=1; AJvYcCXep0wb6YF6nqltCH6QNguwhBJ1gPjhPW9X6LLalsYrTaY3tOz+HFiviN9WlGQBBdQsyuZ2QKkLDiiU@nongnu.org X-Gm-Message-State: AOJu0YyR5q+DZKauwLUCUsmB+qexZ2kFfx5Rf1y+cBwqxlAhg14jZj2D mQ75JtgHSfhOknnXr639kMEONrJpu89amPPpk7KN/X8/Lmu2Z8hoyqORKhtLA+k= X-Gm-Gg: ASbGncsO9ss9bqar9Ru1aUoEzPbFdk9AOZCutw0v5EK48Jkkb+s8iQ2vzO83fdgpMsS TIclTDoOP3Jus9vwdluRS0dvldRG2Fmc9SmFfvI4skqmfoHIJShaixONvxJ7ZY/AlT4Bc5RhZzT tHmUxyEUuZMke46PMhgtdgmIqn1ZJm4vigeyK63HMlplAxyy3MIRTIFCn3bJaiiKA9I/aw+Gzo+ 8UnZmdli/4swEbqVMXLa79GJpwsHZEuYClVZ2ZvhTh+vDOzEBg3YKdklO6RbHd39qLa3JqfqHXD PXk36SOJAIyWiN2M7nPsSy3+4b7gBiLwrMT3QyNrVX/xIV03XSLRNwQQFjLOk5ZlE1GyB2RWUX1 Xpj5fToNr4sCV7pLYC6zT X-Google-Smtp-Source: AGHT+IG/YhGjTzKfc5SHNjrydlihfFUTAO4v2B9FGnNAGFf6gjI0rRI0tOckKTr4Ks7PUsYMqPP8uA== X-Received: by 2002:a05:600c:154f:b0:43c:fee3:2bce with SMTP id 5b1f17b1804b1-4406abfabe7mr4550895e9.26.1744937491505; Thu, 17 Apr 2025 17:51:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 06/11] hw/arm: Filter machine types for qemu-system-arm binary Date: Fri, 18 Apr 2025 02:50:54 +0200 Message-ID: <20250418005059.4436-7-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937540228019000 Very few machines are restricted to the qemu-system-aarch64 binary: $ git grep TARGET_AARCH64 hw/arm/meson.build hw/arm/meson.build:31:arm_common_ss.add(when: ['CONFIG_RASPI', 'TARGET_AA= RCH64'], if_true: files('bcm2838.c', 'raspi4b.c')) hw/arm/meson.build:50:arm_common_ss.add(when: ['CONFIG_ASPEED_SOC', 'TARG= ET_AARCH64'], if_true: files('aspeed_ast27x0.c')) $ git grep -W AARCH64 hw/arm/Kconfig hw/arm/Kconfig=3D185=3Dconfig SBSA_REF hw/arm/Kconfig-186- bool hw/arm/Kconfig-187- default y hw/arm/Kconfig:188: depends on TCG && AARCH64 -- hw/arm/Kconfig=3D413=3Dconfig XLNX_ZYNQMP_ARM hw/arm/Kconfig-414- bool hw/arm/Kconfig-415- default y if PIXMAN hw/arm/Kconfig:416: depends on TCG && AARCH64 -- hw/arm/Kconfig=3D435=3Dconfig XLNX_VERSAL hw/arm/Kconfig-436- bool hw/arm/Kconfig-437- default y hw/arm/Kconfig:438: depends on TCG && AARCH64 -- hw/arm/Kconfig=3D475=3Dconfig NPCM8XX hw/arm/Kconfig-476- bool hw/arm/Kconfig-477- default y hw/arm/Kconfig:478: depends on TCG && AARCH64 -- hw/arm/Kconfig=3D605=3Dconfig FSL_IMX8MP_EVK hw/arm/Kconfig-606- bool hw/arm/Kconfig-607- default y hw/arm/Kconfig:608: depends on TCG && AARCH64 $ git grep -wW TARGET_AARCH64 hw/arm | fgrep -4 MACHINE_TYPE_NAME ... hw/arm/aspeed.c:1939:#ifdef TARGET_AARCH64 hw/arm/aspeed.c-1940- }, { hw/arm/aspeed.c-1941- .name =3D MACHINE_TYPE_NAME("ast270= 0a0-evb"), hw/arm/aspeed.c-1949- .name =3D MACHINE_TYPE_NAME("ast270= 0a1-evb"), hw/arm/raspi.c:420:#ifdef TARGET_AARCH64 hw/arm/raspi.c-421- }, { hw/arm/raspi.c-422- .name =3D MACHINE_TYPE_NAME("raspi3a= p"), hw/arm/raspi.c-429- }, { hw/arm/raspi.c-430- .name =3D MACHINE_TYPE_NAME("raspi3b= "), This can be verified as: $ diff -u0 <(qemu-system-arm -M help) <(qemu-system-aarch64 -M help) @@ -5,3 +4,0 @@ -ast2700-evb Aspeed AST2700 A0 EVB (Cortex-A35) (alias of ast270= 0a0-evb) -ast2700a0-evb Aspeed AST2700 A0 EVB (Cortex-A35) -ast2700a1-evb Aspeed AST2700 A1 EVB (Cortex-A35) @@ -22 +18,0 @@ -imx8mp-evk NXP i.MX 8M Plus EVK Board @@ -49 +44,0 @@ -npcm845-evb Nuvoton NPCM845 Evaluation Board (Cortex-A35) @@ -63,3 +57,0 @@ -raspi3ap Raspberry Pi 3A+ (revision 1.0) -raspi3b Raspberry Pi 3B (revision 1.2) -raspi4b Raspberry Pi 4B (revision 1.5) @@ -72 +63,0 @@ -sbsa-ref QEMU 'SBSA Reference' ARM Virtual Machine @@ -116,2 +106,0 @@ -xlnx-versal-virt Xilinx Versal Virtual development board -xlnx-zcu102 Xilinx ZynqMP ZCU102 board with 4xA53s and 2xR5Fs b= ased on the value of smp Register the TYPE_TARGET_ARM_MACHINE interface for all the machines not listed previously. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- hw/arm/aspeed.c | 20 ++++++++++++++++++++ hw/arm/b-l475e-iot01a.c | 1 + hw/arm/bananapi_m2u.c | 1 + hw/arm/collie.c | 1 + hw/arm/cubieboard.c | 1 + hw/arm/digic_boards.c | 1 + hw/arm/exynos4_boards.c | 2 ++ hw/arm/fby35.c | 1 + hw/arm/highbank.c | 2 ++ hw/arm/imx25_pdk.c | 1 + hw/arm/integratorcp.c | 1 + hw/arm/kzm.c | 1 + hw/arm/mcimx6ul-evk.c | 1 + hw/arm/mcimx7d-sabre.c | 1 + hw/arm/microbit.c | 1 + hw/arm/mps2-tz.c | 4 ++++ hw/arm/mps2.c | 4 ++++ hw/arm/mps3r.c | 1 + hw/arm/msf2-som.c | 1 + hw/arm/musca.c | 2 ++ hw/arm/musicpal.c | 1 + hw/arm/netduino2.c | 1 + hw/arm/netduinoplus2.c | 1 + hw/arm/npcm7xx_boards.c | 5 +++++ hw/arm/olimex-stm32-h405.c | 1 + hw/arm/omap_sx1.c | 2 ++ hw/arm/orangepi.c | 1 + hw/arm/raspi.c | 3 +++ hw/arm/realview.c | 4 ++++ hw/arm/sabrelite.c | 1 + hw/arm/stellaris.c | 2 ++ hw/arm/stm32vldiscovery.c | 1 + hw/arm/versatilepb.c | 2 ++ hw/arm/vexpress.c | 2 ++ hw/arm/virt.c | 1 + hw/arm/xilinx_zynq.c | 1 + 36 files changed, 77 insertions(+) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index ca7004c335a..d54ee2d4b53 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -1761,6 +1761,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_palmetto_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1769,6 +1770,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_supermicrox11_bmc_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1777,6 +1779,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_supermicro_x11spi_bmc_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1785,6 +1788,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2500_evb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1793,6 +1797,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_romulus_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1801,6 +1806,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_sonorapass_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1809,6 +1815,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_witherspoon_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1817,6 +1824,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_ast2600_evb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1825,6 +1833,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_yosemitev2_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1833,6 +1842,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_tiogapass_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1841,6 +1851,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_g220a_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1849,6 +1860,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_qcom_dc_scm_v1_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1857,6 +1869,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_qcom_firework_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1865,6 +1878,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_fp5280g2_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1873,6 +1887,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_quanta_q71l_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1881,6 +1896,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_rainier_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1889,6 +1905,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_fuji_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1897,6 +1914,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_machine_bletchley_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1905,6 +1923,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D MACHINE_TYPE_NAME("ast2600-evb"), .class_init =3D aspeed_machine_fby35_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1913,6 +1932,7 @@ static const TypeInfo aspeed_machine_types[] =3D { .parent =3D TYPE_ASPEED_MACHINE, .class_init =3D aspeed_minibmc_machine_ast1030_evb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/b-l475e-iot01a.c b/hw/arm/b-l475e-iot01a.c index cc4b9d6c3b5..ec838f59c13 100644 --- a/hw/arm/b-l475e-iot01a.c +++ b/hw/arm/b-l475e-iot01a.c @@ -132,6 +132,7 @@ static const TypeInfo bl475e_machine_type[] =3D { .instance_size =3D sizeof(Bl475eMachineState), .class_init =3D bl475e_machine_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/bananapi_m2u.c b/hw/arm/bananapi_m2u.c index d9871a796bb..2d844af8fd3 100644 --- a/hw/arm/bananapi_m2u.c +++ b/hw/arm/bananapi_m2u.c @@ -151,6 +151,7 @@ static const TypeInfo bananapi_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D bpim2u_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/collie.c b/hw/arm/collie.c index 16e862e15b6..bb7cd26c28c 100644 --- a/hw/arm/collie.c +++ b/hw/arm/collie.c @@ -87,6 +87,7 @@ static const TypeInfo collie_machine_typeinfo =3D { .class_init =3D collie_machine_class_init, .instance_size =3D sizeof(CollieMachineState), .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/cubieboard.c b/hw/arm/cubieboard.c index dd40d65554d..55d869e815e 100644 --- a/hw/arm/cubieboard.c +++ b/hw/arm/cubieboard.c @@ -132,6 +132,7 @@ static const TypeInfo cubieboard_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D cubieboard_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/digic_boards.c b/hw/arm/digic_boards.c index f55309082ac..a8a59644f4c 100644 --- a/hw/arm/digic_boards.c +++ b/hw/arm/digic_boards.c @@ -153,6 +153,7 @@ static const TypeInfo digic_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D digic_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c index b55e364d962..cff2a52e3ff 100644 --- a/hw/arm/exynos4_boards.c +++ b/hw/arm/exynos4_boards.c @@ -173,6 +173,7 @@ static const TypeInfo nuri_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D nuri_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -197,6 +198,7 @@ static const TypeInfo smdkc210_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D smdkc210_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/fby35.c b/hw/arm/fby35.c index de6b32ce532..d9584b57e83 100644 --- a/hw/arm/fby35.c +++ b/hw/arm/fby35.c @@ -188,6 +188,7 @@ static const TypeInfo fby35_types[] =3D { .instance_size =3D sizeof(Fby35State), .instance_init =3D fby35_instance_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c index e517cf3c7f6..6009f22f201 100644 --- a/hw/arm/highbank.c +++ b/hw/arm/highbank.c @@ -364,6 +364,7 @@ static const TypeInfo highbank_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D highbank_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -392,6 +393,7 @@ static const TypeInfo midway_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D midway_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c index da8479ca608..669e126bfc9 100644 --- a/hw/arm/imx25_pdk.c +++ b/hw/arm/imx25_pdk.c @@ -158,6 +158,7 @@ static const TypeInfo imx25_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D imx25_pdk_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c index 5599cf60707..d982df8fe45 100644 --- a/hw/arm/integratorcp.c +++ b/hw/arm/integratorcp.c @@ -761,6 +761,7 @@ static const TypeInfo integratorcp_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D integratorcp_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/kzm.c b/hw/arm/kzm.c index 208546205be..b2d7a312581 100644 --- a/hw/arm/kzm.c +++ b/hw/arm/kzm.c @@ -147,6 +147,7 @@ static const TypeInfo kzm_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D kzm_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/mcimx6ul-evk.c b/hw/arm/mcimx6ul-evk.c index 65e6134862e..2cf124ca2b5 100644 --- a/hw/arm/mcimx6ul-evk.c +++ b/hw/arm/mcimx6ul-evk.c @@ -85,6 +85,7 @@ static const TypeInfo imx6_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D mcimx6ul_evk_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/mcimx7d-sabre.c b/hw/arm/mcimx7d-sabre.c index 1f88dc03915..1a8d3e453cd 100644 --- a/hw/arm/mcimx7d-sabre.c +++ b/hw/arm/mcimx7d-sabre.c @@ -85,6 +85,7 @@ static const TypeInfo imx7_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D mcimx7d_sabre_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/microbit.c b/hw/arm/microbit.c index e537735e247..ad4fe9febd0 100644 --- a/hw/arm/microbit.c +++ b/hw/arm/microbit.c @@ -75,6 +75,7 @@ static const TypeInfo microbit_info =3D { .instance_size =3D sizeof(MicrobitMachineState), .class_init =3D microbit_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/mps2-tz.c b/hw/arm/mps2-tz.c index 6cd36ee4037..0676102612d 100644 --- a/hw/arm/mps2-tz.c +++ b/hw/arm/mps2-tz.c @@ -1464,6 +1464,7 @@ static const TypeInfo mps2tz_an505_info =3D { .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps2tz_an505_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1474,6 +1475,7 @@ static const TypeInfo mps2tz_an521_info =3D { .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps2tz_an521_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1484,6 +1486,7 @@ static const TypeInfo mps3tz_an524_info =3D { .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps3tz_an524_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1494,6 +1497,7 @@ static const TypeInfo mps3tz_an547_info =3D { .parent =3D TYPE_MPS2TZ_MACHINE, .class_init =3D mps3tz_an547_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/mps2.c b/hw/arm/mps2.c index 709d7d0a08e..e61566a0316 100644 --- a/hw/arm/mps2.c +++ b/hw/arm/mps2.c @@ -564,6 +564,7 @@ static const TypeInfo mps2_an385_info =3D { .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an385_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -574,6 +575,7 @@ static const TypeInfo mps2_an386_info =3D { .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an386_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -584,6 +586,7 @@ static const TypeInfo mps2_an500_info =3D { .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an500_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -594,6 +597,7 @@ static const TypeInfo mps2_an511_info =3D { .parent =3D TYPE_MPS2_MACHINE, .class_init =3D mps2_an511_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/mps3r.c b/hw/arm/mps3r.c index d1a72c7775b..16e4deec7b3 100644 --- a/hw/arm/mps3r.c +++ b/hw/arm/mps3r.c @@ -635,6 +635,7 @@ static const TypeInfo mps3r_machine_types[] =3D { .parent =3D TYPE_MPS3R_MACHINE, .class_init =3D mps3r_an536_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/msf2-som.c b/hw/arm/msf2-som.c index 11988b6aa6d..c0feff92fbd 100644 --- a/hw/arm/msf2-som.c +++ b/hw/arm/msf2-som.c @@ -115,6 +115,7 @@ static const TypeInfo msf2_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D emcraft_sf2_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/musca.c b/hw/arm/musca.c index 3a11b3d1cd6..e5e9950d008 100644 --- a/hw/arm/musca.c +++ b/hw/arm/musca.c @@ -658,6 +658,7 @@ static const TypeInfo musca_a_info =3D { .parent =3D TYPE_MUSCA_MACHINE, .class_init =3D musca_a_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -668,6 +669,7 @@ static const TypeInfo musca_b1_info =3D { .parent =3D TYPE_MUSCA_MACHINE, .class_init =3D musca_b1_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c index 9cf8eec8b13..cb352512807 100644 --- a/hw/arm/musicpal.c +++ b/hw/arm/musicpal.c @@ -1382,6 +1382,7 @@ static const TypeInfo musicpal_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D musicpal_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/netduino2.c b/hw/arm/netduino2.c index e6e140ed6bf..9443b5615e5 100644 --- a/hw/arm/netduino2.c +++ b/hw/arm/netduino2.c @@ -72,6 +72,7 @@ static const TypeInfo netduino_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D netduino2_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/netduinoplus2.c b/hw/arm/netduinoplus2.c index b54e990b5bd..2003b43ad10 100644 --- a/hw/arm/netduinoplus2.c +++ b/hw/arm/netduinoplus2.c @@ -72,6 +72,7 @@ static const TypeInfo netduino_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D netduinoplus2_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/npcm7xx_boards.c b/hw/arm/npcm7xx_boards.c index 4d2c52f3422..6189509a3f9 100644 --- a/hw/arm/npcm7xx_boards.c +++ b/hw/arm/npcm7xx_boards.c @@ -550,6 +550,7 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D npcm750_evb_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -558,6 +559,7 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D gsj_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -566,6 +568,7 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D gbs_bmc_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -574,6 +577,7 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D kudo_bmc_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -582,6 +586,7 @@ static const TypeInfo npcm7xx_machine_types[] =3D { .parent =3D TYPE_NPCM7XX_MACHINE, .class_init =3D mori_bmc_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/olimex-stm32-h405.c b/hw/arm/olimex-stm32-h405.c index 4344bef4db1..9ff1239a127 100644 --- a/hw/arm/olimex-stm32-h405.c +++ b/hw/arm/olimex-stm32-h405.c @@ -78,6 +78,7 @@ static const TypeInfo olimex_stm32_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D olimex_stm32_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/omap_sx1.c b/hw/arm/omap_sx1.c index 9f90f95b9ee..a4b65d1b623 100644 --- a/hw/arm/omap_sx1.c +++ b/hw/arm/omap_sx1.c @@ -220,6 +220,7 @@ static const TypeInfo sx1_machine_v2_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v2_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -243,6 +244,7 @@ static const TypeInfo sx1_machine_v1_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v1_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/orangepi.c b/hw/arm/orangepi.c index f539b2fc3a4..bbd9082cff1 100644 --- a/hw/arm/orangepi.c +++ b/hw/arm/orangepi.c @@ -131,6 +131,7 @@ static const TypeInfo orangepi_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D orangepi_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c index b8b947bc29e..8a2da650087 100644 --- a/hw/arm/raspi.c +++ b/hw/arm/raspi.c @@ -395,6 +395,7 @@ static const TypeInfo raspi_machine_types[] =3D { .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi0_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -403,6 +404,7 @@ static const TypeInfo raspi_machine_types[] =3D { .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi1ap_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -411,6 +413,7 @@ static const TypeInfo raspi_machine_types[] =3D { .parent =3D TYPE_RASPI_MACHINE, .class_init =3D raspi2b_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/realview.c b/hw/arm/realview.c index 2ccee583117..c925d1483f6 100644 --- a/hw/arm/realview.c +++ b/hw/arm/realview.c @@ -432,6 +432,7 @@ static const TypeInfo realview_eb_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -457,6 +458,7 @@ static const TypeInfo realview_eb_mpcore_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_mpcore_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -480,6 +482,7 @@ static const TypeInfo realview_pb_a8_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D realview_pb_a8_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -504,6 +507,7 @@ static const TypeInfo realview_pbx_a9_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D realview_pbx_a9_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/sabrelite.c b/hw/arm/sabrelite.c index a4c1dd7edc1..1bd82c404af 100644 --- a/hw/arm/sabrelite.c +++ b/hw/arm/sabrelite.c @@ -121,6 +121,7 @@ static const TypeInfo sabrelite_machine_types[] =3D { .parent =3D TYPE_MACHINE, .class_init =3D sabrelite_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c index 1e696e25c42..2cb93a6d3af 100644 --- a/hw/arm/stellaris.c +++ b/hw/arm/stellaris.c @@ -1428,6 +1428,7 @@ static const TypeInfo lm3s811evb_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D lm3s811evb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1453,6 +1454,7 @@ static const TypeInfo lm3s6965evb_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D lm3s6965evb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/stm32vldiscovery.c b/hw/arm/stm32vldiscovery.c index 7c267fd880b..f0881b3c8ea 100644 --- a/hw/arm/stm32vldiscovery.c +++ b/hw/arm/stm32vldiscovery.c @@ -75,6 +75,7 @@ static const TypeInfo stm32vldiscovery_machine_types[] = =3D { .parent =3D TYPE_MACHINE, .class_init =3D stm32vldiscovery_machine_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c index 4c71a73b3b1..e353ef025d9 100644 --- a/hw/arm/versatilepb.c +++ b/hw/arm/versatilepb.c @@ -432,6 +432,7 @@ static const TypeInfo versatilepb_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D versatilepb_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -457,6 +458,7 @@ static const TypeInfo versatileab_type =3D { .parent =3D TYPE_MACHINE, .class_init =3D versatileab_class_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index fad4a9b8cfa..aade41d0317 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -851,6 +851,7 @@ static const TypeInfo vexpress_a9_info =3D { .class_init =3D vexpress_a9_class_init, .instance_init =3D vexpress_a9_instance_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -862,6 +863,7 @@ static const TypeInfo vexpress_a15_info =3D { .class_init =3D vexpress_a15_class_init, .instance_init =3D vexpress_a15_instance_init, .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 41918eb760b..b2534a3c43e 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -124,6 +124,7 @@ static void arm_virt_compat_set(MachineClass *mc) .parent =3D TYPE_VIRT_MACHINE, \ .class_init =3D MACHINE_VER_SYM(class_init, virt, __VA_ARGS__), \ .interfaces =3D (InterfaceInfo[]) { \ + { TYPE_TARGET_ARM_MACHINE }, \ { TYPE_TARGET_AARCH64_MACHINE }, \ { }, \ }, \ diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index efcbddffda0..e8f43e193c0 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -481,6 +481,7 @@ static const TypeInfo zynq_machine_type =3D { .class_init =3D zynq_machine_class_init, .instance_size =3D sizeof(ZynqMachineState), .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937530; cv=none; d=zohomail.com; s=zohoarc; b=B7qEl1/oyw7EYWVpRZ/4veDvcT6aiAz0X5fgsgtxNRAvsICSFVZqOPrv9ST0ROJx2c4jnHwNo32m1S4GXfTmrW8CJlaK/yNScfxRJBSF+7RrJeWQVOam93rwQqJznd4cnPnT4HCsMNlCdM/TkkjaO7uAeJ+r4Mx/fspDTW3Uj1M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937530; 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=HcN3OSzYH87XaR5VdWjr7Gc7b57JUTMWUSMgbSiV6+A=; b=dvcqASqEfwJJuim8zVzXTvuMglLWDWDpa+BSTP4ZbIYB7H1o6v8/J40hmcmidR51TcRQWgMIosfKEtGDWqQFur0pi0cl85s6pXW25sSdz3MUDUJT02Y+m2ascP0VZvKRz1keIHR6xPp1xkm+wEwkRdgbyt1fB6BQUGchYysnYac= 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 1744937530571185.30265533680324; Thu, 17 Apr 2025 17:52:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5ZxG-0001yG-5e; Thu, 17 Apr 2025 20:51:42 -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 1u5ZxE-0001wj-QO for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:40 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5ZxC-000608-W6 for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:40 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-43ce71582e9so10936265e9.1 for ; Thu, 17 Apr 2025 17:51:38 -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-39efa421c79sm1161834f8f.1.2025.04.17.17.51.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937497; x=1745542297; 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=HcN3OSzYH87XaR5VdWjr7Gc7b57JUTMWUSMgbSiV6+A=; b=FYCOtZ46YaXyt24K4JBYLDBH0FgMneKJ5OiqqLhhw5dW5yzIZOIBDciht9O9kVFpCT XnrYzQ0BcPzoPjncqgNcvHDpipmMMrcswFoqegXWCPsOCHIdbdIa80rX38mmSkSSabUX bj2X9nEkrhRMdft4yKMp8m2LBANaLLi1GADPjE4P2vdZBF8Ivx4yoL8KlJ65EqNu5vda feEBZsukvZrZyx+RFrlBR8pihITZb8hb77fwi++WSYua/foG7quNPDQcS5onDZ5UA0m0 UW4MttSJOe8RI0SMy71GvTDCI8+P3Q1VBqA8weQEMW07ji1pPiGyvJQTjB8Kppd0CSFi TCQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937497; x=1745542297; 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=HcN3OSzYH87XaR5VdWjr7Gc7b57JUTMWUSMgbSiV6+A=; b=bNR1znt3j4OZmmYOuR5DQiuA7dFhsiOqn5siF4MoGf7iZt1YtyAzDo33yNFrudgYZl 5DNeQJryXzzAB4nGtnnBX9cDCFJovJqLQGkNJRz961EazLanOUnl+VLNyyW92m8vSObE v35YGS81pAvQz/QK5kU2Id/5jgVaPQLc4HQ5tcgkKMxqcxomJfo7u8rgk4Osn+i7cD8G 9HEUGuoLBwvk/0wQ2bqdhES1LRjTdMB5ED9lqdhYOnURbsCe4+31PSroRjv1At1aB61q XE9KmWdOw14pmxTXlhOuf/VggRJA/82Sryu7pROAXgubrCEdITu5Jzt4C1XtGJ2PQMB5 lOVA== X-Forwarded-Encrypted: i=1; AJvYcCUHP4AeWIrK2mw3PlugILwwTkvwhACo0uIvWaix6iYw2A+iviAbUPVvFeC3ZUAE8gZMhWAOzMS7XYoa@nongnu.org X-Gm-Message-State: AOJu0YzgYl11fwa3hF1NeXB8W2g0s/VIiC38jp01C0SvO21n4q8YHDR9 Chj8lPIVbMTHoyN1GHDUfkJIMScUvd0allg5vmRM56Rf70AAiWiYgLnV04SZrgI= X-Gm-Gg: ASbGnctioe0617TQJETyN3zPaXgiOgjOqGbnbiE0axF/y7T7PN2+HZiJRxBwfrEFeXR 0wXTWFChpuaMvRzfW+I1+QZJsXNs1Yrd5hUyWhfMH5juhuWrLMe+u1s2GBVKmMRkQgy/TbHrTCP HKem5n3U61X2Gl42KGo28Ee96+eE88UIDXhRxyxcfCysQkow7oNdZ/ahIl5er0j8M2LPlSUREyF YRlGR+gRXL4ft01NUjbYB4CVM/0dvWxRi0i4BT+F1ojS1nXp+w261+iBGrxTmeAWn4ZVHIiCc6m jx36+5buz0rLjYetxLWJl91+aYiyctZf/I0Ob2xXu+ijRcyPjH/UGCWIIkNxImhJkGC/D5ERNVr l/Vy3DBKuXccitCiarau0SuI2NVgnJ6Q= X-Google-Smtp-Source: AGHT+IG0yw2/OpeoSXiMUPSQ2kRNwVDvWRW231w/OLeOkpGyhhNxZOWTdYBJgWdsIhCrf2wcbNeQRQ== X-Received: by 2002:a05:600c:4e0b:b0:43a:ed4d:716c with SMTP id 5b1f17b1804b1-4406ac0ef62mr5423695e9.22.1744937497566; Thu, 17 Apr 2025 17:51:37 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 07/11] hw/core: Allow ARM/Aarch64 binaries to use the 'none' machine Date: Fri, 18 Apr 2025 02:50:55 +0200 Message-ID: <20250418005059.4436-8-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937532747019100 When we'll start to use target_machine_interface_typename() to filter machines for the ARM/Aarch64 binaries, the 'none' machine will be filtered out. Register the proper interfaces to keep it available. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/core/null-machine.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hw/core/null-machine.c b/hw/core/null-machine.c index 1ccaf652eb4..614b52dae0d 100644 --- a/hw/core/null-machine.c +++ b/hw/core/null-machine.c @@ -62,6 +62,11 @@ static const TypeInfo null_machine_types[] =3D { .name =3D MACHINE_TYPE_NAME("none"), .parent =3D TYPE_MACHINE, .class_init =3D null_machine_class_init, + .interfaces =3D (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; =20 --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937542; cv=none; d=zohomail.com; s=zohoarc; b=ADk5Z5xB5tzv+Afm/S8bvYIAC3VYYQvwKvITN/6XcKA6tXHu5nQSm63GVfJUbtOMrDep6UvECUElQC3bQA1Y8ehz1jhqi2AgaZnW1s/hj2TondphXhlhDXFAY/3VLwHs4dEshfV/x6C1ZSgNRT4dGBDNXI2REimdZmyqAnCZujQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937542; 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=gm2dOsKzPvwvg/Tuqc3gLIr1jfZVElB4JK7LqftVN0s=; b=WNAaF/FbmdLyRHNo27iaQCgKe5A7YBGok1AZsGiQH/pBFy2ADrcqQ+5jbuKiDDveCwkwwKRDas9C2z653Y/CRFFGSLv1J4tsH1Lhh6Sq7KBlSmoz7DFmNHZxKS+qsAyFQVdEyDpJjmAWg+d68Op6Uqv1dWGbkXY8GkD+PeXMdgs= 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 1744937542297292.0559568625787; Thu, 17 Apr 2025 17:52:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5ZxN-0002C2-Du; Thu, 17 Apr 2025 20:51: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 1u5ZxK-00025F-Nq for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:47 -0400 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5ZxI-000663-WB for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:46 -0400 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-4394a0c65fcso14150795e9.1 for ; Thu, 17 Apr 2025 17:51:44 -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-4406d5bbd8asm2185285e9.23.2025.04.17.17.51.41 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937503; x=1745542303; 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=gm2dOsKzPvwvg/Tuqc3gLIr1jfZVElB4JK7LqftVN0s=; b=LSW3Cm1cob+cXDI+j6Wq8IvoAUgJciqXpX72kS6oG2GYgK9iSwV9Vm42Vqv2hLEAZl IidlcHy0qrtAutBgKMunqM2kQbIP5qxpDVXUjKwJsJWSSb53D60vCjhF4rzirrOcDzzI 8MaK6l4UBmXILv5Nlh3+fx0mhmnMqY0n4trGvdYE0GP0ESh8psl8PpP6Mo/s4902IT7L tuDmG/ucK/jG86DQLE5dV3vFgVWtggM/TNe1FQ20wGQxZ+fZzSPVqwMHPSzyJqrNZBck AMKebXF+HKBGNxROz2CA+htRLfdWArLUvuCCQ6ndI/2wmeYsRtFOR616vCqBwNB6VD9C o8Tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937503; x=1745542303; 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=gm2dOsKzPvwvg/Tuqc3gLIr1jfZVElB4JK7LqftVN0s=; b=CQI7Gtsk5fra7TrhJZpiwPoefWk22JTl6ftVc6+8IAEQKI5cSrS3BYh+fMmWPn4SQs GkzGVRwjp8VqIHBBnwb2cV/gsEjLo+a56jmYODzDuKvvtd7tT8Pa+vY+aiNPjvc+/nIL eVTdg0VPXdiKgB69hqTvj/NRa9FT9cxhQbpQeijMJiUsUj6x4/6bRr1y6FRavadIUK8k 7UCjNhbo0GafTGk4ozoZy+U5cosFIk0OluIx85xiLm35bAh2Y1hN1f6699/7euJPWDTL OPztgO54oLY/A0hCtcFk0xzakYBD+Ns7OF2KbIMKu6ZZL7o30LGo5FmT/Danj7b3tfYy k2Lw== X-Forwarded-Encrypted: i=1; AJvYcCVvT4nAHjTSg+AHHBS0sob3qQxqnlrIhH66Rhc5BWTWC06pQkhefnx2JxSKZKF7zs6DshRzqR+TJLL9@nongnu.org X-Gm-Message-State: AOJu0Yyt+KLau2/OH4KAIT6c/bIjtYyzsYZnE9StGDwvxwMKzgxYoBTR hU9yy0WOe0WOyNyQy62Mfv/SDau5ONOXJclMk1ZsCdECALb9aPQTQIuHgNLF8Zg= X-Gm-Gg: ASbGncvcTqh23c2dqAdzy8Q2Mwkn+hjcgIOa7sy1gyek+TSr+Z0yq19PFoWxYfa6vfp tj7zIRS3jLewdtFEczAlFqupbaY8rmIYxxKLxzcQ38NHseaNuCVC350Q6Brq1i4JNvpZuYHoBJF x+DdRbriFeMXPlT+E9ovg8NmKSrsMjA0lUWPCSwbt5c/Mw5LbjRItvsVYHrzSg5cNMJshL/jt7k svQ8rh0d2OhlIQsXZOpMO9GSyB7X/LJpYdXiqZza55GdPdOPb++tdd2R+trwX4gCHV+MIqiIEqy T+m7tSsvbaFYGW8KLdXEIKQMHT/dArlnsaJ54SRtiSjLYTH/Fr/c+MrXIQc1kLOCd5ADiSuHWFH HAaAETKjo9kXdFekhY4Le X-Google-Smtp-Source: AGHT+IHNfH/7LLXL1HgwvVunz7D17RUhvMqxEwoqsmnnSumoSiwcb9AP2CPhKCpt9CTJtdSN7pmHEA== X-Received: by 2002:a05:600c:384b:b0:43d:b85:1831 with SMTP id 5b1f17b1804b1-4406aa872edmr8260175e9.0.1744937503634; Thu, 17 Apr 2025 17:51:43 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 08/11] config/target: Implement per-binary TargetInfo structure (ARM) Date: Fri, 18 Apr 2025 02:50:56 +0200 Message-ID: <20250418005059.4436-9-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::32b; envelope-from=philmd@linaro.org; helo=mail-wm1-x32b.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937544044019100 If a file defining the binary TargetInfo structure is available, link with it. Otherwise keep using the stub. Implement such structure for arm-softmmu. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- meson.build | 7 ++++++- configs/targets/arm-softmmu.c | 22 ++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 configs/targets/arm-softmmu.c diff --git a/meson.build b/meson.build index 168b07b5887..da24cc2ba41 100644 --- a/meson.build +++ b/meson.build @@ -3809,7 +3809,6 @@ specific_ss.add(files('page-target.c', 'page-vary-tar= get.c')) =20 common_ss.add(files('target_info.c')) system_ss.add(files('target_info-qom.c')) -specific_ss.add(files('target_info-stub.c')) =20 subdir('backends') subdir('disas') @@ -4272,6 +4271,12 @@ foreach target : target_dirs arch_srcs +=3D gdbstub_xml endif =20 + target_info_c =3D meson.project_source_root() / 'configs' / 'targets' / = target + '.c' + if not fs.exists(target_info_c) + target_info_c =3D meson.project_source_root() / 'target_info-stub.c' + endif + arch_srcs +=3D target_info_c + t =3D target_arch[target_base_arch].apply(config_target, strict: false) arch_srcs +=3D t.sources() arch_deps +=3D t.dependencies() diff --git a/configs/targets/arm-softmmu.c b/configs/targets/arm-softmmu.c new file mode 100644 index 00000000000..6263d604f19 --- /dev/null +++ b/configs/targets/arm-softmmu.c @@ -0,0 +1,22 @@ +/* + * QEMU binary/target API (qemu-system-arm) + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qemu/target_info-impl.h" +#include "qemu/target_info-qom.h" +#include "cpu-qom.h" + +static const TargetInfo target_info_arm_system =3D { + .name =3D "arm", + .machine_typename =3D TYPE_TARGET_ARM_MACHINE, +}; + +const TargetInfo *target_info(void) +{ + return &target_info_arm_system; +} --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937612; cv=none; d=zohomail.com; s=zohoarc; b=eC+zRyuyHjZgsL2vFlQaWjAvIYWmg/EgQAccVcisu72im7hghDI9udj7NNu+I64Tsw+xO8Blo8QO4fwXzdSmdcN5zkLlt5VbzstFIVv4fXconwXoJwTNHRBEZR8yVZdU2kdIU0nc6z0g1rbdCoS+xCk8+pBoFG0+dYM6GUqljuo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937612; 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=GcHJH1PYkGcsws2/whqy32PYr492ZOWj9l1ZtfQiy1U=; b=F0i33N/gtOP4iCVZYOvDoofJpwgrsVCtggzGYP/dVDDyOr1THlf6meLXnO2e+nTYPw403PQak6KnXTf5imJnknid2wCgGvkXiU7PgyCwr1cguJl8AIbY8IBwrftbqykRNNLs0UkG96Tzh+y2F8UAwN8BhrfjXWTaVgB7Xy93Y1o= 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 1744937612588180.48548746310905; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zxi-0002QC-Ll; Thu, 17 Apr 2025 20:52:12 -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 1u5ZxS-0002Ee-Dp for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:58 -0400 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5ZxQ-000678-QJ for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:54 -0400 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-440685d6afcso8923985e9.0 for ; Thu, 17 Apr 2025 17:51:49 -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-39efa43ce2esm1188192f8f.57.2025.04.17.17.51.47 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937509; x=1745542309; 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=GcHJH1PYkGcsws2/whqy32PYr492ZOWj9l1ZtfQiy1U=; b=ixuIK8p4XdoCGOgokt+50gdTpx1T//rGOlg9+tcb+Hc68eBKnWikKENzl3Tp7wZQu1 gWDdDfWABbgiGA4aTa1/0FnP6V+g2W8Jwn/ET6Zcr6afz3gLrfDnokDDi18spYGEh11W ls0kg03g0flq+vrtS2oEovwuoUjv7/hhYpFoZ1fokuvKrgrDRC0B4+MV47ruEXY1VH+9 PZJvFwqRVqcr02dsrdHSZWBLMyRuEbH/Mh5afTB6W9F+sTgLemMpiXpVF6GLgC9nzjZG TbSY8A+UVYg9qK+mLT+xVa6zRVtazNGMMraMABJqWMlrtbde5yubomwA7LrckleceDUk To7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937509; x=1745542309; 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=GcHJH1PYkGcsws2/whqy32PYr492ZOWj9l1ZtfQiy1U=; b=RRJ+L98yQQ4w5r+XiD/xpHgVTzM54Yz2gUISOLUguaokt3/tEkmhv1ASxKWQoZZVHX RCzxgTFMRq5NxqSXew6EcSFDg01R+KJdAcekOzygaSkQhySZOruXIpeAsBm6TWtUqNgc Se4K/AkGb6I89SQh45IhT1W4VfeAeBARQ1s0VBUSGKB0DD/3UwevXYAZT4JBi044VlGL Ha/+an7Tg7MnKq1vUXWHcgoZVzbxUfDnqnOSeY4fpB7IBOsCH+COQtg7LUoj2VW3xnRf aaJITYBwlhvEiv2FnjM6G332gVyCRTb5wHc44H0NaUz/vpYBLbu1kc22UaGQAgpoS5o7 1Wlg== X-Forwarded-Encrypted: i=1; AJvYcCV7jT4OYt7Te/+SknAGS+YxLs3fFE4xoJCD1hjUm9eq7/z32taylO9OkjETdKOMvArbPIrX4SY0Lzd+@nongnu.org X-Gm-Message-State: AOJu0YyhB23kdq0zAyqiAGavZ8mFly0tWesaVg0XjeR0TS1DmkvuqLwJ uRnFPo2yqhe4WRaezsxKlOAiW7yLSIYHXqxLdc1IX0GTbCq0WYbed0D+X8193B8= X-Gm-Gg: ASbGncv1TsTv78IgMUfY5v8kQLQIfpTYdqMNxefi1rAsKPHvZilY9iirRfl1RS65nR+ rrtKSMw2ikqD5GwgN31FEvBrOSzUZxm75gcnPUQN2f7hfP+wPS35PiNqc5AUBwreoULA34W5OEA uO9MwiIgKs/L5cNKBTCqg9a92iROjPUky95Fa5mLif+w3MQP3wl8wUViNrsQvAEJvv1RjklYzz9 eY+LUubr979lER/q0PiHEWeoGi4w6QC2q5Xn7jkIGwqzqBUPplTrggqG+yF2GGX5Qpk65YpNKrP 01u/ttnknbovQqkshrsTq8rgeZEpiWikhL2b/P+CCFh7ykITY+IAie7NStZm3ImPu+vY6VHEyEc XUrPPbRvyWbfwni2d3mji X-Google-Smtp-Source: AGHT+IHV253r0y0hZBaHR1WeiYagIWkcVZJtuYzebKjigYTKRH+UT7fCOAWvAnQiY3uSgl0tAhxvRw== X-Received: by 2002:a05:6000:4a1b:b0:39a:cb5b:78fe with SMTP id ffacd0b85a97d-39efba8a4f4mr534128f8f.34.1744937508874; Thu, 17 Apr 2025 17:51:48 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 09/11] config/target: Implement per-binary TargetInfo structure (Aarch64) Date: Fri, 18 Apr 2025 02:50:57 +0200 Message-ID: <20250418005059.4436-10-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_XBL=0.375, 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: 1744937613974019100 Implement the TargetInfo structure for qemu-system-aarch64 binary. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- configs/targets/aarch64-softmmu.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 configs/targets/aarch64-softmmu.c diff --git a/configs/targets/aarch64-softmmu.c b/configs/targets/aarch64-so= ftmmu.c new file mode 100644 index 00000000000..e48ac264d7d --- /dev/null +++ b/configs/targets/aarch64-softmmu.c @@ -0,0 +1,22 @@ +/* + * QEMU binary/target API (qemu-system-aarch64) + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "qemu/target_info-impl.h" +#include "qemu/target_info-qom.h" +#include "cpu-qom.h" + +static const TargetInfo target_info_aarch64_system =3D { + .name =3D "aarch64", + .machine_typename =3D TYPE_TARGET_AARCH64_MACHINE, +}; + +const TargetInfo *target_info(void) +{ + return &target_info_aarch64_system; +} --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937621; cv=none; d=zohomail.com; s=zohoarc; b=jF0LcT92BlBMX88hT96uLiU9Spp+SOMrZ7XuY5I3woejKwue5td0cfrtfDrG/1oZyT/rF3Of8L29do++ky1W7FCDgOlCPPQ54vUW6tCxcFkSPlDNdzsWTnRWKO72GPXayaiKQ7ryZKosIUbTFECv5ywtUozI8jqIu8xl4g9+W0A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937621; 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=QUftrT9mw1sdbt1Cgea3mziIB2FdIW29aFiLhpIfymM=; b=fBpamwPPKAuVhfjyd+qvrqqjvz/KRlkKVsDdy6xtY+a3Y+leDdpUkS2subiI2UqNEXxLBnOV4CFnceHWLZ5UsSqLRUlm860QeseKE2yAfOFhHSj37GkoVbx1Z/EI4gT73xxEREayy4JNG3wIy0ja5aYkzinE79bZZ7eaJvsyqzo= 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 1744937621499397.2422494018276; Thu, 17 Apr 2025 17:53:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zxs-0002j2-FV; Thu, 17 Apr 2025 20:52:22 -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 1u5ZxV-0002II-1L for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:59 -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 1u5ZxT-000688-5l for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:51:56 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-39c0dfad22aso925287f8f.2 for ; Thu, 17 Apr 2025 17:51:54 -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-39efa4a4c8fsm1109311f8f.89.2025.04.17.17.51.52 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937513; x=1745542313; 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=QUftrT9mw1sdbt1Cgea3mziIB2FdIW29aFiLhpIfymM=; b=r2gyQ5xLQO1UCl446GZLr/c+UooTdmoGo967hSSQqFTG2EtOIwYLvpOJh7qlGTuxze 8c3aG+SnWCrjy++qbuDryIVf4r22ct+EaVD0kS8amBqCRuiyMWYfdHE72JIGvJHR37jf BZBaUL9Px/wkZZyofbbfsiHT7xxxYxFUPBqF+exhUnVcMGWUYCJM3kP1pPtiriZAU4Uq X6Pms+rO6Ttl/lPaEXDWEp45kqhLPWgWhhhYyLWa/njrca75jIgcNLhUQAZNyYdM2B2j qPxZyBPgZfUu5DLPCcsdnC4Bc0I4hh+/BFcRbSKCttZXjBJZD1Gm4J9C5uRKwFNswC4d iLPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937513; x=1745542313; 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=QUftrT9mw1sdbt1Cgea3mziIB2FdIW29aFiLhpIfymM=; b=qGQSOCZxBwBejF4KRMJ61QsrBS5+XCO6VV5q/dvWn6zq1ymfRvgKlOGrPu4nHlH/OZ fspNnF77eC6o3kKKGQup4rBv4Yn0CEECPuC0bzbTI+eSqf4JiV9p08p4+n4pQWYJFho1 aA0z32M3lWs7eIv2PN4SBD5HJDFXIvfpnPgXxCliI9uBIGBSb/Shm4YKFvE2IcYtMeor 534XnGrEuIdZB7YhAPtvF1Nmdb9id6Zzc9aZbtg3wDT/nAXAoIDCUREAcxREhm/26/yo /rALEiJlLswdqvFs/dlV4CCD6AAhLF/nXGzy9JOKQNg8TlzqAIecsk1t9qjbEmhkbn4q y01Q== X-Forwarded-Encrypted: i=1; AJvYcCVh/3bPXX7T3aPIS3uqJVB2rGJkzi1gXyI2AOePdtNmD/zs0J7NAs20nrWMsKzpbmHfEw65FYnm4AYd@nongnu.org X-Gm-Message-State: AOJu0YyaDCxljqwmHebYjc2iGtje2dKDACsqU+SNFWLjkmiAGekGPyUQ gpFW+Lf/H8Qh2rtkGS7NBmDwmclsLjTHowB4FcTtgradODFhpbyPAexDcDqBc3w= X-Gm-Gg: ASbGncsu/UJsBmN8OFbeMlovSU/0ZSvA/ly6unxKEAs41gZfxsM1hWwPldV2t6TY+Mu /ZqukjzizC/rSOw1TQ3s0o8YSOGoQMSYKvAXW3DD9oT20+p04hZZDbwmkMxU5aYicMb70R0mVxc DufLCw7PTn0STA+OG9DJVwS6rUBgKiZaCuMJG6I6A2nLGmIPaisDT5TGFMiWNgYcYZ/6wzWbhTY X2xInnkiAzj33THV8i24SW9kBhaG75KKucrZtPta9eLDUfeRY82sqzlY/BDUYLk8fhE4V4SjtWI xsKPRIG+AVGWHX1QnhKcRQk4jXoud9BuQbjoZ6vb5RdWo/th/wDHovr+yZcov3239yyedEJAweb VPdYcfcN/G8l7OQEXUGrm X-Google-Smtp-Source: AGHT+IGymwmjgGz/Oothgof8/UtKJpBKKJxQ0Ep9UmNCVkvR4uwKpbGwfVwYWLOACFL1tWfuDt7Qmg== X-Received: by 2002:a5d:588c:0:b0:38f:2b77:a9f3 with SMTP id ffacd0b85a97d-39efbae064fmr531643f8f.43.1744937513590; Thu, 17 Apr 2025 17:51:53 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 10/11] hw/arm/aspeed: Build objects once Date: Fri, 18 Apr 2025 02:50:58 +0200 Message-ID: <20250418005059.4436-11-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 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, RCVD_IN_XBL=0.375, 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: 1744937625026019100 Now than Aspeed machines can be filtered when running a qemu-system-arm or qemu-system-aarch64 binary, we can remove the TARGET_AARCH64 #ifdef'ry and compile the aspeed.c file once, moving it from arm_ss[] source set to arm_common_ss[]. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- hw/arm/aspeed.c | 6 ------ hw/arm/meson.build | 4 ++-- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index d54ee2d4b53..363be2daf60 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -179,13 +179,11 @@ struct AspeedMachineState { #define AST2600_EVB_HW_STRAP1 0x000000C0 #define AST2600_EVB_HW_STRAP2 0x00000003 =20 -#ifdef TARGET_AARCH64 /* AST2700 evb hardware value */ /* SCU HW Strap1 */ #define AST2700_EVB_HW_STRAP1 0x00000800 /* SCUIO HW Strap1 */ #define AST2700_EVB_HW_STRAP2 0x00000700 -#endif =20 /* Rainier hardware value: (QEMU prototype) */ #define RAINIER_BMC_HW_STRAP1 (0x00422016 | SCU_AST2600_HW_STRAP_BOOT_SRC_= EMMC) @@ -1663,7 +1661,6 @@ static void aspeed_minibmc_machine_ast1030_evb_class_= init(ObjectClass *oc, aspeed_machine_class_init_cpus_defaults(mc); } =20 -#ifdef TARGET_AARCH64 static void ast2700_evb_i2c_init(AspeedMachineState *bmc) { AspeedSoCState *soc =3D bmc->soc; @@ -1713,7 +1710,6 @@ static void aspeed_machine_ast2700a1_evb_class_init(O= bjectClass *oc, void *data) mc->default_ram_size =3D 1 * GiB; aspeed_machine_class_init_cpus_defaults(mc); } -#endif =20 static void aspeed_machine_qcom_dc_scm_v1_class_init(ObjectClass *oc, void *data) @@ -1936,7 +1932,6 @@ static const TypeInfo aspeed_machine_types[] =3D { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#ifdef TARGET_AARCH64 }, { .name =3D MACHINE_TYPE_NAME("ast2700a0-evb"), .parent =3D TYPE_ASPEED_MACHINE, @@ -1953,7 +1948,6 @@ static const TypeInfo aspeed_machine_types[] =3D { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#endif }, { .name =3D TYPE_ASPEED_MACHINE, .parent =3D TYPE_MACHINE, diff --git a/hw/arm/meson.build b/hw/arm/meson.build index 09b1cfe5b57..f76e7fb229f 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -39,15 +39,15 @@ arm_common_ss.add(when: 'CONFIG_XLNX_VERSAL', if_true: = files('xlnx-versal.c', 'x arm_common_ss.add(when: 'CONFIG_FSL_IMX25', if_true: files('fsl-imx25.c', = 'imx25_pdk.c')) arm_common_ss.add(when: 'CONFIG_FSL_IMX31', if_true: files('fsl-imx31.c', = 'kzm.c')) arm_common_ss.add(when: 'CONFIG_FSL_IMX6', if_true: files('fsl-imx6.c')) -arm_ss.add(when: 'CONFIG_ASPEED_SOC', if_true: files( +arm_common_ss.add(when: 'CONFIG_ASPEED_SOC', if_true: files( 'aspeed.c', 'aspeed_soc_common.c', 'aspeed_ast2400.c', 'aspeed_ast2600.c', 'aspeed_ast10x0.c', + 'aspeed_ast27x0.c', 'aspeed_eeprom.c', 'fby35.c')) -arm_common_ss.add(when: ['CONFIG_ASPEED_SOC', 'TARGET_AARCH64'], if_true: = files('aspeed_ast27x0.c')) arm_common_ss.add(when: 'CONFIG_MPS2', if_true: files('mps2.c')) arm_common_ss.add(when: 'CONFIG_MPS2', if_true: files('mps2-tz.c')) arm_common_ss.add(when: 'CONFIG_MSF2', if_true: files('msf2-soc.c')) --=20 2.47.1 From nobody Thu Oct 16 01:45:16 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=1744937583; cv=none; d=zohomail.com; s=zohoarc; b=cZdm8DBy6JwIjnIFtiqhh++WAuQpSPTnbSjs2F72Gy1EPgir63xtX5Rej9z9IjdI/7phAG2twz83BZxu/KSjPnhaV+91UJYYKdqUclcJBRQE/Sg9LsujzgYDbNplAaJInQ4Gzwr2eexv3j+aweRsCjgrzp6rqMhs15igIhzJemk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744937583; 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=Rc46lD7Ko7XfwPKQsqzz7EgBw+3K3PZcRoY06dDD1t0=; b=XV9TPAF/vq84iiuMg1Rwhe0ZRFIieaMSBjkWN1oyAa0xnKN+9d/6r2o0MrYJtp/iIdLUh6+AEHhPF4/97epe8b8EspHixSkKjI4WBVsGCDv181R9Nyc34gey2ytRYi+mz+fPB+DH1Z2mO8uBbGZPdmcenn7xrFOwNd1Sw8cNmmo= 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 1744937583488525.007259247701; Thu, 17 Apr 2025 17:53:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5Zxm-0002dd-J0; Thu, 17 Apr 2025 20:52:14 -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 1u5Zxb-0002P5-LY for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:52:03 -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 1u5ZxZ-00069L-Np for qemu-devel@nongnu.org; Thu, 17 Apr 2025 20:52:03 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-43d2d952eb1so9837085e9.1 for ; Thu, 17 Apr 2025 17:52:00 -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-4406d6dfe4esm1984585e9.33.2025.04.17.17.51.57 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 17 Apr 2025 17:51:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1744937519; x=1745542319; 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=Rc46lD7Ko7XfwPKQsqzz7EgBw+3K3PZcRoY06dDD1t0=; b=S6H7MOy1K3zDU1lbjzvXeFBpKwcx3AjGw4IcS100NmOWQnsMw3jePhoe6IWibIfytj 07q9YDVS0b79m6qQ1uyCmUY9MXS6NHs40Whk9LWKrscZauqadftO1YwxOIPKcsFOYlpO QGihTk6CRDIIqcG+j8jC4RUc7Ye0rPoSrN4fc8OcyhGqdjSlVQTlsZiNfb6SQRumBJpJ o+q8xV2aYcTJXJNOciGcZROeOF2PNngmRbEQ8Cx/nCULv3XnhQCpz31lQG9b026UGMql 4BWmzfEp2ebhd8iBzLs+iNSpGeZPZqmwoMrZXVDXVDQLTQXexVLmdnlkkMQ3TQc6Aj8O 9KjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744937519; x=1745542319; 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=Rc46lD7Ko7XfwPKQsqzz7EgBw+3K3PZcRoY06dDD1t0=; b=mm/tKw7mg2h85+1adK/4Cy4OahdhYQJyTUen0SxidZa5gytAUc3QRSACUjnMol0zux CB8ym2Rf+myojMdK47yUePgaWyV2u9RMwpA2RON13XC+JvhzF/e4HQEol7OuuvbZQQ9G PJFeMOhUFZW/erGMP094btEx0Ux7sdoL7zkkb5vqA1ywXwiufAthnmWHKFE8Rd7FucXE eXymW44Rvcnzo6982cNGBaDLrNemKhp2A6OKsYqSjEPaIqnd1VlPwg1F2c6PEt9SjoTn k3W/Ct/uqvgnvc/kjiWvLyafHrpogm5IYMzdSxocE4Fdg5RxuhuNZ6wzqu/dLkACL6h7 caAg== X-Forwarded-Encrypted: i=1; AJvYcCVW/djwf8VUnXXZovIa+Q/+8X8rzeN4ezo0m/VetLaH3k23sMCvPCjRus3MxuE65AKy3DiizndXMjpy@nongnu.org X-Gm-Message-State: AOJu0YzU8qSkNKCffXnvdisjMMWAEqXEtcfsbq70Eu31sXbpS8clhfD3 8H99tn4oPr8nrmJIv6U2OnReZnOSF7awWRhl/ivzVw4f8+HSn6GvIbViuIwYepk= X-Gm-Gg: ASbGncvcLa4TyI+KJduqSjyKnkaL5cu2q0XNijq+qGmAGK3ZlLT+4n7qdCkm9/vW+a6 kpO0rkCe6qgYu3YhYVV7oQKI3baNqp4zNbMD+f2ET6JdHv5g5qSErioiogSDNbOeicaj569mS2b V9h4B9z9tHRoH+dFmpbTWNXkor/2Bh3wgYY6vfp22X4VS1POdw4WIT8b+fK5DBZZRlS72mXX5xb N+ByNaLFTiZ6l8iNTwaM9hCsYbmu8xNu9BQhSS2Y1eEnMo8YCqJ0Of171I+WjMVUvgPvaZM6Wr9 +dNIXMzRWUgfH1Ltn0T3+kBLii8HScBWJ8dZUeYb4NFRcB2njHSd8CPjdx70hjm/Oh31Wp1uwIh Wfi5L2H4C8w7D/KfFAHk2 X-Google-Smtp-Source: AGHT+IGuVnDN9W10lwGQgK434ZVDA0zrGtmi8qZ+dh2N8VXoW10w4Eryi3bYUzD4Vji5HWFr94a4jw== X-Received: by 2002:a5d:6da1:0:b0:39a:ca0c:fc90 with SMTP id ffacd0b85a97d-39efba3c6e4mr609303f8f.14.1744937519048; Thu, 17 Apr 2025 17:51:59 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Pierrick Bouvier , qemu-devel@nongnu.org Cc: Anton Johansson , Richard Henderson Subject: [RFC PATCH v2 11/11] hw/arm/raspi: Build objects once Date: Fri, 18 Apr 2025 02:50:59 +0200 Message-ID: <20250418005059.4436-12-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250418005059.4436-1-philmd@linaro.org> References: <20250418005059.4436-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: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 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, RCVD_IN_XBL=0.375, 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: 1744937584193019000 Now than Raspi machines can be filtered when running a qemu-system-arm or qemu-system-aarch64 binary, we can remove the TARGET_AARCH64 #ifdef'ry and compile the aspeed.c file once, moving it from arm_ss[] source set to arm_common_ss[]. Note, we expose the TYPE_BCM2837 type to qemu-system-arm, but it is not user-creatable, so not an issue. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- hw/arm/bcm2836.c | 4 ---- hw/arm/raspi.c | 4 ---- hw/arm/meson.build | 8 ++++++-- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/hw/arm/bcm2836.c b/hw/arm/bcm2836.c index 95e16806fa1..7dd81e8e0f9 100644 --- a/hw/arm/bcm2836.c +++ b/hw/arm/bcm2836.c @@ -195,7 +195,6 @@ static void bcm2836_class_init(ObjectClass *oc, void *d= ata) dc->realize =3D bcm2836_realize; }; =20 -#ifdef TARGET_AARCH64 static void bcm2837_class_init(ObjectClass *oc, void *data) { DeviceClass *dc =3D DEVICE_CLASS(oc); @@ -208,7 +207,6 @@ static void bcm2837_class_init(ObjectClass *oc, void *d= ata) bc->clusterid =3D 0x0; dc->realize =3D bcm2836_realize; }; -#endif =20 static const TypeInfo bcm283x_types[] =3D { { @@ -219,12 +217,10 @@ static const TypeInfo bcm283x_types[] =3D { .name =3D TYPE_BCM2836, .parent =3D TYPE_BCM283X, .class_init =3D bcm2836_class_init, -#ifdef TARGET_AARCH64 }, { .name =3D TYPE_BCM2837, .parent =3D TYPE_BCM283X, .class_init =3D bcm2837_class_init, -#endif }, { .name =3D TYPE_BCM283X, .parent =3D TYPE_BCM283X_BASE, diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c index 8a2da650087..980e4a14793 100644 --- a/hw/arm/raspi.c +++ b/hw/arm/raspi.c @@ -367,7 +367,6 @@ static void raspi2b_machine_class_init(ObjectClass *oc,= void *data) raspi_machine_class_init(mc, rmc->board_rev); }; =20 -#ifdef TARGET_AARCH64 static void raspi3ap_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc =3D MACHINE_CLASS(oc); @@ -387,7 +386,6 @@ static void raspi3b_machine_class_init(ObjectClass *oc,= void *data) rmc->board_rev =3D 0xa02082; raspi_machine_class_init(mc, rmc->board_rev); }; -#endif /* TARGET_AARCH64 */ =20 static const TypeInfo raspi_machine_types[] =3D { { @@ -417,7 +415,6 @@ static const TypeInfo raspi_machine_types[] =3D { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#ifdef TARGET_AARCH64 }, { .name =3D MACHINE_TYPE_NAME("raspi3ap"), .parent =3D TYPE_RASPI_MACHINE, @@ -434,7 +431,6 @@ static const TypeInfo raspi_machine_types[] =3D { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#endif }, { .name =3D TYPE_RASPI_MACHINE, .parent =3D TYPE_RASPI_BASE_MACHINE, diff --git a/hw/arm/meson.build b/hw/arm/meson.build index f76e7fb229f..f52034ff6a2 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -27,8 +27,12 @@ arm_common_ss.add(when: 'CONFIG_OMAP', if_true: files('o= map1.c')) arm_common_ss.add(when: 'CONFIG_ALLWINNER_A10', if_true: files('allwinner-= a10.c', 'cubieboard.c')) arm_common_ss.add(when: 'CONFIG_ALLWINNER_H3', if_true: files('allwinner-h= 3.c', 'orangepi.c')) arm_common_ss.add(when: 'CONFIG_ALLWINNER_R40', if_true: files('allwinner-= r40.c', 'bananapi_m2u.c')) -arm_ss.add(when: 'CONFIG_RASPI', if_true: files('bcm2836.c', 'raspi.c')) -arm_common_ss.add(when: ['CONFIG_RASPI', 'TARGET_AARCH64'], if_true: files= ('bcm2838.c', 'raspi4b.c')) +arm_common_ss.add(when: 'CONFIG_RASPI', if_true: files( + 'bcm2836.c', + 'bcm2838.c', + 'raspi.c', + 'raspi4b.c', +)) arm_common_ss.add(when: 'CONFIG_STM32F100_SOC', if_true: files('stm32f100_= soc.c')) arm_common_ss.add(when: 'CONFIG_STM32F205_SOC', if_true: files('stm32f205_= soc.c')) arm_common_ss.add(when: 'CONFIG_STM32F405_SOC', if_true: files('stm32f405_= soc.c')) --=20 2.47.1