This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


RE: [Xen-devel] bogus HPET initialization order on x86

To: "Wei, Gang" <gang.wei@xxxxxxxxx>, Jan Beulich <JBeulich@xxxxxxxxxx>
Subject: RE: [Xen-devel] bogus HPET initialization order on x86
From: "Wei, Gang" <gang.wei@xxxxxxxxx>
Date: Fri, 11 Mar 2011 18:40:35 +0800
Accept-language: zh-CN, en-US
Acceptlanguage: zh-CN, en-US
Cc: "keir.xen@xxxxxxxxx" <keir.xen@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Yu, Ke" <ke.yu@xxxxxxxxx>, "Wei, Gang" <gang.wei@xxxxxxxxx>
Delivery-date: Fri, 11 Mar 2011 02:42:35 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <F26D193E20BBDC42A43B611D1BDEDE7125F7800CBF@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <4D7933EE020000780006C4B6@xxxxxxxxxxxxxxxxxx> <F26D193E20BBDC42A43B611D1BDEDE7125F7800936@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <4D79EC8C0200007800035C08@xxxxxxxxxxxxxxxxxx> <F26D193E20BBDC42A43B611D1BDEDE7125F7800CBF@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcvfxvXZjA7eog86Qney/7Bho4kbewACrhqgAAFp3kA=
Thread-topic: [Xen-devel] bogus HPET initialization order on x86
Wei, Gang wrote on 2011-03-11:
>>> Further, it would be better if we could disable PIT interrupt
>>> before calling hpet_broadcast_init(), and re-enable PIT interrupt
>>> only while PIT broadcast is needed.
>> But I'll leave that part to you.
> I will send a patch for this.

Just recalled one point so that we may not have to do this. The HPET device was 
configured as legacy mode before we try to initialize the hpet channel 0 as the 
    cfg = hpet_read32(HPET_CFG);
    cfg |= HPET_CFG_LEGACY;
    hpet_write32(cfg, HPET_CFG);

Once HPET device was configured as legacy mode, the platform timer interrupt 
source was shifted to hpet channel 0 by chipset, and PIT can never trig a 
interrupt after that. HPET spec can tell details.


Xen-devel mailing list