On 3/6/2024 11:28, Sébastien Chaumat wrote:




    Reasoning backward  (using a  kernel without the pinctrl_amd driver
    to ensure xen only is at stake) :
      checking the diff in IOAPIC  between bare metal and xen  (IRQ7 is
    on pin07 on APIC )

    using kernel argument : apic=debug

    bare metal :
    [    0.715330] fedora kernel: ... APIC VERSION: 81050010
    ...
    [    0.715433] fedora kernel:  pin07, disabled, edge , high, V(00),
    IRR(0), S(0), physical, D(0000), M(0)

    xen :
    [    2.249582] fedora kernel: ... APIC VERSION: 00000014
    ...
    [    2.249730] fedora kernel:  pin07, disabled, level, low , V(60),
    IRR(0), S(0), physical, D(0000), M(0)

    So the APIC table is not the same.

    As strange as it looks the  (IOAPIC 0) pin07 is correctly described
    by the APIC in xen but yet differently than in baremetal.
    But the APIC message comes long after the
    [    1.833145] fedora kernel: xen: registering gsi 7 triggering 0
    polarity 1

    so I wonder if the APIC pin07 info had any influence.

Finally found the fix : adding ioapic_ack=new to xen boot parameters.
Not only the trackpad is now working but also the ACPI Embedded Controller which is completely disabled.

Sébastien

That's great news! I'm personally totally unfamiliar with ioapic_ack=new, so I did a quick search and found out it's a Xen parameter (I came across
https://xenbits.xen.org/docs/4.5-testing/misc/xen-command-line.html).

This mentions that "new" should be the default, so why isn't it the case?

Also; I'd be really interested to hear what happens with s2idle with Xen now (if it works).

Reply via email to