[adding HPET driver maintainer] A couple of comments below...
On 05/12/17 19:30, PGNet Dev wrote: > I run kernel 4.11.0-4 on a Supermicro X10SAT motherboard. > > HPET's enabled in BIOS, and apparently firmware table data is available. > > But, hpet is not an available_clocksource. > > Where's this need to be addressed/fixed? In my config, in kernel code, &/or > in BIOS? > > info: > > @ the mobo, > > dmidecode > # dmidecode 3.0 > Getting SMBIOS data from sysfs. > SMBIOS 2.7 present. > 81 structures occupying 3317 bytes. > Table at 0x000EC200. > > Handle 0x0000, DMI type 0, 24 bytes > BIOS Information > Vendor: American Megatrends Inc. > Version: 3.0 > Release Date: 05/26/2015 > Address: 0xF0000 > Runtime Size: 64 kB > ROM Size: 16384 kB > Characteristics: > PCI is supported > BIOS is upgradeable > BIOS shadowing is allowed > Boot from CD is supported > Selectable boot is supported > BIOS ROM is socketed > EDD is supported > 5.25"/1.2 MB floppy services are supported (int > 13h) > 3.5"/720 kB floppy services are supported (int > 13h) > 3.5"/2.88 MB floppy services are supported (int > 13h) > Print screen service is supported (int 5h) > 8042 keyboard services are supported (int 9h) > Serial services are supported (int 14h) > Printer services are supported (int 17h) > ACPI is supported > USB legacy is supported > BIOS boot specification is supported > Targeted content distribution is supported > UEFI is supported > BIOS Revision: 4.6 > > In BIOS, HPET's enabled. How about if you just boot Linux without Xen? Does HPET show up then? > On boot to Xen on linux64 > > xl info > release : 4.11.0-4.gcb15206-default > version : #1 SMP PREEMPT Thu May 11 07:36:09 UTC > 2017 (cb15206) > machine : x86_64 > nr_cpus : 4 > max_cpu_id : 3 > nr_nodes : 1 > cores_per_socket : 4 > threads_per_core : 1 > cpu_mhz : 3092 > hw_caps : > bfebfbff:77faf3ff:2c100800:00000021:00000001:000027ab:00000000:00000100 > virt_caps : hvm hvm_directio > total_memory : 32493 > free_memory : 25899 > sharing_freed_memory : 0 > sharing_used_memory : 0 > outstanding_claims : 0 > free_cpus : 0 > xen_major : 4 > xen_minor : 9 > xen_extra : .0_04-493 > xen_version : 4.9.0_04-493 > xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p > hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 > xen_scheduler : credit2 > xen_pagesize : 4096 > platform_params : virt_start=0xffff800000000000 > xen_changeset : > xen_commandline : dom0_mem=4096M,max:4096M > dom0_max_vcpus=4 vga=gfx-1920x1080x16 com1=115200,8n1,pci console=com1,vga > console_timestamps console_to_ring conring_size=64 sched=credit2 sched_debug > reboot=acpi log_buf_len=16M iommu=verbose apic_verbosity=verbose loglvl=all > guest_loglvl=all noreboot=false sync_console=true > cc_compiler : gcc (SUSE Linux) 4.8.5 > cc_compile_by : abuild > cc_compile_domain : suse.de > cc_compile_date : Wed May 10 21:26:38 UTC 2017 > build_id : dde541fac1512c7b1ce17e7496aab57a > xend_config_format : 4 > > grep -i hpet /boot/config-4.11.0-4.gcb15206-default > CONFIG_HPET_TIMER=y > CONFIG_HPET_EMULATE_RTC=y > CONFIG_HPET=y > CONFIG_HPET_MMAP=y > CONFIG_HPET_MMAP_DEFAULT=y > > > , dmesg reports > > dmesg | grep -i hpet > [ 0.000000] Command line: root=/dev/mapper/VG0_ROOT rd.shell > rd.auto=1 rootfstype=ext4 rootflags=journal_checksum noresume video=vesa:off > video=efifb:1024x768 video=HDMI-A-1:1920x1080@60 xencons=xvc console=tty0 > console=hvc0 elevator=deadline cpuidle cpufreq=xen:ondemand > hpet=force,verbose net.ifnames=1 biosdevname=1 pcie_aspm=off mce=off > nomodeset showopts noquiet log_buf_len=10M print_fatal_signals=1 > systemd.log_level=debug systemd.log_target=kmsg earlyprintk=xen,keep debug > loglevel=8 > [ 0.000000] ACPI: HPET 0x000000009E8298F8 000038 (v01 SUPERM > SMCI--MB 01072009 AMI. 00000005) > [ 0.000000] ACPI: HPET id: 0x8086a701 base: 0xfed00000 > [ 0.000000] Kernel command line: root=/dev/mapper/VG0_ROOT > rd.shell rd.auto=1 rootfstype=ext4 rootflags=journal_checksum noresume > video=vesa:off video=efifb:1024x768 video=HDMI-A-1:1920x1080@60 xencons=xvc > console=tty0 console=hvc0 elevator=deadline cpuidle cpufreq=xen:ondemand > hpet=force,verbose net.ifnames=1 biosdevname=1 pcie_aspm=off mce=off > nomodeset showopts noquiet log_buf_len=10M print_fatal_signals=1 > systemd.log_level=debug systemd.log_target=kmsg earlyprintk=xen,keep debug > loglevel=8 > [ 8.491738] hpet_acpi_add: no address or irqs in _CRS Above line marks a big failure. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > After boot, however, no hpet clocksource is available > > cat /sys/devices/system/clocksource/clocksource0/available_clocksource > tsc xen > > Disassembling the firmware acpi tables > > cat /sys/firmware/acpi/tables/HPET > /var/tmp/hpet.out > iasl -d /var/tmp/hpet.out > Intel ACPI Component Architecture > ASL Optimizing Compiler version 20140214-64 > Copyright (c) 2000 - 2014 Intel Corporation > > Loading Acpi table from file /var/tmp/hpet.out - Length > 00000056 (000038) > Acpi Data Table [HPET] decoded > Formatted output: /var/tmp/hpet.dsl - 1835 bytes > > cat /var/tmp/hpet.dsl > /* > * Intel ACPI Component Architecture > * AML Disassembler version 20140214-64 > * Copyright (c) 2000 - 2014 Intel Corporation > * > * Disassembly of /var/tmp/hpet.out, Fri May 12 18:46:28 2017 > * > * ACPI Data Table [HPET] > * > * Format: [HexOffset DecimalOffset ByteLength] FieldName : > FieldValue > */ > > [000h 0000 4] Signature : "HPET" [High > Precision Event Timer table] > [004h 0004 4] Table Length : 00000038 > [008h 0008 1] Revision : 01 > [009h 0009 1] Checksum : 89 > [00Ah 0010 6] Oem ID : "SUPERM" > [010h 0016 8] Oem Table ID : "SMCI--MB" > [018h 0024 4] Oem Revision : 01072009 > [01Ch 0028 4] Asl Compiler ID : "AMI." > [020h 0032 4] Asl Compiler Revision : 00000005 > > [024h 0036 4] Hardware Block ID : 8086A701 > > [028h 0040 12] Timer Block Register : [Generic Address > Structure] > [028h 0040 1] Space ID : 00 [SystemMemory] > [029h 0041 1] Bit Width : 40 > [02Ah 0042 1] Bit Offset : 00 > [02Bh 0043 1] Encoded Access Width : 00 > [Undefined/Legacy] > [02Ch 0044 8] Address : 00000000FED00000 > > [034h 0052 1] Sequence Number : 00 > [035h 0053 2] Minimum Clock Ticks : 37EE > [037h 0055 1] Flags (decoded below) : 00 > 4K Page Protect : 0 > 64K Page Protect : 0 > > Raw Table Data: Length 56 (0x38) > > 0000: 48 50 45 54 38 00 00 00 01 89 53 55 50 45 52 4D > HPET8.....SUPERM > 0010: 53 4D 43 49 2D 2D 4D 42 09 20 07 01 41 4D 49 2E > SMCI--MB. ..AMI. > 0020: 05 00 00 00 01 A7 86 80 00 40 00 00 00 00 D0 FE > .........@...... > 0030: 00 00 00 00 00 EE 37 00 > ......7. > > and for ref > > cat /proc/sys/dev/hpet /proc/sys/dev/hpet > cat /proc/sys/dev/hpet/max-user-freq /proc/driver/rtc > 64 > rtc_time : 01:44:28 > rtc_date : 2017-05-13 > alrm_time : 21:02:26 > alrm_date : 2017-05-13 > alarm_IRQ : no > alrm_pending : no > update IRQ enabled : no > periodic IRQ enabled : no > periodic IRQ frequency : 1024 > max user IRQ frequency : 64 > 24hr : yes > periodic_IRQ : no > update_IRQ : no > HPET_emulated : no > BCD : yes > DST_enable : no > periodic_freq : 1024 > batt_status : okay > -- ~Randy