{"id":808470,"url":"http://patchwork.ozlabs.org/api/1.0/patches/808470/?format=json","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.0/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<be926a221e31f7aaefe8558965a644a7ced817f2.1504222314.git.alistair.francis@xilinx.com>","date":"2017-08-31T23:34:25","name":"[v2,4/5] xlnx-zcu102: Add a machine level virtualization property","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"9eb1568a9a2aa1cea843bb518d8691c22cc4ace1","submitter":{"id":47878,"url":"http://patchwork.ozlabs.org/api/1.0/people/47878/?format=json","name":"Alistair Francis","email":"alistair.francis@xilinx.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/be926a221e31f7aaefe8558965a644a7ced817f2.1504222314.git.alistair.francis@xilinx.com/mbox/","series":[{"id":924,"url":"http://patchwork.ozlabs.org/api/1.0/series/924/?format=json","date":"2017-08-31T23:34:28","name":"Expose the secure and virt properties to the","version":2,"mbox":"http://patchwork.ozlabs.org/series/924/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/808470/checks/","tags":{},"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=xilinx.onmicrosoft.com\n\theader.i=@xilinx.onmicrosoft.com header.b=\"4w7URs+K\"; \n\tdkim-atps=neutral","spf=pass (sender IP is 149.199.60.100)\n\tsmtp.mailfrom=xilinx.com; gmail.com; dkim=none (message not signed)\n\theader.d=none;gmail.com; dmarc=bestguesspass action=none\n\theader.from=xilinx.com;"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjzQm18hGz9s7p\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 09:41:04 +1000 (AEST)","from localhost ([::1]:33106 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dnZ54-00059h-8s\n\tfor incoming@patchwork.ozlabs.org; Thu, 31 Aug 2017 19:41:02 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:46069)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <alistai@xilinx.com>) id 1dnZ2O-0003Mv-RM\n\tfor qemu-devel@nongnu.org; Thu, 31 Aug 2017 19:38:18 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <alistai@xilinx.com>) id 1dnZ2N-0003j0-K6\n\tfor qemu-devel@nongnu.org; Thu, 31 Aug 2017 19:38:16 -0400","from mail-dm3nam03on0042.outbound.protection.outlook.com\n\t([104.47.41.42]:55824\n\thelo=NAM03-DM3-obe.outbound.protection.outlook.com)\n\tby eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <alistai@xilinx.com>)\n\tid 1dnZ2F-0003gA-EJ; Thu, 31 Aug 2017 19:38:07 -0400","from CY4PR02CA0016.namprd02.prod.outlook.com (10.169.188.26) by\n\tBLUPR0201MB1921.namprd02.prod.outlook.com (10.162.239.155) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10;\n\tThu, 31 Aug 2017 23:38:04 +0000","from BL2NAM02FT027.eop-nam02.prod.protection.outlook.com\n\t(2a01:111:f400:7e46::201) by CY4PR02CA0016.outlook.office365.com\n\t(2603:10b6:903:18::26) with Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.9 via\n\tFrontend Transport; Thu, 31 Aug 2017 23:38:04 +0000","from xsj-pvapsmtpgw02 (149.199.60.100) by\n\tBL2NAM02FT027.mail.protection.outlook.com (10.152.77.160) with\n\tMicrosoft SMTP Server (version=TLS1_0,\n\tcipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1385.11\n\tvia Frontend Transport; Thu, 31 Aug 2017 23:38:03 +0000","from unknown-38-66.xilinx.com ([149.199.38.66]:47854\n\thelo=xsj-pvapsmtp01) by xsj-pvapsmtpgw02 with esmtp (Exim 4.63)\n\t(envelope-from <alistair.francis@xilinx.com>)\n\tid 1dnZ2A-0000CR-WB; Thu, 31 Aug 2017 16:38:03 -0700","from [127.0.0.1] (helo=localhost)\n\tby xsj-pvapsmtp01 with smtp (Exim 4.63)\n\t(envelope-from <alistair.francis@xilinx.com>)\n\tid 1dnZ2A-0006sY-Sm; Thu, 31 Aug 2017 16:38:02 -0700","from xsj-pvapsmtp01 (xsj-smtp1.xilinx.com [149.199.38.66])\n\tby xsj-smtp-dlp2.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id\n\tv7VNbxuk028339; Thu, 31 Aug 2017 16:37:59 -0700","from [172.19.2.220] (helo=localhost.localdomain)\n\tby xsj-pvapsmtp01 with esmtp (Exim 4.63)\n\t(envelope-from <alistair.francis@xilinx.com>)\n\tid 1dnZ27-0006rr-DC; Thu, 31 Aug 2017 16:37:59 -0700"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=xilinx.onmicrosoft.com; s=selector1-xilinx-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=x7YkyGnBxvpc+7eLi5n8j/348oMlMlaEbKAO5sgr804=;\n\tb=4w7URs+KdQ3YxGyYZJAApnKieO1gG9Bp1/zG+qDPwYZpbbdIHQhO522JR19tDBRqhvDVlQy89JBB9xvQVlDlNPHEOwBb2ZiMyWm//NZt7uPOzx3UADpgSSTgkhjZQLmoO/MRrQODn+dClpqO73I/w+Ja5vge2EV1m572FnGmz1k=","Received-SPF":"Pass (protection.outlook.com: domain of xilinx.com designates\n\t149.199.60.100 as permitted sender)\n\treceiver=protection.outlook.com; \n\tclient-ip=149.199.60.100; helo=xsj-pvapsmtpgw02;","From":"Alistair Francis <alistair.francis@xilinx.com>","To":"<qemu-devel@nongnu.org>, <qemu-arm@nongnu.org>,\n\t<peter.maydell@linaro.org>","Date":"Thu, 31 Aug 2017 16:34:25 -0700","Message-ID":"<be926a221e31f7aaefe8558965a644a7ced817f2.1504222314.git.alistair.francis@xilinx.com>","X-Mailer":"git-send-email 2.11.0","In-Reply-To":"<cover.1504222314.git.alistair.francis@xilinx.com>","References":"<cover.1504222314.git.alistair.francis@xilinx.com>","X-RCIS-Action":"ALLOW","X-TM-AS-Product-Ver":"IMSS-7.1.0.1224-8.1.0.1062-23292.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.100; IPV:NLI; CTRY:US; EFV:NLI; \n\tSFV:NSPM;\n\tSFS:(10009020)(6009001)(39860400002)(2980300002)(438002)(199003)(189002)(4326008)(305945005)(106466001)(33646002)(118296001)(2201001)(626005)(356003)(9786002)(8936002)(5660300001)(77096006)(2950100002)(36386004)(6666003)(81166006)(81156014)(8676002)(39060400002)(50226002)(54906002)(5003940100001)(47776003)(50466002)(478600001)(50986999)(48376002)(76176999)(63266004)(36756003)(189998001)(2906002)(107986001)(5001870100001);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0201MB1921;\n\tH:xsj-pvapsmtpgw02; FPR:; SPF:Pass;\n\tPTR:xapps1.xilinx.com,unknown-60-100.xilinx.com; A:1; MX:1;\n\tLANG:en; ","X-Microsoft-Exchange-Diagnostics":["1; BL2NAM02FT027;\n\t1:lEyCEDQU6wjvhGZqP2eoAjxb3LtS+a3hvnlpl31Ks0Nf/y7/4ZdZ5UDq/Siu/PQ/fhPXikqH5dX4QGI6bTCnr02PDmGnDuwAEca6IcfyqCm9iYz1btipn+9wY7g2YQWX","1; BLUPR0201MB1921;\n\t3:kocvn2MAx7ZG9TMARN0dpCaBFGc8peSvGHvI84V6MFcZiVJGOTCivVd3G51W/iNejbUBacKojkHc+75u4RSwLF3uNKWAIF1QvCg4FPwja7KJGz1wgF3TV6pLkflK3uuzcSV8aSlRACJr/Gee768d51cGM9XMKvZ2RxleDicih41ZYPx65CnRhGZTnwfrHqITHYsQQwSyvjga5Al6en2Fsa+Lr3+/+HhFGSfmUrJXLgAgdaTPBvFcJ6B5CdU6BOh/AiT+IoQyZr0Fmm/Ih73IeII0Oor/hqziiSw4nz5rVMzO+Ktpkr6ty3TRqC5YFOlDldjB9XdZZ85zbayrLDcKa4w4h/2D4ke/MMAISebpWiA=;\n\t25:lKVZtbo7JC25IiMnKDX6CxAIzy/sUkTzMezgEp/pLPDN9vvJjIRwSq4besJYE8U8w6/0pSStqVJNJr4jQ528HGeG5JIahe7k762NHxXvcPSVLE9fVfvCdVpWCHp8x40of6en/UFrLuyQLdhWc+0kC+7nibFdjwqWmdxtbbEZaD7wOF3EL+Ao47CoyjE+FzS27daPsjOVGRYGeGAVP9jJuC16b2AAU1NvtiOx+na+Y7qHviOKSKnxFHnQqxJW6+K0AdiYO0B9RH16lonxcq2+f5RYuoyDjoADB3BdKpq0AlODsetBt9jp5Q89BXl0bGoi0hw1I+hWAjtOdACSrDtbZg==","1; BLUPR0201MB1921;\n\t31:rqkWmrJIwWg0eXYOsqgakeH4gBRb3bwbZewi14RFl0xRTPzAHJ8i1Qz2iI6/yC1dTg2vxcozM2ipewkZaDADzDTcLNd32q80xR57Tf1RC2BC+F8I2A2MgMLzQ9ybxUqB2BWpf2U7nmuECKFv/iYc76aD/yEWALIyC1K9M0G3eAoMKZG/OQDPqhRsw7ZX36uGkYao05ig61DrvAltG4ln9z33BLB0eqzvEjMXidd1/4U=;\n\t20:ivIDbZQ/EyLAr1OC7vsy9zmx7Az2PSaFbESrWdYrdjUFMF0BJYhsH2dAAbN8uqsm10KttQdYH9xB+DMUYF59FYXtmA4LfJSdDDr/Eq2cw4FwuXJtiBKRpwrhVdwoJBIFxFf6sMed9M9LzAXpnEd+HgE+Bc8CTeD4+8nO7nEAJ05AhkvSWEyRMlaFbVu0kOi+/7nLwEexKRog3bLIZpjDquwMNSvwCc0P8wfyGGV4CsasWa7cXRnRoQQBSDveMhAYEvvHe6/ImG1w04lJZW6JLp758e0pkimvkjw0RCjV8NpJNahpGJgY3avaKVc/a8lKMUEDQh3M/QhzEhEwoz6hL3NDkJKN6lKWwqHNBIRcX88zRRKA/81xeDaySemR63KZYenLZWy+uSxd9NzsIQYTcpmAUiN/dWuQ+Y1iAu0mt17wBzGJuorwCDlHUr5KPIklhSf1kW5BUVGRw8oR7Xmd0itp1X6536iAQZsXTnV5x/6VNOZA4SI4PutElTBS9pZ8","1; BLUPR0201MB1921;\n\t4:QIXIusVO3FCKRky7D61sJ7/bfWwRfue2a89/s+alcShPsCePH/+9s4i4xx7RGqSl/CstZE5eDG1XGHCqbDb8aFCpNNO0BYvmDuuqq9/UImsaPaLdHISNBiPvVzVUANSoeRgwHdNPrKMab5fZvvZRbmOWzLb7yZPgzRallJryRVilHKvHB0ifRXObNjgQnvbdIjZs3Gik3Ikg6gnr8/dcSaojV1U8O1VSdDeVcWgclowLV1GciH8AtFdqBlIVRcot9XeE/8bRFipMzI95PGHP89So51HwLcbA7KhPh6Ds8Rqop8Nf490hiPU2FJjgzQTTVWhV15JJ7eatiJh4jvOVYw==","=?us-ascii?Q?1; BLUPR0201MB1921;\n\t23:cDjBHJgalGWFP0DzZ0YgXzs82L/mK9OV2uubAMO?=\n\t7tmYHPx0M2iaV0LqhG5GpKKciaGkLUCVoi33bJyoEVZpTkuQ7huoGf7IN2VsxIIn4g6BS//GaXECUTebSnwHX/Hy5rZKdvfOIq6QeVJU9nt4rrx7smYz/0INMWDRMSm9XPiFNlCv/VPARkgm6Tl7gdDf+n+OhuTt00fa0oYpyMa/ermRPiZCwLMmyGIrZUkQ93nbNBzdE7JzA0Eb6/6rHxhJcrG3HZxiwLSW9D0h66boYAKmF07bQSUoLjve6++W2Uer2+cyPuliZF3n1yE4tPMgvbdFgQHInS5sJmySMvWQmXLcTLR2G7YMf/k4MBTQnTqBEQZ8aeB9KRgG7TgtjxsWJxf0fzGF2lkz+MTCSTxKDlmBOkJvoO+E+4sXiMqhdFIdusl+TLL10IwksyQqRSF3Bl2XVoJxbjfd724+MSTFvNxJqjnvoSaCc8GpX9JnnXQv8ik9rACNWrgWNfbHrzUAcbXo33JLaQJbEicM94ju2zzLP/UhuR4a9v24fdnnBK5tlQd6pPXeOc8EnGVkoVBMVohiu9CcrcCb3lWISM76iIeTVldA/bojdZ0MtSLFKhYASCOwgphtjJ5qguuPWiKsyzDCWF8jP/pitsjq1zHPWWa2JvIjbQbLul3TatUXSFDnat539wSqx2/5TSqMzM755ssu+PqEVkRPzHxEgxSuXQnytoQW7Qgz1inOn1Of50tLhbXkim8M2YE/rx0J1jhaCsQfPVhvtJf7ZjG6NJ1CYHP1LPmAhvn2h45zMDfgLhz0zVPKY9lvFm9NvLmGqSxTl4k7hyuCXG7OI2qsAPWciSQ81oWVfbmCKBL6c4FqwY9PfgWfDvq+hhNddkJ8Tgs4tfTIQqfKNWbWRRAnya2yQcJCBoVEzC8WGVJ1tGgM9uQCh9PLMuptHDGnBiciDLbyD0sgo73ewtmJN8nNPlP3SRkYurMfIVJXuSDp2KbbU2Es=","1; BLUPR0201MB1921;\n\t6:+itiXlmnZ5EFgegC9cJd2/mXH/tmRmpJpMhPjunDIjCBZpy1ra/U/KGAQSXHVpfmRdtJ6tLr8RzvFeNOOZnbrPbJ3w47tczpaOXmi83oihdF2WwkrrlVgH9j2AUZkahUhJ/h77aANvK2zFR7J2AxGgLpmVO0tZQaX9UcbGf7ZlSN/imOX8+dcWXrX/AVCm9Rj5oMFAee39dNAAs6H9L2c/re/k0yjekietpSOB9tA1wpK850KLygHy6S2uromkb5GJXTGoV0w/5+WecYbNQ8sZdbbPnFZDYAl28G3rjJDLQzHQZzlahFDkB41NUOhRHq8BIaXp1JBsi7R1t+5+o3gQ==;\n\t5:OIVkushOhUnoIPSBCrBf1nTeVlxT7RxjrvNwZiyOTgZ0f/Jk3VcVCLHrZhj5Z/R4colDObeQend/uX2DmBwtUuF/6uehda9/knVXPrFICMSevG6Krk5HbNaVnWPBuDrKYaOy5rxd93g6A3Iax8+zJw==;\n\t24:4STeb2zowpFykElc91r7qm/cQCzfhlb7iAI+0miCCjrGKoRNADldSDbt7L06/p5+5v2HJ7WG01mZmAwYd4B/ByRxnJPpRVQhRJMSjHkxgDA=;\n\t7:/EhcYJGI5AYruZv4b1VUDG2dVsScfIslC51y8GXBSxe/C5lULdqmnq46GmUoffjUDZmEOKa1AkyXFmbGXymjgqJqx+kyV6YEkmqC8gzlgzOSfpKIGgEx75zZEJrD8qyJrlSv0lFD7gQ1LNLMU6u3dWGPaVrus9qhE2IiDc2EBdBp339DD9TN6a2P08LdpdIc2N9EGykLbwMMPaPLKGhmY8StYnVev4hfUnWGXyNOUAY="],"MIME-Version":"1.0","Content-Type":"text/plain","X-MS-PublicTrafficType":"Email","X-MS-Office365-Filtering-Correlation-Id":"9a84dcc0-7c4a-44a8-8fca-08d4f0c95322","X-Microsoft-Antispam":"UriScan:; BCL:0; PCL:0;\n\tRULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(8251501002)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);\n\tSRVR:BLUPR0201MB1921; ","X-MS-TrafficTypeDiagnostic":"BLUPR0201MB1921:","X-Exchange-Antispam-Report-Test":"UriScan:(192374486261705)(192813158149592); ","X-Microsoft-Antispam-PRVS":"<BLUPR0201MB19215123F050C967EE41D4BDDC9D0@BLUPR0201MB1921.namprd02.prod.outlook.com>","X-Exchange-Antispam-Report-CFA-Test":"BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(13016025)(13018025)(3002001)(10201501046)(93006095)(93004095)(100000703101)(100105400095)(6055026)(6041248)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123555025)(20161123558100)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:BLUPR0201MB1921; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:BLUPR0201MB1921; ","X-Forefront-PRVS":"04163EF38A","SpamDiagnosticOutput":"1:99","SpamDiagnosticMetadata":"NSPM","X-OriginatorOrg":"xilinx.com","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"31 Aug 2017 23:38:03.5730\n\t(UTC)","X-MS-Exchange-CrossTenant-Id":"657af505-d5df-48d0-8300-c31994686c5c","X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp":"TenantId=657af505-d5df-48d0-8300-c31994686c5c; \n\tIp=[149.199.60.100]; Helo=[xsj-pvapsmtpgw02]","X-MS-Exchange-CrossTenant-FromEntityHeader":"HybridOnPrem","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"BLUPR0201MB1921","X-detected-operating-system":"by eggs.gnu.org: Windows 7 or 8 [fuzzy]","X-Received-From":"104.47.41.42","Subject":"[Qemu-devel] [PATCH v2 4/5] xlnx-zcu102: Add a machine level\n\tvirtualization property","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"edgar.iglesias@xilinx.com, alistair23@gmail.com, edgar.iglesias@gmail.com,\n\talistair.francis@xilinx.com","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"},"content":"Add a machine level virtualization property. This defaults to false and can be\nset to true using this machine command line argument:\n    -machine xlnx-zcu102,virtualization=on\n\nThis follows what the ARM virt machine does.\n\nThis property only applies to the ZCU102 machine. The EP108 machine does\nnot have this property.\n\nSigned-off-by: Alistair Francis <alistair.francis@xilinx.com>\n---\n\n hw/arm/xlnx-zcu102.c         | 30 +++++++++++++++++++++++++++++-\n hw/arm/xlnx-zynqmp.c         |  3 ++-\n include/hw/arm/xlnx-zynqmp.h |  2 ++\n 3 files changed, 33 insertions(+), 2 deletions(-)","diff":"diff --git a/hw/arm/xlnx-zcu102.c b/hw/arm/xlnx-zcu102.c\nindex 080507831a..40c1f5bbf6 100644\n--- a/hw/arm/xlnx-zcu102.c\n+++ b/hw/arm/xlnx-zcu102.c\n@@ -32,6 +32,7 @@ typedef struct XlnxZCU102 {\n     MemoryRegion ddr_ram;\n \n     bool secure;\n+    bool virt;\n } XlnxZCU102;\n \n #define TYPE_ZCU102_MACHINE   MACHINE_TYPE_NAME(\"xlnx-zcu102\")\n@@ -58,6 +59,20 @@ static void zcu102_set_secure(Object *obj, bool value, Error **errp)\n     s->secure = value;\n }\n \n+static bool zcu102_get_virt(Object *obj, Error **errp)\n+{\n+    XlnxZCU102 *s = ZCU102_MACHINE(obj);\n+\n+    return s->virt;\n+}\n+\n+static void zcu102_set_virt(Object *obj, bool value, Error **errp)\n+{\n+    XlnxZCU102 *s = ZCU102_MACHINE(obj);\n+\n+    s->virt = value;\n+}\n+\n static void xlnx_zynqmp_init(XlnxZCU102 *s, MachineState *machine)\n {\n     int i;\n@@ -87,6 +102,8 @@ static void xlnx_zynqmp_init(XlnxZCU102 *s, MachineState *machine)\n                          \"ddr-ram\", &error_abort);\n     object_property_set_bool(OBJECT(&s->soc), s->secure, \"secure\",\n                              &error_fatal);\n+    object_property_set_bool(OBJECT(&s->soc), s->virt, \"virtualization\",\n+                             &error_fatal);\n \n     object_property_set_bool(OBJECT(&s->soc), true, \"realized\", &error_fatal);\n \n@@ -154,8 +171,9 @@ static void xlnx_ep108_machine_instance_init(Object *obj)\n {\n     XlnxZCU102 *s = EP108_MACHINE(obj);\n \n-    /* EP108, we don't support setting secure */\n+    /* EP108, we don't support setting secure or virt */\n     s->secure = false;\n+    s->virt = false;\n }\n \n static void xlnx_ep108_machine_class_init(ObjectClass *oc, void *data)\n@@ -200,6 +218,16 @@ static void xlnx_zcu102_machine_instance_init(Object *obj)\n                                     \"Set on/off to enable/disable the ARM \"\n                                     \"Security Extensions (TrustZone)\",\n                                     NULL);\n+\n+    /* Default to virt (EL2) being disabled */\n+    s->virt = false;\n+    object_property_add_bool(obj, \"virtualization\", zcu102_get_virt,\n+                             zcu102_set_virt, NULL);\n+    object_property_set_description(obj, \"virtualization\",\n+                                    \"Set on/off to enable/disable emulating a \"\n+                                    \"guest CPU which implements the ARM \"\n+                                    \"Virtualization Extensions\",\n+                                    NULL);\n }\n \n static void xlnx_zcu102_machine_class_init(ObjectClass *oc, void *data)\ndiff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c\nindex 9eceadbdc8..37a8bf2ccd 100644\n--- a/hw/arm/xlnx-zynqmp.c\n+++ b/hw/arm/xlnx-zynqmp.c\n@@ -260,7 +260,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp)\n         object_property_set_bool(OBJECT(&s->apu_cpu[i]),\n                                  s->secure, \"has_el3\", NULL);\n         object_property_set_bool(OBJECT(&s->apu_cpu[i]),\n-                                 false, \"has_el2\", NULL);\n+                                 s->virt, \"has_el2\", NULL);\n         object_property_set_int(OBJECT(&s->apu_cpu[i]), GIC_BASE_ADDR,\n                                 \"reset-cbar\", &error_abort);\n         object_property_set_bool(OBJECT(&s->apu_cpu[i]), true, \"realized\",\n@@ -432,6 +432,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp)\n static Property xlnx_zynqmp_props[] = {\n     DEFINE_PROP_STRING(\"boot-cpu\", XlnxZynqMPState, boot_cpu),\n     DEFINE_PROP_BOOL(\"secure\", XlnxZynqMPState, secure, false),\n+    DEFINE_PROP_BOOL(\"virtualization\", XlnxZynqMPState, virt, false),\n     DEFINE_PROP_BOOL(\"has_rpu\", XlnxZynqMPState, has_rpu, false),\n     DEFINE_PROP_END_OF_LIST()\n };\ndiff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h\nindex c2931bf39c..6eff81a995 100644\n--- a/include/hw/arm/xlnx-zynqmp.h\n+++ b/include/hw/arm/xlnx-zynqmp.h\n@@ -91,6 +91,8 @@ typedef struct XlnxZynqMPState {\n \n     /* Has the ARM Security extensions?  */\n     bool secure;\n+    /* Has the ARM Virtualization extensions?  */\n+    bool virt;\n     /* Has the RPU subsystem?  */\n     bool has_rpu;\n }  XlnxZynqMPState;\n","prefixes":["v2","4/5"]}