From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081393371518.4997035261858; Fri, 11 May 2018 16:29:53 -0700 (PDT) Received: from localhost ([::1]:54281 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHU0-0001Tf-DE for importer@patchew.org; Fri, 11 May 2018 19:29:52 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51044) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHRz-0000Kn-EY for qemu-devel@nongnu.org; Fri, 11 May 2018 19:27:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHRu-0000Os-EB for qemu-devel@nongnu.org; Fri, 11 May 2018 19:27:47 -0400 Received: from esa6.hgst.iphmx.com ([216.71.154.45]:20861) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHRt-0000OG-Vg for qemu-devel@nongnu.org; Fri, 11 May 2018 19:27:42 -0400 Received: from mail-cys01nam02lp0050.outbound.protection.outlook.com (HELO NAM02-CY1-obe.outbound.protection.outlook.com) ([207.46.163.50]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:27:41 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by DM5PR04MB0412.namprd04.prod.outlook.com (2603:10b6:3:9d::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:27:38 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081263; x=1557617263; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=jUdKbC7w2zMpNVXwfasusCpUoC05m4dcuA+nzDJ6j4o=; b=Xm9LsFRa6wn2wdG6AyFieBtTIaysGJ22GgsqhK3RGELoWXQrSJpCxfER fHXkKYiHvI3P0QzKr/xK4L979jN19zoqZZrjOImIltF9hOLI7Dlu2fFEs tCBu376jQkRmyS0Rxloqs7rf42MnglQi5zDuqntiWsXJeY3S+HwJxm7He u92x54RD202hI9ogEvaEBidJsBiyrlOSQxtwsz+zUKWMp5r/w+O4N9U8o 8eNWkrMcrCGg46HZoZMB7GuyHfAZm9svcqncNWoekwlU3TJjw7Gjvk9TT LMoZD8JfSLvNA50uYWMVYqUhzdOjA/XKP4j8EZFy6u44JWSR0qPkUIUSY Q==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="78667094" 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; bh=ZFayafptN4sRURm3NqFl1PMwGWhg0U2fHgQQLGNSkfM=; b=lWop5JcY+XmvsO7390UZjbHip38V3RRZahSvG0+YneVYU7qxWLcWZBlPtl5VX0u3+HhsSvV8cDvDZoD3Ky4VaF93deDh7Yu2v/yWpsyUGImehdUHd458diSEfgFkkQ8b/0yoHrwR7DWF5L3yjDqyAjRGQ6VpW+Jhfeko8LaA87s= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:27:29 -0700 Message-Id: <32268d8bff9666031e0c418b12e95de1106cf050.1526081108.git.alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0091.namprd15.prod.outlook.com (2603:10b6:101:21::11) To DM5PR04MB0412.namprd04.prod.outlook.com (2603:10b6:3:9d::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:DM5PR04MB0412; X-Microsoft-Exchange-Diagnostics: 1; DM5PR04MB0412; 3:k7wHC1WP7DzxbDVrh/26QIq/erPf6FQ5zIIqusEVgxmbFWjCxNe9NNCPMtPqULMOFbEsFbWVkvDSK6WBq37ylK3bwMot88Iui6Djuw359ejHQ9nRXa/noUrfH6H/w44l2n8F5d9/GlQRKRm0yeMj1Lw5kFn6ehh9gBWWJ9fP9nCk/dINkabPg3mBFQvdVvH8o5yRQNk/UeMiLBpfNMkcHDG4YylycdHhTvOiN0/ZOP1LddDV8UHb7JLPSnXlzvbg; 25:a+ZdX0qFISYUH2be3TkjL9QDr5COszhDhN+lOpFSjBznTGxkNiSH+CAsnHSLo10Lz0gnXCXHvMXhhwFEoZEyTAaMznFCcT4yLKrX1sY0EJJJBeUZ0JqTUb2O40d8M04LcnXdADMppwqGlDhqo06HWdKJ6BXDTOUVB+M6Kwv8V9Ax3Ez4p4+cpHhmfIdXKo/x1lTVhdezY4EcsvaUg7A8L3f6JPJgHkaw67it+MzkU/N7xtN9twzbf5l4oPlVkvdfcsJkWvQvo9I8Fja6mdCUWdCwKfG4yLLK1yAlo6QmSPNySgJCnyUBWx29bVpQOKYyQza29X9kx9me/Websc2l8w==; 31:k9NaZ9QjT518fjq1/OPvl1qzmlLJsb3yjFA8hFBQlb8K48IP1F+UV8NjVZzFlI1Is+hvqvqjgFPFoO1ZC8wF8IOK3jkc5PNjLhq4BY8Q4PxsgbBcKIuRqpV4UygqyPv+pONXPF6Q8HNGBPJIJ1/KMBdFcpStxsxzALZcgT8v4bEmgcNP5lo2WjIeJWCUhw+4xcdnFkhl/3Tfe8ek7GCXzk4OkuH9vdi7ctsOG2zIBWQ= X-MS-TrafficTypeDiagnostic: DM5PR04MB0412: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; DM5PR04MB0412; 20:2gdwlvt1thpXPmgVv4VzBaZx+MtgQ9wJBnjDJqpjzNnu0BoGKr3AennWFUtop3jUk9t5YBVmSDEt9JVsILbwKsXX6faohn9IqYaX0xjsPPZ48UfWnJHX92xtcPO9Mcnzuwcq4SujKBCpJTrCa22BTO6qRMXDjx+TgDLT1Vvo3wTzyHoL63wcGv8uNIzFaX1v2o4T46s0hTI8Ok/NjFw9+au+r0im59+YTEvkq8UK+1HzqVwIuxF6fnsN0twer7JV4U04KO+LYJEAMF3SrwUswSmP1cPh3NLZVrMngQx7Z+PRaC/FwN8sSKxFCyrOZ7P9IsjIMBCYmzQDyh6PN/YxvoVdrLBvv+5B67Cm6AiNLHH93HHnmAOSc2A2X252D0tr8o4gIayFR0XzwW23pealY8dYylMBVMgRoTu+CafAK6pXJKZYYIOdpN83RlbpgyZ7lF715H4Uyf0RgXYFCzabuRKA3A1E4BQU8OBF75FV3PvV94sfimtNvFjKHxSsXJ+k; 4:bLCkFqBMOo+4COM+CQrlTiNL/7olJKUOzyme6AONHb2YUcSDvmtVHRFe6sBBEQm4POt89I30EURFc4WedtSEkUXdTqdUrdZO9KXOheDddXFG9mHq6qMj0IZigqqRSk+PTL07fs0DRxPQp0lN2V497B0/PFJ0CLtHJF3dcYzTLQDjcQS2GIgX32ieYu2bACiy/h/In6AoLmN5fut1IvD746B9uobch/9mnI4Ib3XeAoIdMnUIergfYlOUTSCKHlAwxkTLbEAEi5YT6LwlHQX3GQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123562045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:DM5PR04MB0412; BCL:0; PCL:0; RULEID:; SRVR:DM5PR04MB0412; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(396003)(346002)(39860400002)(366004)(39380400002)(376002)(189003)(199004)(44832011)(50466002)(2361001)(48376002)(50226002)(11346002)(36756003)(66066001)(486006)(476003)(47776003)(118296001)(2351001)(2616005)(25786009)(956004)(5660300001)(8676002)(446003)(3846002)(6116002)(2906002)(81156014)(51416003)(76176011)(72206003)(305945005)(16586007)(316002)(86362001)(8936002)(52116002)(105586002)(6486002)(4326008)(81166006)(7736002)(478600001)(39060400002)(186003)(106356001)(6512007)(68736007)(6506007)(6916009)(26005)(386003)(53936002)(16526019)(6666003)(97736004); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR04MB0412; 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; DM5PR04MB0412; 23:6wfJmOpqNqWxDeXsycwKwXFdI7UG+mXEY9RgZj0GC?= =?us-ascii?Q?Uw8nDa2tDmBxWJszInBc2+2+YA0vIzcNtlZkX1cyt9qoFLfGDkaI2gXPNKz6?= =?us-ascii?Q?CUCMcxSaKN39tVH3FJYF5zF9vOjPID75bOVikHmg+/XV0N776rnvnp35JnI4?= =?us-ascii?Q?O6DdINeYZahQTnvIrJnCa6nQ1JkROlcVIc9HWIuqQTcmR5GR0xyeVeY3iM6V?= =?us-ascii?Q?rkkX6GAET31MC6v5AQ+oqOCSuR7QC19c1XPStk8ovhDDs/UhpaK/WhMMQRJu?= =?us-ascii?Q?9y8rjzgZfj+uos+rY8UK4ygl1u0gbYG23DEogfqRBoNAnBf2cEsKwKJRXGU9?= =?us-ascii?Q?doHMZlxblQAwE+M+d+lvycmqafdixkukRrZuYgw+z3aYBNxPmB8b1fpYHZxK?= =?us-ascii?Q?YSFhjSWkcdNn2RvypZP78bvLc3qpVaSXSejBgZDl6fxG4zGfMTwY+b1qcVv9?= =?us-ascii?Q?lqhlcSwJ6SY3eoHyC9PlLcBU9Zp/B/0nODfUeDbtDcbnMuhY0Pt2VkJUQ+v5?= =?us-ascii?Q?+aGHTnIc4u3QdWnOzJReijgzrOXSV6qa3nt7XKT5+uLIlYV4w93jnyOySOAB?= =?us-ascii?Q?xqr9Eoli5N6knXrFYiUhTsyoaVErgCGj0yGniS5P3ac4ozQIkZokWhhSehlw?= =?us-ascii?Q?aACsnxtqXW2IOQkBDgrtIQSHip90ky0QZVXpLpiM+wMdcjAonu5Es5PVuY4w?= =?us-ascii?Q?JEVZswbq09oTtlKtvjBq5TXuLHHuv5bIyXqBXSkCWnBweDzsHTX9fx5mRH/b?= =?us-ascii?Q?DLGcNsUNMay3PZxwpZNdjLSVaYD3+KT7UIytQU2W36ACsdDx69n9VtmCiLfH?= =?us-ascii?Q?3Bm17GRcHerXrYVWp5J6xKUG4Z0KEWWcrjUaHZsogFck/bhsDZ0KCLFEsDtp?= =?us-ascii?Q?jab6rbZAgo+yqjWUSpEhDhplsdM2DBJeku3qLXW8tspL2eDN2ZknD67+8qoL?= =?us-ascii?Q?j3VspniD5gfKXdlcEfKNW+o8uq9+Q3yMh2w+aPneY5v4XFY6TO/MeMO/w/La?= =?us-ascii?Q?m3xiXmjh8Y0PZmKv0FNz08n3n4D0edq77akoELFjSegCh4pnn6TKHpGZXNiS?= =?us-ascii?Q?Q7vCbdVpxzd1THLzGRR90kx1kjCvXQGtj+BjtvkOycVlEMw8lqV+afpF532Y?= =?us-ascii?Q?rFn9X3vQogcjQ+xwl6zQSM5l7Wr++rY3dZz2kLza8zOstpldRhEQt2v+okC8?= =?us-ascii?Q?R/P/L9qQUx3uqsrADj0ya7cSKxsFEncQlm5+8fwPdR5tGEeQatS54NqijvMv?= =?us-ascii?Q?3W0zGKJ//aTY46mdME7aGEF3gkSOUpYVMHzuern802oGYOSPBm5a6+tpIYzr?= =?us-ascii?Q?ySHTsF4A95/RNvv4L56/3I=3D?= X-Microsoft-Antispam-Message-Info: DmmKBwZvt9DPOsUQTZo7OGGLDCV7ZBsdSIWdq+Ju1BCs+F7njDqhJHKfDsP4InY1TJtGBS1s4EKqUIv9D6E+nwMpo025Pr53v1YeoZ/7Jj48IX1aEd5E3KpDPEi+tCTTjtoGHNw9kWbPJD5goTONIlZZk1XA5rYtrl+SIjOOZQ0O/bfZYdSpdLi/hmo+rZmQ X-Microsoft-Exchange-Diagnostics: 1; DM5PR04MB0412; 6:16wintW7ovWsqngZC5Xr2CpV7djTWrD0opOPY2ukh9mdXGQSJQlM1umV5jpdTOVoDVxLCvlLGBYXi21e0U75OQZrKVUYmD8KrDwxUhH2uNmyh1ol4/6Wcfy/rY4Q0u90xijO951Rr6NW6l9XrZ0Zn81X8mysKr1GKlFnLF+iP+grNvER8tSO63q6LnH5zFA1pyiiYjt5M8g5Rr442CjMfWWrOIbHGOBApW5sZZTLhA/grxoafAWABfCMKdTeSzJRFJdLXd2KAK4SfokK3WFpxzDxWTZRc+QdPJUeAokbJU37TanLcK3q3atBitklxOW+457zGqd1uc6Cv83qpN0gRC26IsiztRbnyhjyVnJ+bjka7ZlXGgwgHCPIyF3JzvzTbS3tXkGBXU+uOLbz2hUeSfgqDzNWwB6nhUIF9wEC/SAYIBtWc2Zx8H1D3LAccCtgpqAYRpoN0qxquJG6fn8TKA==; 5:IyCCI7utU74RSymd6GT7qE0zPVODlyxBu0D+MVTfkEDkpoNfRTHtqrIcz32ZJb+wokdVE/ZT/h6vLZswc6ORUOsPAMJsURLzSAd3nQtHWQLZaENCO+t3UDoicWDLFPr1vzlexCPczfQ9xzPZ65qSfxg1yPOv9j/2oJkeNxiTUOI=; 24:bcp8e8ZH5Nm8LeIysC8+vtpVyuwZUdRu857NGaacP/j1KatOAdWq3/cUfQuinZamJmStrqvE9P1v6kycu8zlgrIdKNGdYPxdLDBvef1nE6k= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM5PR04MB0412; 7:WyTZtH5u4GetfILdAzP+J4l1Ko/fHYeaRjsw0A8Kru2Hj/h5BxERQRRhU9wBMjuiJUnORRFHJOrDTNjmLZJ6BXqm/jxg+x1qzQ2ZsGV1YUPQHjp9VvLiMQdyQxMb4fkkuuB+wytd/yq1VUVQQuyh3rKEMnrLCdupvKXs6XhuSmMsMVGATJz+foZ+bXS4LbPAvQkArXkLYmFAcLtiGtjMONvl7h8gzIrQxv7qM98r8f3fihUJ56JiMXPv3J/1haVp; 20:F+uDLQIGv8taIGj8g6YC2h9+4SL7GUcO+9o8UKqyFU3G1jcPHnh3+ngZYqhxKd7xQ1H4GhmATaZ52Rj5Wgp78C9KaiEWFK5nZMU39TBVEdeNrBqKUOOkBP2uwwu8B4quKpYNbnpqaHWlEhIKcNOKTjeqYl+3GA12rTlW+RF6WOs= X-MS-Office365-Filtering-Correlation-Id: e2c5fbd8-bc3a-4cf9-ca67-08d5b796c94f X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:27:38.9313 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e2c5fbd8-bc3a-4cf9-ca67-08d5b796c94f X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR04MB0412 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.154.45 Subject: [Qemu-devel] [PATCH v2 1/7] hw/riscv/sifive_u: Create a U54 SoC object 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Create a SiFive Unleashed U54 SoC and use that in the sifive_u machine. We leave the SoC, RAM, device tree and reset/fdt loading as part of the machine. All the other device creation has been moved to the SoC. Signed-off-by: Alistair Francis Reviewed-by: Michael Clark --- hw/riscv/sifive_u.c | 90 ++++++++++++++++++++++++++++--------- include/hw/riscv/sifive_u.h | 16 ++++++- 2 files changed, 82 insertions(+), 24 deletions(-) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index c05dcbba95..26155e932d 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -116,10 +116,10 @@ static void create_fdt(SiFiveUState *s, const struct = MemmapEntry *memmap, qemu_fdt_setprop_cell(fdt, "/cpus", "#size-cells", 0x0); qemu_fdt_setprop_cell(fdt, "/cpus", "#address-cells", 0x1); =20 - for (cpu =3D s->soc.num_harts - 1; cpu >=3D 0; cpu--) { + for (cpu =3D s->soc.cpus.num_harts - 1; cpu >=3D 0; cpu--) { nodename =3D g_strdup_printf("/cpus/cpu@%d", cpu); char *intc =3D g_strdup_printf("/cpus/cpu@%d/interrupt-controller"= , cpu); - char *isa =3D riscv_isa_string(&s->soc.harts[cpu]); + char *isa =3D riscv_isa_string(&s->soc.cpus.harts[cpu]); qemu_fdt_add_subnode(fdt, nodename); qemu_fdt_setprop_cell(fdt, nodename, "clock-frequency", SIFIVE_U_CLOCK_FREQ); @@ -140,8 +140,8 @@ static void create_fdt(SiFiveUState *s, const struct Me= mmapEntry *memmap, g_free(nodename); } =20 - cells =3D g_new0(uint32_t, s->soc.num_harts * 4); - for (cpu =3D 0; cpu < s->soc.num_harts; cpu++) { + cells =3D g_new0(uint32_t, s->soc.cpus.num_harts * 4); + for (cpu =3D 0; cpu < s->soc.cpus.num_harts; cpu++) { nodename =3D g_strdup_printf("/cpus/cpu@%d/interrupt-controller", cpu); uint32_t intc_phandle =3D qemu_fdt_get_phandle(fdt, nodename); @@ -159,12 +159,12 @@ static void create_fdt(SiFiveUState *s, const struct = MemmapEntry *memmap, 0x0, memmap[SIFIVE_U_CLINT].base, 0x0, memmap[SIFIVE_U_CLINT].size); qemu_fdt_setprop(fdt, nodename, "interrupts-extended", - cells, s->soc.num_harts * sizeof(uint32_t) * 4); + cells, s->soc.cpus.num_harts * sizeof(uint32_t) * 4); g_free(cells); g_free(nodename); =20 - cells =3D g_new0(uint32_t, s->soc.num_harts * 4); - for (cpu =3D 0; cpu < s->soc.num_harts; cpu++) { + cells =3D g_new0(uint32_t, s->soc.cpus.num_harts * 4); + for (cpu =3D 0; cpu < s->soc.cpus.num_harts; cpu++) { nodename =3D g_strdup_printf("/cpus/cpu@%d/interrupt-controller", cpu); uint32_t intc_phandle =3D qemu_fdt_get_phandle(fdt, nodename); @@ -181,7 +181,7 @@ static void create_fdt(SiFiveUState *s, const struct Me= mmapEntry *memmap, qemu_fdt_setprop_string(fdt, nodename, "compatible", "riscv,plic0"); qemu_fdt_setprop(fdt, nodename, "interrupt-controller", NULL, 0); qemu_fdt_setprop(fdt, nodename, "interrupts-extended", - cells, s->soc.num_harts * sizeof(uint32_t) * 4); + cells, s->soc.cpus.num_harts * sizeof(uint32_t) * 4); qemu_fdt_setprop_cells(fdt, nodename, "reg", 0x0, memmap[SIFIVE_U_PLIC].base, 0x0, memmap[SIFIVE_U_PLIC].size); @@ -217,17 +217,12 @@ static void riscv_sifive_u_init(MachineState *machine) SiFiveUState *s =3D g_new0(SiFiveUState, 1); MemoryRegion *system_memory =3D get_system_memory(); MemoryRegion *main_mem =3D g_new(MemoryRegion, 1); - MemoryRegion *mask_rom =3D g_new(MemoryRegion, 1); int i; =20 - /* Initialize SOC */ - object_initialize(&s->soc, sizeof(s->soc), TYPE_RISCV_HART_ARRAY); + /* Initialize SoC */ + object_initialize(&s->soc, sizeof(s->soc), TYPE_RISCV_U54_SOC); object_property_add_child(OBJECT(machine), "soc", OBJECT(&s->soc), &error_abort); - object_property_set_str(OBJECT(&s->soc), SIFIVE_U_CPU, "cpu-type", - &error_abort); - object_property_set_int(OBJECT(&s->soc), smp_cpus, "num-harts", - &error_abort); object_property_set_bool(OBJECT(&s->soc), true, "realized", &error_abort); =20 @@ -235,17 +230,11 @@ static void riscv_sifive_u_init(MachineState *machine) memory_region_init_ram(main_mem, NULL, "riscv.sifive.u.ram", machine->ram_size, &error_fatal); memory_region_add_subregion(system_memory, memmap[SIFIVE_U_DRAM].base, - main_mem); + main_mem); =20 /* create device tree */ create_fdt(s, memmap, machine->ram_size, machine->kernel_cmdline); =20 - /* boot rom */ - memory_region_init_rom(mask_rom, NULL, "riscv.sifive.u.mrom", - memmap[SIFIVE_U_MROM].size, &error_fatal); - memory_region_add_subregion(system_memory, memmap[SIFIVE_U_MROM].base, - mask_rom); - if (machine->kernel_filename) { load_kernel(machine->kernel_filename); } @@ -284,6 +273,39 @@ static void riscv_sifive_u_init(MachineState *machine) rom_add_blob_fixed_as("mrom.fdt", s->fdt, fdt_totalsize(s->fdt), memmap[SIFIVE_U_MROM].base + sizeof(reset_vec), &address_space_memory); +} + +static void riscv_sifive_u54_init(Object *obj) +{ + const struct MemmapEntry *memmap =3D sifive_u_memmap; + + SiFiveU54State *s =3D RISCV_U54_SOC(obj); + MemoryRegion *system_memory =3D get_system_memory(); + MemoryRegion *mask_rom =3D g_new(MemoryRegion, 1); + + object_initialize(&s->cpus, sizeof(s->cpus), TYPE_RISCV_HART_ARRAY); + object_property_add_child(obj, "cpus", OBJECT(&s->cpus), + &error_abort); + object_property_set_str(OBJECT(&s->cpus), SIFIVE_U_CPU, "cpu-type", + &error_abort); + object_property_set_int(OBJECT(&s->cpus), smp_cpus, "num-harts", + &error_abort); + + /* boot rom */ + memory_region_init_rom(mask_rom, NULL, "riscv.sifive.u.mrom", + memmap[SIFIVE_U_MROM].size, &error_fatal); + memory_region_add_subregion(system_memory, memmap[SIFIVE_U_MROM].base, + mask_rom); +} + +static void riscv_sifive_u54_realize(DeviceState *dev, Error **errp) +{ + SiFiveU54State *s =3D RISCV_U54_SOC(dev); + const struct MemmapEntry *memmap =3D sifive_u_memmap; + MemoryRegion *system_memory =3D get_system_memory(); + + object_property_set_bool(OBJECT(&s->cpus), true, "realized", + &error_abort); =20 /* MMIO */ s->plic =3D sifive_plic_create(memmap[SIFIVE_U_PLIC].base, @@ -314,3 +336,27 @@ static void riscv_sifive_u_machine_init(MachineClass *= mc) } =20 DEFINE_MACHINE("sifive_u", riscv_sifive_u_machine_init) + +static void riscv_sifive_u54_class_init(ObjectClass *oc, void *data) +{ + DeviceClass *dc =3D DEVICE_CLASS(oc); + + dc->realize =3D riscv_sifive_u54_realize; + /* Reason: Uses serial_hds in realize function, thus can't be used twi= ce */ + dc->user_creatable =3D false; +} + +static const TypeInfo riscv_sifive_u54_type_info =3D { + .name =3D TYPE_RISCV_U54_SOC, + .parent =3D TYPE_DEVICE, + .instance_size =3D sizeof(SiFiveU54State), + .instance_init =3D riscv_sifive_u54_init, + .class_init =3D riscv_sifive_u54_class_init, +}; + +static void riscv_sifive_u54_register_types(void) +{ + type_register_static(&riscv_sifive_u54_type_info); +} + +type_init(riscv_sifive_u54_register_types) diff --git a/include/hw/riscv/sifive_u.h b/include/hw/riscv/sifive_u.h index 94a390566e..0f8bdd8fab 100644 --- a/include/hw/riscv/sifive_u.h +++ b/include/hw/riscv/sifive_u.h @@ -19,13 +19,25 @@ #ifndef HW_SIFIVE_U_H #define HW_SIFIVE_U_H =20 -typedef struct SiFiveUState { +#define TYPE_RISCV_U54_SOC "riscv.sifive.u54" +#define RISCV_U54_SOC(obj) \ + OBJECT_CHECK(SiFiveU54State, (obj), TYPE_RISCV_U54_SOC) + +typedef struct SiFiveU54State { /*< private >*/ SysBusDevice parent_obj; =20 /*< public >*/ - RISCVHartArrayState soc; + RISCVHartArrayState cpus; DeviceState *plic; +} SiFiveU54State; + +typedef struct SiFiveUState { + /*< private >*/ + SysBusDevice parent_obj; + + /*< public >*/ + SiFiveU54State soc; void *fdt; int fdt_size; } SiFiveUState; --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081451114632.2420942457758; Fri, 11 May 2018 16:30:51 -0700 (PDT) Received: from localhost ([::1]:54285 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHUw-0006xc-5B for importer@patchew.org; Fri, 11 May 2018 19:30:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51072) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHSB-000272-69 for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHS6-0000VX-6t for qemu-devel@nongnu.org; Fri, 11 May 2018 19:27:59 -0400 Received: from esa1.hgst.iphmx.com ([68.232.141.245]:52174) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHS5-0000Uq-O4 for qemu-devel@nongnu.org; Fri, 11 May 2018 19:27:54 -0400 Received: from mail-dm3nam03lp0020.outbound.protection.outlook.com (HELO NAM03-DM3-obe.outbound.protection.outlook.com) ([207.46.163.20]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:27:52 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by CY4PR04MB0406.namprd04.prod.outlook.com (2603:10b6:903:b1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:27:50 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081273; x=1557617273; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=yMP0cCAgZBTOefYacU4L4ZsDAvw/GJts1vM8zeeN49Y=; b=N+yK2zWii3jVYLAIZtcvrCaxR9Ehb1Bqf3VDBNvHifZuMhCxetkF7uZ1 L2LRBuqlwIYOYDxrBhd/LGoFdURNjcHGTEpCgEaM9WoTeBOAeCQXlyAed rce/5aaeeFS5rM9lkO7wbe/UAPaAUlp1pQ2DEp/6AkylFl1WdkoSFSoXv QvKt3zT3mvu9TyH63W/dxQoBTOrfpEoynhHJf9A7hIP3aWVAlzKOAAw8I 7uoE7/HqlDJ8HDZAkkPSXn0PHWjJnZFUHbbWmJV9Sls8UyMXjTwP1DLIf ARY2ggT+j2u8C9pRX948LfMInMEc+kebIANR2VxofNWztTIVFWgC/vnBg g==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="181003591" 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; bh=af6DIvZP9uwEYOqJ7rzQ8/GGbA8dtXJF1aeQjsTXHbI=; b=eYZ+o82n3dJnqPf0xcDUeC0KpO6KYtrC0Fi+K/yanNHHFACzrBW/KOdLewOe3KtLxMrq66DeJM5/zY8fe0vU4cQLozNPKg2fIiAzX9bKuZ1Qo6vuar5KRfW+9gGwE/x3ELHWbucyFrJp8NPeN989q9DF7SeN9ji0i8pvOcNr0B4= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:27:41 -0700 Message-Id: <997d160549829f96ba47a9acffc90d235b20fad2.1526081108.git.alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0099.namprd15.prod.outlook.com (2603:10b6:101:21::19) To CY4PR04MB0406.namprd04.prod.outlook.com (2603:10b6:903:b1::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:CY4PR04MB0406; X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 3:N4blQZOl+N1/3/Rct9ACMIhd0Pm7jf1llKU1O/uMb/UGNlQnT7X9PD2Lnf0mfqB1ab7Xu5qgMdJlvF2nTDog0qzxrfrU0Z34RLTK2SWKh0UGxlK5Wrs7Ery1s/7LkvfsUqPecJSGK53rXj7im5HcCaWhK4RhsphfTrD/zUrqTchsh8y38oT2N1KL0bMRV/iWH+nZevoJ3xQM8HC7EtykNi1kMQI+G8Y3lhTryxCm5Bjfl6WBJngEj+9T0oPugW7x; 25:Y1iPsX+RqLB/79tv2KnvU9fZovB8jDbxHIHgMmLBaSdd3uzcNvx0C49iRa6eUUaubLaecdNxMvl043HFl6Ms0igGIYt69tYJIIsMhHLTmgdXBU6edzWa4EjZgq3+6jm24WvMd1qW2uf1IuhZ9p9F2w0VoUY15QlFdQsDOctSf9EFwg4RkHwfnidMlsjDHIp8dmQrh3FMtqfTYUfbiYajnymH3RuQDjpWRpN/FtCq8bprmTgWi8cIiNWQYmkc8s5Rhu0Y/41HNKfYc5CUfGU5fxgTSQ1rMgaXngWgVLIG6FtP3R950UJTba328zLSnoH90fLH1u5p4dQJ8QKNKIbpRw==; 31:plxrjC3+sXKoUDgJxbZHhNdvQorG053lc+Zo5hZFjPjLZ1lQE0PEj72mBe+Ojv0lQ8U354/gMzpfotPm9MKHxjckoKxQAB6YMO1xrx5L+7xQ+uTrsF/8wOXwimxyvpAa1ZFrlP+RHIiABdyh24bQjy9PEYHVrC7uVA3uuQhP7DiEiN4mN5xLER2HpEPkkx9YlBKCNIzkJMWtbvI7a0fJ2vty8RGp24L24cvtlYkbUHo= X-MS-TrafficTypeDiagnostic: CY4PR04MB0406: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 20:XmsZoVmiWnjOnExvMATAI1MBrpVVGdYvK//INR2FB3KEvHVTflA4d57Lln2z3LICIVRSUmeLy5W3f/7uPDTUr3c/guWQIUtOl5rph4bTDk82PbzxGZB0vkhTsWqmGM04Fug5zACmW2DStnawEZSZhBQCJXruvjsJFusaJFlN0jfKg9iDUJsA2pPH/iZmEB3HTKrMlwbkTGbbrOg00qPluwyUMoyOH5bkYB7bNIwQ7ak9cnK8Xc6haiu5XQLRjcRzh0EfFa9Qb46wMzKuYOX0gCXDeiZIQlrdbisnF/B6CcpKrOgKOevOjTsOZ8bcQ/jDxTPGAPO1f6Ez10MHWuu/N1NGP9jW68lGYFASoOxuDbJarzkzcUIUyqSC7byJbX7Rq5AL1BIIXB+dItWudUhRPM/2lP0Ktgjnq6xGlF1AnImdQl1oDsp9zZ9CxZaq41BK2lGQUmWydbyRzdu2cmuP1XR457Xgk2stdeZfik5s50OsSmT3/BVwDUxXLHM/jYGY; 4:+B2DN9+p2oLR3G5cje8TO9JnTEm3Wsj8AGAXB/FZpY1wdIQAJJ3HTbW3SoEQuutogTh2ovFzarBG8xySygSsY4d3RTOrBdYPXY6JdW5z6ctmUhG1Xe1FLM8183K1/bXfS+F/7uthLr+LtTd5sk0eH1KPnsmWuMIEooBY+Pd75X2XJnpz6/el/NAK0Gt5WsgGw1m1QnJCPZ2fF+sSxmxpoFtR1p4oLaUyN4+bWVjMCwM4JU89Gla7tczTCOLNdyuv/eZQDKyHOfZ5jxvoDmUzbA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123558120)(20161123562045)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:CY4PR04MB0406; BCL:0; PCL:0; RULEID:; SRVR:CY4PR04MB0406; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(346002)(39380400002)(376002)(396003)(189003)(199004)(446003)(476003)(8676002)(2616005)(2906002)(44832011)(956004)(11346002)(105586002)(3846002)(6116002)(2361001)(106356001)(81156014)(6512007)(81166006)(4326008)(47776003)(50466002)(68736007)(86362001)(53936002)(39060400002)(97736004)(8936002)(50226002)(48376002)(486006)(66066001)(305945005)(7736002)(36756003)(6916009)(51416003)(386003)(6506007)(52116002)(76176011)(59450400001)(5660300001)(186003)(26005)(16526019)(2351001)(6486002)(478600001)(16586007)(316002)(6666003)(72206003)(118296001)(25786009); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR04MB0406; 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; CY4PR04MB0406; 23:2xmUply+CIX9orqkZf0kfi7zv+KBz03Ur72qiXHRB?= =?us-ascii?Q?RN5VM5Kjy1r0BZJ4WYKXfg3pHbqCLOd4348HHz8k9IF1hiRQ2Lpsq8RvkS13?= =?us-ascii?Q?rMQPRFEHaOMn56eG4En8vYKxE0NvP9qpdi5QD9fWukk4/CQQ+f3wqEYtWFpC?= =?us-ascii?Q?aJwhxc3AX8VZSJeWSWdZhbIiLLakB24eXzAoE30uPC29poYHNE/cWB6mqoS2?= =?us-ascii?Q?tp/Kz9tdxN+DwE+1n3534V0KULxKc9Dn4w//0IcaAYUaCW1soGzALVXxSRPL?= =?us-ascii?Q?86jxuY9luWsWL3njku7XyTJag/qxEIzn+Yx8JTIjRLz7B3EQA79r58/lbmPM?= =?us-ascii?Q?QOpzgGA48q7+SO/gj6US+4fpvJqEMDmY9jQNe1u476lNEGumfeiob2gVt4Is?= =?us-ascii?Q?Q2ZbjMKeJsO2fhd2bR/AxJ5ezwz2MNMcE6MbnRCn34gbpuG1ldUeHGXZcd1a?= =?us-ascii?Q?xwq0+6J0RbYvWLGePUuPv6Evqd0++PnJS5VMfLbdo6Tolq7PQk5cc23j+ldW?= =?us-ascii?Q?sXLgmvrleEAznS+53h/F/ni6VGZXuTczSO1DJ5VuBtrGP5bPw1mi1tfvwm7y?= =?us-ascii?Q?P5HSsPgYdLY/LnMyx/BAHhOB4yRWAtfGRpx1rj6zhr9WEp5Tvs3xoqq8lc65?= =?us-ascii?Q?RDPxSZQrrB9xfGgtEXkHcVZECEuSPL61RsQV5wG7kZspVUM1VrlbpLfnTiEV?= =?us-ascii?Q?sb95TOT1b0YRi06JeX6snEWdqxtOb/2wYr2mDbF+UHn1bdEmu+c15PYEm8lP?= =?us-ascii?Q?VyMcr+8Lt2Qyv9iHUGxCiMfAzLyFqv983bMpYUxzvOfX0XyGY2LSrV9a+07s?= =?us-ascii?Q?jj3dRgAVVpJFnU23cJeXlqS9VFMX8UCEmkxIlNpuBx3uupAPiDMm8EMc2v8L?= =?us-ascii?Q?DqPi2xBzsHB9Q2UN8jfDItzLt4MEODH9vG+6uuwYFb2ouU4ZusyYlLCcwaso?= =?us-ascii?Q?Cr+wlJigSpAqHZ/l42uqEIVgOXkdgqo50bmR3vCPP/LoyX6UG1kYl31xZ5vz?= =?us-ascii?Q?URbHci5GOScisn467KKEHTuSU+f2yFAfQigQWulDwnYGhvoI3zO+oz9XCr9D?= =?us-ascii?Q?T9lElgV2wAvG0H5x1PiZNedBt68++L/b9V1Wj4sEWdXtRJwvtuNzLHtCIKN7?= =?us-ascii?Q?/BBmmkpMJp3avmZ9iVl9pKE+PX1WPVNi7YwzsTqx/Xtlt6m9Nbd+55syKX66?= =?us-ascii?Q?VJrMngwSxbkitLEDbxM7Ms6AbGaD0qvkbUsd8rdqxb+I0S/1nN3wLIQ7DNbR?= =?us-ascii?Q?BhLjYPx1GTeHLmHIKBSUZ8JZMuJD86abcNhz4jVddRjOR1oxtM043wOyDtxH?= =?us-ascii?Q?CyjynJ/aLlWYDQt7YqcPXvLRXaSUjfNdlFRF9rirAjU?= X-Microsoft-Antispam-Message-Info: YxCBYpEGyTN/fXyKkPHrYUSo+KhZG4tJUge3XCEv6ewy04/34F5/nJxzJwugvTqhuxUm30AtGGDTcNi/mmreMpLY+AOBPT3sDYPcjlHknBCuz3Y7UVDU4hJ4t8LWWWzRJz4K4n5mZcnbUttQqcZeQgSI0Mvsd87QfyVQAq+PqRUe5cnRH9oCCtcbgzQ5vhzn X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 6:nxPhrkYMJ4sjbPYoF96LGlCAdHqC+jylJcM8mCJgmtV72w84bUtrlcfRjhanplLCTh1XZtZUkPzzUMGGAY/IiJVkP3VjjnBKEJr/Gjx/2V01INnh7VaYbVvm7PKkSAOswkO8d+fpnt3oQdvrv6tjpSIcNZfj3Cbjxf6QQ3Ogj76lxquyLRP44aSsELBnG1MHXPWYYnH7uD2MJiLSNs4OagYA0XEuuYNja3RWzQWrPDSqIgChw6NRg85oA0fnW1M0ykOo88+n7yyElXiELY3FD1/9C7q1+M2fo6IwjNMY4dNRAixYjW/HCGaDWDxmL3/weMIJvq9xMmJDwah0LhXwQojVMc71KZThFfZsfHb3jSIIaJ4IZc4B1BGb6LRWEIWdcSdo9aXB67iSGRxvNPhypBxS0h5CNhj2hkwcpoiMkW2wDjCV7O7jjKn7ANNTZpWR9BGbEpDQV39ZOPy0J5IGFg==; 5:F52y6M+10DL2oDey5C5E7csaiOo3/5blPdgLoXiwngEVbt2IcWoCCJ78cDFRR/Jt31CFRVHsRyerC57o9TDChPpZ1VUfjiNLsxynGo/ahAP44QLgVdTBz13HxJodO079mOYDoGKAsJhn07mtC3M7J7ZYx8/Bq0nuOSwRUh5VpCc=; 24:z9offDSCaiF9o4lu0HGRCpikQCGWJQ+b1wjMyA5+dt9MIGHKSRXdIsrzuJM3urOzDc2cZdOLyFHmc/yJoZlllrJoHwFktJ5in4Adq6n9FkE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 7:mIvkMP4pwO3LRGOhgc2eYlwXUqoXeYoJ9vAoJSbQZEIb8rfwKh03THUflaiYk23NM/ybQq/osvwqU9GGzv6b0I8hmzOB0fOWsWlYi/1RoF8YZDNppgEZZOCvDzF1CXGJNI4ce0vehao21VC7H+JBVb4WNRTnW6+zuPK6Dp8dmyrhMNW6qjwMnkVZeLTyGB96+PdaXc8BXkbgwdrBAQff2sRFSE+XdlW9DXDX79qJaguAD3Gz3DWa511BpV1i6U7m; 20:qADI+gAFd1tERJBJiljKHJRJBmGZcRS3HgJzqVjJkfoNmgEYk72Xye2BTHjDfxQgS6pnhQofqQ9DD/dZ+WFoqCSSlhVIh4wdhTjtcisrfd/Ym5ypHBKnMmUA7n4GE8ChQOA01gNkgzA3g7LqJGzC/l44J3F5wt5qotPXP7NwRf8= X-MS-Office365-Filtering-Correlation-Id: daec4ed7-ad68-4074-6c45-08d5b796cfe7 X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:27:50.1008 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: daec4ed7-ad68-4074-6c45-08d5b796cfe7 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR04MB0406 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 2/7] hw/riscv/sifive_e: Create a E31 SoC object 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Alistair Francis --- hw/riscv/sifive_e.c | 97 +++++++++++++++++++++++++++---------- include/hw/riscv/sifive_e.h | 16 +++++- 2 files changed, 86 insertions(+), 27 deletions(-) diff --git a/hw/riscv/sifive_e.c b/hw/riscv/sifive_e.c index e4ecb7aa4b..0ab5e3ca45 100644 --- a/hw/riscv/sifive_e.c +++ b/hw/riscv/sifive_e.c @@ -102,18 +102,12 @@ static void riscv_sifive_e_init(MachineState *machine) SiFiveEState *s =3D g_new0(SiFiveEState, 1); MemoryRegion *sys_mem =3D get_system_memory(); MemoryRegion *main_mem =3D g_new(MemoryRegion, 1); - MemoryRegion *mask_rom =3D g_new(MemoryRegion, 1); - MemoryRegion *xip_mem =3D g_new(MemoryRegion, 1); int i; =20 - /* Initialize SOC */ - object_initialize(&s->soc, sizeof(s->soc), TYPE_RISCV_HART_ARRAY); + /* Initialize SoC */ + object_initialize(&s->soc, sizeof(s->soc), TYPE_RISCV_E31_SOC); object_property_add_child(OBJECT(machine), "soc", OBJECT(&s->soc), &error_abort); - object_property_set_str(OBJECT(&s->soc), SIFIVE_E_CPU, "cpu-type", - &error_abort); - object_property_set_int(OBJECT(&s->soc), smp_cpus, "num-harts", - &error_abort); object_property_set_bool(OBJECT(&s->soc), true, "realized", &error_abort); =20 @@ -123,11 +117,57 @@ static void riscv_sifive_e_init(MachineState *machine) memory_region_add_subregion(sys_mem, memmap[SIFIVE_E_DTIM].base, main_mem); =20 + /* Mask ROM reset vector */ + uint32_t reset_vec[2] =3D { + 0x204002b7, /* 0x1000: lui t0,0x20400 */ + 0x00028067, /* 0x1004: jr t0 */ + }; + + /* copy in the reset vector in little_endian byte order */ + for (i =3D 0; i < sizeof(reset_vec) >> 2; i++) { + reset_vec[i] =3D cpu_to_le32(reset_vec[i]); + } + rom_add_blob_fixed_as("mrom.reset", reset_vec, sizeof(reset_vec), + memmap[SIFIVE_E_MROM].base, &address_space_memor= y); + + if (machine->kernel_filename) { + load_kernel(machine->kernel_filename); + } +} + +static void riscv_sifive_e31_init(Object *obj) +{ + const struct MemmapEntry *memmap =3D sifive_e_memmap; + + SiFiveE31State *s =3D RISCV_E31_SOC(obj); + MemoryRegion *sys_mem =3D get_system_memory(); + MemoryRegion *mask_rom =3D g_new(MemoryRegion, 1); + + object_initialize(&s->cpus, sizeof(s->cpus), TYPE_RISCV_HART_ARRAY); + object_property_add_child(obj, "cpus", OBJECT(&s->cpus), + &error_abort); + object_property_set_str(OBJECT(&s->cpus), SIFIVE_E_CPU, "cpu-type", + &error_abort); + object_property_set_int(OBJECT(&s->cpus), smp_cpus, "num-harts", + &error_abort); + /* Mask ROM */ memory_region_init_rom(mask_rom, NULL, "riscv.sifive.e.mrom", memmap[SIFIVE_E_MROM].size, &error_fatal); memory_region_add_subregion(sys_mem, memmap[SIFIVE_E_MROM].base, mask_rom); +} + +static void riscv_sifive_e31_realize(DeviceState *dev, Error **errp) +{ + const struct MemmapEntry *memmap =3D sifive_e_memmap; + + SiFiveE31State *s =3D RISCV_E31_SOC(dev); + MemoryRegion *sys_mem =3D get_system_memory(); + MemoryRegion *xip_mem =3D g_new(MemoryRegion, 1); + + object_property_set_bool(OBJECT(&s->cpus), true, "realized", + &error_abort); =20 /* MMIO */ s->plic =3D sifive_plic_create(memmap[SIFIVE_E_PLIC].base, @@ -171,23 +211,6 @@ static void riscv_sifive_e_init(MachineState *machine) memmap[SIFIVE_E_XIP].size, &error_fatal); memory_region_set_readonly(xip_mem, true); memory_region_add_subregion(sys_mem, memmap[SIFIVE_E_XIP].base, xip_me= m); - - /* Mask ROM reset vector */ - uint32_t reset_vec[2] =3D { - 0x204002b7, /* 0x1000: lui t0,0x20400 */ - 0x00028067, /* 0x1004: jr t0 */ - }; - - /* copy in the reset vector in little_endian byte order */ - for (i =3D 0; i < sizeof(reset_vec) >> 2; i++) { - reset_vec[i] =3D cpu_to_le32(reset_vec[i]); - } - rom_add_blob_fixed_as("mrom.reset", reset_vec, sizeof(reset_vec), - memmap[SIFIVE_E_MROM].base, &address_space_memor= y); - - if (machine->kernel_filename) { - load_kernel(machine->kernel_filename); - } } =20 static void riscv_sifive_e_machine_init(MachineClass *mc) @@ -198,3 +221,27 @@ static void riscv_sifive_e_machine_init(MachineClass *= mc) } =20 DEFINE_MACHINE("sifive_e", riscv_sifive_e_machine_init) + +static void riscv_sifive_e31_class_init(ObjectClass *oc, void *data) +{ + DeviceClass *dc =3D DEVICE_CLASS(oc); + + dc->realize =3D riscv_sifive_e31_realize; + /* Reason: Uses serial_hds in realize function, thus can't be used twi= ce */ + dc->user_creatable =3D false; +} + +static const TypeInfo riscv_sifive_e31_type_info =3D { + .name =3D TYPE_RISCV_E31_SOC, + .parent =3D TYPE_DEVICE, + .instance_size =3D sizeof(SiFiveE31State), + .instance_init =3D riscv_sifive_e31_init, + .class_init =3D riscv_sifive_e31_class_init, +}; + +static void riscv_sifive_e31_register_types(void) +{ + type_register_static(&riscv_sifive_e31_type_info); +} + +type_init(riscv_sifive_e31_register_types) diff --git a/include/hw/riscv/sifive_e.h b/include/hw/riscv/sifive_e.h index 12ad6d2ebb..5cb19cd564 100644 --- a/include/hw/riscv/sifive_e.h +++ b/include/hw/riscv/sifive_e.h @@ -19,13 +19,25 @@ #ifndef HW_SIFIVE_E_H #define HW_SIFIVE_E_H =20 -typedef struct SiFiveEState { +#define TYPE_RISCV_E31_SOC "riscv.sifive.e31" +#define RISCV_E31_SOC(obj) \ + OBJECT_CHECK(SiFiveE31State, (obj), TYPE_RISCV_E31_SOC) + +typedef struct SiFiveE31State { /*< private >*/ SysBusDevice parent_obj; =20 /*< public >*/ - RISCVHartArrayState soc; + RISCVHartArrayState cpus; DeviceState *plic; +} SiFiveE31State; + +typedef struct SiFiveEState { + /*< private >*/ + SysBusDevice parent_obj; + + /*< public >*/ + SiFiveE31State soc; } SiFiveEState; =20 enum { --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081425032301.5369428656247; Fri, 11 May 2018 16:30:25 -0700 (PDT) Received: from localhost ([::1]:54282 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHUW-0004og-5k for importer@patchew.org; Fri, 11 May 2018 19:30:24 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51136) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHSN-00047q-53 for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHSI-0000dH-81 for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:11 -0400 Received: from esa4.hgst.iphmx.com ([216.71.154.42]:3414) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHSH-0000cR-Qn for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:06 -0400 Received: from mail-bl2nam02lp0086.outbound.protection.outlook.com (HELO NAM02-BL2-obe.outbound.protection.outlook.com) ([207.46.163.86]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:28:04 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by MWHPR04MB0414.namprd04.prod.outlook.com (2603:10b6:300:70::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:28:01 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081286; x=1557617286; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=af9kLmlYBYtcccgqOI8zOcsxxWhvMQ0ttnKsJjSFzHI=; b=EXyHQXp140CoFRlkQeD81RiebHirAv8d/Gw8vnPkA9qeZD4MSiX3YG+0 akMgZrKMguxHuAeo3sJKdhm24SRF9Bglpl9c4ZzK0IbJ22HyrsN73fH6L rvLTjCbNTKnVTeIv33IV3PmleOJ6V4h2iBlwUEnRps9298k2zQjy43OVx Qs6+WWjbs6M/5sW//8TK3Ty/kAG6W7OFW8lZgAsACzkpj28VVc3UxTRTM g5c8J5xJqaAg3FMY925vA+3RB1NiSuTFG734VJtipXIim1VLTbd7647B6 KhlJElMZcHMEiR4ZAnLdWGpU13RSBeiazbEYiliNmhDC2CoFDnJkAkgIU Q==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="77724164" 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; bh=lo5s6KdRWb/8qec1PahUmclIyBIm0rKhtz05TlEfFWI=; b=LFXsHF6dvgW9TYwKgdqvcttfHkLTLtvhmu+OjyYnZYEzWfIT0Uj5lZPYqGeHk7WcDeSU7uhwsjbhyP5J5JL1UbHrCUxp45NAycKhGjAYHiOxaJ3afyS6jhiq6UnoUZjWpBZdlGshGPl6D+kd2rpk33vtWR4scsf8xSExNEJU2Jg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:27:53 -0700 Message-Id: <61fbecc3421c79260ffb8e9f618290d737d78929.1526081108.git.alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0081.namprd15.prod.outlook.com (2603:10b6:101:20::25) To MWHPR04MB0414.namprd04.prod.outlook.com (2603:10b6:300:70::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020); SRVR:MWHPR04MB0414; X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0414; 3:kti3LBX2/dEqgYQlnQMgPbzktFIMwiRAgEDvZNZFXx1gpFMwTETyEbNQBvjndI6U6xlvPDvOMCVT69wkztePoHyJRxfKWYl1Ad6Z0LuyOlPqemXHwh6hRTpWLinbLbsSrs0aW8zUb8coVTWFQe5sz9WyDMQXvwvKltdhAFai34xTH0gll/QIIr65HQT1z6oDX4ay7m9Idzz6f3PRI4yaBj9lqbCC5lmqn+5CtddnSUThT4JypafZtLy9l1aX2AEk; 25:KwBgWbTJVLmsB8KrFBE0CuTeh06W3oW9KRK3moZPsWttr4i9xOTxke/DP0wbNmVS8tcV40xB8exY2QMiCb9LLuNVRJSbIGFjVu8ADcHwi1pUl4XsMPXUUScQ4kQdsFeH7bolzdQZ+WaZjC9S9DNMW0jkgMhvrfCX1iH/GfeWz2+QuUoq0c7EGRSq+M+r1Xro9gKxfumFI658L68xQZnT6eI3NhmBGJMsH056iDvdhAzepvdjb0vmLJECu95IFIY8DrsJkU+cR4FxfdksDrA00dOw1OHqofME+6i6YUz8oHfzZqQuuWPJobXzfqlHRCSFoj6FomkUlErwHMqqHkowCg==; 31:tF79Y5PKNQa3EXV9MdRr+mHzqrF0pND+uJ3ftMQcjgwuMy/mwMUaiYqaYtEBAvXH06PP01/JiXJg/V+AS58bkKyDhsFr4YDDKPYcyKHevp711s1wNA1k9q6hiSfe4DJ1nRjY4kMin2eDvAtUB7hDbMBrqxSUgJuNsokTS4fhq/bJEi7yK7C39PuN4nuQkf6Jvd/GHVTxDLq4cLS0wIyvKi/UdJnr8RCcUtNdM9fsuPQ= X-MS-TrafficTypeDiagnostic: MWHPR04MB0414: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0414; 20:w8NnyL+3dJi4P5tumDa6q5LG/IUA1UExJQ8FzFfDBUk1iurRGj3oF7BNT3TwSEQMEVnXVplNBc+2GNv4IbzWurCLGijrcRdmudIspuKrkREWUE3q3h32DOWG8Pd8MKpExxTg23dBeMGdntJkYx290ccuWTUAf1UeqoyBeQ2xszVfv0HqWEGM3TPkRpNKuMTbT29AhxQqIXTWd/I85ptzCFUsnmsQQg6ImOV3kxFDpeLAsKkImoFog+XU8n/HYZ3IBtxh0YHhPimZQsMngXeglH9pFL+wLL93iQXGh0H7cbPd8B/9iR92MgnI7TH2y0ZLxPB9Lt/66FjXRo/9x2OHM8s6Q5r3c5rvnIY0l7vVmW+l5Sv82KcUnZW3iA7YSumH+7I4WA6goFdj/RoKAOqRTQfeaiQ0MkPRsPsD6VRB71eJgGUmdB2SnRyOIujbUSTAzd1oqibrAocR1e6lYjG6Q1ZhkUN73oojViRXZ8vmbwmCrtJRaaM0jgyh9uXmfp3R; 4:xEBp0of+71EU2Z9bXVWEsU93n4XzuA1q1elvUnN2UD12e5pROLVqWPKPSUrEsCxJO44W5pPGz3IUFmedliNg3oqLJmsaUanom2cVwmFYv//7n4eSvX13CpE/cE0E2r+79EJ0i4qflW7XtdUZUzyQciSx9iq9nE55XF6ZEFSLtvhWS/RWfrLX5f0l2En+VRPuPiV5tqIm3qlz+tmPMItt8tprMFSpXsiP/XoDKoU2NDeV1h3WfOdYn4OCKZZXpvSFlKXXdEOEGzNTsxeVmBc27Q== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(93001095)(10201501046)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:MWHPR04MB0414; BCL:0; PCL:0; RULEID:; SRVR:MWHPR04MB0414; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(396003)(376002)(366004)(346002)(39380400002)(39860400002)(189003)(199004)(2616005)(956004)(81156014)(50466002)(59450400001)(105586002)(2361001)(575784001)(446003)(47776003)(8936002)(476003)(81166006)(386003)(6506007)(2351001)(11346002)(16526019)(186003)(305945005)(26005)(478600001)(23676004)(72206003)(316002)(66066001)(486006)(39060400002)(106356001)(7736002)(4326008)(86362001)(6486002)(6512007)(76176011)(53936002)(44832011)(6116002)(6916009)(8676002)(6666003)(97736004)(52116002)(118296001)(68736007)(2906002)(25786009)(36756003)(3846002)(50226002)(2870700001)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR04MB0414; H:risc6-mainframe.int.fusionio.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjA0TUIwNDE0OzIzOm5Ld285VWlsbktRSkMrSzVLU0ZQRkZtWVpR?= =?utf-8?B?MEVIb0xtSHpLMFBkWmdta1pKc3JEc0s5aURvaU53aTRLWk95YTNoSytqNFBn?= =?utf-8?B?c0VqUUtqN3pONGFVOExzY0M0Y3F5RnozNUdmWFhQd3lkZWMxZ1BUVHg0Ui9V?= =?utf-8?B?c3RVb3lsb2ttWXg4b1FKRWpJNjkyZUZ4REFvUmkxdDl6RUdVbG56dXkrY2ww?= =?utf-8?B?Mmd1S25NY3c0ZnpjNUJTb2FhTEd4ZVhNUDd1dWxPTXVxUUZQbHZlckoyRmkx?= =?utf-8?B?QVZHaWg3OFcycXFlSjI4TkxTc0J5cS9ia2dDWmNXanYwem0vcEdIZWorWVJy?= =?utf-8?B?WTNnMXJrYTliMVJyT3hQdS80Y2xVeTV0Z1JiVXJmbnFBV3pIVFJyb3BnWlp0?= =?utf-8?B?UDhJbDZUbkUwNFNuWTFwTTNjV0JnM2FtU3RSaGMvZ2U1Ujh2bGpqYjZzNm11?= =?utf-8?B?U0VUZjdFWk9SWWlJWnJ5d3hnUHdhWHlYQXJ4bnNUUzdCY1lzZnVTWmNTMlpR?= =?utf-8?B?R3paSWxVNTRJWGhVNWxoeE1KMG91Ym9WNWVIWDdPUkppTU1rbFRYMEptVUtH?= =?utf-8?B?Vk0zbVBYc1ArenYzVUJ1K1BkT2twM0hXdGlZM3pJamNUdUk3Ni9XUDhzem9n?= =?utf-8?B?aTBHSFZRU2R0YTJUdjhlQ1M5MDRvVE9YSUhVa1dtWTNNZ011a05IZGw5amt0?= =?utf-8?B?bEVYbndvV2RqMlUrMHdTanM1Q0FoWmJPTHBhRGY1dVdaOTkxWTF3VWo4Z01Y?= =?utf-8?B?SVpaOTNtNjlmc3ZnS2EwSnhhR2lKNnFQdGNpalFQb1lXdmVaWXZ1cUlpOHha?= =?utf-8?B?Y0pqK00ySUp5ZzRMSHpKdWFISkhiTVFGbUtIZU9RUjdYeHZxWWFuQ2hPczVC?= =?utf-8?B?Vm5iUW5VTXJDdGNtSHFLT2s5a2JOTVFrSWhodG9oZERnWFZ3bE9yOElCRmY3?= =?utf-8?B?bDR2Qm5YZURrb1l5OURFWmVydlhadUhWcnBCb3ZLNm4xWUJRUklUcHlOZ1lS?= =?utf-8?B?aVM4VUJ6Sk1pVXBEeUd2SnVHVHZyYU9aTG4yRGx6SGlTcUxWa3FtL0w1Y1pS?= =?utf-8?B?a3dPS0J2WmUyZytOZit2NnM4ZHpHZTBHdHQ3M205cGgzZldOV1RkdG42R0to?= =?utf-8?B?bFJxWEVWOWhGZ0JEeHRDN25WRkluNTErTmRHdHV0Y0dpM0RIdjhDU1d3SkFs?= =?utf-8?B?Vm5ScDM4eC94aGh4WWljNXRPU2xLelRmZVkvMEtieCtURHk4NkJWbUZhUVFW?= =?utf-8?B?ZkdNQ2ZtcG91eHFVamxWV0tBUS9kYWdjZXh3SFhZQTc2VU5GR0FCU0hQdjJo?= =?utf-8?B?dEIrNDU2b0RDNEVwbDV6Z0w3WG9VNXFzQll6bUw5K0ZrSTkzcG5zYTRta1ZD?= =?utf-8?B?MEJvalFhVEJnUGFWRERQcEFqcjZpQUhrQmF6TW1UMUM5Zk1pQ2FNNDlDZUVR?= =?utf-8?B?Q3h1eC9DcUZkKzRuVVUxeDdVakhQVktoNC90c3c2ODBTY3dYczR2Wmp6ZXRF?= =?utf-8?B?dXlTUW16S0lsRk01R3o2ZlNJWEMzc2ZsaGN2ZXV3QlNnWldaKytpZTFWWExp?= =?utf-8?B?R1J6VWV6OUV3NmpBV08zejFmNmNvbXhuaVdhMlRkelVCOVRwTWZ0RlhoeGNY?= =?utf-8?B?YnVRaERLRVFhVkpMUzU0MjJ3YW54U2NTZzNnSVZBaGhJSlFHWXJlc0kwdGNP?= =?utf-8?B?azkwLys5N3FUZmdMTVhkMHgyNHVYdTZpRWNqTVloTjZiN1VwRG5TZjZHcTdL?= =?utf-8?B?bjFSeE1lZHl2Q2U2VXFLTzdjS0w3REs3NlFNUGRMT0lmWUlFMVdreGZmRGp1?= =?utf-8?Q?3foW0VPgGfbd+?= X-Microsoft-Antispam-Message-Info: n2Lxt8XBJiltbVGqoOafjwPNLMXY+/7QaYB3akkj1kZU/LCOwC5MkKLmK+q6WUuekqcgD2LBZkWxhSKHQbYJRoegZXzHya2upwtV8ZxJcdUd0XnU1C4bqhT7ycUh13dvucTu68HJaDcgfDDk5xbm6H3YzjKHaTg6v2w6IkfKvHyIcDAWOLnNC5ocuRr+2N8M X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0414; 6:5nmNIl7BqxPtTYqaUy8TpOvF+wXLUPSLxpZeGldIPibRBrlcRhpHfv0HGYgHVCfPrhHMt+v5LPKpwk7bEOkrgivPyEZRWWfG+azY0sGckPEYjMCsohmAF9m4wGNLsqHcdhvWGe0daGr80RpKAQAostiBxah0458yGf1jrc7TGtpqEC+MpAnVdtrkAUne0BLvOLS+fa9oLJ0x8kO8IAdowCRkEaW9PkkFfHQAoRLupfPpiMbB6j2x4yaSJdISepSvNq84twTaChtZBU+ySpnUm/C1PYaPdHVRDeifVCPpBnZFwjH46bH8mtKwgKlAw4wQQDr6tLCJZK0WkUqHVMpZfhi6r627mYufhaMLWcYFrgKcXWdlN5DC2kzEyDTzdZqMy6ZhjBC3NxsbGBYHWA2ItEVtZM/bqeai3ZOxmqF1GTIAU5lNWsNCjZnmmXxlBddm/QH69yX9itqicNmF2ywStA==; 5:oU/+YdqX06JInaSrxLMa/OKZWXbyVR1olQA4Ffgjy/yiCHNO5lLZPXr1wycKRny0UYiMywKKNyqFqW3e1eYoHARrZkD+JAryVXhyRw23UNXzyx/kVNzWJBIqvxFmghyAqXVHcaOnr+ju6X+ZIFoWpGpm5Bzvov+L1T8iohUDaus=; 24:LXgwOLLzSb6RQmoWjiueU5xAlxhw1FKrr19KXSWCiV2n6wdjrKtEbSXUhm739Yb2rTF2T08okUUwNLzdjoBXzV7ZTsVDubEtTOiqUbgnZB0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0414; 7:b2KDPfaeDD6VG0fj7do2T8V3TS1mbhdDMylVdAVRYUKy6W5QzNbxeKy1DX5cQ84P6kBsBB0XzBZVPzOSRz4ak6Hc7ypKwxOvX2R+VpG5yJmakJ2xQrhZcQJC0kPyrbAoJIFfDno9gebIvCkfuohfvIHAHH8LM3KY4NnAa/AGjiqpIfi8Wmmz9jmv98X7qBtGJLAEJ+voILFyCE3nkjk0v9+JFd7nSqyvCZTTVZx4z8TKH5Mcsxt/uJa3yRnsXP6+; 20:CWezXEPMQFK8DozX8xBrNxgd5Z2cXwhzaG3gnMYzeP1R5U0fifwr8zZc4kWOMn+oXaPysL84e0Qa2YcgHkPMVVN6xrd5uVPYio+e8O+djUTUSDccEaffI1V8hZ/tx6sXYwrxHQJWZZ4KSNi/7H88XaUwA8kkdwFL8wxeOYPNzAk= X-MS-Office365-Filtering-Correlation-Id: 4dfcff50-759e-4006-6745-08d5b796d6f6 X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:28:01.8493 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4dfcff50-759e-4006-6745-08d5b796d6f6 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0414 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.154.42 Subject: [Qemu-devel] [PATCH v2 3/7] hw/riscv/sifive_plic: Use gpios instead of irqs 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Instead of creating the interrupt in lines with qemu_allocate_irq() use qdev_init_gpio_in() as this gives us the ability to use the qdev*gpio*() helpers later on. Signed-off-by: Alistair Francis Suggested-by: Philippe Mathieu-Daud=C3=A9 --- hw/riscv/sifive_e.c | 5 +++-- hw/riscv/sifive_plic.c | 6 +----- hw/riscv/sifive_u.c | 5 +++-- hw/riscv/virt.c | 4 ++-- include/hw/riscv/sifive_plic.h | 1 - 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/hw/riscv/sifive_e.c b/hw/riscv/sifive_e.c index 0ab5e3ca45..a0e9d500bc 100644 --- a/hw/riscv/sifive_e.c +++ b/hw/riscv/sifive_e.c @@ -190,13 +190,14 @@ static void riscv_sifive_e31_realize(DeviceState *dev= , Error **errp) sifive_mmio_emulate(sys_mem, "riscv.sifive.e.gpio0", memmap[SIFIVE_E_GPIO0].base, memmap[SIFIVE_E_GPIO0].size); sifive_uart_create(sys_mem, memmap[SIFIVE_E_UART0].base, - serial_hd(0), SIFIVE_PLIC(s->plic)->irqs[SIFIVE_E_UART0_IRQ]); + serial_hd(0), qdev_get_gpio_in(DEVICE(s->plic), SIFIVE_E_UART0_IRQ= )); sifive_mmio_emulate(sys_mem, "riscv.sifive.e.qspi0", memmap[SIFIVE_E_QSPI0].base, memmap[SIFIVE_E_QSPI0].size); sifive_mmio_emulate(sys_mem, "riscv.sifive.e.pwm0", memmap[SIFIVE_E_PWM0].base, memmap[SIFIVE_E_PWM0].size); /* sifive_uart_create(sys_mem, memmap[SIFIVE_E_UART1].base, - serial_hd(1), SIFIVE_PLIC(s->plic)->irqs[SIFIVE_E_UART1_IRQ]); */ + serial_hd(1), qdev_get_gpio_in(DEVICE(s->plic), + SIFIVE_E_UART1_IRQ)); */ sifive_mmio_emulate(sys_mem, "riscv.sifive.e.qspi1", memmap[SIFIVE_E_QSPI1].base, memmap[SIFIVE_E_QSPI1].size); sifive_mmio_emulate(sys_mem, "riscv.sifive.e.pwm1", diff --git a/hw/riscv/sifive_plic.c b/hw/riscv/sifive_plic.c index 874de2ebaf..a91aeb97ab 100644 --- a/hw/riscv/sifive_plic.c +++ b/hw/riscv/sifive_plic.c @@ -435,7 +435,6 @@ static void sifive_plic_irq_request(void *opaque, int i= rq, int level) static void sifive_plic_realize(DeviceState *dev, Error **errp) { SiFivePLICState *plic =3D SIFIVE_PLIC(dev); - int i; =20 memory_region_init_io(&plic->mmio, OBJECT(dev), &sifive_plic_ops, plic, TYPE_SIFIVE_PLIC, plic->aperture_size); @@ -448,10 +447,7 @@ static void sifive_plic_realize(DeviceState *dev, Erro= r **errp) plic->claimed =3D g_new0(uint32_t, plic->bitfield_words); plic->enable =3D g_new0(uint32_t, plic->bitfield_words * plic->num_add= rs); sysbus_init_mmio(SYS_BUS_DEVICE(dev), &plic->mmio); - plic->irqs =3D g_new0(qemu_irq, plic->num_sources + 1); - for (i =3D 0; i <=3D plic->num_sources; i++) { - plic->irqs[i] =3D qemu_allocate_irq(sifive_plic_irq_request, plic,= i); - } + qdev_init_gpio_in(dev, sifive_plic_irq_request, plic->num_sources); } =20 static void sifive_plic_class_init(ObjectClass *klass, void *data) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index 26155e932d..d1008c42f4 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -320,9 +320,10 @@ static void riscv_sifive_u54_realize(DeviceState *dev,= Error **errp) SIFIVE_U_PLIC_CONTEXT_STRIDE, memmap[SIFIVE_U_PLIC].size); sifive_uart_create(system_memory, memmap[SIFIVE_U_UART0].base, - serial_hd(0), SIFIVE_PLIC(s->plic)->irqs[SIFIVE_U_UART0_IRQ]); + serial_hd(0), qdev_get_gpio_in(DEVICE(s->plic), SIFIVE_U_UART0_IRQ= )); /* sifive_uart_create(system_memory, memmap[SIFIVE_U_UART1].base, - serial_hd(1), SIFIVE_PLIC(s->plic)->irqs[SIFIVE_U_UART1_IRQ]); */ + serial_hd(1), qdev_get_gpio_in(DEVICE(s->plic), + SIFIVE_U_UART1_IRQ)); */ sifive_clint_create(memmap[SIFIVE_U_CLINT].base, memmap[SIFIVE_U_CLINT].size, smp_cpus, SIFIVE_SIP_BASE, SIFIVE_TIMECMP_BASE, SIFIVE_TIME_BASE); diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c index ad03113e0f..bdd75722eb 100644 --- a/hw/riscv/virt.c +++ b/hw/riscv/virt.c @@ -379,11 +379,11 @@ static void riscv_virt_board_init(MachineState *machi= ne) for (i =3D 0; i < VIRTIO_COUNT; i++) { sysbus_create_simple("virtio-mmio", memmap[VIRT_VIRTIO].base + i * memmap[VIRT_VIRTIO].size, - SIFIVE_PLIC(s->plic)->irqs[VIRTIO_IRQ + i]); + qdev_get_gpio_in(DEVICE(s->plic), VIRTIO_IRQ + i)); } =20 serial_mm_init(system_memory, memmap[VIRT_UART0].base, - 0, SIFIVE_PLIC(s->plic)->irqs[UART0_IRQ], 399193, + 0, qdev_get_gpio_in(DEVICE(s->plic), UART0_IRQ), 399193, serial_hd(0), DEVICE_LITTLE_ENDIAN); } =20 diff --git a/include/hw/riscv/sifive_plic.h b/include/hw/riscv/sifive_plic.h index 11a5a98df1..2f2af7e686 100644 --- a/include/hw/riscv/sifive_plic.h +++ b/include/hw/riscv/sifive_plic.h @@ -56,7 +56,6 @@ typedef struct SiFivePLICState { uint32_t *claimed; uint32_t *enable; QemuMutex lock; - qemu_irq *irqs; =20 /* config */ char *hart_config; --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081638181305.5644894005974; Fri, 11 May 2018 16:33:58 -0700 (PDT) Received: from localhost ([::1]:54446 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHXx-0005Y6-Bj for importer@patchew.org; Fri, 11 May 2018 19:33:57 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51218) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHSZ-0005K5-45 for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHSU-0000kG-7c for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:23 -0400 Received: from esa4.hgst.iphmx.com ([216.71.154.42]:52683) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHST-0000jd-RF for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:18 -0400 Received: from mail-bn3nam01lp0177.outbound.protection.outlook.com (HELO NAM01-BN3-obe.outbound.protection.outlook.com) ([216.32.180.177]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:28:16 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:28:13 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081298; x=1557617298; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=uWfD5rGNHZAtuDMuKjgYnKJC+ptXOpA2tRFGtGf78KY=; b=K7jytq8qpxOTlOHkm3lvHQsSwu9v8nm/wQcEhQmUHuWxSaiCDPnrJ49n vYp88l8dnw64LwEKz4zYgEQJrn6d1u/anQPtOvfx1tmMtwYPBsRpkPSsp b8M92wcHclOtC06B72mtEoRoTgTVtr1NAUGiH/VuwPVgNKZ7jMYuCDe5M z6h9038XA6PZBqWbyueTFYjpxQoU2lmTHmOH8vmhaYLT9HKcBrWceQJkm Dynaa5TLLPakeTXSwGSAODjh6san0KRqrf/2/fSpVc+1IJwSAUfkUUKzB jeFVOjVIlJZGwe+RmSb9y0IGwCGJHLULD+Ko/h+DiJvLxN/g8o/QtLT/1 A==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="77724171" 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; bh=jAmQHt5HjTcfNpxLDL/yw+TgcqG+clDZ/fw6U6/52lc=; b=lnKivrnhWKIo4H5mtNSr+oOyDC9NOwur8nfFvWE70WpMYALXnckdLOiru7Vr4BA2apAyz2YMw/psjWlQcMv08pan1qx2Yye2geiOqop0+SDnlEVaoFVMupmKBG1oeAHkIM5wFIbrnpH4wnJnQt1ajCEDjBgqz/aX02EaVnzdCXY= From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:28:05 -0700 Message-Id: <3d9359522231c0ec6542f20af21da3cdcb88f3a6.1526081108.git.alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0073.namprd15.prod.outlook.com (2603:10b6:101:20::17) To MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:MWHPR04MB0416; X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 3:JlBv6sGNm5yWJw2glbXVNKudvQ0PJc9EEoqf5v0Edsh87XFG6uTgmh/ZE/6uHXvohB8iuimsGQqOvHlMfh4mIlA3Pi/ju9DtdXYgVzqoXYUu3VUJ1mAl0fE9E3uR50bXLUeGbBHRCwL8MyKe5zD3N0Dfrl5vhiAuJQFDzPPLJIlyzARf1vmbmcZrRtFUCx9En+4G6/AmOBo4mUuVB0c6W6IiUnIf9Mo56oQp073LzoMFvii8VK0x4XYQB413tmzz; 25:ZSYbMlWgEn9eaiT50zhk5GVZhWZoL8Na0TGfPe5f6fH9DBbn4kyBW3Z3d2d0vtv/6zUwHqti/fAxEwiglwxeNKKu9N7Rcq+9kMCt//q/vjuR3vI2JZjnYqYwbD65UnziRVxwJsW2nGcpttmlKpu9aFvGXMjYLHio+YSfXqV1j0D742pqaDt0pWWoe01E1Ti66rz1Zpw0LM6yCT46q0eK2F0wLhKdKaHwbJQ62cJ0PL6S3APuM7au0XxUhUWlz81e4pCUAWqCZ/eQI4p37xJAsTOYDE34z5xHoGsWW52eKB24gfI1ccUvSnKTbbNYqRGGCN0VVULQ18jPod4XyWkXWw==; 31:m2+FsF/paqGIR74pLybQi0V5Km27AShFVnNw21NnKOIkpmAm5iQNeyK8+cyCCXWDxO5SVnLgwzwR0tFZa3WJCLB76TW5UmS+j5YjX6GeTstD1zQ44xQ7D+0jP0O+GWuNG4oPjJP9IwV3LNH8uJRIc0hG2fq5pFfqgvtA0cQ2TRNn+TXwKJ9euCSaKTdFhRlrfJAQIm2rkPaGgc/BPya0hunubnS7dCqewmZbvFxx8As= X-MS-TrafficTypeDiagnostic: MWHPR04MB0416: Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 20:pKYYnGRkwruezw2M1JzMk7a8fY1ILyzazHnwcQau/YjKCrzHsr53jUFathKwUY2sMgzdBk9kHJpcygXie+H9aldtl7kq1XTQghVgt4UQOwgAy3WQev3E3Y+RKTHgz4zBoYaJl8y4zholh1aEzhkZ4j9sZwawcekBleR1c2KmBA+/ebo8Yyawz4C5B1b3FRX+CBZd63znuYDKxkJnxnO9tiiALekFB7mjPLs1hnqUlly4OdFwFYHBOwvqiDVkW0k9ySbBR/2erbLy6ZBQ1eEsFwQxvEZ4h1prmXNbToY80zqq9K1bTMhTGhcB0jykoT53TQgaHsVp4Fq03G7hLMAVLJSTNAUdDeAiTeJcmuFdjZhY+lk6KU+SvSUqCN/s5isssKPvq/WHyiPpKc161gN3JYw+GdzIgps3+DGoI//JSkElcfrS5n6Kq2m+wTpq0jh8+58eP9FxO9Qen5iTetydzwJ/98oVpYvltj2UFB5MNpVRSZJ6Cl8Sq8Mwyp4pRVNk; 4:LJbb329L8TnhG51SeAQQJs183Rx7iiJF+fJQzZYduRo+j/djm2tNgYGZdZWiN/TuZDKw6PtfZb0uwvKe2yX7LBULH+FzPhPx/IXeB4HttJV0iFKfZV5ffPBVocWyOtHSng9mLODwpRF3geP5FLYBVMqsjnOhxSJ8NozPhQykq9QPxIFAW+vW7kCyHdNgllnh6cZjnkUmOlyNYvT1XaEd0omkeCdIOqv0N2toCFHtYUSF2GmBQlO0q3mttgk9mla0NlQSY7m9XDgWcS3TwSeVww== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(3231254)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011); SRVR:MWHPR04MB0416; BCL:0; PCL:0; RULEID:; SRVR:MWHPR04MB0416; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39380400002)(346002)(366004)(39860400002)(376002)(396003)(189003)(199004)(6512007)(53936002)(186003)(386003)(59450400001)(4326008)(446003)(26005)(3846002)(6506007)(6116002)(25786009)(97736004)(316002)(48376002)(50466002)(16526019)(52116002)(47776003)(105586002)(51416003)(16586007)(76176011)(8936002)(66066001)(7736002)(36756003)(6916009)(6666003)(118296001)(2906002)(2616005)(956004)(44832011)(68736007)(305945005)(81166006)(2361001)(2351001)(106356001)(81156014)(8676002)(478600001)(486006)(39060400002)(11346002)(476003)(86362001)(50226002)(6486002)(72206003)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR04MB0416; 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; MWHPR04MB0416; 23:TecmE0e8PoIcLrr6f/moZbqR8eMCwfVZz+YQ2YaG2?= =?us-ascii?Q?SF+YYpo4scLmaN3mq0s5F0nxB+kKKS0BMECpQshd9lRNn8UHfWXWMxclDUID?= =?us-ascii?Q?uvso9Cp05WlphgMoaZvkdASWyHa6DHglitOomVIoamGWy1oXaGiDTTPK2HrA?= =?us-ascii?Q?D7lB8lc4t35fFk1VL1OeLN8Ax5ZhLOSXigfmR9CCAHElWCMHIfVC59DvWicz?= =?us-ascii?Q?/HjgoP2bGRIwfJEaT99Degrpb2MJRaIYE9mbkODq9mjQAvdKIdatdDSj8wYh?= =?us-ascii?Q?NUDVjPf8Gd+CJls9FYsnAIXqnMRaoLHtUPmX+hvgZZb5DaRQ8M5vCL8EHWxC?= =?us-ascii?Q?pKft2m40zd1KKl3xAabLd+355BvcQp3wNfZgwmLvnpMlUKZ1wL0KBztcYhUA?= =?us-ascii?Q?HdJgAGJGI2+RDWkneXSGfopSLcz94XetGjLyvFRBuKtPqEm7HCw+k1l8WFzT?= =?us-ascii?Q?riBUV8ncbfFaRo9dYXQTXCJC5upj0CP5Mg9osFZv+w4NS+8zs6Vba0NjMQ4o?= =?us-ascii?Q?yT/ILANfk4VOOTevewjkh34KX1u25+nV2/geXURowsj7WquaGT7JYxGGb1K8?= =?us-ascii?Q?1+mlZGygYAjGVFNlflPBk/atGRCnCE4i8DhVB0QIpVC07YZnVjCxPqDotuZi?= =?us-ascii?Q?SY+I25oY+4BW0EHdCdkkJWdG0iXT9hWq1VE/+GLzhK/VFjUh2gB7FldNdN3V?= =?us-ascii?Q?1sdMQ2Wq57hVG8uI7ag/QyLEvJXXSevjW3rmGia14V3u8QMPS5b4Iqui7No2?= =?us-ascii?Q?TiZZeI9LMXZCbw3n2LY/ebV0Hx3iAbw1GFCOH/mr3oIFNdyFkQjtJ9U3srwc?= =?us-ascii?Q?wJatJFTPEqZnfryOXVRzf5JHyRtbccwkejTx4fibpnEbYrVHMwWz1Oovtttm?= =?us-ascii?Q?HzPAo/+YhaBh0/3M6jeOaid/s8COubtzvckS2VU7M+aQZSp8G+OmLSdZ22x8?= =?us-ascii?Q?Y0rbHFen34E11w/QiiMpUz41dOcxd07KaWktS3HxZXfMXFCGXMJbaGZpmeGu?= =?us-ascii?Q?gKUgum9Qpj3LmCBPrnJW/JdCjbL1FFdTZjeB6uKlqn+tfTNwsw6pm591bnJa?= =?us-ascii?Q?YXDqTTzJwbDgqICu9tJ6uyTGAIItnISkx8nrpgx/3kXOB9yGykNuOgOj6wBw?= =?us-ascii?Q?t/cT4dqktdT506HK0QdKawX+9RnkibWWgzV+CzMwDSHu27+xUipTjepcLnXm?= =?us-ascii?Q?QBI1TxKCV3LAx+bIvm7ehSnRnWSfy0PL3kIuXd+hv1mdkLvSdLihnm/eOFbS?= =?us-ascii?Q?AmEIDZgiB9IgsgfG49MjTF09RotLlHFtlaQcii7lX0ITjcbg0sUBOOcQkGBB?= =?us-ascii?Q?D/pZl4zqdC/GhS2zBnXZf1S4zsCQ+1NuAhN/9r9c+ul?= X-Microsoft-Antispam-Message-Info: ruI7tsHq3JQLsvTEqTH1n6C+UkOqQyfwSLa5JDbXdkQf4hOtisMdCcUQXKIr5Eo6W5E/N6o7iwemsymzrpmV1ZMUiktNDIOrTnkt+yW/XvEDuLFeB958KqCiE7QDx4guK3UwcbsJtT1FBo39VBRL76k8YgKTE7Vk5oGj5bB70xvlwQ8p+TQ11k0sJLgJCbO0 X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 6:yUzsgCh1SuhoWyNxzIh4yiMBPr53cJG0iUE0qpO48ZE3x3MUtFbTNOGR7yahynrxLIKdbTOAVlA+VI0EW4WFFxg4JSANqhgpRC4iGtXiZbApD8HMelh/jWfZwKE1usaF9to1V51vc5H9woH96qQp/bbT/5Arf39RLpvtkvMHTh00OU+eT4m1GPjoNLQxdHeQacjJAofEdmgbz2AQwyHc5Jp+HKGQSdyXXquSai7BnAYhlrFcXAv7RtUobm+yjWqIlA8xgJUWgnv+0B31LySFvi3UXApuKeg1H7LPRRIIfbgzcAoPSchIFAW/CqsYJL/z4SPgKpNFrWmrCZMW/6+WdWR3mbQTABKA8yx5ZloIyZbsV1EnCB/5zWfJOYVHY6mI2hZLqu93lETPsDn1CEup6Ef7FdxmuplxLvbs5ZsOB7T5I6EyZFuLQOsiE1Uw2Avy0kpYRKSjN3hN/Ciqya+Mpw==; 5:SYb5jCJ1oNUZd+r6pTEoOh5aOc0ynUCWzwV3cEyP0j6Tu/60iEB8VKUu9ODT/Xeqmm9xGvX0Q8KkkncbgHzp4i5SQQGGSrEsk1EBsu0JPcMT2KhuKMFavGd+9/fwK0l7nVhigfJMb+kNp74Ix6Zc2kPU4DtygfstMacW/KlOtvo=; 24:SH1UiymA5zrIlG5oedWN38h1X3CPwM1Jz3r9aioQ4da6CnP5NTNYHuID3rrqeUqylKkz2C2rhD636dqzVlGtxvehKlNTjednamyKaqPjO2M= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 7:umv5R5s9zvat6GPKgPyWKEdZErOlpoqHXbIG+5QfniI3B3sPJ7xM99UdT1CX75Jf1mn6OByMjHh+tTRWon1xsruVZa+YEMDexAR26dYwFwzl8zON5qzbnJiwPETtEIKe6cO1ac/1Re1qvAcJUALi4DA2vAJxYRzmaDFFr6GQMRm0zw+PYBpRbLynhiJF9dbeTbqPuP1maL8s/SYwWH/Jua33PIpUDX43bPfHRSmxAVhPNzGO309YSTmU9ztn1HA4; 20:RYwUA8h90uaXSLFjtLO3lf4Ui95wPedQXVexMHYsJQ4lCHQAXJOnrDcu8BTnubhpGpeJXXh4Ax8qF0m2ZCyNPgBPn7a6UxCe3LKGNScDTZayUJmAF1yjN3XocmlmNUwiLHANZvJOB19W/P6j/RQH6aKV7dB8cborQIcFvpNqEcw= X-MS-Office365-Filtering-Correlation-Id: 972e09e1-6608-4574-369b-08d5b796ddf3 X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:28:13.7943 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 972e09e1-6608-4574-369b-08d5b796ddf3 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0416 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.154.42 Subject: [Qemu-devel] [PATCH v2 4/7] hw/riscv/sifive_u: Set the soc device tree node as a simple-bus 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" To allow Linux to ennumerate devices on the /soc/ node set it as a "simple-bus". Signed-off-by: Alistair Francis --- hw/riscv/sifive_u.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index d1008c42f4..859f43c6f9 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -97,7 +97,7 @@ static void create_fdt(SiFiveUState *s, const struct Memm= apEntry *memmap, =20 qemu_fdt_add_subnode(fdt, "/soc"); qemu_fdt_setprop(fdt, "/soc", "ranges", NULL, 0); - qemu_fdt_setprop_string(fdt, "/soc", "compatible", "ucbbar,spike-bare-= soc"); + qemu_fdt_setprop_string(fdt, "/soc", "compatible", "simple-bus"); qemu_fdt_setprop_cell(fdt, "/soc", "#size-cells", 0x2); qemu_fdt_setprop_cell(fdt, "/soc", "#address-cells", 0x2); =20 --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081573251519.2539620091216; Fri, 11 May 2018 16:32:53 -0700 (PDT) Received: from localhost ([::1]:54423 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHWu-0003NY-Dq for importer@patchew.org; Fri, 11 May 2018 19:32:52 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51258) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHSj-00068D-Cz for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHSe-0000rY-GB for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:33 -0400 Received: from esa5.hgst.iphmx.com ([216.71.153.144]:50375) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHSe-0000qV-3n for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:28 -0400 Received: from mail-cys01nam02lp0050.outbound.protection.outlook.com (HELO NAM02-CY1-obe.outbound.protection.outlook.com) ([207.46.163.50]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:28:26 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by CY4PR04MB0406.namprd04.prod.outlook.com (2603:10b6:903:b1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:28:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081308; x=1557617308; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=T16c5ROWAEgbDaFYzaCUw5fWkFecaBmGSE4i2iDH8+Y=; b=QYRZLhG8ejVs4YofAXwiVGqGM/1G/CLaLM1ulZLfB4vh394yBzJvNHMo 4hDOQCFfJtw3uEUN6BcD+MOFohDkK0H868Uu8ugm/vlbSIquDn+Z9LHDI 7msLAAXC5PoOM5K1eBAwVaWeG42ZYKcfCYPA4GKbXx7hr5j8mw7yCILMh 6aE6z/vGlT19/xsLtJPO3GhYR0C4p2MK/izfnoGzh31kJrk1jhCMKaW1A +HG/XM9wQUxkzXJD0gVf1LLE4bRWOMOWvSYa2OZj9bC+nUMmakzXA3Owq Mr266kotIGMOxpXzjQGILXLx2OM4CmhBB7kTHzDbvg6UjfBs9QOCzU3vO Q==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="78010049" 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; bh=HXqUhR6nExvcAE4QUJM2bT2O8Qnu9xWyWw38tYge/eI=; b=Dij5j2Xd8gln6sR9tbg0t1XxkY+b2NVhaii7bFoHl8ktr9f+T80n5pzyJYiBrOha9ZZ/KpUseyYA2wJiStYi1E7Ftx5a53l+ly+LIGx+IYM01ce++7C3rTn0ZI/ITVGePRRnU3BcpNptC5V9HjSJ0szUuNYG5PvIo5hCry6gBsM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:28:16 -0700 Message-Id: <983ec72e6da807c6297e1bf12a8cc6ec02223c9e.1526081108.git.alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0089.namprd15.prod.outlook.com (2603:10b6:101:20::33) To CY4PR04MB0406.namprd04.prod.outlook.com (2603:10b6:903:b1::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:CY4PR04MB0406; X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 3:k4mCqmjGA0bKbl/Vs9hrL1jaoqUXjNFibtvc6y8NpWPz1PDKjGMllrejsQaZAFb/YSoc27LaRpNbo5IZOxBlirMWCzxrWknffOqA5wa8V5348u9iJeMqwdVuyO3HjBc3NpIYgLUo2h2TZGnMPlXyHkr6qKetdIjeE0S2FVK47GaP+mdBInrxWZAoqlTFpVQwtf9W2S+q56xaQwxEtFNnCq0FG/ZoAN7Z7SpGncZm1MsgoDToYbF3ysb3RH3m+m80; 25:gmZFvsc46L3myZCeJwyaK7CC9xxfbSf/sE1RG95lBfZNq3UYuPHVEICLhS9JgUMaxpRVc1uU9iiaOSFXypD3tG+kEIDjQvgqDyZsKoQYPY3KQ5zNnZ17IzEFWBYp176BrDMUF/01t+zl3yBrMMnKx7FeUpVsK4gKLn/BwGmAbd2G+nVgBpioPhpcwrbK6mKtCQT149YPdvJNSP/StBAcSPSpCvu/vhSordakHcpzmDTfqGNYag2zMhABCAgsyNH+dEFUu7fENtlfq78YjiytSNPmBOiSzsR/VTuq8SPimXFQpWhqNkjF/agDovwaQvURsvD6qd1Vj8B2x9zQLsuUPw==; 31:E608BPTK4uz3alYKWozXRElLNsG+76kxVhnQUWKRK0Gq1inSIMsYK9xjzBN7FZRMiO2slF98269jq/O4zWDqRfwoyCbeJNeOiuyALuQhAHbiDdp2FcB1Ytk7Ij5xCsSEEWJ+xDtJIsQmyi1U/wLlk6f0zKoKRWqyhIcEa+jRxBA/+ohjEalCD7FXkUH4FVA3YAoTyNuZFsKYY/NYMcVlKQDRSYXiolHnQHa8i9d0KKs= X-MS-TrafficTypeDiagnostic: CY4PR04MB0406: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 20:VSxHdaGCSX9mS4ZRC0XMWSm1PGmKPGZLXYxpoCxZMPNYlrFO20uYev1K5JJ1u4qER4Hcx16AzhaFjazz0EPQXn+CTS8X2H7vVP+/M917fJuCu+vBeO+pbLUKirItwNP8pToUGR3lbhDCEW0HH8yZxYrZCtoev/0R0VvKqrpFC8nQj2M5OsqOt9ktqQQuQTTDi9MpdflfgMAwqeg4Nc+YzaG2LSM+GQqK90E33FtXx4XlLJgrjO0cv+GVYC/KG8l8Tz/Ni15ELd7Rq3T0Y098t8HeMMQwKdllF9NRPSKcQOectU6wFvb+I3xWJQJW0uay5qhV1YmSh5IPtFUQtmauPj/dFi2CWOBvZgCSwmewIkkduWh4D+s4Ct4aNSuVyC0bOIA2tHWD5T1KDRIVm8XINPdr+LmU9fnxf/B828Tmp0t+fkDCV8Yx95v4l8SFPw4mfOOLPzyqVSvMLIhBgGdYnqC+ndTsFRlERCKOnQo1M/czsiFUQWmZk3NHciHsQVEd; 4:xNSAcDY0dD0lLy8YEFSNVN74n9TI9E1FLxBMS4nfCDnf8N/W4Cd9XdSod962jTHkg1KyEa48icVYGkhXIC4wR+oer66ZReFm0omTRoHa3yBdHg5Jf/oqfsGgvsxAA0boIEJKslPvx5uQzjvJwT72wZ926AD7G16l/M74+t96deNLIExpqeoI0dLhF9k+i8AYDatI2YiuIX1Hx2Q3cURuDkT+SR/bNL1u3CXcxTq2Qk5idZNrN0sBZQeAT80cyemyXeMULFSfFvgQ6Vy8HNdk+A== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123558120)(20161123562045)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:CY4PR04MB0406; BCL:0; PCL:0; RULEID:; SRVR:CY4PR04MB0406; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(346002)(39380400002)(376002)(396003)(189003)(199004)(446003)(476003)(8676002)(2616005)(2906002)(44832011)(956004)(11346002)(105586002)(3846002)(6116002)(2361001)(106356001)(81156014)(6512007)(81166006)(4326008)(47776003)(50466002)(68736007)(86362001)(53936002)(39060400002)(97736004)(8936002)(50226002)(48376002)(486006)(66066001)(305945005)(7736002)(36756003)(6916009)(51416003)(386003)(6506007)(52116002)(76176011)(59450400001)(5660300001)(186003)(26005)(16526019)(2351001)(6486002)(478600001)(16586007)(316002)(6666003)(72206003)(118296001)(25786009); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR04MB0406; 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; CY4PR04MB0406; 23:5wdZbxiPjLDKTqOwPzotdSJxsLrpL+/9suzRTV9cy?= =?us-ascii?Q?Ey0wI9Oh2B13+J7qe3q0dQ1eRRDvasEHyNSeGNCZYs47o07nPE/dLyzMRuq2?= =?us-ascii?Q?VbZGdTzC9LEbBM7gKL0MwfadDwFZNmeFnI5wYLZ0tkt7X8IBctYOvvcprMsx?= =?us-ascii?Q?SiWeVNoOX+8CSHEEOqY8dPc7TsJPKDn7DRqp6i+82WMTDFAHgIwROyKhDwNl?= =?us-ascii?Q?fakZgVfDIWn3hMaC162F26Qb3RXz+DpXT38NdTMDIJFZUaZ1tTTj0mzh49XU?= =?us-ascii?Q?32wqF6vEl/ZPy4wGk+lEq4Y7KwqePhjIzbLop7ITtYAXxhuO1hFup6W439lF?= =?us-ascii?Q?23IX95sqdee0gIoafT2Bu0QnSDT6mAbB89s54DxbX3oe8Eb8mFco+1SFFO1k?= =?us-ascii?Q?zXZfh6hPD/gF7/xXjX+7yZMWO6pT+RszWKOONaFTweoiy3kZCSPX/fbpfhzd?= =?us-ascii?Q?Dh8RIojszn3QhbmdHV21KdgrkqbDfCiFDvQ5SmMFhVGPLuugnApVD73bmb0D?= =?us-ascii?Q?l02uAUxfoZfWYQlnlSU4dHb7yeEJAfJUZrgnIXJybQ9v9Lv4Zu7K3okfFsjS?= =?us-ascii?Q?SKSynRlzAIFa3hufsB9ALGJegphYvLDB530AeCO5aWbsraylWc/zv4rZs0JW?= =?us-ascii?Q?h/fbEjAM+IawXz0DDfNM0nOKoFmnQ0CoA4A00S0ur10hdBYGmfV5q8eTS6SC?= =?us-ascii?Q?LbPdtmH+NAt1oQ/OKtWydU6uSbXbFPbkt1c2dBSLDtn/uoSWdESYnKlgF5Hi?= =?us-ascii?Q?63w0nudmkaGxQvkpe8eV2SjDEAzPnR2yRwKKTED/ZvmeEPMjF4QrNi/Cp3o4?= =?us-ascii?Q?fcXCnM+sEWcdDkFdVidV8CS+llLy5BJoRmLwF4C/0nJ2KmehI7cmxZFMHOn1?= =?us-ascii?Q?qagz1efKEb71pECCgveN42eMs/SlYMojxQye+akXHqE8vtrNINZdJ1PAWrSQ?= =?us-ascii?Q?BDzOt3F7hfi+s6DU4nhKL/81+GRnjhxwim27Cb+G4sggessupo8gaqUvbod9?= =?us-ascii?Q?oc/KBc1YelcPfsqKisEdV8fyoIId7FO8q/7Zyn/KTVABA1KCGiYp15BzLxDn?= =?us-ascii?Q?qkIZ7TFEGNhBosD0BW5jApb/UstYDV7W0QWTkfdzK9JHkEouJY3keVyTnpYz?= =?us-ascii?Q?YDqgcMB6O/6J7ye55ezOlUNkb55wGaWTnj/yyw9j3A/dgUQxoO+wX7PUv8Jo?= =?us-ascii?Q?0W2f6G0WyvVCyQfFn8lGVwCEp4kj5LmLIukZ5SQD9OTlSoTObeU39b8SfueY?= =?us-ascii?Q?p6umlo6AZWbeSRghG119AMXogg7gzv2QKMBz0tmIRdOu1O6Dgdl+D9VCeu5x?= =?us-ascii?Q?MRkXXntKhIh5tc2PrTPExZSQAzbWIpRI8BuF3BiWPQS?= X-Microsoft-Antispam-Message-Info: YC6vJl6QV6eAs4JaufW2TufgsEmLFsIjc9RndUJ8Dqabh2HMTgApfKpuJDhguNuv37gMQs+AYKWrX9hE1S9G1Mg97CkdRtAqqPBf5sB6fR7I/ZzEvsGoWcHOMjS4ONS1E4xauISlLgSytUVBhm2tdMOKDYtAJ7J2Jl/KY//gLgxyxXF1NKZIh15tRTIAjxAI X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 6:2OqN/V1Cyz7PNmOiBnyZWyOXG9xA2/9yTxZQBCux+IxhYaN4BMlbDbILRPfyM3NZ29sQOJsuX7XmHUIePwC46+REpHCopRB9mDUv8FKVjsaY45WTETITz9j7NlWct5yx6OEMl7Zsk27OGQJRvI2xgEkyiQmHEaJDU3ZFXc/OGGPXNdRtKmZOH7DABKVQlWGPLB/i3frFS7BOMeG13RuxyqcSO9Fqay9mIui0xyGNwNv4pNAo/BRETt1jotvulonWjIxyW9QIf2CuB5fRslYuZemogmUlGwdq9T6Ocr6qu47yu4nU8j6NBWNN9sWCWADTiLBZYSTDxOAI/j1SS523uQ6GgY2CmG8qYgMQSy6JisxbLT8kjQvqiqxsu9H+G0F1VBO/CnfMrnd+OgME2oVgNKb+Rsk8Fu1mdcQbQlsgQNfZ6vBIFoMs4jT5rS6aG1eL1JC6iWhMAxin5ndOAKOt5g==; 5:XcpGz6oCA++nnJZBEojCWqz0ZBKdwrf/tLMGOYE+kAjS/PxvYBlkJ3+0n9ycTdmuLdJ4BROPSwoa1UxnOPrw+PMrAriGYSJz3O0y1YCpesEg5PjGjmMm+/Dm+Z4fDxg3Y7L16NWyM9TSB6ZiZDdVPc9sGmsBl7yW8AOHbdR7kAM=; 24:dl6cZ+YPbrquY8QLHVhGuHAyFvGq31A21K2VjLHkDCgNaMFJHOmvqO4ZsPSU74QWrKVbTWHS+/XxrcPcAi2wW95rleV7OAUF3pZhwhjHc1U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR04MB0406; 7:IAMgXEjsvp8DrgJbtPV3RZ+xCFoTojdfYAEkM2LokBdug8NCuoSJB0G7GS12MSDA/DLXmJnJPSdqJJTdgFbam5HWWQ4WoSnNrrZefMQ8O6oem4Nc5g7u6CS4ZZcgGTzgA19RcSlqIaBRx7rKi4nS5/KIgtcPQ6RIWHBgN98bOfFBzDtq0u0pa1bxSQ0PQ1tYkXKM+KBs0qEGeNzNYViWMWhIJG6iDcq+z53v+//Zen+/yGiW+PT3TASipppKomoU; 20:6IhRd4FpAcFFYp/SDh8efh0QtKdd6C+ZMYXhncr2J5X3rNOf/Zor9dD0bWmIbtWUALdfDf0FOM7xLz4fccN0pWHGZ1ep/MQ+dRNnUV5na0+OwrsEpgHmOcc5vb0g0Hgf+p4KSio+RlVDjPZ7I4ZGx9zv7omH8AMJXJMSffu029I= X-MS-Office365-Filtering-Correlation-Id: 2f1bde1e-9705-4fc6-91b8-08d5b796e4ec X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:28:25.3667 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2f1bde1e-9705-4fc6-91b8-08d5b796e4ec X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR04MB0406 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.153.144 Subject: [Qemu-devel] [PATCH v2 5/7] hw/riscv/sifive_u: Set the interrupt controler number of interrupts 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Set the interrupt-controller ndev to the correct number taken from the HiFive Unleashed board. Signed-off-by: Alistair Francis Reviewed-by: Michael Clark --- hw/riscv/sifive_u.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index 859f43c6f9..50389cdc90 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -187,7 +187,7 @@ static void create_fdt(SiFiveUState *s, const struct Me= mmapEntry *memmap, 0x0, memmap[SIFIVE_U_PLIC].size); qemu_fdt_setprop_string(fdt, nodename, "reg-names", "control"); qemu_fdt_setprop_cell(fdt, nodename, "riscv,max-priority", 7); - qemu_fdt_setprop_cell(fdt, nodename, "riscv,ndev", 4); + qemu_fdt_setprop_cell(fdt, nodename, "riscv,ndev", 0x35); qemu_fdt_setprop_cells(fdt, nodename, "phandle", 2); qemu_fdt_setprop_cells(fdt, nodename, "linux,phandle", 2); plic_phandle =3D qemu_fdt_get_phandle(fdt, nodename); --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081621600744.4451777355602; Fri, 11 May 2018 16:33:41 -0700 (PDT) Received: from localhost ([::1]:54440 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHXe-00053j-Hh for importer@patchew.org; Fri, 11 May 2018 19:33:38 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51301) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHSv-0007RJ-6i for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHSq-0000zF-9k for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:45 -0400 Received: from esa3.hgst.iphmx.com ([216.71.153.141]:54675) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHSp-0000yR-Tv for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:40 -0400 Received: from mail-bn3nam01lp0176.outbound.protection.outlook.com (HELO NAM01-BN3-obe.outbound.protection.outlook.com) ([216.32.180.176]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:28:38 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:28:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081320; x=1557617320; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=LnDS4td3gxde3RtmMBF3YNIu7S0v49kAam4B2sybQJM=; b=XV5H1XE77XCeVbe4B+BnslTj05m5iRdOWFx/JMnsGxq9Gf/iYtb4GV8l zNchBGry1pmx7cKMWncb3dLqW3Y46fTwgPyQjUmfLBNWFAn3gRNj5InVK yH0IwjmibYRXkAedf7QYaTKKmczUl3cE7aBy5iHsDz8bA48qqBcLrB80P kcL2azKrYjORuBBnMlmT4uaH9z9RYckvqYnSrgACC18PHkLnsm6AsE72a qMWcJ+eH1THsKwakxPy0kzhNqOjnvOK5ZzqC42juFRnHZ+F4KpZw1i4mz Sr7wmHr3c2cJpqEAcNuj1fgzoPepE3Fpol3SXOW/+kHza2BUX4J7VTkKm w==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="79189853" 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; bh=QxBLBkbBsOIUdixw9R7gV3E4ddqBNgabIVQhZB2D9zc=; b=IFX2WxvfqFU7VODodErF4FOjY43Gd4kBslU+WWCmSBU0LXoXIezASr69+AkwxY3ZdiaYb6Lv6yrWz/rA23Zo0rDGvmcH3l1n+YdxrVmO9n2CCsqXH+rA2Y6y8Cv4UqVxZ8Bmoh9ct6QRRiwWFcufcs/6lswVRe68MPBY+cCWqYE= From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:28:28 -0700 Message-Id: X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0086.namprd15.prod.outlook.com (2603:10b6:101:20::30) To MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:MWHPR04MB0416; X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 3:rH8luyPgkF+/Hka7ww8NrOW5k2d5x4HyqBi6MeLndSOi96BqZUWT7ltIWyblIzOffX5dkjjMsiTfKKNx7bXktsFQFCLAihj+KQ23xLc5yHIzxtWwmLbSQmMZHTKUVRQwT2CnyHbXA6YWhexbhRcGujJ9prcDdJ4IIxozhjrz/mjasNhgY22DhsZMp/PsPeInb4dz0ylnGKkHrBZKcFVb/02NMUMsh8Eul91IR+aIE8p5TYWXVRlwtxc+Db7FKW9Y; 25:a77fYvFqSVg28BtYHyZRYBcEXcwjBGpktW8edmKDywRujjr86vkS27zwV+ijajcxKc5YQxaO08fgUKKpbD3Z8XRVRFWUmdOkfUZ547uInc0hBcoOeiwBdx3i/LenOpmfkPH7taanwqG0eNTozFqORBGufzVeLPM9hE97sxgccqcL8SBPIRSuZhsdZRK83RjWC0Na64g4X5Npoc7sujq6wvfMtc8flWyPhEA5BqEqp5VB62Jf8y0n8Vd+g2YimBMfoqIfndKIYP9lm31/viKZ/DH9kivkOKWZQ2uPp5zTWdALZDheLTdY9TL7zHEk57WVhWM870HyQYZLpjq/8gqiAQ==; 31:g6d5E4WqQ/Duilc0lICN/50CPiIWI6ny4p7+eWNfxQ5fEHtjbiFT5O/huzM8MCCeZwuQg0o5vmzMO27kNdQnJNa7nysKWEnfmeNcOEynPWcY2R7eMJTZV4p5j+jnVv5e6f7Ema8ZejJ30gTyAHMrm107NVooLt8e5kfWlK25kKw4Qv4uVEp2HmrHJSb3K9diTqtRi89VFN/vdd8blPe+hKztTxgknzvNMm60Onv4N+Y= X-MS-TrafficTypeDiagnostic: MWHPR04MB0416: Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 20:iIfS3I1UWNZn9NDUr8ZvxzJYN8w9Ezg3iG4jPEH4YPiELx/CjMI8btk+jY+NXy+ofnvSF9nEWdnMdn+/tmlIt8J+FncV1Tb3LoLb1DvJCTTdOsh13WeZMQAPjwM6ldzb938sc2zk8sDRkEkKTGyh4064qG7onaNm54xzc5/Rfp9UY9LOmhM3k2po2ybPW05i/okbVDpyEoyVcdEV3x9YN5HY1XmQ1yXBMsXjgLfng457bt1lY7GwJlKZ7H8IlYPweuQG7YMwRc2tnAGWhKdx3A5P2qDQy2TRsa59jlOjKC7bHZjFTDKGLwxzLcmHA51bGgnyNqs+bXiTG+D95lRTHGAcM/qoXT3k7N68z/fdR6KLDKTGCeg2tlCGzIHsliyQRnznX/UnfTrJaPuEdEywITh5Rns4rzUbt6Q1BROOJlv97Vpeg77U2cMB+bR8OuZLeXQn4D7i1xfJwfijOigOauByn+RoUzi/miegUkal7DxMdaaZ87qkBw1DldgH8y/l; 4:0KFvP6Qkj81UNHaoodpYERf9ILvtvoW2KMe2VM7w4C/p4N7dLmICattwAdJUbZuxoKPaB40ac+XYjcd7r0q+QU6+QDgUUF7HEvz7kKqyRxIF00bhRIIuN2Pv3A5v0cdco2mvPZA7w328zZ73DhAuWY5K4ZBihG338IXE+rCgf1AhShaGH8NqSZXv9HxTSEF2sDxix9HP6NGNaY9M5+Z3jIXjEPAFhM/+UkMecz25jan3BWaKALcCiFQWp42rda5URNW2RD/hADvFdqjHcCk+Nw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(3231254)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011); SRVR:MWHPR04MB0416; BCL:0; PCL:0; RULEID:; SRVR:MWHPR04MB0416; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39380400002)(346002)(366004)(39860400002)(376002)(396003)(189003)(199004)(6512007)(53936002)(186003)(386003)(59450400001)(4326008)(446003)(26005)(3846002)(6506007)(6116002)(25786009)(97736004)(316002)(48376002)(50466002)(16526019)(52116002)(47776003)(105586002)(51416003)(16586007)(76176011)(8936002)(66066001)(7736002)(36756003)(6916009)(6666003)(118296001)(2906002)(2616005)(956004)(44832011)(68736007)(305945005)(81166006)(2361001)(2351001)(106356001)(81156014)(8676002)(478600001)(486006)(39060400002)(11346002)(476003)(86362001)(50226002)(6486002)(72206003)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR04MB0416; 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; MWHPR04MB0416; 23:Gx+AX8EFjgkx263WwrIjxAc/990urIQaQ5AiCSvJP?= =?us-ascii?Q?YMFBYNKPLLstCo27pfhi6YirA8ZLFG5sa6XOQ2t0E5FLz438+7TtA6/vZcnq?= =?us-ascii?Q?Wa/4lYvBG2O/hLiUtQKA66fL4niOEbteqRWiktbpSZo0o4OFC19xzDA+e+Wl?= =?us-ascii?Q?dGKdvZeBewnrPwL36l/5RqFyP6C5wqLt1Gg95zaF9T7D2m9/bDUY0AnVY6tq?= =?us-ascii?Q?5RnzspY78z+Fj88kPQj8wEXWs1ihGj8kOEhUnVV36CyxhHbYiDtUnAdA29iy?= =?us-ascii?Q?iZGLv07uEVmpB9GefbTddBdRC9BdcTNAzlqHgvN3krIdl9v+v7NrHZrOMo4A?= =?us-ascii?Q?EpveoIArDBNkANdiodDrWh+sL7N0Ck1lyj/5IQ26Z7ucqWn8Y/BzukcgtdVb?= =?us-ascii?Q?YFpRw/cU8tPNQRiyk+E+24V8hrDahYa9ZXJkVon4zFPcQffJYMk2a30z7qGv?= =?us-ascii?Q?97Jp2Rvfbk1hNjQRrez04pk0ZkNyo4ZgOJcTvZMc/2VqNY0OnOMtRV4JV9g8?= =?us-ascii?Q?qHhbZSPRTFkAF41PH//7lRHiOoW9URXZpfwWkOOKKJ+DDjM0NwSHZIH6WpPx?= =?us-ascii?Q?+haJ9NhONEqXWOMJYPZ+1jHurzTPzVkr+0B8lrkCY2rHzXT7WGSbEVWe9j6i?= =?us-ascii?Q?L39XWhA/SkSrA0+4kwK0e895fK0fRvBGZ1u3fEZYIUTuBuXEULk3NJ2N3lYN?= =?us-ascii?Q?/O5XQ/yIryf7ux/qVXowZZFdvA1TR1217l//KxcXS71tJVIzD62ziW6oWX7D?= =?us-ascii?Q?H9RyWpp8tHsmsGooFpxqZAHUEBrt50YlgL7+EqLeRehLtX6cFQUGQEpWTV/Y?= =?us-ascii?Q?A/NvaSkUOVY+85LdEC17onghLhDC8L7JRksLbZyWKehMV35lUNEI9PucfqA7?= =?us-ascii?Q?gdTfkg5oFMGqEXqQE8WYJdIuWTvq8/uDxm9DKtC05bcgvwctB9xngdkHE3RR?= =?us-ascii?Q?f12WOSIxhchDA3sMH5LHQwgiH/41KXoabwnaL5+CEBli3Vi56am9Cgu/SGUm?= =?us-ascii?Q?vsEoXaJwjgy5dL2rJjHpKTgiRayakrM7oJtluc2Xz1a6KQ2z22IVvbpQfrDr?= =?us-ascii?Q?jHRDws6hFeVUoSORROP14icwU4JX6H5/FFyeII5lsC3SRMwuOgDz2toVj4vo?= =?us-ascii?Q?m100JTvMvSxvU5bV8j/0wMflzvouItf/2/O0+dthhRPzOk3j+g/BZ1OVBFmU?= =?us-ascii?Q?O/0C0kV42yt10vZe+lZLDMujpYtf7CqoQs7DI3W+KLgokTrYvubwW8Q4INSr?= =?us-ascii?Q?mdZHYyji5Iy1TBuQzNcjYv7vDxbDna6k9OUQ9JFLOyU1BtGdoFMdOh6n8eZa?= =?us-ascii?Q?Tztmz5GPMcl1/tL/qqyLP/SYT0HHC0ZeNof44+x9A/7?= X-Microsoft-Antispam-Message-Info: zHT++laH4L7CGd2r/QvVGE6Nt4LbaP/r1A+QPE42qwLSpZaLd5THLq5mAYCh0TZd/YYHAlLQxu47YWn7gqk0+z72WJrIl00qCnKuHc6/AKWYWZbuwj0aYUK7Y/Fy5uttZbEX4pTnL3gDOd5lkiie/6TZTBnIzwpEnerLaEJFIgyJSUKjYjwvzKKuoV11WJvk X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 6:kxsoR6lUEQUZ8G0ylhTAI5c/ko/fWtzsdOCITTe9dfIWkwLvzh7z7Qe2QahW+KESogP+F5Hh6+cULV5ZfuXiQ8Md/11eRhTONO/XZ+ipoqV5CuS6H2EGCCzSIPugCYC0LpbgB4BHmWizIVT3LMC5NMD+x5rPioC2/8L0DH5phMxHwKXQHK+OfibJq65AZLQfehPYkyeZW13N6ik1x3Lzx5SE82Cyo3+OupUyevH7n/UAJODrGXJBd/G9JZTUbBPVgJEuKCKSfRqcMXU/UYkoWIelhI85qukT4rWJlEjKKrCeVHcWKBhhAUIJGPt7S8e/4WALQFJV0Tbd4Ehb75OdnnrarM/hzq6P2UtY70H7hWiVkmTxVQ8XVJw6kziV9ndP7pEVJC/8g7dbEuMVPQpnA0sdofC8BikPJlR+wivMAb4PczLyaJrdaJBJv0e2wfPEBJLlXa66nnFWgcplcr5TPg==; 5:kvC6Qot5hIwpC5MnGhLkqZzjX9clkB1uJyzNDIa/SZCwtyAXY8d2Xsd8ty7tejW4X9x8kj6NU19GeDCe1Jubxl9REbMTiaAJXIjVOlQY/j3C6zsag/MT9xKaCQiJYf5Wx3eSG1s5TTallV2w8Oz3U577IWWnV40qCZvoPLZCIN8=; 24:A2tJZTe27PYq4K57xFkRS8YWkAhMq1eSKuGaIOQTiZXWgFpUahefNB4O7CZRWW+HXSruAG6MLJxhm5jXDd4PBz/9Y5/d8O0trRy4tS2uMaQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 7:PU95NqHHYMVpup+ayLeT+NNKMyuypSIDU2lpLKgGYY5qU4u24FVAJjxxaFwylt3FAEgazZGnVoD67NQIPpuZzuS89u2ZhUQnVvhx+j7Rxsu+7lZMiVXWqIdlmttbPg6vG52MHUajJ7oZQu6lyQvsXlVYw8+Cw8f7h7bSS70943d2Dirp8fGXGwyIu91avSZKfCtbzjG2NrvQK6T9pKkWfvvLaiXajdDHHbxZWN12Wasx0lJdTIaIr82IRIkqOcbf; 20:HH2hjvN576KeWcmjgdO80CnpwTC/ozbQol0JHgOj6gav4NbyMPCoVNJbsSy0oE1frHAeQCoJcpDI8GlLef2gL0uqjeAUMbkl1RVjEFNSD/0hU+Xi44yI/1MNgBdkJ+mCNGCeoBmM5Dr6Ae+ciDgQmosxz+9gPHg6Jdo7DgiVGrM= X-MS-Office365-Filtering-Correlation-Id: 5eac1ada-a08c-426a-b20d-08d5b796eb69 X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:28:36.3721 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5eac1ada-a08c-426a-b20d-08d5b796eb69 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0416 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.153.141 Subject: [Qemu-devel] [PATCH v2 6/7] hw/riscv/sifive_u: Move the uart device tree node under /soc/ 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Alistair Francis Reviewed-by: Michael Clark --- hw/riscv/sifive_u.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index 50389cdc90..540d53bf2f 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -194,7 +194,7 @@ static void create_fdt(SiFiveUState *s, const struct Me= mmapEntry *memmap, g_free(cells); g_free(nodename); =20 - nodename =3D g_strdup_printf("/uart@%lx", + nodename =3D g_strdup_printf("/soc/uart@%lx", (long)memmap[SIFIVE_U_UART0].base); qemu_fdt_add_subnode(fdt, nodename); qemu_fdt_setprop_string(fdt, nodename, "compatible", "sifive,uart0"); --=20 2.17.0 From nobody Sun Feb 8 18:18:19 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail header.i=@wdc.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1526081748296456.7500495751548; Fri, 11 May 2018 16:35:48 -0700 (PDT) Received: from localhost ([::1]:54712 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHZb-0003v0-Vr for importer@patchew.org; Fri, 11 May 2018 19:35:40 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51337) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fHHT5-0008Df-RO for qemu-devel@nongnu.org; Fri, 11 May 2018 19:29:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fHHT0-00015l-Sl for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:55 -0400 Received: from esa4.hgst.iphmx.com ([216.71.154.42]:49258) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1fHHT0-000152-EG for qemu-devel@nongnu.org; Fri, 11 May 2018 19:28:50 -0400 Received: from mail-bn3nam01lp0175.outbound.protection.outlook.com (HELO NAM01-BN3-obe.outbound.protection.outlook.com) ([216.32.180.175]) by ob1.hgst.iphmx.com with ESMTP; 12 May 2018 07:28:49 +0800 Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 23:28:47 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1526081330; x=1557617330; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=9PISG7CApQwOEO3Mr5Ld3begmXaoPVKPseUoCmyiSj0=; b=L6Y+c6nu5Sx0jRRUZPNoU1CE3IIaQiYcaOwqxLsX6O4tStzzAXoUbTsg /0JKIxkUI16hOJ/VKlb3BSgpDwj/30ecHqo7B12x/SW/BDGSrn0r7g6+i ODEAGhB5IMOB+6V3azHgUseFFDUBpt3e+tJ2N7fGoTGTTA05W9xdPFwT8 X/oRgn6vikBYHjc6A3XolBFz/EsnHY2xSFRgDBFWjRDi1B04BvmDuFfqK I8tkXEgV89e+/Kjd2TVtJdFWSi7pSG8HQO+GB4hkKcMcfsZDZarGsFkad c/PVLBMdD72l3ryzXcFRSnxA1wBZq5juwcKltL6Xky2J/xAolc3oiaosV Q==; X-IronPort-AV: E=Sophos;i="5.49,390,1520870400"; d="scan'208";a="77724182" 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; bh=O0o+D37utMI+MpF/BaOkDdsj3AIAF6JWYqf7FShAvpQ=; b=LsNVBCcrZ1emjuiYRlsBV2jn0vBnfplUhd5DnoGo1vQKzlBmpwppxJEiVWj/l17pnAC2visBVu1q3JTN4D+6wEPWH4C1csbzH5JxkXxIXs4FK65uvIuDoipzzxc9B+ajfR+Rts4n+rxOLwqRi/Jv3RUodpVoWPGSVAQQx3LmEZc= From: Alistair Francis To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 16:28:39 -0700 Message-Id: X-Mailer: git-send-email 2.17.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: CO1PR15CA0081.namprd15.prod.outlook.com (2603:10b6:101:20::25) To MWHPR04MB0416.namprd04.prod.outlook.com (2603:10b6:300:70::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(48565401081)(2017052603328)(7153060)(7193020); SRVR:MWHPR04MB0416; X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 3:EjAdmU8GtOFKe+dHxZAQE+IyR1ZirGYFAIVxI3J8P0ygps9mkBbXZuoBrlP9I6qf0uaOlNUlPxAF+MJlUY1IW69OLedDAf2iAzs1gnz72KxF/Cp4ZTdl0EzirBciVeU7SrscI3aM4wXzTSS2B1lItrbs+Zoo2Obodqu6LuX5JDMLup9fg5JmvaRZ34K9SIgT5ebvX8k5gnrj7C9Nzc+ojZXPinbsq9d986IsKb2IOZq50Txoeaoi6eZkjQk6GNBL; 25:/dquaEDk9y6AczNL0hOj3793+JUuyh0M24fmFkKGwG8CEuyLRgNHvI9CLTcfowD3vLwRxkAnjDqXv5Cco8XB9CujfjqsNik1Fl9FpgRnOiNWPo/P7CECv5FJ2OOfLRzWKAHuMUaZBFABGNfXE+83QY68BzgLBeq273VrhECaE/CFdh+cYz+dohaT5goLGGe+gSeUeoaqEsjua7EHP/DfIeqzSZdLXFGUPGGBAHUBhv19WxdwS+X7ACrJx6FFZ0UM9VBeepOUtGCAhuVQTV/FiasmZdFryCPCi+U3dSjgcxoAgku6uhxmjqlMh9sd+KyZ47tlE0OrLNuOO0jjXujRRw==; 31:yjHZ8Yf51MUYLPqN+fwyauspK/b0Wlgu3nkjP0Pv5HxcRGeSfkB8PYUs8mMVUsw8TM7R4g94pmObcQS0C6V6zX38TJH/Fk9wjH/c9VRmVMb9dJbFNzo5f0AZ7yKdInGv67dEYUHcS6/TiM4M2azZP2ZwOYAtVR85h1zcyWbrkAlkvjlEXg2TnBjcnhOLxvpTARLIbqtMaQikf/xNVNARLpqGnMu7gvG0OAPMa9VFFe0= X-MS-TrafficTypeDiagnostic: MWHPR04MB0416: Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 20:qKgmwTqSrogbz00e9YLF/NekSYLk7/jJizUw1lzcxYdN0Rvx0ID8Ey9rI53yP3g99jAWkVf28xeGJqMfZqKSXnDjcIQ+v3RitrHCK7oCzjKsxjd+kT6Rwn8OBkoWeifJcP3YHbc6Fqonx5SH2Vx8xy9gwT7Lhbcam5bE8dh/njYt8ZsGj3yU8taZXuYxE5dCHpk+5Pgq6z2wagqk0Arr4+zawG74bLa4EEN2KxvNtfJZb2u4D+7qXfkm5Go2MSJswZ10cIpp0Nkpjtv+7zgtLrTTevEwTWuuI4gbuR66v8iefmB3yfB+CGHx+Qp2ZdQ/vHnuDiATN+ur+pJu+CpGVw14KYh+D5JJFIoMeKWYQrR+9UeMPKs8AYQj3NEwH7xzjDpRxGZTF5mNSV1vb0Qx/DfQv9nHdMpSx9fPELYIQftNGAiJb3azTStsVCpsRKS0gRjpNYutg5y/pPF0iwjeGx2QWcUK+psYi2uMMtqbHy4wb9/2MwtJCsCFpmxcrRyu; 4:OPQsWq7q8K6R2HOg2RagUQ7e32J1341wRH9xKXWkJRCCstHZ3YUMWvyNmDgqONSD7v6XZocMYdRNIHpdUZyrpUp3yYmnPHXmu4RdJQAitC1mv2QLAWiyydbFsEgj66Kj+jLzp89/BYiKAFaELGqu0HszzfOqI8Gc0BV/8IKl7wCA0d84TKYqPaBDXoWPhTUzaUcT/K8vqYN31uZwbg0lM3R9K/lguhndt5apI0xEBmDGkZWSHT7BO8uVsXk197JIyAMPv+fgUGF5nMlCtFvZ/mabGaSzLknUucgO+JwGIlGjHBo4WjdcpvQo4Tt165ps 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)(3231254)(944501410)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011); SRVR:MWHPR04MB0416; BCL:0; PCL:0; RULEID:; SRVR:MWHPR04MB0416; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39380400002)(346002)(366004)(39860400002)(376002)(396003)(189003)(199004)(6512007)(53936002)(186003)(386003)(4326008)(446003)(26005)(3846002)(6506007)(6116002)(25786009)(97736004)(316002)(48376002)(50466002)(16526019)(52116002)(47776003)(105586002)(51416003)(16586007)(76176011)(8936002)(66066001)(7736002)(36756003)(6916009)(6666003)(118296001)(2906002)(2616005)(956004)(44832011)(68736007)(305945005)(81166006)(2361001)(2351001)(106356001)(81156014)(8676002)(478600001)(486006)(39060400002)(11346002)(476003)(86362001)(50226002)(6486002)(72206003)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR04MB0416; 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; MWHPR04MB0416; 23:aEBni8RtYx/pvLyQUIlV1aZJg5beogfFLjeAziMk+?= =?us-ascii?Q?DJ8gmG8bRfHYfL9i0ei/XE000RenDr2WU+7YVxRk7NG8mhIewJFPZVYNj6oF?= =?us-ascii?Q?1gwQz+dsSuUthW8EoQuW/iACHc5nQXdVEsWCTV9URoJuArzwoBSMbsumhXZy?= =?us-ascii?Q?jJRA7Oi1+vhbJtf160Oiajb3bVfD+Um3ZGFTYIBL+Ua/ctMUhgHfwqRBndVX?= =?us-ascii?Q?Nd9TNGaHt/6rLYisfLNVp1oFiMJ17nh+FyaSgAq+MBZP2uhNZP3iWPtTHnD3?= =?us-ascii?Q?nFSbCCt17Fw1R8zxbe5Ag6wSY7h7Ett10DZA+XGCTN28X9MFUIN5VnJEHSK4?= =?us-ascii?Q?qLybc+AjjlD/67ju8nKk8mbLfJLEUN7r+aNGz1tCYvddI4C/NVRYvO0X+Pgj?= =?us-ascii?Q?WtL8KMYRU949zEpf/07G5TM/ob5QxIFpQSMXkI1wgZgPX26vp+Ys1ZkzHg1g?= =?us-ascii?Q?WtOcQQkPCciL5svSNtf/mt5t9RLO3ShSi4C5Kfv6J7A2wSHyHcNkZWnYWYXj?= =?us-ascii?Q?x+z2XepygIFYtczvtd5H/I487u1yl3KMHOWdDoUsgoPeGVfV7AOIJUdy/BjG?= =?us-ascii?Q?uZw6rRmDC9t1P7ogWMUpBLhFVtkcictzjyNTu8Cq+6FrmydGGG7Kb1oIFJfe?= =?us-ascii?Q?1752mwPtdIsKpHmhlO0t2aKJtrS+EDPf5PgZWgilU6UICg11AeWE/jMN/4q4?= =?us-ascii?Q?BXSqyIRJglGy6lXNZvPoZ18mdZrx9Wf3c8IY5LSnpskmA7V2EJfPPgug7L+K?= =?us-ascii?Q?WGwmxTu7eaQrvC0MAIyNWZ0YBmRfUl01+n1X84mzeNhT96q7ZPhicbBZhj4s?= =?us-ascii?Q?9+9ToojzjaVYEwNU6JYFNx7WKukgmrqB4oYdb9fJe1psnOGKui+AR7P4ozQf?= =?us-ascii?Q?wak+P1YFr4KvU4QwghiXseJ+f2cFy7Fo/5yjVJkVYutNTeOT7Vu5WtKkpjlm?= =?us-ascii?Q?ORX5gvZCwEFA+G+lINVDJ29Y6So6dRvXJ+1DMku0lJ4rhhVqUMXIbyuuU1fx?= =?us-ascii?Q?mzkBca+0Cf1a10nkqAYjxf+q7XR19FvCMRBr0J7J3TogA2FHb71I6tFjzUIt?= =?us-ascii?Q?KRqV6tl5TF4A02xff53Nqk7bW061b2i3Pzge0YvQylNiOl4tNMKvc6xG9Oki?= =?us-ascii?Q?Kso9AmauEXBZ/6agDddOgb1XyNr1c4ta8R3z5XCWZJrCEg8Oyy82zRJFxZJ4?= =?us-ascii?Q?kyBHaOsyBlS/LCsvqtewm8FWwGWQ+4vOtTll1motVeD6v9DMqGgTbQgR2qTE?= =?us-ascii?Q?J8OXnu1DtE6e+j9YsH+9AaOocXKIK0G92bk+63aq3Rc3t0KXP8oi6MvTn4pu?= =?us-ascii?Q?FU8RJlymsAibnsCo6Kv/Kc=3D?= X-Microsoft-Antispam-Message-Info: tV+2DzKDsUALqLzRPW+2sxDettagnJzOPQhdrISpixXdjXPLggV2mrQ7C7A/Gn1sNulUqFpWv8mMM1k84BKSKUy7nrwEE1mMG76F/pZDq4o4kULBo//RkTSEUo2jJ0avzOcEABMozeNxJgT2G41r9jPaHXnlw2/zhO5QmbR7sp5tsDW7mDmSQHSXTPuOPyfp X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 6:Pu5A0ohZqgsmwT6psUEXPcOcD+pCQJULhpsXF9OMy0NEXhQXxVGSoSutscXFp8pFe/6xs1cuOKuo7AdcWfE43nibIB/ZKaDD/q6K6RFV9ysUAAbTCfJY/eMCgAmgWdAW0195Id+KwNUDoqIgAzlgLvyjfeqPK9qozx+FXqd60Fz/FveGCPUVt0uuwCc8ElyGh6XcDhOdPLrnPUjQBqVMky9Zdv0ztgZBmhDSOw1IwRo2JXxSms/lAzm+258OlQB39kdQWo4LMHahfLrrG5r2gkahPAB7GoAI/1tGcy6fwNlYGSNE31TbBW9faA+t/oOGLVm3Zl7IyfWdRkWhZsWtPScfm3WT9x5BYCJp0QGsNI92sSP4z660B8XWrIPjbA3xhlKzkJfeZ71cqFZGBrjHfrA5GUHfFEuhZFhCQ4FEwAJOv3K9VFjarTQSYSW75TccDi3rXUOhNw3yQ2kVV+sUUg==; 5:HNnDJ4JI8mPzn5yhkFSmCT9hKOpCTnG66b2zLl6Choh8d356ET2s1iPjduK+N47v4uHpL9T8hK00f2NVKAlWde7YuM4EMzo/EaNvwR2Our5sg0M9wZy5quuSpij/B9tw7BVdM5/L7JIpUed4FmclCM36foeC2yikv48BQ+LmVbU=; 24:Gsm7846HqZxsvLFtr4YYWPvucfsgicj71J44SfZGhX1VuQPI+SOVT4LQ3SLLa8iTGmTPj20TRa7DvdaiGhT58jljqy2iHN8A7Q2ml+JWqlg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR04MB0416; 7:qEaNmjkDkOxiHixdIf5ZsmvtNy0UVt6kClvaXfqcOGqXsKNct8eheLDYO7E/MyPZp9F+Mh37nSJ7NYRZXMkhLoD7ayJPY6vxUBJU0rzSmqGJiU5amfdHxWboyQ8LgugRmXiAa/pfwXbH5qPlhrEZvvuW3yJGuov9GiBw9mcpku82hmgLPa6l9zE7TEl8+ufDhYZbtze3WWC+kzSwUz6Z8N/1ZLpguV7k9ER9KBcYcbNfYaGy8Q8ciVuFSeE5rr6Y; 20:m/AARPbZ194qlDpCqnQlgknUivy47a0n8SvfPMtn4XuZcxUBaPYilTFMgeKxRl10hv9RW7Y7StKEB3uzf7C4pM6aj/NK6/yi70KvpwgSm/BzNQ3Wq6YU5La2xxa2tgCulvT8RYiJKmiln69aoGle0KGBVAzR9EFjDtir0eY5U6U= X-MS-Office365-Filtering-Correlation-Id: 3613e844-fcf4-4a4c-21d5-08d5b796f1db X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 23:28:47.1878 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3613e844-fcf4-4a4c-21d5-08d5b796f1db X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0416 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 216.71.154.42 Subject: [Qemu-devel] [PATCH v2 7/7] hw/riscv/sifive_u: Connect the Cadence GEM Ethernet 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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (found 2 invalid signatures) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Connect the Cadence GEM ethernet device. This also requires us to expose the plic interrupt lines. Signed-off-by: Alistair Francis Reviewed-by: Michael Clark --- default-configs/riscv32-softmmu.mak | 1 + default-configs/riscv64-softmmu.mak | 1 + hw/riscv/sifive_u.c | 50 +++++++++++++++++++++++++++++ include/hw/riscv/sifive_u.h | 9 ++++-- 4 files changed, 59 insertions(+), 2 deletions(-) diff --git a/default-configs/riscv32-softmmu.mak b/default-configs/riscv32-= softmmu.mak index f9e742120c..9a1c42e8b2 100644 --- a/default-configs/riscv32-softmmu.mak +++ b/default-configs/riscv32-softmmu.mak @@ -2,3 +2,4 @@ =20 CONFIG_SERIAL=3Dy CONFIG_VIRTIO=3Dy +CONFIG_CADENCE=3Dy diff --git a/default-configs/riscv64-softmmu.mak b/default-configs/riscv64-= softmmu.mak index f9e742120c..9a1c42e8b2 100644 --- a/default-configs/riscv64-softmmu.mak +++ b/default-configs/riscv64-softmmu.mak @@ -2,3 +2,4 @@ =20 CONFIG_SERIAL=3Dy CONFIG_VIRTIO=3Dy +CONFIG_CADENCE=3Dy diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c index 540d53bf2f..fff36bd04d 100644 --- a/hw/riscv/sifive_u.c +++ b/hw/riscv/sifive_u.c @@ -60,8 +60,11 @@ static const struct MemmapEntry { [SIFIVE_U_UART0] =3D { 0x10013000, 0x1000 }, [SIFIVE_U_UART1] =3D { 0x10023000, 0x1000 }, [SIFIVE_U_DRAM] =3D { 0x80000000, 0x0 }, + [SIFIVE_U_GEM] =3D { 0x100900FC, 0x2000 }, }; =20 +#define GEM_REVISION 0x10070109 + static uint64_t load_kernel(const char *kernel_filename) { uint64_t kernel_entry, kernel_high; @@ -194,6 +197,27 @@ static void create_fdt(SiFiveUState *s, const struct M= emmapEntry *memmap, g_free(cells); g_free(nodename); =20 + nodename =3D g_strdup_printf("/soc/ethernet@%lx", + (long)memmap[SIFIVE_U_GEM].base); + qemu_fdt_add_subnode(fdt, nodename); + qemu_fdt_setprop_string(fdt, nodename, "compatible", "cdns,macb"); + qemu_fdt_setprop_cells(fdt, nodename, "reg", + 0x0, memmap[SIFIVE_U_GEM].base, + 0x0, memmap[SIFIVE_U_GEM].size); + qemu_fdt_setprop_string(fdt, nodename, "reg-names", "control"); + qemu_fdt_setprop_string(fdt, nodename, "phy-mode", "gmii"); + qemu_fdt_setprop_cells(fdt, nodename, "interrupt-parent", plic_phandle= ); + qemu_fdt_setprop_cells(fdt, nodename, "interrupts", SIFIVE_U_GEM_IRQ); + qemu_fdt_setprop_cells(fdt, nodename, "#address-cells", 1); + qemu_fdt_setprop_cells(fdt, nodename, "#size-cells", 0); + g_free(nodename); + + nodename =3D g_strdup_printf("/soc/ethernet@%lx/ethernet-phy@0", + (long)memmap[SIFIVE_U_GEM].base); + qemu_fdt_add_subnode(fdt, nodename); + qemu_fdt_setprop_cells(fdt, nodename, "reg", 0x0); + g_free(nodename); + nodename =3D g_strdup_printf("/soc/uart@%lx", (long)memmap[SIFIVE_U_UART0].base); qemu_fdt_add_subnode(fdt, nodename); @@ -296,6 +320,9 @@ static void riscv_sifive_u54_init(Object *obj) memmap[SIFIVE_U_MROM].size, &error_fatal); memory_region_add_subregion(system_memory, memmap[SIFIVE_U_MROM].base, mask_rom); + + object_initialize(&s->gem, sizeof(s->gem), TYPE_CADENCE_GEM); + qdev_set_parent_bus(DEVICE(&s->gem), sysbus_get_default()); } =20 static void riscv_sifive_u54_realize(DeviceState *dev, Error **errp) @@ -303,6 +330,10 @@ static void riscv_sifive_u54_realize(DeviceState *dev,= Error **errp) SiFiveU54State *s =3D RISCV_U54_SOC(dev); const struct MemmapEntry *memmap =3D sifive_u_memmap; MemoryRegion *system_memory =3D get_system_memory(); + qemu_irq plic_gpios[SIFIVE_U_PLIC_NUM_SOURCES]; + int i; + Error *err =3D NULL; + NICInfo *nd =3D &nd_table[0]; =20 object_property_set_bool(OBJECT(&s->cpus), true, "realized", &error_abort); @@ -327,6 +358,25 @@ static void riscv_sifive_u54_realize(DeviceState *dev,= Error **errp) sifive_clint_create(memmap[SIFIVE_U_CLINT].base, memmap[SIFIVE_U_CLINT].size, smp_cpus, SIFIVE_SIP_BASE, SIFIVE_TIMECMP_BASE, SIFIVE_TIME_BASE); + + for (i =3D 0; i < SIFIVE_U_PLIC_NUM_SOURCES; i++) { + plic_gpios[i] =3D qdev_get_gpio_in(DEVICE(s->plic), i); + } + + if (nd->used) { + qemu_check_nic_model(nd, TYPE_CADENCE_GEM); + qdev_set_nic_properties(DEVICE(&s->gem), nd); + } + object_property_set_int(OBJECT(&s->gem), GEM_REVISION, "revision", + &error_abort); + object_property_set_bool(OBJECT(&s->gem), true, "realized", &err); + if (err) { + error_propagate(errp, err); + return; + } + sysbus_mmio_map(SYS_BUS_DEVICE(&s->gem), 0, memmap[SIFIVE_U_GEM].base); + sysbus_connect_irq(SYS_BUS_DEVICE(&s->gem), 0, + plic_gpios[SIFIVE_U_GEM_IRQ]); } =20 static void riscv_sifive_u_machine_init(MachineClass *mc) diff --git a/include/hw/riscv/sifive_u.h b/include/hw/riscv/sifive_u.h index 0f8bdd8fab..ee1a9e291f 100644 --- a/include/hw/riscv/sifive_u.h +++ b/include/hw/riscv/sifive_u.h @@ -19,6 +19,8 @@ #ifndef HW_SIFIVE_U_H #define HW_SIFIVE_U_H =20 +#include "hw/net/cadence_gem.h" + #define TYPE_RISCV_U54_SOC "riscv.sifive.u54" #define RISCV_U54_SOC(obj) \ OBJECT_CHECK(SiFiveU54State, (obj), TYPE_RISCV_U54_SOC) @@ -30,6 +32,7 @@ typedef struct SiFiveU54State { /*< public >*/ RISCVHartArrayState cpus; DeviceState *plic; + CadenceGEMState gem; } SiFiveU54State; =20 typedef struct SiFiveUState { @@ -49,12 +52,14 @@ enum { SIFIVE_U_PLIC, SIFIVE_U_UART0, SIFIVE_U_UART1, - SIFIVE_U_DRAM + SIFIVE_U_DRAM, + SIFIVE_U_GEM }; =20 enum { SIFIVE_U_UART0_IRQ =3D 3, - SIFIVE_U_UART1_IRQ =3D 4 + SIFIVE_U_UART1_IRQ =3D 4, + SIFIVE_U_GEM_IRQ =3D 0x35 }; =20 enum { --=20 2.17.0