Hi Andy,

with my custom SSDT table:

DefinitionBlock ("gpio_button.aml", "SSDT", 5, "ASEMsp", "GPIO_BTN", 1)
{
        External (_SB_.GPO1, DeviceObj)
        Scope (\_SB.GPO1)
        {
                Device (BTNS)
                {
                        Name (_HID, "ASEM0005")         // _HID: Hardware ID 
PRP0001
                        Name (_UID, Zero)             // _UID: Unique ID
                        Name (_DDN, "DDN - SW Readable Button")  // _DDN: DOS 
Device Name
                        Name (_STR, Unicode ("STR - SW Readable Button"))  // 
_STR: Description String

                        Name (_CRS, ResourceTemplate ()  // _CRS: Current 
Resource Settings
                        {
                                GpioIo (
                                        Shared,                  // Not shared
                                        PullNone,                // No need for 
pulls
                                        0,                       // Debounce 
timeout
                                        0,                       // Drive 
strength
                                        IoRestrictionInputOnly,  // Only used 
as input
                                        "\\_SB.GPO1",            // GPIO 
controller
                                        0, ResourceConsumer, , ) // Must be 0
                                        {
                                                25,                // GPIO 
number 25
                                        }
                        })
                }
        }
}

I'm able to see the GPIO in:

/sys/bus/platform/devices/ASEM0005:00/firmware_node:

-r--r--r--    1 root     root          4096 Oct  2 12:10 description
-r--r--r--    1 root     root          4096 Oct  2 12:10 hid
-r--r--r--    1 root     root          4096 Oct  2 12:10 modalias
-r--r--r--    1 root     root          4096 Oct  2 12:10 path
lrwxrwxrwx    1 root     root             0 Oct  2 12:10 physical_node -> 
../../../../platform/INT3452:01/ASEM0005:00
drwxr-xr-x    2 root     root             0 Oct  2 12:10 power
lrwxrwxrwx    1 root     root             0 Oct  2 12:10 subsystem -> 
../../../../../bus/acpi
-rw-r--r--    1 root     root          4096 Oct  2 12:10 uevent
-r--r--r--    1 root     root          4096 Oct  2 12:10 uid

and so I can see some useful info:

# cat description
STR - SW Readable Button
# cat hid
ASEM0005
# cat modalias
acpi:ASEM0005:
bmxxxx-x86-64:/sys/bus/platform/devices/ASEM0005:00/firmware_node# cat path
\_SB_.GPO1.BTNS

So, from userspace, I can discover the GPIO controller /dev/gpiochip1,
but I don't know how to discover the GPIO number (25 in this case).
Do you have any suggestion about how to discover this GPIO number?

Thanks!

> --
> With Best Regards,
> Andy Shevchenko

Best regards,
Flavio

Reply via email to