Re: Wrong piix4_smbus address / slow trackpoint on Thinkpad P14s gen 2 (AMD)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

Do you think this is this the same issue as described in
> https://bugzilla.kernel.org/show_bug.cgi?id=214597  <https://bugzilla.kernel.org/show_bug.cgi?id=214597>?

Probably not.

Isn't the interrupt described in the ACPI tables?

Probably not. I am just web developer, i am not 100% sure, but i have not seen
anything usable in ACPI tables:
https://mireq.linuxos.sk/kernel/p14s_gen2_amd_acpi_tables.tar.xz

Most important section with SMBus is here:
https://lore.kernel.org/all/CAPoEpV0ZSidL6aMXvB6LN1uS-3CUHS4ggT8RwFgmkzzCiYJ-XQ@xxxxxxxxxxxxxx/

This section looked promising:

Scope (_SB.I2CB)
{
    Device (TPNL)
    {
        Name (_HID, "XXXX0000")  // _HID: Hardware ID
        Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
        Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
        Name (HID2, 0x00)
        Name (POIO, 0x00)
        Name (SBFB, ResourceTemplate ()
        {
            I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
                AddressingMode7Bit, "\\_SB.I2CB",
                0x00, ResourceConsumer, _Y0C, Exclusive,
                )
        })
        Name (SBFG, ResourceTemplate ()
        {
            GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
                "\\_SB.GPIO", 0x00, ResourceConsumer, ,
                )
                {   // Pin list
                    0x0005
                }
        })
        CreateWordField (SBFB, \_SB.I2CB.TPNL._Y0C._ADR, BADR)  // _ADR: Address
        CreateDWordField (SBFB, \_SB.I2CB.TPNL._Y0C._SPE, SPED)  // _SPE: Speed
        Name (ITML, Package (0x0A)
        {
            Package (0x07)
            {
                0x04F3,
                0x2A3B,
                0x10,
                0x01,
                0x01,
                "ELAN901C",
                0x01
            },


but method _STA returned 0x0 (device not present). There is no activity on pin
5. My device has synaptics trackpoint/touchpad, not elantech.  I think, that
this section is for touchscreen (not on my device).

More infomations to GPIO:

Following command does nothing if psmouse is loaded without synaptics_intertouch:

gpiomon --num-events=1000 gpiochip0 19

After loading psmouse with intertouch it catches constantly cca 2000 changes/s.
There are some changes like two rising / falling edges directly behind each
other. I think, that clok is much faster, than gpiomon monitoring speed,
catching communication with this command would be useless.

I don't know why there is constant communication from trackpoint/touchpad to
GPIO 19/20. Maybe some notification mechanism, attention, maybe something which
stops after clearing some bit, i dont know. Schematic from Lenovo, documentation
or anything useful wold be great, but whithout this i am just guessing.

Pins 19/20 should be SCL/SDA of I2C3 (from coreboot, id don't know source of pin
description:
https://github.com/coreboot/coreboot/blob/cf39336ccfcc363162395bddf65113900aaf19fe/src/soc/amd/cezanne/include/soc/gpio.h#L152




[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux