Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Clemens Ladisch
Randy Dunlap wrote:
> On 05/12/17 19:30, PGNet Dev wrote:
>>  dmesg | grep -i hpet
>>  [8.491738] hpet_acpi_add: no address or irqs in _CRS
>
> Above line marks a big failure. 
> ^^^
>
>> Disassembling the firmware acpi tables
>>
>>  cat /sys/firmware/acpi/tables/HPET > /var/tmp/hpet.out
>>  iasl -d /var/tmp/hpet.out

That table is not used by hpet_acpi_add; you have to check for the device
that mentions "PNP0103" in the DSDT table.

But anyway, as far as I can tell from my own machine, the _CRS in the
DSDT table never lists the HPET interrupts, and the HPET registration is
always done by hpet_reserve_platform_timers() in arch/x86/kernel/hpet.c.
Try adding logging to hpet_late_init() to find out why it aborts.


Regards,
Clemens


Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Clemens Ladisch
Randy Dunlap wrote:
> On 05/12/17 19:30, PGNet Dev wrote:
>>  dmesg | grep -i hpet
>>  [8.491738] hpet_acpi_add: no address or irqs in _CRS
>
> Above line marks a big failure. 
> ^^^
>
>> Disassembling the firmware acpi tables
>>
>>  cat /sys/firmware/acpi/tables/HPET > /var/tmp/hpet.out
>>  iasl -d /var/tmp/hpet.out

That table is not used by hpet_acpi_add; you have to check for the device
that mentions "PNP0103" in the DSDT table.

But anyway, as far as I can tell from my own machine, the _CRS in the
DSDT table never lists the HPET interrupts, and the HPET registration is
always done by hpet_reserve_platform_timers() in arch/x86/kernel/hpet.c.
Try adding logging to hpet_late_init() to find out why it aborts.


Regards,
Clemens


Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread PGNet Dev

On 5/13/17 12:45 PM, Clemens Ladisch wrote:

That table is not used by hpet_acpi_add; you have to check for the device
that mentions "PNP0103" in the DSDT table.

But anyway, as far as I can tell from my own machine, the _CRS in the
DSDT table never lists the HPET interrupts, and the HPET registration is
always done by hpet_reserve_platform_timers() in arch/x86/kernel/hpet.c.
Try adding logging to hpet_late_init() to find out why it aborts.


I assume you mean in kernel source code?

I'm using distro packages for both kernel & Xen -- not DIY building.



Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread PGNet Dev

On 5/13/17 12:45 PM, Clemens Ladisch wrote:

That table is not used by hpet_acpi_add; you have to check for the device
that mentions "PNP0103" in the DSDT table.

But anyway, as far as I can tell from my own machine, the _CRS in the
DSDT table never lists the HPET interrupts, and the HPET registration is
always done by hpet_reserve_platform_timers() in arch/x86/kernel/hpet.c.
Try adding logging to hpet_late_init() to find out why it aborts.


I assume you mean in kernel source code?

I'm using distro packages for both kernel & Xen -- not DIY building.



Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Randy Dunlap
On 05/13/17 11:26, PGNet Dev wrote:
> On 5/13/17 10:41 AM, Randy Dunlap wrote:
>> [adding HPET driver maintainer]
> 
> Thanks
> 
>> A couple of comments below...
> 
>>> In BIOS, HPET's enabled.
>>
>> How about if you just boot Linux without Xen?  Does HPET show up then?
> 
> yes, it appears so:
> 
> cat devices/system/clocksource/clocksource0/available
>   tsc hpet acpi_pm

Adding xen mailing list:

Is HPET support a known issue in Xen?

release: 4.11.0-4.gcb15206-default
xen_version: 4.9.0_04-493


Original message is here:
http://marc.info/?l=linux-kernel=149464267427111=2


Thanks.

>>> [8.491738] hpet_acpi_add: no address or irqs in _CRS
>>
>> Above line marks a big failure. 
>> ^^^
> 
> I suspected that's problematic.
> 
> In the non-Xen case
> 
> dmesg | grep -i hpet
>   [0.00] ACPI: HPET 0x9E8298F8 38 (v01 SUPERM SMCI--MB 
> 01072009 AMI. 0005)
>   [0.00] ACPI: HPET id: 0x8086a701 base: 0xfed0
>   [0.00] clocksource: hpet: mask: 0x max_cycles: 0x, 
> max_idle_ns: 133484882848 ns
>   [0.00] hpet clockevent registered
>   [0.144010] DMAR-IR: HPET id 0 under DRHD base 0xfed9
>   [1.398047] hpet0: at MMIO 0xfed0, IRQs 2, 8, 0, 0, 0, 0, 0, 0
>   [1.404226] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
>   [1.412080] clocksource: Switched to clocksource hpet
>   [3.627234] rtc_cmos 00:02: alarms up to one month, y3k, 242 bytes 
> nvram, hpet irqs
> 


-- 
~Randy


Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Randy Dunlap
On 05/13/17 11:26, PGNet Dev wrote:
> On 5/13/17 10:41 AM, Randy Dunlap wrote:
>> [adding HPET driver maintainer]
> 
> Thanks
> 
>> A couple of comments below...
> 
>>> In BIOS, HPET's enabled.
>>
>> How about if you just boot Linux without Xen?  Does HPET show up then?
> 
> yes, it appears so:
> 
> cat devices/system/clocksource/clocksource0/available
>   tsc hpet acpi_pm

