From patchwork Tue Jan 23 22:24:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 865063 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="0aiaLaBX"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zR30F3XCZz9s7n for ; Wed, 24 Jan 2018 09:30:21 +1100 (AEDT) Received: from localhost ([::1]:57801 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ee759-00038k-KA for incoming@patchwork.ozlabs.org; Tue, 23 Jan 2018 17:30:19 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38679) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ee74K-00034K-Ul for qemu-devel@nongnu.org; Tue, 23 Jan 2018 17:29:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ee74H-0000CW-1N for qemu-devel@nongnu.org; Tue, 23 Jan 2018 17:29:28 -0500 Received: from mail-bl2nam02on0078.outbound.protection.outlook.com ([104.47.38.78]:14704 helo=NAM02-BL2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ee74G-0000Be-PM for qemu-devel@nongnu.org; Tue, 23 Jan 2018 17:29:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector1-xilinx-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=M/PIcj+/7ucopMK72QKwgVNpWrYpeocN7JUKROSjf8o=; b=0aiaLaBXRllGLI1i+kbVBhkcinjwIiT546BfAoO0jxbogGINHCOQDpcTK26NjjMmH7DhNQ6HpSx14PAbiAIgHZlOTzfmWonJz9Trokds61djoQlaPjRzQu20f8Lz7gaoDxKSLG+GhlCUdAW5Cg0sM3Nzg7FLccVK6En2JKVecyQ= Received: from BY2PR02CA0098.namprd02.prod.outlook.com (10.163.44.152) by CY1PR02MB1336.namprd02.prod.outlook.com (10.161.170.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.428.17; Tue, 23 Jan 2018 22:29:22 +0000 Received: from BL2NAM02FT012.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e46::203) by BY2PR02CA0098.outlook.office365.com (2a01:111:e400:5261::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.444.14 via Frontend Transport; Tue, 23 Jan 2018 22:29:21 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by BL2NAM02FT012.mail.protection.outlook.com (10.152.77.27) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.428.12 via Frontend Transport; Tue, 23 Jan 2018 22:29:21 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66] helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1ee74C-00068x-Da; Tue, 23 Jan 2018 14:29:20 -0800 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1ee74C-00089S-CY; Tue, 23 Jan 2018 14:29:20 -0800 Received: from [172.19.2.220] (helo=xsjalistai50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1ee745-00088c-22; Tue, 23 Jan 2018 14:29:13 -0800 From: Alistair Francis To: , Date: Tue, 23 Jan 2018 14:24:50 -0800 Message-ID: X-Mailer: git-send-email 2.14.1 In-Reply-To: References: MIME-Version: 1.0 X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23614.006 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39380400002)(346002)(396003)(376002)(39860400002)(2980300002)(438002)(189003)(199004)(5820100001)(9786002)(36386004)(575784001)(106002)(77096007)(50226002)(2950100002)(316002)(47776003)(6666003)(336011)(26005)(81156014)(8936002)(110136005)(478600001)(8676002)(54906003)(81166006)(2906002)(2870700001)(63266004)(76176011)(7696005)(23676004)(106466001)(50466002)(4326008)(118296001)(305945005)(36756003)(39060400002)(356003)(5660300001)(107986001); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR02MB1336; H:xsj-pvapsmtpgw01; FPR:; SPF:Pass; PTR:unknown-60-83.xilinx.com; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2NAM02FT012; 1:fLpDWPeseF0uvbp4kd7Sw5WIC7IWHd+9dautZLzixRredz4cp6OVfCoyVOJepT0BI4t/TddrdlJnbE06tMzXu7j1SMBrI79XdsQhMT5NK34/KNuNqQblpEfYfRm67Owi X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c3f65e02-15e4-4469-7037-08d562b0bfe4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(4608076)(2017052603307)(7153060); SRVR:CY1PR02MB1336; X-Microsoft-Exchange-Diagnostics: 1; CY1PR02MB1336; 3:bnsh2OOfSTdLnEV9R1SRGmy3mPrCXK0xQFgJVRZ/xW3a6SHxV+OtQdOQT6+oB2twc9ptH0d2a3CwX6+AvOoDo8OC6OdFNHkM8y7eiZ2qqAC/c/JHh1U3agt/KutU9ajOm/vMH2vMpeCGkreoSAzqUoqKnejW8YXWg4nTBTlyZx38WCaLFm5JmZs28hIAy+6rnNfiO9V/Fs79fksGfWz7AxG/jsVFgeUOiRV4WCSfxVC5FM0SqEB9s/aE8K6NBgc2wMttB1OKVDH9qNWP+LpU7wlDvbA2LSYoQpEN5NTFERnPCx7ggGhHR57bkcSYKkk9jCGLuYOk8Q4ZsouQLkaDp/AJGZG69gMqMEIWRs3eAJ4=; 25:iHImZqwahxXXA1p8A0/rllFSFxfAdssY3RbkL1G1zNitY3CxqsP1A/0FkzCtX5LyA/+NqYIo193LrprjwoozEA8vemUsmGUf5j/YYdigATkWDx+nxPt+HCyme4+uDRynCbNFoUpObKDIFR+wW4+FOPSGYKHSomsTXCe4KvZNC6S0WSRF0Ez3Gz8u0CV4vfjkUpHCjiuzrM+//rGh7ZvfkM/h4H00+1eVNAw3YF7LwScE7s4572Wm2UwjzJBCCA70k/+IwAc7COMRYEQ3q9C9SKVaJ3+VR0Y+H5uwrngSLG5du9YKMX+fVsnXQWjHNxuVNvpVcdlt8CLnVhghm8eobQ== X-MS-TrafficTypeDiagnostic: CY1PR02MB1336: X-Microsoft-Exchange-Diagnostics: 1; CY1PR02MB1336; 31:yxARe+yNmiXXgZ4FzNfIuO4GzsWqWgHEnP4CzL+iQ12bpKDLkxCu6BzNLRyzfzKxrdY6Bu6UIB1N9Brg8RnUjHYsVua/nRRa+/fg96XSCXdUhLDTRiB73CBtGd8TKjQKPuxVGWq+T3UbkS9SL999XcBFO+9FyCNHx6LoFhy9SwDpZKjHzZOLT4HlqpXKpOAER4GVpuQjjf8Pp/cPnS1nTJm05NHAZvRQjWdI6y5dxcE=; 20:feyz6/INpEe+qGkezkrNvRZMeYy/PJfxV7IkrhpaHiJ9Js29FlYw45Hw6TGUGAYgTkbAYjyUGw0hlrT+sEpMS2d68f77r8cDN5lcAAOwhCqPpCdzRupMfHLrynDJN3dj6E/qLVyjYVa/hlTLBc9y/3H4VlmwYHbiKqtpQFPSUEryHLkQmoSuRFbgaGXiYRsR6+u8dqXqhLyySogQGaeXvMLcaF1Lml6G8XHV/YioufXJmYUaLgsGMSLaOO02C9+b1jiS0t/A/0tIW0DIidvpIFBy3RydICb+q7RZmpkB9cby//2Jxy+rW+6K2lnJLjKulmEqnd6Uk+clEZdfg82vdTkUvWhphyiGqhISFv1WNYhpZbjTgGv74dd0HlL3rnI8S7ab58nxrSX3GNHHMGf3nPFAFGiFxpAnEE4IAPPbYCQYzqLtmdT66Q/lgMPKd0kp0jPuo+gjCjq4UcSOmBZB5GtkoeZ8pdW+uxdJTMLbLeKl56NzpQTB2I2Esfdp+CPM X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192813158149592)(21532816269658); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(3231023)(2400081)(944501161)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041288)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(6072148)(201708071742011); SRVR:CY1PR02MB1336; BCL:0; PCL:0; RULEID:; SRVR:CY1PR02MB1336; X-Microsoft-Exchange-Diagnostics: 1; CY1PR02MB1336; 4:sQwUtelDV/6NhRicL5d+khDh0BVeoRmVbLoqprpv7oMsCI6mZI/t6utSxzmrTsVZGI9MBAbJamm9jZgu88HOs9kxCMyNkOkwIOAN6Se9zgvrKk1RdCEIUJAMA+1WFGMJWGlCiI9ZHdvAEhhcDiGd8DwwLD4O1Cn29pT27kAMQph9df0z2VR/JucOoBEiDswHwQOedf5EpeecCfMcb2uIj26MmMRvX188eC1srDCYKl4znNEffStTSCqJcMAIppQUwjHkH0oW/jEl4joMntxiEHD/ioP6hWUR7p48iS+0Zwt7jaKQNvKLYKXxDjpIfB/SIxwJTet97AoSIQ1Tb9hZCFaaXmbq0DO8l2jo/MHH2XM= X-Forefront-PRVS: 05610E64EE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR02MB1336; 23:3xqFz+ZRb3kLwnKSm99pR8Nm8cTn3vnuL7DiieFbU?= VTXq2rO+NJAWmjfHncCuR42uj0USasFmQCqTDYZlXdCkLOyFvrvKv3pGKtS+kRpYzhMUqdldUkUrPmn2cZMkYY47eOrzlZaDQhTKnDA8F+PlMM4Jy8K5B4MHUcAgQqU5ZVoAFDk/W/pevcNVsGTyqLAFskNYEKzNBbxxC7KQCvZV2Gmpb2lP/z/8FoOQZE4J3QLNVSYhMHQS+ZIKjSpoXwgQ4iwEiVgQ6H9FXxIQWTB0/lM6ohF10T6UIKKNFEr3sAe2ac5b7FeAxkBlwDlizCF5J+mQbwIRIJC2CYae2jrmLsDMlVz0WvDiAyq6YCGTL4a3urrtGDPDH51emgcr0/7bH7167x/hZR8kktYuwXeTnaCbNkB3syoXWtMSb+oY/Cj8xULwsSUiWqLwVAr7t6zlV3r2uLTIBP/eE6hcUWA3+SfUZot2Nj0gBU4OVReFft/S7hAZDMI96589QDeL3CMyGy5z3dvS+ZfLgbNoBCmPXlhHGVm/bv5y+xzjrbZCxj1T9P2LZvrkONuf4NxLpPlg+Klb8H36m02dCjs0QmuBVuUYq3n/GVaTAkheFCHRbJ+kWUJVj2Ltt16ZsSJMcNf9h0+asHnHALzDIRlfDSU+SUgQYUWFXOKPMzz+s9csp2Wl3bxEyDm6jrMAWlGPdLtXbz9fBRmOB4PDGUitz6adWDgvfVLz35TYMYEEic9zTVbBbJUFrZuzBo4QQpnT5LesiLFOr0O5jzop5Fq26EFr6robRCzN8qDFi0bU1O1U964ZumZruDFm93eGz0iyBYk6dOVOoXM+xHVKLIZ3rrTJnGUKLg7uz836kH2SX8zMEu0YQ7uszIN2JwwMrgKM2Y+H+Rr441uNEbaQN6YH6nmZLVP/70GHibchrKk+yFOv/iaJT2OpYLvig0Y2V7Ibksjn/YCsI05bQBOc/7WMrr8/4IhzWQTJnkNU39FJUtO30VBid0ml1QMjS7fq7B/Q6vv2x0To9b1sxbUEMcjpsW9Uq5Lp05qXiOa/jesSWP4DUMjlx5evWiELpTZk1rJ2pfF X-Microsoft-Exchange-Diagnostics: 1; CY1PR02MB1336; 6:vKIYKorKJFk+90uBDHK/9KLMAKfkFWeLnvnHKb/mdjkrVcdgH3Wdiec2frE0AQthPJ0SgR6J8P64lqwR62cnM+AiiwTmQWoHKptbifsTd6nOJ3J3GANfB5PR0HXrckLNEbqGKlADUyjSU4R3FBJk4exz2wtQbzN4gzrh2j8jJwyGvxSHSlfg029RspuTl/QTIrQGXRQRl+68+cC8GIClTxLu8y/RxAo7+vLqEm57vUh2mjU6lLpkZw1mC6L15u8YtSz2qg+g0aiH5qfbh24uof3x0DviO/mKUeg1kPMZUrSzG/UQlnpWeCg8QOW028UzA6ZcaxhUPyWN6kL+RGFK4oKN+y1CwjIjcj5cl0MREqY=; 5:kPqg6t/T6ovr1WQ2+4n0kU2l25P1MJjw+7mn4X/Kx5qCbu+zKgjnS8JGcz8txrqOysuxktNptI2mDTwghePXCKMGu3AG+6UBZX8pwGs4OOFB68uSoeoLGcvgZDWhaoxD0iowe8TaFbmxzA8YUHqhkiz/2aBaEUbpkUNd0USt5vk=; 24:4MUm2EZAFtI82MSCIKLBQy/2kBQJjPCLC2vf8b1uxn++5D9HIjt3OwPscI0c3OUG/H05bIN6dnRkmWXHD0Xd98K9ITUoT96HHqqen0kWIdI=; 7:Hd7mIob2sQj528f33Cb2XXbCBwGPukMzqLKMfgmR+kbF4PwQwPtdgpa2JtosW5uNdfkkb/KFvOOUW2b7gsiYsTDEibXD8grFOTA1UDUTrpfE3wsjVVFxBHhL4JmGU4nhsz/4vjlv6g4tvs6azuAB6OwebJxk01IrJhJc/oImBQlnF3tZkuXxJ/r22zDir0TEIN4MLuwm1hllaqsqW3xUo0nHnAeFyJ3W1djxEUxmlYUC6r1vA+L5UG45fQDgaupI SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jan 2018 22:29:21.4259 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c3f65e02-15e4-4469-7037-08d562b0bfe4 X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR02MB1336 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.38.78 Subject: [Qemu-devel] [PATCH v5 3/3] xlnx-zynqmp: Connect the RTC 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: edgar.iglesias@xilinx.com, alistair23@gmail.com, edgar.iglesias@gmail.com, f4bug@amsat.org, alistair.francis@xilinx.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Alistair Francis Reviewed-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé --- include/hw/arm/xlnx-zynqmp.h | 2 ++ hw/arm/xlnx-zynqmp.c | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h index 3e6fb9b7bd..9e8c9e18dd 100644 --- a/include/hw/arm/xlnx-zynqmp.h +++ b/include/hw/arm/xlnx-zynqmp.h @@ -28,6 +28,7 @@ #include "hw/ssi/xilinx_spips.h" #include "hw/dma/xlnx_dpdma.h" #include "hw/display/xlnx_dp.h" +#include "hw/timer/xlnx-zynqmp-rtc.h" #define TYPE_XLNX_ZYNQMP "xlnx,zynqmp" #define XLNX_ZYNQMP(obj) OBJECT_CHECK(XlnxZynqMPState, (obj), \ @@ -90,6 +91,7 @@ typedef struct XlnxZynqMPState { XlnxZynqMPQSPIPS qspi; XlnxDPState dp; XlnxDPDMAState dpdma; + XlnxZynqMPRTC rtc; char *boot_cpu; ARMCPU *boot_cpu_ptr; diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c index 325642058b..deef583c2a 100644 --- a/hw/arm/xlnx-zynqmp.c +++ b/hw/arm/xlnx-zynqmp.c @@ -50,6 +50,9 @@ #define DPDMA_ADDR 0xfd4c0000 #define DPDMA_IRQ 116 +#define RTC_ADDR 0xffa60000 +#define RTC_IRQ 26 + static const uint64_t gem_addr[XLNX_ZYNQMP_NUM_GEMS] = { 0xFF0B0000, 0xFF0C0000, 0xFF0D0000, 0xFF0E0000, }; @@ -183,6 +186,9 @@ static void xlnx_zynqmp_init(Object *obj) object_initialize(&s->dpdma, sizeof(s->dpdma), TYPE_XLNX_DPDMA); qdev_set_parent_bus(DEVICE(&s->dpdma), sysbus_get_default()); + + object_initialize(&s->rtc, sizeof(s->rtc), TYPE_XLNX_ZYNQMP_RTC); + qdev_set_parent_bus(DEVICE(&s->rtc), sysbus_get_default()); } static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp) @@ -454,6 +460,14 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp) &error_abort); sysbus_mmio_map(SYS_BUS_DEVICE(&s->dpdma), 0, DPDMA_ADDR); sysbus_connect_irq(SYS_BUS_DEVICE(&s->dpdma), 0, gic_spi[DPDMA_IRQ]); + + object_property_set_bool(OBJECT(&s->rtc), true, "realized", &err); + if (err) { + error_propagate(errp, err); + return; + } + sysbus_mmio_map(SYS_BUS_DEVICE(&s->rtc), 0, RTC_ADDR); + sysbus_connect_irq(SYS_BUS_DEVICE(&s->rtc), 0, gic_spi[RTC_IRQ]); } static Property xlnx_zynqmp_props[] = {