From patchwork Fri Apr 18 00:50:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882305 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587715wrs; Thu, 17 Apr 2025 17:53:40 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCX0SwAnrDd3Ya3PT5h5SQ1gCJg+dWWqrSPCDh9FaWMfnvJ/P10DzA4/dheFHAozNlPOWahHdA==@linaro.org X-Google-Smtp-Source: AGHT+IHz3VkMUyw+kPqg5Jda3BJASx0O9DlhXEmccvhBlb7p3O2kML3UVhaXRlvU7hkF0gbGiAhp X-Received: by 2002:ac8:7e96:0:b0:476:7715:d8e6 with SMTP id d75a77b69052e-47aec350b0emr10390721cf.7.1744937619824; Thu, 17 Apr 2025 17:53:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937619; cv=none; d=google.com; s=arc-20240605; b=fkLy3FY+uV8Pvh6L83yz3l9cc8fzSQuCY1QGWNkJtmcSoopmDEmBbGdR81dmpkQD8B TzvUjgYQdWsYJuYtEjV0BzCXtKDNBioITWIbMdcnWwNy0GPC96+OXw37kzfHaSX+bK9u 1mJVro9JMKGbPnejt8zkNJd25zycsXsHk28FEEljf4hGX59WEj+rNLUxEKgLnpmunHEM AmGsC561pj23wiZdnIgpFQ2XHDu4AOWP2LWeBrX6257rRdC9Q5YJPJnUAvXWoYGbDaG0 xDD/PecWZNkfH+PaJ7+ZMwqxtGFvvJ4Fu9dI6SNGxcSb+yPaACjaR6Ok6rzayM1Hscyz edoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=e+EWdOmeXtjoMOdMj9vCcTmXULED5K7o4s48YuBpbO8=; fh=0Xr8UH7JGP4fwV88hGoQTN/86f/1lzAChcbHjwx9LfA=; b=BImqenq9KfmsY7Ez/vz07IE2EmEwQWI/U0tBIFY3ccIrWZoQa2HcFrVZbaYMMBjSFg HqDmiNOZ5dcmK3KneyiryBcGgu4EujLvj8CgFeNjoDMRJOCqEfoRGHMwTV0oDGXPrdoV pHAt49VD/wJa8lR3r0mg/Y0MjGdZtXaEHdqFCr6a9qzYJPFcYqf+f+DRmSPmLomXX6cg DRfd6GC1hIHHq/T2gc4QrBcAYg36NK7j/GQG1V3gqdBEGGa8QAHMUaRA4nhu48VwlmfO LhuMs0Do/nozEDB0ebQ3cBkepv19PFHDBLQC5GMHcKRrg9MMPlvIdUA+AHirLXITASNr NX1Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QJr2qU7Y; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9cd8617si10378351cf.577.2025.04.17.17.53.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:53:39 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QJr2qU7Y; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é 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' } ## -# @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' } } ## @@ -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' } ## # @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; } -TargetInfo *qmp_query_target(Error **errp) +BinaryTargetInfo *qmp_query_target(Error **errp) { - TargetInfo *info = g_malloc0(sizeof(*info)); + BinaryTargetInfo *info = g_malloc0(sizeof(*info)); info->arch = qapi_enum_parse(&SysEmuTarget_lookup, target_name(), -1, &error_abort); From patchwork Fri Apr 18 00:50:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882304 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587684wrs; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVz39Fl3IiSLkaTyqi8V/cW31JFT5ZpmSTeAA7AER8TjyMOGx2Cs3axmOYY9i4/SZQ2O/dV/A==@linaro.org X-Google-Smtp-Source: AGHT+IG02D3oHcNnZRydLpSCO1jM7eo92fbjaY8quSt7/SH3NGEy0SuLGKV+4oA1fG8/XprDc284 X-Received: by 2002:a05:6214:5081:b0:6d8:aba8:837b with SMTP id 6a1803df08f44-6f2c468742bmr17791116d6.41.1744937612518; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937612; cv=none; d=google.com; s=arc-20240605; b=KUzgX4pMB/Ewq+2EV4Ov8Jb3cRaeBI1naT8oJE5RZLIj+hFXqrXkgbIn15vALB1l8W 1sqOV6oflUIaTxQqgoaLegbBzYe0hQAvzJjBANtE3whX4Ut7D4zJXNihv23gwpzmW9EM i4AXcuphefwdMzX1Mx6VnpdBJb2/ptUBzWgcBiv+cK64M7xw6KvC6NE5rGdE8LrBuCyj dNcDS2KHIyRvf7TkwpvGEPKM0vlbxd+CIuauanatZzq+9441Vc0BCdKGeLO19F02LRAZ OqSZBZawP8Cirb+68L8HynHH9y9ooCahKkiD4U3nBhFm+COliNtC4kJuOc41NdX+rpD+ MnNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=OmLiEEj8BsSlPrrh5/WyA2e/HFVflcBaJVJKNxqZAeQ=; fh=qZEZsOHnS/vh2kc2pNtq99tk/IgutyxiDhJpw7SUKok=; b=cY2b+MVEOoMMBKEkdJfshxjw7WLOCtafejt5EwWQYDkskcgMODeXIrt3iJFxzYBJcE 7MTCD8mLk/s7VschK1iRsxNVpFf46RxsHc303cok8KF6uSK3MOz7VEq83fl3rrT+JAMW 240CwXYjun5oNM8P9SRkF3WtIysRhbQeHSQm3twkRidgNfiybUcY195PAsqScKZrARGj fkog+75dfM1/sFSiIubkhVSnf+hzuYuYnxR3Gf89EfgMyF6QMxWLJ12gK+s9wZTNyVhd 362Ly16e/tc8HXAUK4l7XxEoUN8Mf/Qyglk6/lXrEKbwWUpNxNLdnKRr+HOgEKI4+cYL UuiA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=eAUcS54g; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 6a1803df08f44-6f2c2c11af8si10549616d6.348.2025.04.17.17.53.32 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:53:32 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=eAUcS54g; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é 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')) +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); -const char *target_name(void); - #ifdef COMPILING_PER_TARGET extern const VMStateDescription vmstate_cpu_common; diff --git a/include/qemu/target_info-impl.h b/include/qemu/target_info-impl.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" #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 = { + .name = 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; +} From patchwork Fri Apr 18 00:50:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882301 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587524wrs; Thu, 17 Apr 2025 17:52:57 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVpFdNNY9h0bzLqmZKsVZIjrxvbQtn7GFUAXF+STGEDF54ep4PFVQatY3F5VNxRZB6z0GUb3Q==@linaro.org X-Google-Smtp-Source: AGHT+IGAabiwL4GD5Lcu2wql6xn/GNyEcFEjtilxGbSD5AbwgdzdYnvFcksvJovbGNyoVyczlTwc X-Received: by 2002:a05:622a:198e:b0:476:671e:deac with SMTP id d75a77b69052e-47aec354b2bmr12172301cf.9.1744937577094; Thu, 17 Apr 2025 17:52:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937577; cv=none; d=google.com; s=arc-20240605; b=F0ZjJ0m03CCASpf5yG6w3YF/VlAEbcYNbQRys/5Ra6MPYS0ySCLH8fO1sWdtIjjQQJ dyokaFZPKLn/iqgLVn8fehluEIWJzZKtcO6gRPtX9LRZCGXX7UWy9EuO/kLrXuuGWPW8 Vph0YAnqUpqKbYE4vhsXZX3IrbnXgryKYUL+0H8bvPbvdWMQiH+FMVKKoW5tY+jhTrab 0YG2IICgLwTcorRW7CuZXue80qk3CI13orY6W2ue4KXIw8ycL4wIkjmvRaxbG1hPtAm3 TpZYm2XIxa0gUIiUgYcq6leizaiPOdPNHmmb9Y0xVF5hYOWsboQZT+/7NhBQqICJtvbe cRoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Oo7hyyEFu8S8sgeHFv9utYRkdVF6oYH3JMKp75dwFuo=; fh=HuQGIQyxECzXfeaRbnvq/+jJA3N4oqtCzKLWJrzlfWc=; b=HBOqLjRc9c2s1/sBeFvQ2qYnzCUlnUqRybpDvuMGOQdevje5g1OC+/yfL8CO68TdIf zBNEwwksS2TrVQXjdnfH5kHPi0U9xYQD5QRC+Hos5631ql91YXtCtH0gzIP5mMr4mXju +dCXX8bewc+8iK6kphqsoXNSSLUi9tLhTTtoHPMgjMnMAT99NYzPsFiwcDkdMeoEsbuh eQNQosM/3eHM++K9phnHesO+BdaK/o71lQz6buc8Xi5abrLIXBL6k/pV0bblEqylef+N fS5W/dexGSHkhOghtr6SEs13QwWvz2MbKqWPyF+0YR1Hkj41eqSdfnnDdRh1ksNU3MqS pMzA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YD+GMgW5; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9ca3baesi10749191cf.248.2025.04.17.17.52.56 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:52:57 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YD+GMgW5; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Binaries can register a QOM type to filter their machines by filling their TargetInfo::machine_typename field. Signed-off-by: Philippe Mathieu-Daudé --- 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-impl.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; + /* QOM typename machines for this binary must implement */ + const char *const machine_typename; + } TargetInfo; 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); +/** + * 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 **errp) static MachineClass *find_machine(const char *name, GSList *machines) { GSList *el; + const char *qom_typename_filter = target_machine_interface_typename(); for (el = machines; el; el = el->next) { MachineClass *mc = el->data; if (!strcmp(mc->name, name) || !g_strcmp0(mc->alias, name)) { + if (qom_typename_filter + && !object_class_dynamic_cast(el->data, qom_typename_filter)) { + /* 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 = NULL; GSList *el; const char *type = qdict_get_try_str(qdict, "type"); + const char *qom_typename_filter = target_machine_interface_typename(); machines = object_class_get_list(TYPE_MACHINE, false); if (type) { @@ -1577,6 +1585,12 @@ static void machine_help_func(const QDict *qdict) machines = g_slist_sort(machines, machine_class_cmp); for (el = machines; el; el = el->next) { MachineClass *mc = 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->name); } 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; +} From patchwork Fri Apr 18 00:50:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882296 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587249wrs; Thu, 17 Apr 2025 17:51:40 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWod7mFJa0v0ZbiSkGSMp7gE+XweF+KFTXZkR3poR1WQiX7qJ1S+e+KFkVNwDQNIEP5pob1vg==@linaro.org X-Google-Smtp-Source: AGHT+IE6yqLxI1fymnLrULQs48jWiu6JqUBY033exfi7m7N/o9Fbs76hmkQ985iB5ThVf9JudFVu X-Received: by 2002:ac8:5783:0:b0:476:8cad:72d7 with SMTP id d75a77b69052e-47aec3643f8mr15717771cf.8.1744937500147; Thu, 17 Apr 2025 17:51:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937500; cv=none; d=google.com; s=arc-20240605; b=VzqqRgr9W13tsWJBkeJvfT5GIKaVnBKQiDzRi6n1z+VlSztNkuPKJfNnP+lSa+DA9i wGdgBC+OrXQhl1cJ2QrpP7V57RFo9+PbB9+yyGqtT2ZKrI02MwtSMtnoV6UnJtNzSZya z0atxNwgJNUUj+h1/rFfbbeXJC70hl5Fnv9ibkeFZGDYi62tQ3uK7vcKzi2ELDt3p+TZ vPZ3I+3uJYF/KeXy8LgwcbkFM5KcGoJ+lFkyZMa2q4StLRnXIL7kMz0qnIWj8bbTRACy h2oiVBdb9nTH8NrB/3+3n28ZcOCiefdk87cClSgTAWrvQ4m8Rsyie2HDlp3XUfIlXH0Z 6mig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=YXcKH0xxrTvGXKj1WGS/noBtY0dqyqmEMfZoCxBxxzk=; fh=so+WGrHCf89Oa34OPqKs3TFuDLzbW/qe7+NYNfIt87g=; b=jtFoLoiInE0cpZcozK+G6QeG9e7tXNJBKuF8JlLCizg8DnjPQVM5nqI+9hGBEm1DDr 7UTvCHvqUENPlZhiYKhk46VpQsJBexOpKlGVILEyZ6LMhRC5v6ToukhAfmcqwV+q0rWm XZmGkTDrp1RBF3nHwm7WOUPakteC8r7UK2ZVw2BOgUU4qpqcR7NPV20uBwc/uWaXgXkl YSJqqhMGvGCTcVzJsPvzk3pJ4pl1j3cc26HqYcnCkIqkHCdya9nPYODxHcSCt7OWeoCo R5MbxkRaLmhbIgGf5qIjw4CwtCD5kUDjuWE9mWY5PPe9+//nAgNfZDUcc+9FIPzUtNCl RLXQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=z6Sx9VHQ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9cb6acesi10546661cf.355.2025.04.17.17.51.40 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:51:40 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=z6Sx9VHQ; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é --- 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')) common_ss.add(files('target_info.c')) +system_ss.add(files('target_info-qom.c')) specific_ss.add(files('target_info-stub.c')) 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[] = { + { + .name = TYPE_TARGET_ARM_MACHINE, + .parent = TYPE_INTERFACE, + }, + { + .name = TYPE_TARGET_AARCH64_MACHINE, + .parent = TYPE_INTERFACE, + }, +}; + +DEFINE_TYPES(target_info_types) From patchwork Fri Apr 18 00:50:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882297 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587257wrs; Thu, 17 Apr 2025 17:51:41 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCU7rt6zmS2fhMM+bz7pGLMMKi+5tTKUcxn/GMYUvf8RZJ5R/R5iQG8ZmeRBc9sNXr5WLeoCeA==@linaro.org X-Google-Smtp-Source: AGHT+IF0kyfgsWPbLtEvzAjuerxYZhqQYhB5MuJiwP2SLmCBIwI8Cq7oAdJniHbg1TkjXIDLRpf9 X-Received: by 2002:ac8:7d49:0:b0:476:701b:d814 with SMTP id d75a77b69052e-47aec354b08mr15205661cf.11.1744937500993; Thu, 17 Apr 2025 17:51:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937500; cv=none; d=google.com; s=arc-20240605; b=Xjs7dHHp7WSQMeMKNebP0Rc8K6fHAzpIZb/le+jOFGcrpZAtf5FCbP3xwjZ+eQjEoY R0jICOTl13d1gKuzait+xuVLDd68sfucwlPzW0VBV5iM72iv2+1NZ+AVr+Th72t5m2pa 7r2AzzK6zq2WHS9pNj7coFefg/56bFx/Vfin4pfFoX3EtCFuMQZfeBprDskDiZ58hho+ uZVYb75vtsgvBCZh4htOlUCowb+4dK/i1IfzFvfSqgIkpJl451jheBu0Ee73zof1r7PC pk42kdkhEYs0MObmRikbSqAfWYeSgjD0s0SxUIaUhEfwvVOdn8OK+PpDJ6SxDggRipaI RBZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=eV8KJV0xXZ4TO2mnmTIb3sgdLgRIDuDlODWFeGQ6aQY=; fh=y6TBVKpE+m1+lqd/XhWO+U8gscb5utNgILZW0av1+SU=; b=R+DBxeai7GmeIbufBGY+womfvHjmV16oKpAWR+TbHXdLBGf7pHtMLduoU79+o94NGz i3hM4aOXt8AyiHrfA7vIr8VKsp8NUPdKcUVhG43NL+N4aN1tpPlkUSXtz8QXLc6m2bFh w6mi8k43tr1k3M9qo9DW5orjbrQPHJ1W4x7uA9WN/TUgjzDSRf0NVWODJZBJCd1K2SJc AgFkvNvzoszpdO5TyjUIru/U7IiDJQVh0V0/8sed9Pww57T3tAzxlbweIJd/VMMXctnk sXCcTzr9VPE5d+blrPlHToHuqZYmmwAAzUyYeuHhvl++JDqqS2DVA58JNE5VU8dFokkl o8qw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=N3vxloPY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9ca3c72si10325091cf.261.2025.04.17.17.51.40 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:51:40 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=N3vxloPY; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é --- 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[] = { .name = MACHINE_TYPE_NAME("palmetto-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_palmetto_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("supermicrox11-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_supermicrox11_bmc_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("supermicro-x11spi-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_supermicro_x11spi_bmc_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("ast2500-evb"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2500_evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("romulus-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_romulus_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("sonorapass-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_sonorapass_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("witherspoon-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_witherspoon_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("ast2600-evb"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2600_evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("yosemitev2-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_yosemitev2_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("tiogapass-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_tiogapass_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("g220a-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_g220a_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("qcom-dc-scm-v1-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_qcom_dc_scm_v1_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("qcom-firework-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_qcom_firework_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("fp5280g2-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_fp5280g2_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("quanta-q71l-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_quanta_q71l_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("rainier-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_rainier_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("fuji-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_fuji_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("bletchley-bmc"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_bletchley_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("fby35-bmc"), .parent = MACHINE_TYPE_NAME("ast2600-evb"), .class_init = aspeed_machine_fby35_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("ast1030-evb"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_minibmc_machine_ast1030_evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #ifdef TARGET_AARCH64 }, { .name = MACHINE_TYPE_NAME("ast2700a0-evb"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2700a0_evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("ast2700a1-evb"), .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2700a1_evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #endif }, { .name = 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[] = { .parent = TYPE_MACHINE, .instance_size = sizeof(Bl475eMachineState), .class_init = bl475e_machine_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, } }; 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[] = { .name = MACHINE_TYPE_NAME("bpim2u"), .parent = TYPE_MACHINE, .class_init = bpim2u_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .parent = TYPE_MACHINE, .class_init = collie_machine_class_init, .instance_size = sizeof(CollieMachineState), + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("cubieboard"), .parent = TYPE_MACHINE, .class_init = cubieboard_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("canon-a1100"), .parent = TYPE_MACHINE, .class_init = digic_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .name = MACHINE_TYPE_NAME("nuri"), .parent = TYPE_MACHINE, .class_init = nuri_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void smdkc210_class_init(ObjectClass *oc, void *data) @@ -192,6 +196,10 @@ static const TypeInfo smdkc210_type = { .name = MACHINE_TYPE_NAME("smdkc210"), .parent = TYPE_MACHINE, .class_init = smdkc210_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .class_init = fby35_class_init, .instance_size = sizeof(Fby35State), .instance_init = fby35_instance_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .name = MACHINE_TYPE_NAME("highbank"), .parent = TYPE_MACHINE, .class_init = highbank_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void midway_class_init(ObjectClass *oc, void *data) @@ -387,6 +391,10 @@ static const TypeInfo midway_type = { .name = MACHINE_TYPE_NAME("midway"), .parent = TYPE_MACHINE, .class_init = midway_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("imx25-pdk"), .parent = TYPE_MACHINE, .class_init = imx25_pdk_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("imx8mp-evk"), .parent = TYPE_MACHINE, .class_init = imx8mp_evk_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("integratorcp"), .parent = TYPE_MACHINE, .class_init = integratorcp_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("kzm"), .parent = TYPE_MACHINE, .class_init = kzm_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("mcimx6ul-evk"), .parent = TYPE_MACHINE, .class_init = mcimx6ul_evk_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("mcimx7d-sabre"), .parent = TYPE_MACHINE, .class_init = mcimx7d_sabre_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .parent = TYPE_MACHINE, .instance_size = sizeof(MicrobitMachineState), .class_init = microbit_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = { .name = TYPE_MPS2TZ_AN505_MACHINE, .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps2tz_an505_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps2tz_an521_info = { .name = TYPE_MPS2TZ_AN521_MACHINE, .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps2tz_an521_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps3tz_an524_info = { .name = TYPE_MPS3TZ_AN524_MACHINE, .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps3tz_an524_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps3tz_an547_info = { .name = TYPE_MPS3TZ_AN547_MACHINE, .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps3tz_an547_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = { .name = TYPE_MPS2_AN385_MACHINE, .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an385_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps2_an386_info = { .name = TYPE_MPS2_AN386_MACHINE, .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an386_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps2_an500_info = { .name = TYPE_MPS2_AN500_MACHINE, .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an500_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo mps2_an511_info = { .name = TYPE_MPS2_AN511_MACHINE, .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an511_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = TYPE_MPS3R_AN536_MACHINE, .parent = TYPE_MPS3R_MACHINE, .class_init = mps3r_an536_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("emcraft-sf2"), .parent = TYPE_MACHINE, .class_init = emcraft_sf2_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .name = TYPE_MUSCA_A_MACHINE, .parent = TYPE_MUSCA_MACHINE, .class_init = musca_a_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo musca_b1_info = { .name = TYPE_MUSCA_B1_MACHINE, .parent = TYPE_MUSCA_MACHINE, .class_init = musca_b1_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("musicpal"), .parent = TYPE_MACHINE, .class_init = musicpal_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("netduino2"), .parent = TYPE_MACHINE, .class_init = netduino2_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("netduinoplus2"), .parent = TYPE_MACHINE, .class_init = netduinoplus2_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("npcm750-evb"), .parent = TYPE_NPCM7XX_MACHINE, .class_init = npcm750_evb_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("quanta-gsj"), .parent = TYPE_NPCM7XX_MACHINE, .class_init = gsj_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("quanta-gbs-bmc"), .parent = TYPE_NPCM7XX_MACHINE, .class_init = gbs_bmc_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("kudo-bmc"), .parent = TYPE_NPCM7XX_MACHINE, .class_init = kudo_bmc_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("mori-bmc"), .parent = TYPE_NPCM7XX_MACHINE, .class_init = mori_bmc_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("npcm845-evb"), .parent = TYPE_NPCM8XX_MACHINE, .class_init = npcm845_evb_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("olimex-stm32-h405"), .parent = TYPE_MACHINE, .class_init = olimex_stm32_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .name = MACHINE_TYPE_NAME("sx1"), .parent = TYPE_MACHINE, .class_init = sx1_machine_v2_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void sx1_machine_v1_class_init(ObjectClass *oc, void *data) @@ -238,6 +242,10 @@ static const TypeInfo sx1_machine_v1_type = { .name = MACHINE_TYPE_NAME("sx1-v1"), .parent = TYPE_MACHINE, .class_init = sx1_machine_v1_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("orangepi-pc"), .parent = TYPE_MACHINE, .class_init = orangepi_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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[] = { .name = MACHINE_TYPE_NAME("raspi0"), .parent = TYPE_RASPI_MACHINE, .class_init = raspi0_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("raspi1ap"), .parent = TYPE_RASPI_MACHINE, .class_init = raspi1ap_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("raspi2b"), .parent = TYPE_RASPI_MACHINE, .class_init = raspi2b_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #ifdef TARGET_AARCH64 }, { .name = MACHINE_TYPE_NAME("raspi3ap"), .parent = TYPE_RASPI_MACHINE, .class_init = raspi3ap_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, { .name = MACHINE_TYPE_NAME("raspi3b"), .parent = TYPE_RASPI_MACHINE, .class_init = raspi3b_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, #endif }, { .name = 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 = { .parent = TYPE_RASPI_BASE_MACHINE, .instance_size = sizeof(Raspi4bMachineState), .class_init = raspi4b_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = { .name = MACHINE_TYPE_NAME("realview-eb"), .parent = TYPE_MACHINE, .class_init = realview_eb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void realview_eb_mpcore_class_init(ObjectClass *oc, void *data) @@ -452,6 +456,10 @@ static const TypeInfo realview_eb_mpcore_type = { .name = MACHINE_TYPE_NAME("realview-eb-mpcore"), .parent = TYPE_MACHINE, .class_init = realview_eb_mpcore_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void realview_pb_a8_class_init(ObjectClass *oc, void *data) @@ -471,6 +479,10 @@ static const TypeInfo realview_pb_a8_type = { .name = MACHINE_TYPE_NAME("realview-pb-a8"), .parent = TYPE_MACHINE, .class_init = realview_pb_a8_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void realview_pbx_a9_class_init(ObjectClass *oc, void *data) @@ -491,6 +503,10 @@ static const TypeInfo realview_pbx_a9_type = { .name = MACHINE_TYPE_NAME("realview-pbx-a9"), .parent = TYPE_MACHINE, .class_init = realview_pbx_a9_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("sabrelite"), .parent = TYPE_MACHINE, .class_init = sabrelite_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .instance_init = sbsa_ref_instance_init, .class_init = sbsa_ref_class_init, .instance_size = sizeof(SBSAMachineState), + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = { .name = MACHINE_TYPE_NAME("lm3s811evb"), .parent = TYPE_MACHINE, .class_init = lm3s811evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; /* @@ -1448,6 +1452,10 @@ static const TypeInfo lm3s6965evb_type = { .name = MACHINE_TYPE_NAME("lm3s6965evb"), .parent = TYPE_MACHINE, .class_init = lm3s6965evb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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[] = { .name = MACHINE_TYPE_NAME("stm32vldiscovery"), .parent = TYPE_MACHINE, .class_init = stm32vldiscovery_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; 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 = { .name = MACHINE_TYPE_NAME("versatilepb"), .parent = TYPE_MACHINE, .class_init = versatilepb_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void versatileab_class_init(ObjectClass *oc, void *data) @@ -452,6 +456,10 @@ static const TypeInfo versatileab_type = { .name = MACHINE_TYPE_NAME("versatileab"), .parent = TYPE_MACHINE, .class_init = versatileab_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = { .parent = TYPE_VEXPRESS_MACHINE, .class_init = vexpress_a9_class_init, .instance_init = vexpress_a9_instance_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static const TypeInfo vexpress_a15_info = { @@ -857,6 +861,10 @@ static const TypeInfo vexpress_a15_info = { .parent = TYPE_VEXPRESS_MACHINE, .class_init = vexpress_a15_class_init, .instance_init = vexpress_a15_instance_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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 = MACHINE_VER_TYPE_NAME("virt", __VA_ARGS__), \ .parent = TYPE_VIRT_MACHINE, \ .class_init = MACHINE_VER_SYM(class_init, virt, __VA_ARGS__), \ + .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = zynq_machine_class_init, .instance_size = sizeof(ZynqMachineState), + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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_typeinfo = { .instance_init = versal_virt_machine_instance_init, .instance_size = sizeof(VersalVirt), .instance_finalize = versal_virt_machine_finalize, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; 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_typeinfo = { .class_init = xlnx_zcu102_machine_class_init, .instance_init = xlnx_zcu102_machine_instance_init, .instance_size = sizeof(XlnxZCU102), + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }; static void xlnx_zcu102_machine_init_register_types(void) From patchwork Fri Apr 18 00:50:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882299 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587407wrs; Thu, 17 Apr 2025 17:52:19 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCW/+vSn0lEsh4D8W4oezdBTRmdVGiOSP/Xmuv1s44Jpd45a03bLr8gj2aZIvQ85EHkq3QRXhg==@linaro.org X-Google-Smtp-Source: AGHT+IHVXavvzZvQaJyGvpRh1VcGfKYAVO38J9rHfQGQYTCQSHm4+gYsPS4f6IkLnbIwP0SZTTVc X-Received: by 2002:a05:6214:5292:b0:6e8:fbb7:6764 with SMTP id 6a1803df08f44-6f2c46992f3mr17577996d6.45.1744937539291; Thu, 17 Apr 2025 17:52:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937539; cv=none; d=google.com; s=arc-20240605; b=NyT9cGg2r/13PJG90Kq3Qk2P7nN/zTfxxg5kCPMEp8KAhjDvWmFcTzdxlz9whAGdv1 hRdlZDsjY7uqndRDW5acZkyoqHG/cCtjk+HWVWQN9SnHSevuid3qQzzPYhggmBPr/nUs Qpo+sRQ+4BxdUpKgyI0yaGqX1J21NdaQgE7NoumNWOBtL/OZ2o1WUzx54B1PvNRwhcbR Rrkr9JakdjamjXYnSHnUqSgPeh6oHOQe9HF4KNJ6tIhLbQexn1P7E216xpYqe4fPdnyP 98I6bzoUiVP3yYffF/36sEyjpBGrFk2g5NBPYUugUmz0Z1jigkmNRafFPEUAAQkgq97p 2wjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=uj/SXX9ORqUNqwaIUFCu3a62k7kjC1ko71xFmGry47g=; fh=Qw0qe3vcuoblYVwY2qq5Y5fIDTp04QJp7oK3T6vCcos=; b=UAbp0Cot5tD1fikl73B+izooje32Vk6Xq0fyTAXiVefus42hI2c94f+V+VSGRaDiHv 7FWHTnbnopk8szP5h4WU6/c+oZvn83S4/6tQsAICC12IzD2b86KZKR7sdGhHtLKLpXuh PNtSzQeKMAcO2RtUEJ5k6KohnQyZTIyrjTXhw8IBe/dxtoQu3WEoyAT27hPSZH/QUKMs yP68270NQhGu0F8Tl39ZtoQwbvVm/BLxfk4uNwZqkuUAH1sBQNweoOQdd+dB6R5nD1CT O1KwnU85TLcaWtGCSBty0N4zvJEDNT/TQCDW8Md3fUCTCMhKKtcrh+pqd4ujvMOIuorC GMUA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FyV6x8S+; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 6a1803df08f44-6f2c2c092f5si10067546d6.295.2025.04.17.17.52.19 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:52:19 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FyV6x8S+; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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_AARCH64'], if_true: files('bcm2838.c', 'raspi4b.c')) hw/arm/meson.build:50:arm_common_ss.add(when: ['CONFIG_ASPEED_SOC', 'TARGET_AARCH64'], if_true: files('aspeed_ast27x0.c')) $ git grep -W AARCH64 hw/arm/Kconfig hw/arm/Kconfig=185=config SBSA_REF hw/arm/Kconfig-186- bool hw/arm/Kconfig-187- default y hw/arm/Kconfig:188: depends on TCG && AARCH64 -- hw/arm/Kconfig=413=config 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=435=config XLNX_VERSAL hw/arm/Kconfig-436- bool hw/arm/Kconfig-437- default y hw/arm/Kconfig:438: depends on TCG && AARCH64 -- hw/arm/Kconfig=475=config NPCM8XX hw/arm/Kconfig-476- bool hw/arm/Kconfig-477- default y hw/arm/Kconfig:478: depends on TCG && AARCH64 -- hw/arm/Kconfig=605=config 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 = MACHINE_TYPE_NAME("ast2700a0-evb"), hw/arm/aspeed.c-1949- .name = MACHINE_TYPE_NAME("ast2700a1-evb"), hw/arm/raspi.c:420:#ifdef TARGET_AARCH64 hw/arm/raspi.c-421- }, { hw/arm/raspi.c-422- .name = MACHINE_TYPE_NAME("raspi3ap"), hw/arm/raspi.c-429- }, { hw/arm/raspi.c-430- .name = 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 ast2700a0-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 based 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é 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[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_palmetto_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1769,6 +1770,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_supermicrox11_bmc_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1777,6 +1779,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_supermicro_x11spi_bmc_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1785,6 +1788,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2500_evb_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1793,6 +1797,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_romulus_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1801,6 +1806,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_sonorapass_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1809,6 +1815,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_witherspoon_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1817,6 +1824,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_ast2600_evb_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1825,6 +1833,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_yosemitev2_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1833,6 +1842,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_tiogapass_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1841,6 +1851,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_g220a_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1849,6 +1860,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_qcom_dc_scm_v1_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1857,6 +1869,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_qcom_firework_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1865,6 +1878,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_fp5280g2_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1873,6 +1887,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_quanta_q71l_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1881,6 +1896,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_rainier_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1889,6 +1905,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_fuji_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1897,6 +1914,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_machine_bletchley_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1905,6 +1923,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = MACHINE_TYPE_NAME("ast2600-evb"), .class_init = aspeed_machine_fby35_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1913,6 +1932,7 @@ static const TypeInfo aspeed_machine_types[] = { .parent = TYPE_ASPEED_MACHINE, .class_init = aspeed_minibmc_machine_ast1030_evb_class_init, .interfaces = (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[] = { .instance_size = sizeof(Bl475eMachineState), .class_init = bl475e_machine_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = bpim2u_machine_class_init, .interfaces = (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 = { .class_init = collie_machine_class_init, .instance_size = sizeof(CollieMachineState), .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = cubieboard_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = digic_machine_class_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = nuri_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -197,6 +198,7 @@ static const TypeInfo smdkc210_type = { .parent = TYPE_MACHINE, .class_init = smdkc210_class_init, .interfaces = (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[] = { .instance_size = sizeof(Fby35State), .instance_init = fby35_instance_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = highbank_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -392,6 +393,7 @@ static const TypeInfo midway_type = { .parent = TYPE_MACHINE, .class_init = midway_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = imx25_pdk_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = integratorcp_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = kzm_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = mcimx6ul_evk_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = mcimx7d_sabre_machine_class_init, .interfaces = (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 = { .instance_size = sizeof(MicrobitMachineState), .class_init = microbit_machine_class_init, .interfaces = (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 = { .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps2tz_an505_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1474,6 +1475,7 @@ static const TypeInfo mps2tz_an521_info = { .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps2tz_an521_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1484,6 +1486,7 @@ static const TypeInfo mps3tz_an524_info = { .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps3tz_an524_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1494,6 +1497,7 @@ static const TypeInfo mps3tz_an547_info = { .parent = TYPE_MPS2TZ_MACHINE, .class_init = mps3tz_an547_class_init, .interfaces = (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 = { .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an385_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -574,6 +575,7 @@ static const TypeInfo mps2_an386_info = { .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an386_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -584,6 +586,7 @@ static const TypeInfo mps2_an500_info = { .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an500_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -594,6 +597,7 @@ static const TypeInfo mps2_an511_info = { .parent = TYPE_MPS2_MACHINE, .class_init = mps2_an511_class_init, .interfaces = (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[] = { .parent = TYPE_MPS3R_MACHINE, .class_init = mps3r_an536_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = emcraft_sf2_machine_class_init, .interfaces = (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 = { .parent = TYPE_MUSCA_MACHINE, .class_init = musca_a_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -668,6 +669,7 @@ static const TypeInfo musca_b1_info = { .parent = TYPE_MUSCA_MACHINE, .class_init = musca_b1_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = musicpal_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = netduino2_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = netduinoplus2_machine_class_init, .interfaces = (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[] = { .parent = TYPE_NPCM7XX_MACHINE, .class_init = npcm750_evb_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -558,6 +559,7 @@ static const TypeInfo npcm7xx_machine_types[] = { .parent = TYPE_NPCM7XX_MACHINE, .class_init = gsj_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -566,6 +568,7 @@ static const TypeInfo npcm7xx_machine_types[] = { .parent = TYPE_NPCM7XX_MACHINE, .class_init = gbs_bmc_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -574,6 +577,7 @@ static const TypeInfo npcm7xx_machine_types[] = { .parent = TYPE_NPCM7XX_MACHINE, .class_init = kudo_bmc_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -582,6 +586,7 @@ static const TypeInfo npcm7xx_machine_types[] = { .parent = TYPE_NPCM7XX_MACHINE, .class_init = mori_bmc_machine_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = olimex_stm32_machine_class_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = sx1_machine_v2_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -243,6 +244,7 @@ static const TypeInfo sx1_machine_v1_type = { .parent = TYPE_MACHINE, .class_init = sx1_machine_v1_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = orangepi_machine_class_init, .interfaces = (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[] = { .parent = TYPE_RASPI_MACHINE, .class_init = raspi0_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -403,6 +404,7 @@ static const TypeInfo raspi_machine_types[] = { .parent = TYPE_RASPI_MACHINE, .class_init = raspi1ap_machine_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -411,6 +413,7 @@ static const TypeInfo raspi_machine_types[] = { .parent = TYPE_RASPI_MACHINE, .class_init = raspi2b_machine_class_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = realview_eb_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -457,6 +458,7 @@ static const TypeInfo realview_eb_mpcore_type = { .parent = TYPE_MACHINE, .class_init = realview_eb_mpcore_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -480,6 +482,7 @@ static const TypeInfo realview_pb_a8_type = { .parent = TYPE_MACHINE, .class_init = realview_pb_a8_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -504,6 +507,7 @@ static const TypeInfo realview_pbx_a9_type = { .parent = TYPE_MACHINE, .class_init = realview_pbx_a9_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = sabrelite_machine_class_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = lm3s811evb_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -1453,6 +1454,7 @@ static const TypeInfo lm3s6965evb_type = { .parent = TYPE_MACHINE, .class_init = lm3s6965evb_class_init, .interfaces = (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[] = { .parent = TYPE_MACHINE, .class_init = stm32vldiscovery_machine_class_init, .interfaces = (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 = { .parent = TYPE_MACHINE, .class_init = versatilepb_class_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -457,6 +458,7 @@ static const TypeInfo versatileab_type = { .parent = TYPE_MACHINE, .class_init = versatileab_class_init, .interfaces = (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 = { .class_init = vexpress_a9_class_init, .instance_init = vexpress_a9_instance_init, .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, @@ -862,6 +863,7 @@ static const TypeInfo vexpress_a15_info = { .class_init = vexpress_a15_class_init, .instance_init = vexpress_a15_instance_init, .interfaces = (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 = TYPE_VIRT_MACHINE, \ .class_init = MACHINE_VER_SYM(class_init, virt, __VA_ARGS__), \ .interfaces = (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 = { .class_init = zynq_machine_class_init, .instance_size = sizeof(ZynqMachineState), .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, { TYPE_TARGET_AARCH64_MACHINE }, { }, }, From patchwork Fri Apr 18 00:50:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882298 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587373wrs; Thu, 17 Apr 2025 17:52:10 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUNS/XWvsGbb8WYT9ZZGPlYs6IXmuHCKF2gK9KKreVFB2u5Xqh+Qj2wmyTqxlyF6fOpyVbhQQ==@linaro.org X-Google-Smtp-Source: AGHT+IEpEOZJGm4QcUTDuYA7h0wVtE5JHvh3H8vhRh2VTtQA8M5++Z+J87su/L16Wp1AIlwNQvca X-Received: by 2002:a05:620a:2949:b0:7c5:5003:81be with SMTP id af79cd13be357-7c9280186bamr153795385a.43.1744937529727; Thu, 17 Apr 2025 17:52:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937529; cv=none; d=google.com; s=arc-20240605; b=d7UEPkkmKrpsKhVibDnadoXXG7sNr3lzRXtX0VKlopPoNzj3+quw7PVj+Sq1juZUDV VqRyunU/9rpRQ8B2pRf10XdVyIYsVWD4Pu5t5VXlKBFwKv5bpMO9jXrqXB1m6cs/YGeg LbEk9CtmsjW+4vNufD24v9UB2BWhKoPF6nW9Oa/9O+LkZkRbGpJwdtvbNVTLsc3xr1UG Jav+RI//ruwfpF48fF/+o/bBCpopBRUMPeD9/aolLkasIUnJUSqgaBYYQ8ffY+KLT0zU dE0I4qML9N3Lig3i5jqpusVZQWMk+ew1ml1LLQp58Q0gJbcn8cnn43odo27Y5bZP6IG5 bGig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=HcN3OSzYH87XaR5VdWjr7Gc7b57JUTMWUSMgbSiV6+A=; fh=kwxRRZuDS/k2D+6tG2y9ZPN+LkCxPeQzJVeWSht03/0=; b=ECIxoD8jwy8rHkfVff81aFWjnOidc+k9/zy6GvO8LNcbbc5kt3IGaYEa80r5ngeq7y dSXapAMCdl+RnxrIhuppYst7NBGhUrqlLL1EKvCEW55kCbMFQ1v+5eKB0wjox7akDPDY zEiljE34iRwwm9zZdbjqIba/4dsPMs18moMeuTs6ZRMMC5H249cYmZS11d7WcRqtq4Qv iHulHcCcs88z11W2hpRUN6XPxTSTS9t+XnBcpihVgCYfKVk3ktmKcDc//Z9ge/XZMXVx v5Doy1HjjkuYktlS5ZeHpwtbmwFPbkBJ1WcuAx9O9cifU+V5UqeSj71lPwWWxIOUlaEC ayeQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FYCOtZ46; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9ca39f9si10575361cf.279.2025.04.17.17.52.09 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:52:09 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FYCOtZ46; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é --- 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[] = { .name = MACHINE_TYPE_NAME("none"), .parent = TYPE_MACHINE, .class_init = null_machine_class_init, + .interfaces = (InterfaceInfo[]) { + { TYPE_TARGET_ARM_MACHINE }, + { TYPE_TARGET_AARCH64_MACHINE }, + { }, + }, }, }; From patchwork Fri Apr 18 00:50:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882300 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587421wrs; Thu, 17 Apr 2025 17:52:22 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWWzHc+/VX9LklJjfW8i+nC713YPxUn4+Eqa1ckfJ1uYaBQC4P8eTOZEQQMp+CNVWsMryF7Tg==@linaro.org X-Google-Smtp-Source: AGHT+IFeowGuMa+5lwADXdxhz21LyY/2eD2/qXhqAn9/E+SAeJmfMzxuCffJCr/Xi7CAh7BGQUJf X-Received: by 2002:a05:620a:3184:b0:7c5:a542:10f with SMTP id af79cd13be357-7c92800920dmr155382085a.35.1744937541931; Thu, 17 Apr 2025 17:52:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937541; cv=none; d=google.com; s=arc-20240605; b=QGSVPjtI5nNRkWjD9hhhlIntgUOyIm1YVCLWaIsQyyODufYxxsibWQhRz668xxk8M0 cqwiJT6+YykH7T+rWsSkBmeaJ+uPVyObadf5E0Rb0O9MwJxtRFrmKO734plgHNc75IPp 9FOP6BbSJ8BQnz9DnfjtlyjuwacQ3O5syA3juMb8twgQSybMYXjKtYWgnXsb4Q+9SerH FhS7uD7a2tn+KiZ+R8/N11q2xAucbCFxbfR2a1j9n63xQbE8p3ECwaYGaD/Iwc0T2xkC 6sLtGka88vLaP4fLp+aqVoyA8wF3xWsYeMftH5npHyKYWTnHQzzd+TFtLiphCajMrpBN uSdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=gm2dOsKzPvwvg/Tuqc3gLIr1jfZVElB4JK7LqftVN0s=; fh=pHutNFPOAyF4blgBXa73XQ9oh8q7bmEMXCobHwajltI=; b=IFjdqrl26mKmYxh7jLdCKH+QruI1bHSER2y2p4rs7nk4hskJCjK3vF6npi8r6pc+tG okyXAl4HKMLizx/6E0CvFU4YD7IfZOQBJ6FzN1jKRS5X1h7CeCR8xrm6eKCi2ZK10aFY D45I2C7wCCdQNbpyFwc1syk+4fJADSZHiw+G0VmhitkunwNPgPzjcSqdTGc+nTEYZEpd hL4Xh0cpxLRz0c38+aiCE6HCC3CXrvlB1mcFBsdpTsXUkgKOKp562hhOM4/ivhvEa9Bz j51cDgMGmR79/XU0W6EQnFh01RY6p+ltB9pkxiAi0MHAsspAndS8hYwrn74I1fffUGqZ mUtQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=LSW3Cm1c; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c925bd1f98si100024685a.568.2025.04.17.17.52.21 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:52:21 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=LSW3Cm1c; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é --- 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-target.c')) common_ss.add(files('target_info.c')) system_ss.add(files('target_info-qom.c')) -specific_ss.add(files('target_info-stub.c')) subdir('backends') subdir('disas') @@ -4272,6 +4271,12 @@ foreach target : target_dirs arch_srcs += gdbstub_xml endif + target_info_c = meson.project_source_root() / 'configs' / 'targets' / target + '.c' + if not fs.exists(target_info_c) + target_info_c = meson.project_source_root() / 'target_info-stub.c' + endif + arch_srcs += target_info_c + t = target_arch[target_base_arch].apply(config_target, strict: false) arch_srcs += t.sources() arch_deps += 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 = { + .name = "arm", + .machine_typename = TYPE_TARGET_ARM_MACHINE, +}; + +const TargetInfo *target_info(void) +{ + return &target_info_arm_system; +} From patchwork Fri Apr 18 00:50:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882303 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587680wrs; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUfdCS+D9CUAQ4Rz1FDEOHgf0dlHQJt5N0G9HdCZR+bmhFf6jBAj/MaPcuwVA0iTsONWEyOzA==@linaro.org X-Google-Smtp-Source: AGHT+IGT64NUqkW1n/IyOiXCVTULcawo2mXS7V0ECg4z+1XMdNZMqshp43mGmmistH/VCAlD66TA X-Received: by 2002:ac8:5811:0:b0:479:1a10:8958 with SMTP id d75a77b69052e-47aec351eccmr19215431cf.1.1744937612135; Thu, 17 Apr 2025 17:53:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937612; cv=none; d=google.com; s=arc-20240605; b=U8TEaorPpoMm5GKphCtYV+Rx+iIT5uJxKQdTzgQuOJEELmh6USH8wflo29fX3M+yUm tzUeLPi4xqKbEWSPsNO/h+o8EI64UM9R28TqkJbfMkHZTjF9DgC44nyKIn3hgdflQ4Xz G+VPLeUn1yotsBaFUI4RjZYGdSx/8rr1Qop1AZE8b/cotTHKFEpjF/qyzyugWv/R15tx op8992hb4u4yrpwjWsH2ue4ovVvbJHl4aKuayc0rCZ+YcAeMwyVyIeBAxAzp0taPRwwl 6TutbGPFeHQpFbghsfg5t0xzVJSIwi9IYLKGPKB96UL6E0xrQdLo/DotOB9F8wbNI18h DjaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=GcHJH1PYkGcsws2/whqy32PYr492ZOWj9l1ZtfQiy1U=; fh=Hh7W7DktDcxTLjsEyh24OdpPdswwAmEGDneprNjDbTo=; b=W0AYrLPEfay3tLBvcBrD7iWMCRMTM8eR36GPg0cBH4eT8SkU/bxgkIg6xwuo2dfa6k RPVna2iKyGfHIf6n0Gc5rToNLf4Sfb5uNL1rDloE0Mh9ntMLO27xWkHcGM4FhRljuufb afwn/dzVrC5rtySVlMWG1ckKRQ3j0eKltkZfxiqrbvVag+E1n2aFT2RsdVOJ3PPdhBZF qM6la5RmgpgXU2mG2NzEFktz3ABlEldKECSXT9cHXeJn6PMS7pEqLFMt4Ga3WnDUVGkY EqO4q5cO2tyvH6ogLzAS3cuW3fUeUGARE6fXlcO7DLne6hHGmkwsz/OAhx4EMYzgonCB crIA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ixuIK8p4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9ca37c9si10125761cf.334.2025.04.17.17.53.31 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:53:32 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ixuIK8p4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Implement the TargetInfo structure for qemu-system-aarch64 binary. Signed-off-by: Philippe Mathieu-Daudé --- 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-softmmu.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 = { + .name = "aarch64", + .machine_typename = TYPE_TARGET_AARCH64_MACHINE, +}; + +const TargetInfo *target_info(void) +{ + return &target_info_aarch64_system; +} From patchwork Fri Apr 18 00:50:58 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882306 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587718wrs; Thu, 17 Apr 2025 17:53:41 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCX4GyXcen7VyNB/wDZJ4im6sUyosiRCKcTuom5lFymx7YTKkLAWyZzSBbh6mkEoSevyz2PN4w==@linaro.org X-Google-Smtp-Source: AGHT+IExRh/nqE3c4kAy5mp9jJXAr28SFnYOrIRQauX6x+85uNFG2WW9b6og7mETtHHl3IkoSjjg X-Received: by 2002:a05:620a:244f:b0:7c5:60c7:339 with SMTP id af79cd13be357-7c927f5948fmr175732685a.9.1744937621173; Thu, 17 Apr 2025 17:53:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937621; cv=none; d=google.com; s=arc-20240605; b=O0Uh7deb3X1alu8bnvbZxdxkgvTMOgcR9FArak5QtofLOnsTO9saljztD/JqubBz80 /yccrRoJO1OOHUQTegMdWzarDST2yIOzab9W4UkPsg4EwTcPB9S+d4gxoziPHN5Ue9Ft OXdTa/Eqrca6IjhdCJ1iwmIu5iaU5A1Bwa1oRHPPu+qHcudAZ5E7n9Lguzd3WU6Ba6Ru 3DUdP784iM10vms58J86eKDVoazT10x0YyFqZpi1fI34qzua91m4jeP4exqi+aTezUl0 JvvTpXtg7TZlsFXj9hqs5ITA8CldCO8iipUPkfnWZsWgUda7/HkMdp3XFpDyGS2HOr0G ZEwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=QUftrT9mw1sdbt1Cgea3mziIB2FdIW29aFiLhpIfymM=; fh=jPmKSn6ZL0QtRTITcuhVCoA13YRsJS9M/4cuajP8suM=; b=Tf7kM+34Qj9t3hiYutKYBi2zrVWW7JstcMXeyCEm757ZhQWbao2bIMcXdu5QEODHED WId9+LE+T7eMgffRMiqbRJBrFf5HWVG7IxWn598Kc/74uPf7x/xcve8RpuB1wMXBWNC+ RinifHcF+zQN5/OWy0RYnA71QmGzSGUmtNBr5qtChIa9XUqO7xnknv6NquBNnE5jVUl6 m2Y4ULhntSEQIXc+nX6dFYUeKax38ZKLJrgaAUP7CEEoKF/BpHm+VKDIbJlwyN/xhbwh 1RmUNuenMPS49URXffyHfros6syIPvgV1hVvKWgFPzr8uHJTY3U09vM2WRzQj84mRaD0 0Eaw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=r2gyQ5xL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9c2b143si9640521cf.136.2025.04.17.17.53.41 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:53:41 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=r2gyQ5xL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é 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 -#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 /* 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); } -#ifdef TARGET_AARCH64 static void ast2700_evb_i2c_init(AspeedMachineState *bmc) { AspeedSoCState *soc = bmc->soc; @@ -1713,7 +1710,6 @@ static void aspeed_machine_ast2700a1_evb_class_init(ObjectClass *oc, void *data) mc->default_ram_size = 1 * GiB; aspeed_machine_class_init_cpus_defaults(mc); } -#endif static void aspeed_machine_qcom_dc_scm_v1_class_init(ObjectClass *oc, void *data) @@ -1936,7 +1932,6 @@ static const TypeInfo aspeed_machine_types[] = { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#ifdef TARGET_AARCH64 }, { .name = MACHINE_TYPE_NAME("ast2700a0-evb"), .parent = TYPE_ASPEED_MACHINE, @@ -1953,7 +1948,6 @@ static const TypeInfo aspeed_machine_types[] = { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#endif }, { .name = TYPE_ASPEED_MACHINE, .parent = 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')) From patchwork Fri Apr 18 00:50:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 882302 Delivered-To: patch@linaro.org Received: by 2002:a5d:474d:0:b0:38f:210b:807b with SMTP id o13csp587566wrs; Thu, 17 Apr 2025 17:53:03 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCULQotHm/hnRHdKnF8ehAyHVwsTdItpWlQ+C5isDaorhrFqQCaQ6LYTB90mS8w68/reljq5dg==@linaro.org X-Google-Smtp-Source: AGHT+IGV88hXja2t2CvN4jSj1F78JLSfarcCdjqLWJAgRMo9u75E7FlFM2dbWm9pUlytcIp4Brj5 X-Received: by 2002:a05:622a:788a:b0:474:fa6b:c402 with SMTP id d75a77b69052e-47ae96f421bmr27251461cf.18.1744937583460; Thu, 17 Apr 2025 17:53:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744937583; cv=none; d=google.com; s=arc-20240605; b=JiidjVqwmJxHJ1t7KeBaT/dJ/gllGpKjg4MgT/fkQhXt/f4N3GW89kyrRh9mtHzM8T hVy7jjC6YyB5df09Y1cC+eupQLYWOl2QlRr0E5jFbr7PAuNjRf8xRgVcjzk5GFq66pY5 EauTZU4z7+Q/eeyrTkesE18eOSqC1bROpVT55qngYY1F2t/aemsdeZswxafN12UGVcWi nQkHXDBmaLG7+hmKkatGYX60JYG+IGKXVmMO6nBSmqTlLOc3AmJDbnWSBtVMDSuT0wxt m42a3pw5d74a4l4ImB1zx7tFw4v6F6Y2ZUE3Q4QTuC9XMkLu+Bc7X1nVDt5PC9Na2/TH F5jQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Rc46lD7Ko7XfwPKQsqzz7EgBw+3K3PZcRoY06dDD1t0=; fh=h+vE76rD/I8uaDmPFSjrqjRSokfYnPuZwXy7tJemqGE=; b=BvYocKgdoiqelCVoxF8sLEqym1gnm7QS3oLs1HCZcrs5updilXqDpzFXg/oesK0nYL 7yIFMeuACBEz6vy5Ys1bW0p0k04iVtw/Wfaro9BjvlIff5776GP5UtFHCJVag6LULxDJ vyjJ4tzYmANyqQVpd1RHc2rVwia1/23xPHcgWlWMAD+9YcA1xaquHPzRbNq3+zbCXU8x bRIzZ4GJZ4ViJptwBBs8YJhhB0yrhibETpoPMimcMMn+s7ccIsZBnCXVDhBmKFBeH9K0 SIg7V+V71MGDLBCyRpWfXW5/10nyzGZzXQbRY1yhbuB/yHIKa9j01L0eHStIZ2XMVHeL cFOA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S6H7MOy1; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ae9cb6c9bsi10378261cf.359.2025.04.17.17.53.03 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 17 Apr 2025 17:53:03 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S6H7MOy1; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) From: =?utf-8?q?Philippe_Mathieu-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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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é 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 *data) dc->realize = bcm2836_realize; }; -#ifdef TARGET_AARCH64 static void bcm2837_class_init(ObjectClass *oc, void *data) { DeviceClass *dc = DEVICE_CLASS(oc); @@ -208,7 +207,6 @@ static void bcm2837_class_init(ObjectClass *oc, void *data) bc->clusterid = 0x0; dc->realize = bcm2836_realize; }; -#endif static const TypeInfo bcm283x_types[] = { { @@ -219,12 +217,10 @@ static const TypeInfo bcm283x_types[] = { .name = TYPE_BCM2836, .parent = TYPE_BCM283X, .class_init = bcm2836_class_init, -#ifdef TARGET_AARCH64 }, { .name = TYPE_BCM2837, .parent = TYPE_BCM283X, .class_init = bcm2837_class_init, -#endif }, { .name = TYPE_BCM283X, .parent = 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); }; -#ifdef TARGET_AARCH64 static void raspi3ap_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); @@ -387,7 +386,6 @@ static void raspi3b_machine_class_init(ObjectClass *oc, void *data) rmc->board_rev = 0xa02082; raspi_machine_class_init(mc, rmc->board_rev); }; -#endif /* TARGET_AARCH64 */ static const TypeInfo raspi_machine_types[] = { { @@ -417,7 +415,6 @@ static const TypeInfo raspi_machine_types[] = { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#ifdef TARGET_AARCH64 }, { .name = MACHINE_TYPE_NAME("raspi3ap"), .parent = TYPE_RASPI_MACHINE, @@ -434,7 +431,6 @@ static const TypeInfo raspi_machine_types[] = { { TYPE_TARGET_AARCH64_MACHINE }, { }, }, -#endif }, { .name = TYPE_RASPI_MACHINE, .parent = 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('omap1.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-h3.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'))