From patchwork Tue Jul 10 00:28:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 10515983 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 3409D6032C for ; Tue, 10 Jul 2018 00:31:37 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 23E0428B2B for ; Tue, 10 Jul 2018 00:31:37 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 17A4828D7F; Tue, 10 Jul 2018 00:31:37 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 97CF628B2B for ; Tue, 10 Jul 2018 00:31:36 +0000 (UTC) Received: from localhost ([::1]:45099 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcgZ5-0007GP-O0 for patchwork-qemu-devel@patchwork.kernel.org; Mon, 09 Jul 2018 20:31:35 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41593) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcgWQ-0004ta-Df for qemu-devel@nongnu.org; Mon, 09 Jul 2018 20:28:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcgWN-0008Ov-7i for qemu-devel@nongnu.org; Mon, 09 Jul 2018 20:28:50 -0400 Received: from esa1.hgst.iphmx.com ([68.232.141.245]:6522) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fcgWM-0008Ni-SV for qemu-devel@nongnu.org; Mon, 09 Jul 2018 20:28:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1531182526; x=1562718526; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=MdlhwdWrGbZWHXLnb1eBgNgS7Fh1XkdLlHXk79g8wKU=; b=IUUxDNawCQBvT8DQG1CZm5rOl7+4qb/sI82YFNx7nfgE75KRuZMzwxKQ N0foO23J13rUMtn8234KwecVwWHdgP0g5XDwIN3IWrP7+8HJ9H66TtnYM deD9F4zrIKsTvrMbjZ2UxfShvMOobawo4fO/SgLhTC1fOjku5OH1aoWzC xuPM8Os44l4TF7z8Am5b+a/25+fYI5o4DM/3fxYfZALA+wHsY8peLNgWN WHklZ9M2NyB8Q4AAxHJd3S9JzZYB+5nWLGqdKoMnI/KEPTCxDNWeQrCWG O4B0kumxU/UoDI52eCKjE+vcJC3KCys5fJTuWm7vy2YkJXlGKlzN0zVQq A==; X-IronPort-AV: E=Sophos;i="5.51,332,1526313600"; d="scan'208";a="187084052" Received: from mail-by2nam03lp0055.outbound.protection.outlook.com (HELO NAM03-BY2-obe.outbound.protection.outlook.com) ([216.32.180.55]) by ob1.hgst.iphmx.com with ESMTP; 10 Jul 2018 08:28:45 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sharedspace.onmicrosoft.com; s=selector1-wdc-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NV6vAFmOC8Zep+Pp0mfc3B3InxIKIGw0swF8+H+1s9U=; b=BjGSXW5OyhYLU9BpwDCq6n5pYTgXzLXRfjIFfw1r3evkTuCuUs+mO1CF4P971I4CUXYjlN4DxgWlySHWgqJZB+Guw7UUt51qBUzK+mnfO3Tzvv4XearaGCK5jSrKAhESHhDL0wlHRzNP3k3vBCkxH61g+LhTPyb86ZWLUGNLOI8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by CY4PR04MB0393.namprd04.prod.outlook.com (2603:10b6:903:b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.19; Tue, 10 Jul 2018 00:28:44 +0000 From: Alistair Francis To: qemu-devel@nongnu.org Date: Mon, 9 Jul 2018 17:28:36 -0700 Message-Id: X-Mailer: git-send-email 2.17.1 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: BYAPR02CA0032.namprd02.prod.outlook.com (2603:10b6:a02:ee::45) To CY4PR04MB0393.namprd04.prod.outlook.com (2603:10b6:903:b1::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b3f75ea4-0f3a-40c4-0952-08d5e5fc185e X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:CY4PR04MB0393; X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0393; 3:e++XRfrS8f/T8NcjN3auwN1mCmylS7MOB0KNmuQNCkcPQBpV9UtALU5TfqCxW/UdasX+xeuDoE/gS2QXM5KHCnTQWM9sfl+kDnYLaf9t56w4UkD+dN4wiojSEfgl7ICe08SsG6R/l9dTAfZseeJ4lU8W6WyvwLR2AxbkiqR3R/Gz1l9+Hxlw5v4nZoGV53uiFlGSw4/szsvd37j5ouE3/70tTHxENm6AUqeGggu1bMba+irxQShWSfVbihD5kVYL; 25:F6Ejv0zfM5b/1RwSK/6YUZ4Vd4l4KV8oZxFmHeeSMKCbfoA1GRxAGil9fuXxODyDAtdkXcwhNWqQje7mUkKXCGoqmLJgTyDDNYnpUIH0DxOTURaMFLyZmlUiBk21QowXteaFShG1Eunekuw92Pu21925XOmdgYi/s1PbKjlARDYYV9t3ODkpLp/eau1oTNZZtDy/nuTJaraRutplzC/EKR+jrnlyi8Zjg1iaiKzy+aJ/cy83BnKCzhKazfbGsTQ/kp/o9W3YCuFMyL02Avq0Ikv92mFgf1D2Ay/w2U5T7dpuQEzR0cgcTqIudaKfd8Jv3js9FhKPo3abNOf1/UbEzQ==; 31:DHNzWSZcy0yNCZXVMNXRNRBJrNZsMYIi3dyoFCN23VjrfQHSsw4oZKr1qO4yKKKrfOeNBPLL4IQbeYs/p+NB1tjHQuu5ubLDzunjwFHuwkhrEN8IEaK5HnxMA1/D7/7UehAakFouUfYyRGzcwBdi7d9cL1AtdRNe0BAHwXyKslZPn34xDB8Pc4ajCnouPwD/pUmZYnLV74qgfYBv7RoyeAxmen8Jqcx5jPtMDACOY2g= X-MS-TrafficTypeDiagnostic: CY4PR04MB0393: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0393; 20:UnYhZQJZgZ2z+AgEWCnPiME+ds+vkIr1GFLgehOFsBs2fgEIxsnwGR7iJBkkEJx8BlLNk0jnDMZ9G7dA+nCMQ6vlBvULbGa0CcB/1WZ7o20+1r8LKJwaFxzuIQI6pAyjd7IS+b2G4i2uYYRRqxwaIl2Oh2XoTWqAEM5HdcubKyPWGkDrbRqjBNsB8KOA091nwaJaGhvdQgTVP4//RBQccKQNx7yo5/zILKu2MR6hjqh/j7TN7RPE35c3bW2WPC4h84yoK/ox2miurSlh21a9fUYb1Mbq6WJADT7mP1ULBgpXxIAisMUex0XqRaPdhXwZAWK9/Kl+9xyr19mb3Vz3dLLsRDAr38wCqa1aehqe6C3D1OQDd4v9P35ByuNgcoFQj1jxNjLbWvsoj9NI+/DW8LArQht9gvycRyNuPa6vuZRu+nPMStzTBuoKvhVgtIs8TuWjsuZyA5K55NvziQnNprM3XVIUDKTsRR05yPXJ6s9ePKx+1VSRfDMXs230Biez; 4:WgH7rYBAdyTVKyRsH9FXbcpK9BPSvAjG6d9fpZ5Gb/i5bB5VgTkbkACFl2YrxHxotw9Z9hbpkTJ8ltIRebQJK1HG+9wS38g2P2N76G4+3qdpDRieZ89KT+NE18BVMPqcY/E6r73QWZS4eFN0y+loA0xHR28Tpskx+IQGkvl+RRW6G0vw4/zglmQ0DJuJLhsww8Yc7d1wh7zJCFivdxb8GIb5nIyElu1Yf6JTZGWwLnhW5v0md5yecMTXhFn/MpCdXi9Or05rDuAUvo790JM4uDxz0+JJOM62AquJXMWfihsXRojUEsEP8ji/E0MkyOqC X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(21532816269658); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231311)(944501410)(52105095)(10201501046)(3002001)(6055026)(149027)(150027)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(6072148)(201708071742011)(7699016); SRVR:CY4PR04MB0393; BCL:0; PCL:0; RULEID:; SRVR:CY4PR04MB0393; X-Forefront-PRVS: 0729050452 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(376002)(39860400002)(396003)(346002)(366004)(136003)(189003)(199004)(2361001)(68736007)(25786009)(6116002)(8676002)(8936002)(2906002)(3846002)(81166006)(66066001)(81156014)(50226002)(39060400002)(2351001)(5660300001)(305945005)(86362001)(48376002)(6916009)(50466002)(53936002)(7736002)(47776003)(4326008)(6666003)(106356001)(105586002)(72206003)(478600001)(486006)(186003)(16526019)(14444005)(956004)(26005)(11346002)(446003)(476003)(2616005)(6512007)(44832011)(118296001)(386003)(52116002)(6506007)(51416003)(316002)(76176011)(6486002)(36756003)(16586007)(97736004); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR04MB0393; H:risc6-mainframe.int.fusionio.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR04MB0393; 23:WB+P+aZa9vVfqIG0hBcceD07ZGCjIiYnk2kLaVcJB?= =?us-ascii?Q?B9SzkLOnBsQ2m0uv5ZqOWwqG8ya/TrOGgSzZLotLMO5hMXojaFpcGf8rBHtM?= =?us-ascii?Q?INB0e5N9FTrFwordRK989L6b148XTuZkuf+vTrpNOvuIjWVFkHf9THVA2hXT?= =?us-ascii?Q?2grd5N3auVNGu2l6g1MpRQiwm3KTu7uY5xschM7TmPvo2L/y9rAwJGYzvcC+?= =?us-ascii?Q?7skFHOuADJKoOPKsWOJJ+QqI+agX88n/Bpg4HGLpzgtjJhT/1LnTfkzokaQr?= =?us-ascii?Q?wRsyNyRaXHhjEwE7YhWccAV+TrkP3GuoCDOn8aCP3kkvwvRRSX+auZrVpZtj?= =?us-ascii?Q?bGbv2ItEqZFneETHLMEQms43LIWSB03L9MgJiy4KVhxXpBUfbMlgT1wuZgp/?= =?us-ascii?Q?bxh503Frtw2OvmKZOVXLOvPl8ryg5ihlXgivzNnyIfBWyYO3/GMgtXx9lgjx?= =?us-ascii?Q?bd13gPqzMj6daRPGcO5xR5yPF2MQwalY8vkEtzutiEYde0zXClEMfuSycmxm?= =?us-ascii?Q?F1ct1IGtw1sN5erSyUDra3KAsTBmqoPIKz3LEuHrhPoA0842FPwzFp50ua7D?= =?us-ascii?Q?MwybcdZ2hugjtQcPC/8Kf/t8uFVniHmBzOzZyBWpJj2gjN2vLrj2L4t73N2Z?= =?us-ascii?Q?f5VRPcx+V1FLAIXsF3M8jktd5zdLtmx4susoPB23629ytUViq/xy5oSPUv/i?= =?us-ascii?Q?ObyW3VeOlVg9oMeh3fSKZlXaGwp9p3FoA75/nCwNAtEgBlWQAGG53HkpspXQ?= =?us-ascii?Q?+mTB5TLNxVxwOjlSTSWjRAdMGy1s4iRiQ3dumoOl51KL/X2qSffPeFr90gUT?= =?us-ascii?Q?xptzqH+c/sEIPko2hMVGd1Ho9kQfoxhTtz4MOm5IOec33XvyY6dnw0jIkeb2?= =?us-ascii?Q?RGJzDQCqHko4uzhc2XIC5ZkC6VGdWieTVuS3W+Z5QS2ZfeTPVRCaX7rXiqRq?= =?us-ascii?Q?tdgNmWXGs99vWtt+5YHkuqIs+6DRZq8jMYvxJwQTAkXzNBjLddK0iplcqfnJ?= =?us-ascii?Q?slsYhmH5IQeD15LivnOyAUAWHZ+vguW3HD1GPmCILuPJZTt7K3SbMjKOhOAJ?= =?us-ascii?Q?Pd3h6nouL7IX7I/SUbfdEwil+C2r/QtC/XMTE/c6lPuchXgogZmvBvIOOyri?= =?us-ascii?Q?ackQMGszWjE/QFy2SQ9xcamjfBHc7Z88BL/sqpTclTIRaGrHZGH5ylqIbtkK?= =?us-ascii?Q?yIs28vq6EWF5lNOk11wJgBdiEbArsejevEWaunGIZn1AbbyRyR8GFIQICefP?= =?us-ascii?Q?R7hnnHFhdWZg6GcsTlJ4dDnZfEbO/pqsU1Vk1mqnJs1oqNz83AJlSjDMmeU6?= =?us-ascii?Q?t4lNqfT495sYGorzye5S44=3D?= X-Microsoft-Antispam-Message-Info: 49CAbaEatN7YjizppV/lM0KWCAI5L0Nfkr+5HxqARM5u6iU+3lcffdvbvHt8YsBp1a7rWwgJxM7q95FXPpvLcGfUbagHSrJ4n5yatMejSubRRBFtnjS8dDXii+3Kc9UpEekKcxSRoKxwe3VO64o+o3RERr7MnAj+xEkvQujwppRCMiOoMiSBQaJRGl3PxM+CeNfVqFdpGMZznaTu4K0aQ6U1fGJiWxyyNSf4+t1/d/R760225/YRZA2B7xCgleb1WlFtRvRqaLk8UMC/nrlFSlkOoBhY2upmAT4LIXnfrI6xdXtVmx9I8JneGXkvzQi72BGbG9L0N20IuCE48HWwZUHkjkmjuSP53UO/BH04Otg= X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0393; 6:MMpPura6nWkYIUdTa+Lulgyw6+cbjAg2+lAb4ZTzTuPruo7pJ2/55TZxTup24Du4uLw4mr0+mH1nQTP2FaX6Yxc1vVnVW1VI/JKJkHkwL3JZIKdQl3PHQB9uTcfIQ8oUtRBy6d2jAUyiev3fWUGJf9TBbh0xBbNOyvpGTWjbFCa82JMrXHnLGBhOY1SRFTGmHiA4IGmhWejyoFE9nOm2ds9zQPqu1G8C01qtcIjFcBdYU/qgUyrKrt+KlwhZTgxC1yvl7xCEdWj2uwwyl0k4KIGGiVOWRDW1XZNt3aUj0NU8IYndqqyvyKP9w29CWruwbooiDHaHBUJzZhS1b0rYDUEXp031j0fxf3FzvACQG5ELhIUkUUslzxUL/Z0+bjEgUcLO7v+p9adL8XyegdxJ6klX/FZRNQSz9Lr/zVdXifRHCKc7ZlQVqHd8UpovtElZmrPG7Iyx1dc9S3BXNHQNFA==; 5:FHc3Nw+LWTHwZhYLIdWl+Y/zu3zISqaGLQyZoMFyIeH7EQqko895BOcVk8MfQze7S3iVWFc2kaJeeO2kaaDCocKR/O1Oq0nuKOH/r6J3X32hffnF6GcAn0ckhqImNHUWnxBZJj75+Kz2UjGqOH7NDuIZcnZowDjn9CDj8j/pNhk=; 24:piwfR8mi7TxT/vMdLjiAQaLIkXW4+6wRaBGYPSDvA3ChChCgjSs9+/WW1h9l7v+V7bfYTNJUAyFcpbpbl341A420mTq8P6Ma+h6nhX0lwuk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0393; 7:/bseiLh0wQ4xygA4Rx6MKutNAGwJwaGHEI+mUzDHOwBM1mPmX4APgA7diEYa8KcFUELAKizBelpV/gyHm33LIHwAx+3xaUo14sQo3aRLXYa3VXWiMRxMjxDgK/ELJUCR/PYNNBRJb68EPRhYvWHzqAPRZ8QJRpZ7bwl4IamFYtmhyZAQVy+lchylZPf2i8KBPKde+nSDhVTpn5meOe0tWt8308t4o0e+qLBiJ0yd35TtFwqXFIqb7gFgSMQZSXIl; 20:JjJt+rA1jFPknP/j4wjiw3/k9TyOtciVDn2h2+DCtepkcory5IL/Vnew/MOrbUXy+za+mjIfed1581d9pvSi1KvZCjTeCd2cJrDbBu3Z6/7LpOaP353Ouct6uMwfS2Ccjnf5w5bej6rvFLWEX4zWcOcWIF6FgbHmOM4J0BbHYXc= X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jul 2018 00:28:44.4156 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b3f75ea4-0f3a-40c4-0952-08d5e5fc185e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR04MB0393 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 68.232.141.245 Subject: [Qemu-devel] [PATCH v2 4/6] hw/riscv/virt: Connect a VGA PCIe device 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: alistair23@gmail.com, mjc@sifive.com, alistair.francis@wdc.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP Signed-off-by: Alistair Francis --- default-configs/riscv32-softmmu.mak | 3 +++ default-configs/riscv64-softmmu.mak | 3 +++ hw/riscv/virt.c | 7 ++++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-softmmu.mak index 2c943e2669..fcefa68f1e 100644 --- a/default-configs/riscv32-softmmu.mak +++ b/default-configs/riscv32-softmmu.mak @@ -8,3 +8,6 @@ CONFIG_CADENCE=y CONFIG_PCI=y CONFIG_PCI_GENERIC=y + +CONFIG_VGA=y +CONFIG_VGA_PCI=y diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-softmmu.mak index 2c943e2669..fcefa68f1e 100644 --- a/default-configs/riscv64-softmmu.mak +++ b/default-configs/riscv64-softmmu.mak @@ -8,3 +8,6 @@ CONFIG_CADENCE=y CONFIG_PCI=y CONFIG_PCI_GENERIC=y + +CONFIG_VGA=y +CONFIG_VGA_PCI=y diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index 0c3800fd64..f973c43c70 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -322,6 +322,8 @@ static void riscv_virt_board_init(MachineState *machine) MemoryRegion *system_memory = get_system_memory(); MemoryRegion *main_mem = g_new(MemoryRegion, 1); MemoryRegion *mask_rom = g_new(MemoryRegion, 1); + PCIBus *pci_bus; + DeviceState *dev; char *plic_hart_config; size_t plic_hart_config_len; int i; @@ -437,9 +439,12 @@ static void riscv_virt_board_init(MachineState *machine) qdev_get_gpio_in(DEVICE(s->plic), VIRTIO_IRQ + i)); } - gpex_pcie_init(system_memory, 0, memmap[VIRT_PCIE].base, + dev = gpex_pcie_init(system_memory, 0, memmap[VIRT_PCIE].base, memmap[VIRT_PCIE].size, 0x40000000, 0x20000000, qdev_get_gpio_in(DEVICE(s->plic), PCIE_IRQ), true); + pci_bus = PCI_HOST_BRIDGE(dev)->bus; + + pci_vga_init(pci_bus); serial_mm_init(system_memory, memmap[VIRT_UART0].base, 0, qdev_get_gpio_in(DEVICE(s->plic), UART0_IRQ), 399193,