From patchwork Thu Sep 21 23:41:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 817271 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="JJ/x6Qj8"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3xytcY0Kbsz9tXd for ; Fri, 22 Sep 2017 09:49:13 +1000 (AEST) Received: from localhost ([::1]:56004 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvBBk-0005hf-Qp for incoming@patchwork.ozlabs.org; Thu, 21 Sep 2017 19:47:24 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45858) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvBA4-0004f1-H9 for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:45:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dvB9z-000221-Jy for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:45:40 -0400 Received: from mail-by2nam01on0065.outbound.protection.outlook.com ([104.47.34.65]:35520 helo=NAM01-BY2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dvB9z-00021f-82 for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:45:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector1-xilinx-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=oXoS19fwks+ESwgipC4IouFgfEnHyg1FAF9RxQM8XPo=; b=JJ/x6Qj8xgVO8qb+GYTJJz3q13/u+BWJZwzLv8YRfm8YAYd1/6B7CLxp7GmrmhHSJbu48eOXYyy6nIAq7C7EPK6QqBbSLMXl+CciV0C22mOihmWqROOGZFtYvPM0gMzlmZKmf6DLv45UwOLSEcsmyP5FL54iUCAvKwztiEtKNWE= Received: from MWHPR0201CA0003.namprd02.prod.outlook.com (10.167.160.144) by BLUPR02MB1123.namprd02.prod.outlook.com (10.163.79.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Thu, 21 Sep 2017 23:45:32 +0000 Received: from CY1NAM02FT057.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e45::202) by MWHPR0201CA0003.outlook.office365.com (2603:10b6:301:74::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.8 via Frontend Transport; Thu, 21 Sep 2017 23:45:32 +0000 Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by CY1NAM02FT057.mail.protection.outlook.com (10.152.75.110) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.35.14 via Frontend Transport; Thu, 21 Sep 2017 23:45:31 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66] helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1dvB9u-00044s-TF; Thu, 21 Sep 2017 16:45:30 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1dvB9u-0006hp-Mf; Thu, 21 Sep 2017 16:45:30 -0700 Received: from xsj-pvapsmtp01 (maildrop.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id v8LNjTKH019809; Thu, 21 Sep 2017 16:45:29 -0700 Received: from [172.19.2.220] (helo=localhost.localdomain) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1dvB9t-0006hh-7Y; Thu, 21 Sep 2017 16:45:29 -0700 From: Alistair Francis To: Date: Thu, 21 Sep 2017 16:41:48 -0700 Message-ID: X-Mailer: git-send-email 2.11.0 X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.1.0.1062-23342.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(346002)(376002)(39860400002)(2980300002)(438002)(189002)(199003)(33646002)(189998001)(106466001)(5003940100001)(2351001)(2906002)(9786002)(50226002)(50466002)(6666003)(48376002)(54906003)(16586007)(5660300001)(6916009)(77096006)(316002)(36386004)(50986999)(36756003)(63266004)(47776003)(81156014)(8936002)(81166006)(39060400002)(356003)(305945005)(478600001)(8676002)(4326008)(107986001); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR02MB1123; H:xsj-pvapsmtpgw01; FPR:; SPF:Pass; PTR:unknown-60-83.xilinx.com; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CY1NAM02FT057; 1:pNXxMFaYuI5leemd7GNfMgMC3Q35jh1Y2hqDfcMVUexCD4RoJ04PUbAxzrMnGEangqsyTXmhmXKXEGgsv6qSoqMK/BQdvLr3O4gCM2xUVpBtJM7fiTc5+R57UHigHi6z MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1f90bc1a-9d92-4220-20a5-08d5014ad8c3 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(8251501002)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BLUPR02MB1123; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1123; 3:MiJrX8CL9/5N3VzZCVHGULwDR46WU+c48Krhn1V9n8XhYVg8l6Zr6XHOrI5cm/o44pTvhG5s4+T6C/OhwvKdEgxBt7Bh30+uXIB5AtPVAjsEoEzsp7PV/UcW4xW4HVX7k+7CQ/bAjV2jbqS2HWTDiTNtoYBxWoR+503vX7BGUFveoEawxGrLWPr4Q0UwO38TDVHzdLt2ySNHDYE+ZVxet8M+mZTJN172Qga0sp40gopFTSPRX4BEZdZY/USYSNPXhe1ZOKoo7u/6ImgTMQgqO2vxHN13FX3leZO2gvTFqQTeDr7YfwcpGcAiWa8HoqSOvzJl92kFaZQsROUZfGWGDq4zHl7oFHY/Y/ztW8cu5k8=; 25:eFxgkdJxIzH5X3Zh2z6G32hkWWVCAqImO4ZlsO0lAx8a/sEV8Vvm3wk0kryBm05YzwkrGs1QJseBAUv9D/4txiE7UKGRRryFXscdj1VHfCuYKEGqKpxBzsuWNCw4UNoKeiTmRx0ZLvtMvI6vlVh8GnejzSNs5KUhZpwTuHOS75a+g1108hqoD4Ze9gr/VFunu4p35/7IenLAsjxiLri+9X1kkKrHxoia32gCz6THO9naDeMneuXvVl8alXcazGmO6/5P0YIOmiqnvOkOCny5gNs3R15PS6qnEz1zFofqYyTuvGhacj2p/4O0/zu+rUaWUMnwUUW6IdvZIvWwC4G7Iw== X-MS-TrafficTypeDiagnostic: BLUPR02MB1123: X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1123; 31:U7MlnteHClC9EMMNq5fi5kDBPN0o2owPgKO+eyrTJcat6yZYUpY5puAypFtgXbbgxWtkOjklRFu46+PBSbJff5KNObtf31TL+bmF/RcgqXeA8eV9et5tWSY+PQcASjizHbxwcs6S1u2kcOXgxoV7epjrFqTd0dS4xvOwj/bQ2fqI36NV2i2n8ANR/q4KjpW3fQ9QHFD7JGUidZDJLfjb+X4WbRft+yzrGd5H6j7/HoE=; 20:Dxx7o7dRyEoAlRy0JuNQJX1ASksybqU0OWNHl77t2K7M980SLLCrYrVxpL8mIKx4VG6wnyq3rnDlk3AqzsHLXHjh+Ow59mjuWQybHILpgjj30EkcU8lJVFaYYF1x2jGSd9pBgJG/HxR0w5y10xm5R1Ujl74vDfH4HC0dz+RZhV3w9k2cv+JKd3SwUENfdPQ+oo1zm5a2Y0pw4Yf703EcVTUqKP6Zf+8/+7C8mjG+JJgKX5CnO0uRLDjlHLRT06As/Fa5jvOhXTxScTlkplD9vn4Wd8Q8eItqgI/WEe1aqa9eaI8HJnpJrIkuH5sknHijtjCsZbbnDqbdoIJcF5XlDiw4pbIN7ZgTHSP8dlLzCzycCB3FBIWfX6SMF3ypA+a2VRkm7odWF1/Hk4iuDJmnGJBMadICMYx47yr1KR+9q8Fk3fiQCGd9vw2gNCNsM+xh9i8Onobi+XcDqjIHUEC1RqbScn4o3MagivVbSsm+1VUThy16UiGHcuVsyv+lc94o X-Exchange-Antispam-Report-Test: UriScan:(17755550239193); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93004095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123560025)(20161123558100)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BLUPR02MB1123; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BLUPR02MB1123; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1123; 4:/65eayGnbNJCmtsNtwRWvmlmQSfqF4bLGPk5SV4BnFaC/CPGKi5ivjaeauWiHmsMwzP9464h0xRx+FzkLEFf6dS6elWydHMwAfQsxSEoK1AdQSxWCyZLW96QOm3uXhMpjou3YMygmQ2Q7Q5yS2tzu7thjURdk0puMLUz6UE3joK/+SF2P3/8hKFhi4ePjj2dZkFJgatql0+QX4eoiR2BHusGzZwxHRtd+7Kj3JJxCR2FALIh2xJ5YUAOSpZuuNKQkh+ZSnazLkP2ga2pPhdPJFq7gsa+eM25+vha4glFoH0= X-Forefront-PRVS: 04371797A5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR02MB1123; 23:hZgNo3ImbxJ6BQSv/bpf996LBBTzZdmvJKOinZrY9?= iOGX8Xjl0REdr1BbwwtE68AcVxf+Z8lAKTCnwXXljPE5tFTTCJJzlEPyWAKdJSY66fBW3RyJEwyzMTozGU0M6HYvcrZVhDLZ0W2HP2+E6waZUMYzpWOHyM6UbEDE9H5aXQN2p6LZIrizEMY0ZkJszMreEgFiNaDsL1ja+WKzEPBEu+o9azGkyvSpHiX/e5Sx7/Hapfyh5FsbHMzY32CbJDQpx7yAU5wQyCnltH9gNDVBP7+Y4Mq42pMubmKEHvPwnv5PgO0B1xK4hws80qAWZl2zrdg8X0Uh28rTDofGWRFVfSDmLZ1fbqM3KZ6ZkPrabxwmJf5wazHhIfmKXK3THLg+ZGV7TEuUhjCoLLG1aeVs0TL8+ZtDi2Y+aYQe1JrTGG4mpG2E7SabfTgnAZgXlZxNnUyWfSlgiAsneyOplSfgjWDV4ziXsVDEjD8Ji+5BXA39bfW6kBTsfRy+RAZSzSHCEJyNDshgAiVJwcDhRrV5YEFugvDaaSmHxpVq039AOT4/8q3mjg7nRYvGsnUXFYQ073XnMC8xgVvEuWBSgzNufq934gH0rhIUgZTdoPbMwOy0sbVvOHi9DG7Qmt5cU0siL3oSMdlf2Z9vJauiPb76XYEy9NQea4sxuFrlIsfMpAkaraboedKWDP7EjWB99b85qdCjszDtfStCaU1K+ZSRO7HTxoOPA5nzM8M7Pu/XtZJ+zihHgW7wYgIe8WN/v+bvbSMo1X3V24eLL2PmfY/jeyzWswFSLUj/06+TlflUweysFMUTSGVt4Clq3tMHXKxTSYJOUYVWrKQGB0ySGddv+/iSVr8Q9r0l1edRJgqliQthuzrE7LcYPLFxAhH0MRRm3MK8VR5UjRZk1GPXfIq6g6DRjmtqhsauXVgv2dN99jSY+hZ1F4kzDynCbhT6SzLTULSdm0scQBCrL6vjXbyZw== X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1123; 6:8+tJFzRn0K1y9A+ubWhH78ZLKGMgquyX+UI0rHeWtqJhnNlXRZ7D8C+s3cwuQiSdG2NlWVyoCkq8bI9Q6POYcTIbALb3cSjMYn+XMoNMzPJyAzFAVlTi6vxoHBckKwG6r/6aFxvhbS3a5FC5JY4+DcOC0exbKuDgdFoFRb0q4JgdFw/XrvLjjwQ/zZvTL73CORN2cXlvOP6b9paQybfGBO9HvkchcaZjPJFGAVnnUbGrEwXN8uwXt2jFYaBB0og76l/MANCz3spcyqchj1OTPPq6rSsR2+bKfTt9e3DX+rhjm0AJPG0PxPkHBYbsqXR6+u+TPd9AjSsJaloyn95ZSw==; 5:d/txdH7lfi/RRihc1Ca929d+MJKRRs1QhfWjgs0A+80mxkAHQRDdJNCGEu2GvALK8Y3CmRy0GooCTBxhvHqe+n+s1qIth0oHRQWTNPi99RMuv38WA1udg3kZUmolewifWqq3uj7WDMzDdlXa37OPoA==; 24:xJDNa1F/V+UoG+kAZHvsFYE9mB6oIJkT0P80P2mhCnT4fhw4BAieleHcj8ueknwBY+J6euSoT1eMjuen8OoBY36OmqL8SjTU8eOCEa4+Q0U=; 7:VLczayTeyGqfSe4SYzRQOQpWKgNEgAomFdq8J83O4q2gP8p01tUiSCjn3MIkRDhm6zZPJth3okEQgzPCNuKMvTrvSB9YRmlyfNr6a++jvgXsq3Hui9pABH6asSnXQWvQqx4sUQsl2ye8/fXvTZ9pofSRZ9Nuc8AelWPpK7WxSG5L3t75DAjip0EXrcj2B58oalvCU+dij2LRcZ9+gsanb236m5RSa8/yuCbZSiJiKYQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2017 23:45:31.5542 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR02MB1123 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.34.65 Subject: [Qemu-devel] [RFC v2 0/2] Add a valid_cpu_types property X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: marcel@redhat.com, alistair23@gmail.com, imammedo@redhat.com, ehabkost@redhat.com, alistair.francis@xilinx.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" There are numorous QEMU machines that only have a single or a handful of valid CPU options. To simplyfy the management of specificying which CPU is/isn't valid let's create a property that can be set in the machine init. We can then check to see if the user supplied CPU is in that list or not. Here is what specifying the CPUs looks like now: $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf -nographic -cpu "cortex-m3" -S QEMU 2.10.50 monitor - type 'help' for more information (qemu) info cpus * CPU #0: thread_id=24175 (qemu) q $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf -nographic -cpu "cortex-m4" -S QEMU 2.10.50 monitor - type 'help' for more information (qemu) q $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf -nographic -cpu "cortex-m5" -S qemu-system-aarch64: unable to find CPU model 'cortex-m5' $ aarch64-softmmu/qemu-system-aarch64 -M netduino2 -kernel ./u-boot.elf -nographic -cpu "cortex-a9" -S qemu-system-aarch64: Invalid CPU: cortex-a9-arm-cpu The valid options are: cortex-m3-arm-cpu, cortex-m4-arm-cpu RFC v2: - Rebase on Igor's work - Use more QEMUisms inside the code - List the supported machines in a NULL terminated array Alistair Francis (2): machine: Add a valid_cpu_types property netduino2: Specify the valid CPUs hw/arm/netduino2.c | 10 +++++++++- hw/core/machine.c | 35 +++++++++++++++++++++++++++++++++++ include/hw/boards.h | 1 + 3 files changed, 45 insertions(+), 1 deletion(-)