Adding xen mailing list:

Is HPET support a known issue in Xen?

release: 4.11.0-4.gcb15206-default
xen_version: 4.9.0_04-493


Original message is here:
http://marc.info/?l=linux-kernel=149464267427111=2


Thanks.

>>> [8.491738] hpet_acpi_add: no address or irqs in _CRS
>>
>> Above line marks a big failure. 
>> ^^^
> 
> I suspected that's problematic.
> 
> In the non-Xen case
> 
> dmesg | grep -i hpet
>   [0.00] ACPI: HPET 0x9E8298F8 38 (v01 SUPERM SMCI--MB 
> 01072009 AMI. 0005)
>   [0.00] ACPI: HPET id: 0x8086a701 base: 0xfed0
>   [0.00] clocksource: hpet: mask: 0x max_cycles: 0x, 
> max_idle_ns: 133484882848 ns
>   [0.00] hpet clockevent registered
>   [0.144010] DMAR-IR: HPET id 0 under DRHD base 0xfed9
>   [1.398047] hpet0: at MMIO 0xfed0, IRQs 2, 8, 0, 0, 0, 0, 0, 0
>   [1.404226] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
>   [1.412080] clocksource: Switched to clocksource hpet
>   [3.627234] rtc_cmos 00:02: alarms up to one month, y3k, 242 bytes 
> nvram, hpet irqs
> 


-- 
~Randy


Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread PGNet Dev

On 5/13/17 10:41 AM, Randy Dunlap wrote:

[adding HPET driver maintainer]


Thanks


A couple of comments below...



In BIOS, HPET's enabled.


How about if you just boot Linux without Xen?  Does HPET show up then?


yes, it appears so:

cat devices/system/clocksource/clocksource0/available
  tsc hpet acpi_pm


[8.491738] hpet_acpi_add: no address or irqs in _CRS


Above line marks a big failure. 
^^^


I suspected that's problematic.

In the non-Xen case

dmesg | grep -i hpet
  [0.00] ACPI: HPET 0x9E8298F8 38 (v01 SUPERM 
SMCI--MB 01072009 AMI. 0005)

  [0.00] ACPI: HPET id: 0x8086a701 base: 0xfed0
  [0.00] clocksource: hpet: mask: 0x max_cycles: 
0x, max_idle_ns: 133484882848 ns

  [0.00] hpet clockevent registered
  [0.144010] DMAR-IR: HPET id 0 under DRHD base 0xfed9
  [1.398047] hpet0: at MMIO 0xfed0, IRQs 2, 8, 0, 0, 0, 0, 0, 0
  [1.404226] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
  [1.412080] clocksource: Switched to clocksource hpet
  [3.627234] rtc_cmos 00:02: alarms up to one month, y3k, 242 bytes 
nvram, hpet irqs




Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread PGNet Dev

On 5/13/17 10:41 AM, Randy Dunlap wrote:

[adding HPET driver maintainer]


Thanks


A couple of comments below...



In BIOS, HPET's enabled.


How about if you just boot Linux without Xen?  Does HPET show up then?


yes, it appears so:

cat devices/system/clocksource/clocksource0/available
  tsc hpet acpi_pm


[8.491738] hpet_acpi_add: no address or irqs in _CRS


Above line marks a big failure. 
^^^


I suspected that's problematic.

In the non-Xen case

dmesg | grep -i hpet
  [0.00] ACPI: HPET 0x9E8298F8 38 (v01 SUPERM 
SMCI--MB 01072009 AMI. 0005)

  [0.00] ACPI: HPET id: 0x8086a701 base: 0xfed0
  [0.00] clocksource: hpet: mask: 0x max_cycles: 
0x, max_idle_ns: 133484882848 ns

  [0.00] hpet clockevent registered
  [0.144010] DMAR-IR: HPET id 0 under DRHD base 0xfed9
  [1.398047] hpet0: at MMIO 0xfed0, IRQs 2, 8, 0, 0, 0, 0, 0, 0
  [1.404226] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
  [1.412080] clocksource: Switched to clocksource hpet
  [3.627234] rtc_cmos 00:02: alarms up to one month, y3k, 242 bytes 
nvram, hpet irqs




Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Randy Dunlap
[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 0x, DMI type 0, 24 bytes
>   BIOS Information
>   Vendor: American Megatrends Inc.
>   Version: 3.0
>   Release Date: 05/26/2015
>   Address: 0xF
>   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:0021:0001:27ab::0100
>   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=0x8000
>   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.00] Command line: root=/dev/mapper/VG0_ROOT rd.shell 
> 

Re: HPET enabled in BIOS, not presented as available_clocksource -- config, kernel code, &/or BIOS?

2017-05-13 Thread Randy Dunlap
[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 0x, DMI type 0, 24 bytes
>   BIOS Information
>   Vendor: American Megatrends Inc.
>   Version: 3.0
>   Release Date: 05/26/2015
>   Address: 0xF
>   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:0021:0001:27ab::0100
>   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=0x8000
>   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.00] Command line: root=/dev/mapper/VG0_ROOT rd.shell 
>