From patchwork Wed Dec 20 00:27:49 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 851145 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="cWf8AOgs"; 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 3z1bN76N5Zz9s82 for ; Wed, 20 Dec 2017 11:33:11 +1100 (AEDT) Received: from localhost ([::1]:47137 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eRSJq-0001ui-0H for incoming@patchwork.ozlabs.org; Tue, 19 Dec 2017 19:33:10 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54326) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eRSJ3-0001tX-SP for qemu-devel@nongnu.org; Tue, 19 Dec 2017 19:32:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eRSIy-00070L-V3 for qemu-devel@nongnu.org; Tue, 19 Dec 2017 19:32:21 -0500 Received: from mail-sn1nam02on0074.outbound.protection.outlook.com ([104.47.36.74]:61216 helo=NAM02-SN1-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 1eRSIy-0006zp-LZ for qemu-devel@nongnu.org; Tue, 19 Dec 2017 19:32:16 -0500 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=HcjYvV0QNFKQl8KNgy5BvZNpVPyr/u/CJTJgVeDk+Vk=; b=cWf8AOgspRC/c7U7Iteb30nkyDSvAlMtXtcoNhnykCfe2j1lkBBX4ZjBSk8TpVqRMhR3kWxD2TuYS3fliuScROBDgBesn8U7lzb/3q25OQ8JL/WgucjrhEE2B3XR1zhKNPJbmockzD4utxS2/wMBdjXYv+iNVbzXZSzBuGkpvmw= Received: from BY2PR02CA0009.namprd02.prod.outlook.com (10.163.44.147) by SN1PR02MB1343.namprd02.prod.outlook.com (10.162.0.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.323.15; Wed, 20 Dec 2017 00:32:13 +0000 Received: from BL2NAM02FT046.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e46::208) by BY2PR02CA0009.outlook.office365.com (2a01:111:e400:5261::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.345.14 via Frontend Transport; Wed, 20 Dec 2017 00:32:13 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; amsat.org; dkim=none (message not signed) header.d=none;amsat.org; dmarc=bestguesspass action=none header.from=xilinx.com; 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 BL2NAM02FT046.mail.protection.outlook.com (10.152.76.118) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.302.6 via Frontend Transport; Wed, 20 Dec 2017 00:32:12 +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 1eRSIt-00059W-Og; Tue, 19 Dec 2017 16:32:11 -0800 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1eRSIt-0000In-N3; Tue, 19 Dec 2017 16:32:11 -0800 Received: from xsj-pvapsmtp01 (xsj-pvapsmtp01.xilinx.com [149.199.38.66]) by xsj-smtp-dlp2.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id vBK0W3Hb000991; Tue, 19 Dec 2017 16:32:03 -0800 Received: from [172.19.2.220] (helo=xsjalistai50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1eRSIl-0000Ft-6S; Tue, 19 Dec 2017 16:32:03 -0800 From: Alistair Francis To: Date: Tue, 19 Dec 2017 16:27:49 -0800 Message-ID: X-Mailer: git-send-email 2.14.1 MIME-Version: 1.0 X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23538.006 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)(376002)(346002)(396003)(39860400002)(2980300002)(438002)(199004)(189003)(50466002)(8936002)(54906003)(478600001)(316002)(356003)(63266004)(36756003)(106002)(5660300001)(106466001)(50226002)(305945005)(36386004)(4326008)(2351001)(9786002)(2870700001)(39060400002)(59450400001)(81166006)(81156014)(2906002)(23676004)(7696005)(8676002)(5820100001)(6916009)(6666003)(47776003)(77096006)(107986001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR02MB1343; H:xsj-pvapsmtpgw01; FPR:; SPF:Pass; PTR:unknown-60-83.xilinx.com; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2NAM02FT046; 1:Oj3QrAituz+H9u5r33Z8ItwUi01yBItvGe8w2ldqPdvngNS/Rgmr7pWgijeH+nGTWqnftZBWHKohJIwYWta6QrVTUW/QaSNLV/p/9BEJFkE38vHM7qYoKCm0wJ25fxAJ X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 42880f4e-b42b-484a-6abe-08d547411cee X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(4608076)(2017052603307)(7153060); SRVR:SN1PR02MB1343; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1343; 3:eIFcjO4nRggFkCLiyFP2ns1HPCKGsf8Wn8tShzAugFQhH3n7fI1l0oavQE32YhOiHIW5BMe228apnPbU429O+SlZX09peH53jBhG10CmyGHLRIBfBg5T/f1Z6AQYg0HyqpRFEj6EfbRU9KfxeqZEE6IYINnM43okk3OJ6FlKJoFOn8x6TB94TDcYMLeKSjQ8gt0Nd33M1gMj2MXSD996XQ83stWWrVxnZ5HLmxPe4pNRaTPcp98vdU5FWzW9KhF+gLyPNYp3NsfIfiiGswq7bQml08t6I8PuG0ahR9DHBVwdyIBCXfP0cydYQZJMqJXYyzbb8dGD5XA+8Gy6dp+xQ27HdFY7+h002RvGkmG28Kc=; 25:YzRAD4PzRKyNJJOGwyV4gPMXn6Y6Yw12oZ6jD1qB6KnVMPMViSR2hLFIqzE3KzG3UWsYsA765j9GdiCAXw/wtsUD+PJ0hvHQ/N2piPBEUn5PyDRLRYKaauwpxkfl859cvihceeWdh8Jvhz8ypd3PyZUGj4hFtD8DlVhtHs34CTAAP9BjjTe0ZnkHgCHlo4+t93ywd68Flfdd7ueKQXQp9mfTB9eJAwfeVdTwNoqMj18ybOP5I9S8rKWHyKD5kUq81Cof57eR0UB+T4SPNLYUqThApSD6b0otqR6+iVprh30GEU8mjkgsJYT1w2fdJKd75sIhIkrPHEO4Cq2h5djdz4G9ncaU8H0JMXq5erlC85M= X-MS-TrafficTypeDiagnostic: SN1PR02MB1343: X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1343; 31:kGA/kLd+OCEjkxpkAFjZlxSUrtdHU5eKOzRgSyK6Varw9ztocB+7MqbW11B17+vHbXXCb7GNpODdqOTs8x8rjOwM2yH5cPBS5dwvIdB169YZubHqCo22dvkj0U2eQgxKozesWHKf6Sn/CueaQIMeLb4oBAvEovE8O8p77QHQW5cyeoT44NHJD/Cb6FNqyVFWV5VJj5fQYHDWo9i5Ot5F3OGqXRaL7TbxjfzizxzJGAw=; 20:BmdhYGlLhmTpVTRAHE3gFOzKkZTog1Fe03i6FXM00y+p4wnTbg0csknN7s/8BcRv1sdiBDet0vbNjMvUzIJHvA0SHQhpr7+SUOX9BdXlLSRw/G0WhV85vfRZo9vTv0XPLo6Tn6D/IEdWoZnKr1qOAAcTOQLRm9n+VB7Q322hBvYYj55uU1k2hFuUXtesTQfokbTSh4IMyOvZ0nUecYrg0pR7HW5VikA3BpGJkjJBudo5SQUKsrwa6K70J3e9iamhBMvCJ7HUUamWDWHyH3B1dwdBynqgD46tkfrEYbPT2L8tfEhMnmLwOP0lj5/9qL1qMUGlpRBf+1hsROQmQ8kmBiz2geXSNxGrzOQdZAZ/uo7cYDFs3l+rgKTy7DAK5O84qwkiipBfd2VK/ECLK9xfjWxkuT1qnPHwXOv5uGOCgeK8+QMUdmVLYrjK2mWF+2/kyMMsuQfmYLjvsmbx573aIqEw9zf2aUFL98TjxddCj5/OduHCiYQv0CMm9uMMDeRA X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231023)(6055026)(6041248)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:SN1PR02MB1343; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:SN1PR02MB1343; X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1343; 4:KaptNCrgE7s0pt1bogw5bOzyZyIn5h19rmkzCr5tOHQS2Tf90KLqmMHvGRaxEK+5f+wr3gcwblfYCtbHJXCFcRdp+PkLYIaHKjBfCUWunQLXAVlrQo3fGg5ZfxEul0VHkwKbb9X012IjwcBvF3DrQ7DmyGJ9KHNaGnZxlOAHfhSZBeAi2V9f8gwONYHB9J1sVOS5GGt0a/Ue8UCCMq+rwcrC+C6WpZkhBmNSeZpKWs7I0xJ0jTtvVdIt6h6YrJnKZYVZC9CK3jOfW8mCE6Bi0Qs94qVwkoYZdunOJmH7ffoy3X76p8qT8kch1FZoC9fC X-Forefront-PRVS: 0527DFA348 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN1PR02MB1343; 23:S86z9KoagBHneZdDr8BsbOP0mCwqiJnav0b89kEzp?= sxVAHvBpmkhu85TqQdankVD1ClssjYcJM+ClUYmOlBmSiW+dR4zFkj2SaPywQP1sNAzLL4Ag3SH3VZVWEVX19E6YVr8PFvjd0NDJVpUVPz3CFSvd9EQjd295J4920ahN5ow7lYSbX1DjoXS8gvG1CU2HbtFegFrGedktp8tuGwu5LKhgCVXmgSUfyDb+xIpOEyOt7s6h8+0B2sKRG1cU/H/kdPVKyx5Y9NY0P06AXz3XzrIkJ77yv2V0y+yTygFsYjnLorwGmfmBmlcF1RAE4565DD6J0i/LAZEyUj7QA+KJWq1sWgE9i5sq8tBvFsHJ1k/1Wis36OZP9pjZsgZv6SPQvznPQCj/ue/i6et+aXkOrtxwN+wjKIqVpDXMqE7JtqV8uqqRJZbGL3sYuVybJLXQCcpiA0qHe7rd7kUmAb0ia/2MhxmhvgDsm8jg94joBWWvHXuf82iQ+dX+FfGrs894Mw6Y2c/AVUNnoWMPD/rKHQQm7+UNpNx6f6K8/ZkvUr4HsycPm3bEltJQ9nyPF0r4FLFmsHATOSfxQ/lHcIjatcI9G0QbEqJ4IlOcM0T05X4gp1yRWpr7az8tqYmRXAUP+qWdEyuM462R6wlRtTfOF+c6ISOvs2YzI8gCd3kmKGLW6snHVla4kvYBGhDd7ug3KZBIF9T0ffq1evS/MmBR7b2FNZ8Hpqe+27V9jpmqr4YqZK8bZ2RjrUO/K11vCGt4bgtLwRKiuSsQR4UEWzNrO3kYkKR/UXDR5PwWSVkHkIVZl0g0X9O3KMpzdqhWPgRJCtPb8Sm5MoAvWn9RGvdRjZQiTmnjCX0pBmRdtasHW/5/l8RpwxWWMN+zJXpa4v/Ewhib/dRHS+/qJ6EyhYLM/El9zKThTvaZPi1gyd8Y0pgqT07fCJBxCOPxNRPWNoUMaAQ50VldBMmdJXdOxte9w== X-Microsoft-Exchange-Diagnostics: 1; SN1PR02MB1343; 6:Uj7zxZcxnuIi/zYob62csYcU702yGmjqmSmGazFduY7hSoIF27uxkXqp+1Ouil3rvS0lUm+b6R8S7oIpnv6c8JFmYv0PPJBRcz8HezJzoC4KghgXz3q4Rz9a+rsqrzWuxjxw/O29GEODzd0bGn1c44w27nGsTBhdrgL4+9E5Pzw0MCiyIDCMcg0cbv7jYbBPu0EBRBcfArOWLFRG+IVrriGX12AYQ5T+afgU/zWJwy/AkCPOyu6YvUgP7im6xoTeiDfCfbFBiR2pBlD7u7zAU0mixmOaM5QnHGHUNO8rLwyiEFKMbm/n6FeOnCR5FvYND5WH/f5Oh04fmkuPdcjn+l1IFXY0fDWioTIzVPczoGM=; 5:I4CcpMoS0whi4yh21Ux9rq7Y+g9fmAsGYk5pinMKA8yzw8nC644WZZPc/pbM8TkYsQuEFx0EuQxifjNRNxqAGwfaPEc6Ci8D3si9+Ise1/ycZP1yuQsuufqFBppjptWSHD40ZDGg+Bcz3wqFRTw9RSbA/YOauTIX1BEQ6YEBStQ=; 24:QfqxyFkktDVrbtp8XOXeze8fCy266qFvEhz4iFPvD1+Ev22dUgCshBdNfnV5X8Mk75Bt2KXAUkJHiGshjqOwiyGqJrEcoI8fqSrAHaG5sRU=; 7:jwWDy0oE7e6rJ/+lEifz0JEtxPX9TpN2pRHHeUXevR3SKzlpCaMJ3JbtGv5PGtl96pokspqJISyxrvSTCi+0F1Tvw3lv53y4QrTcuja35Oqzc0Jn3DalBKvznG9cAenspcWJQorQqJ4OdiDzoEoRssiPE7KH0pA25kXU0lNpNUYgMyTXGLSTN/YwIvojcRRueUuHIOuFTP4XxWBBYZKQR4MA3AHryqWn/fxbECPysPaoqGjwdKCR7LjKFvH60jtA SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Dec 2017 00:32:12.4751 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 42880f4e-b42b-484a-6abe-08d547411cee 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: SN1PR02MB1343 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.36.74 Subject: [Qemu-devel] [PATCH v4 0/5] 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: ehabkost@redhat.com, f4bug@amsat.org, alistair.francis@xilinx.com, imammedo@redhat.com, marcel@redhat.com, alistair23@gmail.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. I have added the valid_cpu_types for some ARM machines only at the moment. 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 type: cortex-a9-arm-cpu The valid types are: cortex-m3-arm-cpu, cortex-m4-arm-cpu V4: - Rebase - Remove spaces V3: - Make the varialbes static V2: - Rebase - Reorder patches - Add a Raspberry Pi 2 CPU fix V1: - Small fixes to prepare a series instead of RFC - Add commit messages for the commits - Expand the machine support to ARM machines RFC v2: - Rebase on Igor's work - Use more QEMUisms inside the code - List the supported machines in a NULL terminated array Alistair Francis (5): netduino2: Specify the valid CPUs bcm2836: Use the Cortex-A7 instead of Cortex-A15 raspi: Specify the valid CPUs xlnx-zcu102: Specify the valid CPUs xilinx_zynq: Specify the valid CPUs hw/arm/bcm2836.c | 2 +- hw/arm/netduino2.c | 10 +++++++++- hw/arm/raspi.c | 7 +++++++ hw/arm/xilinx_zynq.c | 6 ++++++ hw/arm/xlnx-zcu102.c | 17 +++++++++++++++++ 5 files changed, 40 insertions(+), 2 deletions(-)