From patchwork Mon Jul 27 18:37:49 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 500539 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 09A48140313 for ; Tue, 28 Jul 2015 04:39:40 +1000 (AEST) Received: from localhost ([::1]:55008 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZJnJK-0000Y5-6W for incoming@patchwork.ozlabs.org; Mon, 27 Jul 2015 14:39:38 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37432) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZJnHh-0005y1-TY for qemu-devel@nongnu.org; Mon, 27 Jul 2015 14:37:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZJnHe-0007al-Gm for qemu-devel@nongnu.org; Mon, 27 Jul 2015 14:37:57 -0400 Received: from mail-by2on0088.outbound.protection.outlook.com ([207.46.100.88]:40640 helo=na01-by2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZJnHe-0007aJ-2V for qemu-devel@nongnu.org; Mon, 27 Jul 2015 14:37:54 -0400 Received: from BN1AFFO11FD041.protection.gbl (10.58.52.30) by BN1AFFO11HUB007.protection.gbl (10.58.52.117) with Microsoft SMTP Server (TLS) id 15.1.231.11; Mon, 27 Jul 2015 18:37:51 +0000 Authentication-Results: spf=fail (sender IP is 149.199.60.96) smtp.mailfrom=xilinx.com; suse.de; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of xilinx.com does not designate 149.199.60.96 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.96; helo=xsj-tvapsmtpgw01; Received: from xsj-tvapsmtpgw01 (149.199.60.96) by BN1AFFO11FD041.mail.protection.outlook.com (10.58.52.252) with Microsoft SMTP Server (TLS) id 15.1.231.11 via Frontend Transport; Mon, 27 Jul 2015 18:37:51 +0000 Received: from 172-16-1-203.xilinx.com ([172.16.1.203]:47634 helo=xsj-tvapsmtp02.xilinx.com) by xsj-tvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1ZJnHa-0000BX-Kr; Mon, 27 Jul 2015 11:37:50 -0700 Received: from [127.0.0.1] (port=37048 helo=tsj-smtp-dlp1.xlnx.xilinx.com) by xsj-tvapsmtp02.xilinx.com with esmtp (Exim 4.63) (envelope-from ) id 1ZJnHa-0006fu-Eq; Mon, 27 Jul 2015 11:37:50 -0700 Received: from xsj-tvapsmtp02 (xsj-tvapsmtp02.xilinx.com [172.16.1.203]) by tsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id t6RIXEWN001162; Mon, 27 Jul 2015 11:33:15 -0700 Received: from [172.19.5.153] (port=55419 helo=xsjrdevl46.xilinx.com) by xsj-tvapsmtp02 with esmtp (Exim 4.63) (envelope-from ) id 1ZJnHZ-0006fr-CR; Mon, 27 Jul 2015 11:37:49 -0700 From: Alistair Francis To: , Date: Mon, 27 Jul 2015 11:37:49 -0700 Message-ID: <12f0ab329439fc99b9107a5626c5b59d22038047.1437699224.git.alistair.francis@xilinx.com> X-Mailer: git-send-email 2.1.1 In-Reply-To: References: X-RCIS-Action: ALLOW X-TM-AS-MML: disable X-TM-AS-Product-Ver: IMSS-7.1.0.1679-8.0.0.1202-21706.005 X-TM-AS-Result: No--4.589-7.0-31-10 X-imss-scan-details: No--4.589-7.0-31-10 X-TMASE-MatchedRID: 86y/Y5TghwHUbyut0lXeoBcanaCAqviGTJDl9FKHbrlI79Hj8IY8SPtQ crGtT7akx2BEc3TqpBiLf3UKtzfwxGShw6JfmFs5syw+ZJnFumRJxv2+zCdQ5oeUNQK7Qj5cJrD dH391T36gPPok7JOqQIAy6p60ZV62fJ5/bZ6npdjGVuWouVipcqczwYDFzAtP4g+jsbrt84FVt0 nHO564vY6Blk4GLXR8QJbJ8Se8LOk5PZ/ZVc4sMp8yyG2JS0DXFkaGdtYDmjvjNuldk8o5Hf6/2 /nZkihaOgB/fz3EXdcVKT0eFRmfDs4YhafCzgujIdY9jOi4lTI= X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD041; 1:svVi8dgZ8Ed4xBkVyDmTjOe1gKJwCk7sgBBibJihhrRGzIM2u8dwwq+qdCcfAcr0jc09Q9wi5sSt0ix43AmZZgdINL/Z7ifiLr8EDl7YhFn1fijezMSRlHd/RfyX9Too9F+wJm0YPMk9xYb842ZbviqcxUr22XZ97ToKma5G2Qjidg7j29yefK/O0mqd3/QnHX4ZThicqZxfHy4kyQZRRnH1Mzx+UZepDZ+n54xK2WAV2lY25Zz3oL9R4V3Y041veeCEW6prkr1uSscKGxdYTk7f8B4FGufOMAJNibdFanJdarPRzA94KG9mHXRJhnOr X-Forefront-Antispam-Report: CIP:149.199.60.96; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(339900001)(189002)(199003)(229853001)(77096005)(86362001)(575784001)(33646002)(48376002)(50466002)(6806004)(118296001)(2950100001)(19580405001)(76176999)(19580395003)(50986999)(87936001)(50226001)(92566002)(77156002)(46102003)(62966003)(85426001)(47776003)(64706001)(106466001)(105606002)(5003600100002)(5003940100001)(36756003)(5001770100001)(71366001)(64026002)(189998001)(5001960100002)(107986001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1AFFO11HUB007; H:xsj-tvapsmtpgw01; FPR:; SPF:Fail; MLV:nov; MX:1; A:1; PTR:unknown-60-96.xilinx.com; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11HUB007; 2:kPHR8E0u2Tkd+d7NrnkRAacs0+xEhRim/Mm1s/bDAxPdZo2oD8maEt/j/QURi/KvLpnXFlH6zqJdICZSR8Y2DdVUZ6r7tmsxhMB6U3nXnLYSJPLxEb/TWp8usoj5MlixWqC8KtldMpK32fBZBWWeoMlC7mTZ8UdLyzhMZQVn4Cw=; 3:myELf6A3uttrBoQeA/D5F5Tow42OKCacDIcyV8lwiSPuGLHIN6YlPwWt0gnilet/ZWwRJlswqcbzGxo59iyTypFh1P2LnFQEHR3FKS8BIgBJax7rAqs7fWWfq8ZNkRw0Lrxh7UBsA7UlJcou0VZEZr62ngcT8YrZpgaBRkGho7EEuxeEZSoFz7b5PvBTptuqRwOVUovUOoDacA5Du6gf/HHNnTdGtI/icfeg871RiTM=; 25:CYbfZBDCq7a526H5HrEMljQAwVlHeQ3q9abookTlQBRoNztO0fCOQaNIfTI3ziCQmZlQbjYwyNKlVOtM3XmCOHMoIeICDamKAcYSCsCHmJbHojN4Phb/5Sp7LvgcUahiRF10KV2RJAk8AqlFk55JzkcTfPEkt787ye/OmLMVfrqwLQSlEljgNhTWvdqEctPOviJqYZJsvACdW41cvfc70Sp8PBtKjOG0hkiOj41OG0ot4kKl4ZctfPrQbJ3LXX0ZARUWpz7xhJj4ylbf3Bj42A== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN1AFFO11HUB007; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11HUB007; 20:3y/GEci+5U9v9kej9Xuf2fVL6iQ8xqFbEyb8XzY5SOODYdlFwkrlHsW6sD0hUfAYKsDYFpbkwlxDzfNjw3eb8K15deO53L96a0C0VMTcipK1BYXz5a4sWxIi+IZJzlGJQLBm106F2t0TDXptULjIeBV7s+2X1tFGyEW8TOMgZKLjaqmYYQUdnKxr1RAXGNCUzbPKSFOsT07YEjfYUXsazoAUpfKSxfhD9REhEE99c5/fdh0QL1Gf3p1E7wm2J174ps7jqSgXUFpbZK/PvLKd02HsRTghaSqjBu1SxyOC/dZNtcKVrFgcQAqqYwqFsmMcFMpyBUBX4N3BTHW08QVpC0IkO+SjALbC9j9SRAea1+DamABjI+U5REAtrDMsw6qk341LNr6Zy81CwUhMHSCdEAVZLMDaAhL/8GldGN/BujMNiqRQ/0lW1IYvq3bfi2CzIFw4KdXTV+PLaQeFVT0jLq1QC8P5nTtT05Iu0FKHNqwHjUuuSYOyyUGcBaw39yXF; 4:L4zvtND79dd7F1VXU/4Wz142L3zsgmyP1xAqkrsFvcw9TJECavKBN8HCzpcnhOKrGYOYJOYti2rvrfdosaKZ8OuckkQn4HLsBIwm9iL7elLOD+ijUMc8mLauD0P3sJ/Z8M5hVpZbzSE0LINtTj1O3/AFhOvCiQ1c5L1lMthDCd13xiQHwow8Xyt2jdMNA4/N/FsX0cucQBvyvIz6w6ZLHWXtZ2BC1B4DJn3UZPUWN3jp6F/Cgff9i6E0AV5sViAZwnwB1OyzVEDjKRJLc9bSKyQ2zeE4lr97W/4/GpWTHQc= BN1AFFO11HUB007: X-MS-Exchange-Organization-RulesExecuted X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(5005006)(3002001); SRVR:BN1AFFO11HUB007; BCL:0; PCL:0; RULEID:; SRVR:BN1AFFO11HUB007; X-Forefront-PRVS: 0650714AAA X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1AFFO11HUB007; 23:jb4RHDbU4nbJg33IATqUHVqlZ8m6uO27yjwLel1?= =?us-ascii?Q?EwiPU5ffkba8OYTYjv8zRBFkxjExR02sqI3lwr18lw9uYdm28BWYYE79qJHv?= =?us-ascii?Q?WyRZPycWp55O1or2LSO01NeC96V9jPQx67UZfh0wbAO3j4j274Ub78XK7w43?= =?us-ascii?Q?GGtmcefMJyz9jbgF8fsryrpm1Xwxqp9nyobP7XHYvhxc8IaNPMhpR2SKOp6Q?= =?us-ascii?Q?jFXvPB2FKcs7vTWQ1akJReUp7bsDNTH6iy+Wmq4HLroBWuCJx/TuJetzm5R8?= =?us-ascii?Q?gU3WylyZCETZLzAbrYwfz1lVIrIMdkpEE3iRf/Pqw43KRTLIEg6uqrauUNOm?= =?us-ascii?Q?v5e+i4Bl77Vo+9ztbN9Baw5aGJY56MZOGycoTBOHLHzX73w21dV0n5ybiC1H?= =?us-ascii?Q?g8PryiU/Du2cW7X1pxVGtiujAicVya98TiVHgBlNJlibEdc2DR2VIYH7amMP?= =?us-ascii?Q?niBDAlDO0Eed8k4cXqGh/3nkZunVb4ugLqH0U7KtFzR4IZRjE84a+GGwTyV5?= =?us-ascii?Q?QDkJV1OAo5bCQGcP+rCD4n9RRzRHDbZsDB9jQ1M30gIC3oSHXOaDu+/E8J38?= =?us-ascii?Q?9PXeQJXehmb333nwxsw6slsdhUSp9rJYHbwmNUKN/W3m26Xfc5D7/fxs9w91?= =?us-ascii?Q?MIDlgZB2Rg4FTWXOvI+7CML513B5VHOIberbPqpD3ERhpeI+Eh923ZawNd2u?= =?us-ascii?Q?g77FEgflizAoVQlSy03uCTf8F7OR5fEYOPOhH1/+Xd6nts5mfKxGLCHaCqiR?= =?us-ascii?Q?se+T09aSy4cJFfgchzrqjjFmSNHVWMveapEpMvdshB9LMK3SlkDdJrlhmu3K?= =?us-ascii?Q?iiX3DkR0stgVWbC7qTNNE6fzS6GZ/SvN/YrxED/bjDNVucLXV7/Z2ITr9ccq?= =?us-ascii?Q?ai3ZuFQ3WRSZ51o8MZOT2MK9yDyZ2TleZnYTtXpj01LFl1zhzxLO5X1D9cXb?= =?us-ascii?Q?Q1zHHoUFED3K/yofxoSVZp6k/y2mXw7NeWxBj+9Yi9eyxauvTnPqAxjdWyvg?= =?us-ascii?Q?Ns1dvbbfhSRpqZ3AuQu1zCjEwd4wngsezDElRgnBxzZhQozugfhEEsJIz7PG?= =?us-ascii?Q?r6h3dTBw=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11HUB007; 5:UJmC3FIeHAhc4bCQsVdaDZ5cHj+WS4ePVku0L7LCy8y362q6QAkfq+QP3+dMY5B7iz/6yOVTKMFiCYry0FFskva1OQHmFNirEvaLzgvZy9K6Cun1dUEZw3WOGXrVfDhxl7ZTKYBvhuoU7uG8IHfAsQ==; 24:wjXJLUBn00ZeMQzYFbJlKf5fbu7/uOaCFptd0fZ4UnhzUR0Tf+8b2xdyzf9vmt95ODF39W2d/V3lrBWugRxe+dcN/7Pl+lFGw6rP9o8llAI= X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jul 2015 18:37:51.3933 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.96]; Helo=[xsj-tvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1AFFO11HUB007 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 X-Received-From: 207.46.100.88 Cc: saipava@xilinx.com, edgar.iglesias@xilinx.com, afaerber@suse.de, alistair.francis@xilinx.com Subject: [Qemu-devel] [PATCH v1 3/3] xlnx-zynqmp: Connect the sysbus AHCI to ZynqMP X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Connect the Sysbus AHCI device to ZynqMP. Signed-off-by: Alistair Francis Reviewed-by: Sai Pavan Boddu --- hw/arm/xlnx-zynqmp.c | 20 ++++++++++++++++++++ include/hw/arm/xlnx-zynqmp.h | 3 +++ 2 files changed, 23 insertions(+), 0 deletions(-) diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c index 62ef4ce..7adcce9 100644 --- a/hw/arm/xlnx-zynqmp.c +++ b/hw/arm/xlnx-zynqmp.c @@ -28,6 +28,9 @@ #define GIC_DIST_ADDR 0xf9010000 #define GIC_CPU_ADDR 0xf9020000 +#define SYSBUS_AHCI_ADDR 0xFD0C0000 +#define SYSBUS_AHCI_INTR 133 + static const uint64_t gem_addr[XLNX_ZYNQMP_NUM_GEMS] = { 0xFF0B0000, 0xFF0C0000, 0xFF0D0000, 0xFF0E0000, }; @@ -90,6 +93,9 @@ static void xlnx_zynqmp_init(Object *obj) object_initialize(&s->uart[i], sizeof(s->uart[i]), TYPE_CADENCE_UART); qdev_set_parent_bus(DEVICE(&s->uart[i]), sysbus_get_default()); } + + object_initialize(&s->sata, sizeof(s->sata), TYPE_SYSBUS_AHCI); + qdev_set_parent_bus(DEVICE(&s->sata), sysbus_get_default()); } static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp) @@ -235,6 +241,20 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp) sysbus_connect_irq(SYS_BUS_DEVICE(&s->uart[i]), 0, gic_spi[uart_intr[i]]); } + + object_property_set_int(OBJECT(&s->sata), 2, "num-ports", &err); + if (err) { + error_propagate((errp), (err)); + return; + } + object_property_set_bool(OBJECT(&s->sata), true, "realized", &err); + if (err) { + error_propagate((errp), (err)); + return; + } + + sysbus_mmio_map(SYS_BUS_DEVICE(&s->sata), 0, SYSBUS_AHCI_ADDR); + sysbus_connect_irq(SYS_BUS_DEVICE(&s->sata), 0, gic_spi[SYSBUS_AHCI_INTR]); } static Property xlnx_zynqmp_props[] = { diff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h index c379632..024e316 100644 --- a/include/hw/arm/xlnx-zynqmp.h +++ b/include/hw/arm/xlnx-zynqmp.h @@ -22,6 +22,8 @@ #include "hw/intc/arm_gic.h" #include "hw/net/cadence_gem.h" #include "hw/char/cadence_uart.h" +#include "hw/ide/pci.h" +#include "hw/ide/ahci.h" #define TYPE_XLNX_ZYNQMP "xlnx,zynqmp" #define XLNX_ZYNQMP(obj) OBJECT_CHECK(XlnxZynqMPState, (obj), \ @@ -54,6 +56,7 @@ typedef struct XlnxZynqMPState { MemoryRegion gic_mr[XLNX_ZYNQMP_GIC_REGIONS][XLNX_ZYNQMP_GIC_ALIASES]; CadenceGEMState gem[XLNX_ZYNQMP_NUM_GEMS]; CadenceUARTState uart[XLNX_ZYNQMP_NUM_UARTS]; + SysbusAHCIState sata; char *boot_cpu; ARMCPU *boot_cpu_ptr;