From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 768DAC10F14 for ; Tue, 15 Oct 2019 16:27:58 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 55DD52086A for ; Tue, 15 Oct 2019 16:27:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 55DD52086A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iKPfp-00033e-0U; Tue, 15 Oct 2019 16:27:49 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iKPfo-00033K-0g for xen-devel@lists.xenproject.org; Tue, 15 Oct 2019 16:27:48 +0000 X-Inumbo-ID: b86b4c1a-ef68-11e9-beca-bc764e2007e4 Received: from mx1.redhat.com (unknown [209.132.183.28]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id b86b4c1a-ef68-11e9-beca-bc764e2007e4; Tue, 15 Oct 2019 16:27:46 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D8FE52A09AA; Tue, 15 Oct 2019 16:27:45 +0000 (UTC) Received: from x1w.redhat.com (ovpn-204-35.brq.redhat.com [10.40.204.35]) by smtp.corp.redhat.com (Postfix) with ESMTPS id ACF8119C69; Tue, 15 Oct 2019 16:27:39 +0000 (UTC) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Date: Tue, 15 Oct 2019 18:26:36 +0200 Message-Id: <20191015162705.28087-4-philmd@redhat.com> In-Reply-To: <20191015162705.28087-1-philmd@redhat.com> References: <20191015162705.28087-1-philmd@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Tue, 15 Oct 2019 16:27:46 +0000 (UTC) Subject: [Xen-devel] [PATCH 03/32] mc146818rtc: move structure to header file X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Laurent Vivier , Thomas Huth , Stefano Stabellini , Eduardo Habkost , kvm@vger.kernel.org, Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , Aleksandar Markovic , xen-devel@lists.xenproject.org, Anthony Perard , Igor Mammedov , Aleksandar Rikalo , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno , Richard Henderson Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" RnJvbTogSGVydsOpIFBvdXNzaW5lYXUgPGhwb3Vzc2luQHJlYWN0b3Mub3JnPgoKV2UgYXJlIG5v dyBhYmxlIHRvIGVtYmVkIGEgdGltZXIgaW4gYW5vdGhlciBvYmplY3QuCgpBY2tlZC1ieTogTWlj aGFlbCBTLiBUc2lya2luIDxtc3RAcmVkaGF0LmNvbT4KQWNrZWQtYnk6IFBhb2xvIEJvbnppbmkg PHBib256aW5pQHJlZGhhdC5jb20+ClNpZ25lZC1vZmYtYnk6IEhlcnbDqSBQb3Vzc2luZWF1IDxo cG91c3NpbkByZWFjdG9zLm9yZz4KTWVzc2FnZS1JZDogPDIwMTcxMjE2MDkwMjI4LjI4NTA1LTQt aHBvdXNzaW5AcmVhY3Rvcy5vcmc+ClNpZ25lZC1vZmYtYnk6IFBoaWxpcHBlIE1hdGhpZXUtRGF1 ZMOpIDxwaGlsbWRAcmVkaGF0LmNvbT4KLS0tCiBody90aW1lci9tYzE0NjgxOHJ0Yy5jICAgICAg ICAgfCAzMCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1ZGUvaHcvdGltZXIv bWMxNDY4MThydGMuaCB8IDMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMiBm aWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9ody90aW1lci9tYzE0NjgxOHJ0Yy5jIGIvaHcvdGltZXIvbWMxNDY4MThydGMuYwppbmRl eCA2Y2IzNzg3NTFiLi5lNDBiNTRlNzQzIDEwMDY0NAotLS0gYS9ody90aW1lci9tYzE0NjgxOHJ0 Yy5jCisrKyBiL2h3L3RpbWVyL21jMTQ2ODE4cnRjLmMKQEAgLTcxLDM2ICs3MSw2IEBACiAjZGVm aW5lIFJUQ19DTE9DS19SQVRFICAgICAgICAgICAgMzI3NjgKICNkZWZpbmUgVUlQX0hPTERfTEVO R1RIICAgICAgICAgICAoOCAqIE5BTk9TRUNPTkRTX1BFUl9TRUNPTkQgLyAzMjc2OCkKIAotI2Rl ZmluZSBNQzE0NjgxOF9SVEMob2JqKSBPQkpFQ1RfQ0hFQ0soUlRDU3RhdGUsIChvYmopLCBUWVBF X01DMTQ2ODE4X1JUQykKLQotdHlwZWRlZiBzdHJ1Y3QgUlRDU3RhdGUgewotICAgIElTQURldmlj ZSBwYXJlbnRfb2JqOwotCi0gICAgTWVtb3J5UmVnaW9uIGlvOwotICAgIE1lbW9yeVJlZ2lvbiBj b2FsZXNjZWRfaW87Ci0gICAgdWludDhfdCBjbW9zX2RhdGFbMTI4XTsKLSAgICB1aW50OF90IGNt b3NfaW5kZXg7Ci0gICAgaW50MzJfdCBiYXNlX3llYXI7Ci0gICAgdWludDY0X3QgYmFzZV9ydGM7 Ci0gICAgdWludDY0X3QgbGFzdF91cGRhdGU7Ci0gICAgaW50NjRfdCBvZmZzZXQ7Ci0gICAgcWVt dV9pcnEgaXJxOwotICAgIGludCBpdF9zaGlmdDsKLSAgICAvKiBwZXJpb2RpYyB0aW1lciAqLwot ICAgIFFFTVVUaW1lciAqcGVyaW9kaWNfdGltZXI7Ci0gICAgaW50NjRfdCBuZXh0X3BlcmlvZGlj X3RpbWU7Ci0gICAgLyogdXBkYXRlLWVuZGVkIHRpbWVyICovCi0gICAgUUVNVVRpbWVyICp1cGRh dGVfdGltZXI7Ci0gICAgdWludDY0X3QgbmV4dF9hbGFybV90aW1lOwotICAgIHVpbnQxNl90IGly cV9yZWluamVjdF9vbl9hY2tfY291bnQ7Ci0gICAgdWludDMyX3QgaXJxX2NvYWxlc2NlZDsKLSAg ICB1aW50MzJfdCBwZXJpb2Q7Ci0gICAgUUVNVVRpbWVyICpjb2FsZXNjZWRfdGltZXI7Ci0gICAg TG9zdFRpY2tQb2xpY3kgbG9zdF90aWNrX3BvbGljeTsKLSAgICBOb3RpZmllciBzdXNwZW5kX25v dGlmaWVyOwotICAgIFFMSVNUX0VOVFJZKFJUQ1N0YXRlKSBsaW5rOwotfSBSVENTdGF0ZTsKLQog c3RhdGljIHZvaWQgcnRjX3NldF90aW1lKFJUQ1N0YXRlICpzKTsKIHN0YXRpYyB2b2lkIHJ0Y191 cGRhdGVfdGltZShSVENTdGF0ZSAqcyk7CiBzdGF0aWMgdm9pZCBydGNfc2V0X2Ntb3MoUlRDU3Rh dGUgKnMsIGNvbnN0IHN0cnVjdCB0bSAqdG0pOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody90aW1l ci9tYzE0NjgxOHJ0Yy5oIGIvaW5jbHVkZS9ody90aW1lci9tYzE0NjgxOHJ0Yy5oCmluZGV4IGZl NmVkNjNmNzEuLjBmMWM4ODZlNWIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvaHcvdGltZXIvbWMxNDY4 MThydGMuaAorKysgYi9pbmNsdWRlL2h3L3RpbWVyL21jMTQ2ODE4cnRjLmgKQEAgLTEsMTAgKzEs NDMgQEAKICNpZm5kZWYgTUMxNDY4MThSVENfSAogI2RlZmluZSBNQzE0NjgxOFJUQ19ICiAKKyNp bmNsdWRlICJxYXBpL3FhcGktdHlwZXMtbWlzYy5oIgorI2luY2x1ZGUgInFlbXUvcXVldWUuaCIK KyNpbmNsdWRlICJxZW11L3RpbWVyLmgiCiAjaW5jbHVkZSAiaHcvaXNhL2lzYS5oIgogI2luY2x1 ZGUgImh3L3RpbWVyL21jMTQ2ODE4cnRjX3JlZ3MuaCIKIAogI2RlZmluZSBUWVBFX01DMTQ2ODE4 X1JUQyAibWMxNDY4MThydGMiCisjZGVmaW5lIE1DMTQ2ODE4X1JUQyhvYmopIE9CSkVDVF9DSEVD SyhSVENTdGF0ZSwgKG9iaiksIFRZUEVfTUMxNDY4MThfUlRDKQorCit0eXBlZGVmIHN0cnVjdCBS VENTdGF0ZSB7CisgICAgSVNBRGV2aWNlIHBhcmVudF9vYmo7CisKKyAgICBNZW1vcnlSZWdpb24g aW87CisgICAgTWVtb3J5UmVnaW9uIGNvYWxlc2NlZF9pbzsKKyAgICB1aW50OF90IGNtb3NfZGF0 YVsxMjhdOworICAgIHVpbnQ4X3QgY21vc19pbmRleDsKKyAgICBpbnQzMl90IGJhc2VfeWVhcjsK KyAgICB1aW50NjRfdCBiYXNlX3J0YzsKKyAgICB1aW50NjRfdCBsYXN0X3VwZGF0ZTsKKyAgICBp bnQ2NF90IG9mZnNldDsKKyAgICBxZW11X2lycSBpcnE7CisgICAgaW50IGl0X3NoaWZ0OworICAg IC8qIHBlcmlvZGljIHRpbWVyICovCisgICAgUUVNVVRpbWVyICpwZXJpb2RpY190aW1lcjsKKyAg ICBpbnQ2NF90IG5leHRfcGVyaW9kaWNfdGltZTsKKyAgICAvKiB1cGRhdGUtZW5kZWQgdGltZXIg Ki8KKyAgICBRRU1VVGltZXIgKnVwZGF0ZV90aW1lcjsKKyAgICB1aW50NjRfdCBuZXh0X2FsYXJt X3RpbWU7CisgICAgdWludDE2X3QgaXJxX3JlaW5qZWN0X29uX2Fja19jb3VudDsKKyAgICB1aW50 MzJfdCBpcnFfY29hbGVzY2VkOworICAgIHVpbnQzMl90IHBlcmlvZDsKKyAgICBRRU1VVGltZXIg KmNvYWxlc2NlZF90aW1lcjsKKyAgICBOb3RpZmllciBjbG9ja19yZXNldF9ub3RpZmllcjsKKyAg ICBMb3N0VGlja1BvbGljeSBsb3N0X3RpY2tfcG9saWN5OworICAgIE5vdGlmaWVyIHN1c3BlbmRf bm90aWZpZXI7CisgICAgUUxJU1RfRU5UUlkoUlRDU3RhdGUpIGxpbms7Cit9IFJUQ1N0YXRlOwog CiBJU0FEZXZpY2UgKm1jMTQ2ODE4X3J0Y19pbml0KElTQUJ1cyAqYnVzLCBpbnQgYmFzZV95ZWFy LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxZW11X2lycSBpbnRlcmNlcHRfaXJxKTsK LS0gCjIuMjEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 11BD7ECE588 for ; Tue, 15 Oct 2019 16:27:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E8B042086A for ; Tue, 15 Oct 2019 16:27:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387973AbfJOQ1s (ORCPT ); Tue, 15 Oct 2019 12:27:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:17990 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728987AbfJOQ1q (ORCPT ); Tue, 15 Oct 2019 12:27:46 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D8FE52A09AA; Tue, 15 Oct 2019 16:27:45 +0000 (UTC) Received: from x1w.redhat.com (ovpn-204-35.brq.redhat.com [10.40.204.35]) by smtp.corp.redhat.com (Postfix) with ESMTPS id ACF8119C69; Tue, 15 Oct 2019 16:27:39 +0000 (UTC) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aleksandar Markovic , Aurelien Jarno , Eduardo Habkost , Thomas Huth , Igor Mammedov , Anthony Perard , Stefano Stabellini , Paul Durrant , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , Aleksandar Rikalo , xen-devel@lists.xenproject.org, Laurent Vivier , "Michael S. Tsirkin" , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , kvm@vger.kernel.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 03/32] mc146818rtc: move structure to header file Date: Tue, 15 Oct 2019 18:26:36 +0200 Message-Id: <20191015162705.28087-4-philmd@redhat.com> In-Reply-To: <20191015162705.28087-1-philmd@redhat.com> References: <20191015162705.28087-1-philmd@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Tue, 15 Oct 2019 16:27:46 +0000 (UTC) Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org From: Hervé Poussineau We are now able to embed a timer in another object. Acked-by: Michael S. Tsirkin Acked-by: Paolo Bonzini Signed-off-by: Hervé Poussineau Message-Id: <20171216090228.28505-4-hpoussin@reactos.org> Signed-off-by: Philippe Mathieu-Daudé --- hw/timer/mc146818rtc.c | 30 ------------------------------ include/hw/timer/mc146818rtc.h | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 30 deletions(-) diff --git a/hw/timer/mc146818rtc.c b/hw/timer/mc146818rtc.c index 6cb378751b..e40b54e743 100644 --- a/hw/timer/mc146818rtc.c +++ b/hw/timer/mc146818rtc.c @@ -71,36 +71,6 @@ #define RTC_CLOCK_RATE 32768 #define UIP_HOLD_LENGTH (8 * NANOSECONDS_PER_SECOND / 32768) -#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RTC) - -typedef struct RTCState { - ISADevice parent_obj; - - MemoryRegion io; - MemoryRegion coalesced_io; - uint8_t cmos_data[128]; - uint8_t cmos_index; - int32_t base_year; - uint64_t base_rtc; - uint64_t last_update; - int64_t offset; - qemu_irq irq; - int it_shift; - /* periodic timer */ - QEMUTimer *periodic_timer; - int64_t next_periodic_time; - /* update-ended timer */ - QEMUTimer *update_timer; - uint64_t next_alarm_time; - uint16_t irq_reinject_on_ack_count; - uint32_t irq_coalesced; - uint32_t period; - QEMUTimer *coalesced_timer; - LostTickPolicy lost_tick_policy; - Notifier suspend_notifier; - QLIST_ENTRY(RTCState) link; -} RTCState; - static void rtc_set_time(RTCState *s); static void rtc_update_time(RTCState *s); static void rtc_set_cmos(RTCState *s, const struct tm *tm); diff --git a/include/hw/timer/mc146818rtc.h b/include/hw/timer/mc146818rtc.h index fe6ed63f71..0f1c886e5b 100644 --- a/include/hw/timer/mc146818rtc.h +++ b/include/hw/timer/mc146818rtc.h @@ -1,10 +1,43 @@ #ifndef MC146818RTC_H #define MC146818RTC_H +#include "qapi/qapi-types-misc.h" +#include "qemu/queue.h" +#include "qemu/timer.h" #include "hw/isa/isa.h" #include "hw/timer/mc146818rtc_regs.h" #define TYPE_MC146818_RTC "mc146818rtc" +#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RTC) + +typedef struct RTCState { + ISADevice parent_obj; + + MemoryRegion io; + MemoryRegion coalesced_io; + uint8_t cmos_data[128]; + uint8_t cmos_index; + int32_t base_year; + uint64_t base_rtc; + uint64_t last_update; + int64_t offset; + qemu_irq irq; + int it_shift; + /* periodic timer */ + QEMUTimer *periodic_timer; + int64_t next_periodic_time; + /* update-ended timer */ + QEMUTimer *update_timer; + uint64_t next_alarm_time; + uint16_t irq_reinject_on_ack_count; + uint32_t irq_coalesced; + uint32_t period; + QEMUTimer *coalesced_timer; + Notifier clock_reset_notifier; + LostTickPolicy lost_tick_policy; + Notifier suspend_notifier; + QLIST_ENTRY(RTCState) link; +} RTCState; ISADevice *mc146818_rtc_init(ISABus *bus, int base_year, qemu_irq intercept_irq); -- 2.21.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A682AC10F14 for ; Tue, 15 Oct 2019 16:34:17 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 7B6AC2086A for ; Tue, 15 Oct 2019 16:34:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7B6AC2086A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:52654 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iKPm3-00068r-2p for qemu-devel@archiver.kernel.org; Tue, 15 Oct 2019 12:34:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:40882) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iKPfo-000057-DF for qemu-devel@nongnu.org; Tue, 15 Oct 2019 12:27:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iKPfn-0004Hj-2n for qemu-devel@nongnu.org; Tue, 15 Oct 2019 12:27:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:55382) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iKPfm-0004HS-Qm for qemu-devel@nongnu.org; Tue, 15 Oct 2019 12:27:47 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D8FE52A09AA; Tue, 15 Oct 2019 16:27:45 +0000 (UTC) Received: from x1w.redhat.com (ovpn-204-35.brq.redhat.com [10.40.204.35]) by smtp.corp.redhat.com (Postfix) with ESMTPS id ACF8119C69; Tue, 15 Oct 2019 16:27:39 +0000 (UTC) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Subject: [PATCH 03/32] mc146818rtc: move structure to header file Date: Tue, 15 Oct 2019 18:26:36 +0200 Message-Id: <20191015162705.28087-4-philmd@redhat.com> In-Reply-To: <20191015162705.28087-1-philmd@redhat.com> References: <20191015162705.28087-1-philmd@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Tue, 15 Oct 2019 16:27:46 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Laurent Vivier , Thomas Huth , Stefano Stabellini , Eduardo Habkost , kvm@vger.kernel.org, Paul Durrant , "Michael S. Tsirkin" , Paolo Bonzini , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , Aleksandar Markovic , xen-devel@lists.xenproject.org, Anthony Perard , Igor Mammedov , Aleksandar Rikalo , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno , Richard Henderson Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Herv=C3=A9 Poussineau We are now able to embed a timer in another object. Acked-by: Michael S. Tsirkin Acked-by: Paolo Bonzini Signed-off-by: Herv=C3=A9 Poussineau Message-Id: <20171216090228.28505-4-hpoussin@reactos.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/timer/mc146818rtc.c | 30 ------------------------------ include/hw/timer/mc146818rtc.h | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 30 deletions(-) diff --git a/hw/timer/mc146818rtc.c b/hw/timer/mc146818rtc.c index 6cb378751b..e40b54e743 100644 --- a/hw/timer/mc146818rtc.c +++ b/hw/timer/mc146818rtc.c @@ -71,36 +71,6 @@ #define RTC_CLOCK_RATE 32768 #define UIP_HOLD_LENGTH (8 * NANOSECONDS_PER_SECOND / 32768) =20 -#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RT= C) - -typedef struct RTCState { - ISADevice parent_obj; - - MemoryRegion io; - MemoryRegion coalesced_io; - uint8_t cmos_data[128]; - uint8_t cmos_index; - int32_t base_year; - uint64_t base_rtc; - uint64_t last_update; - int64_t offset; - qemu_irq irq; - int it_shift; - /* periodic timer */ - QEMUTimer *periodic_timer; - int64_t next_periodic_time; - /* update-ended timer */ - QEMUTimer *update_timer; - uint64_t next_alarm_time; - uint16_t irq_reinject_on_ack_count; - uint32_t irq_coalesced; - uint32_t period; - QEMUTimer *coalesced_timer; - LostTickPolicy lost_tick_policy; - Notifier suspend_notifier; - QLIST_ENTRY(RTCState) link; -} RTCState; - static void rtc_set_time(RTCState *s); static void rtc_update_time(RTCState *s); static void rtc_set_cmos(RTCState *s, const struct tm *tm); diff --git a/include/hw/timer/mc146818rtc.h b/include/hw/timer/mc146818rt= c.h index fe6ed63f71..0f1c886e5b 100644 --- a/include/hw/timer/mc146818rtc.h +++ b/include/hw/timer/mc146818rtc.h @@ -1,10 +1,43 @@ #ifndef MC146818RTC_H #define MC146818RTC_H =20 +#include "qapi/qapi-types-misc.h" +#include "qemu/queue.h" +#include "qemu/timer.h" #include "hw/isa/isa.h" #include "hw/timer/mc146818rtc_regs.h" =20 #define TYPE_MC146818_RTC "mc146818rtc" +#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RT= C) + +typedef struct RTCState { + ISADevice parent_obj; + + MemoryRegion io; + MemoryRegion coalesced_io; + uint8_t cmos_data[128]; + uint8_t cmos_index; + int32_t base_year; + uint64_t base_rtc; + uint64_t last_update; + int64_t offset; + qemu_irq irq; + int it_shift; + /* periodic timer */ + QEMUTimer *periodic_timer; + int64_t next_periodic_time; + /* update-ended timer */ + QEMUTimer *update_timer; + uint64_t next_alarm_time; + uint16_t irq_reinject_on_ack_count; + uint32_t irq_coalesced; + uint32_t period; + QEMUTimer *coalesced_timer; + Notifier clock_reset_notifier; + LostTickPolicy lost_tick_policy; + Notifier suspend_notifier; + QLIST_ENTRY(RTCState) link; +} RTCState; =20 ISADevice *mc146818_rtc_init(ISABus *bus, int base_year, qemu_irq intercept_irq); --=20 2.21.0