Hi Bartosz, > > I need to expose to the userspace a GPIO, physically connected to a > board > > push-button. This GPIO must expose a pre-defined name, such as > > "user-push-button", so that the userspace applications can use it > without > > know any physical GPIO details. > > > > I can customize the board BIOS and so my goal is to add an ACPI table > with > > a content like this: > > > > ... > > Scope (\_SB.GPO1) > > { > > Device (BTNS) > > { > > Name (_HID, "PRP0001") > > Name (_DDN, "GPIO buttons device") > > > > Name (_CRS, ResourceTemplate () > > { > > GpioIo ( > > Exclusive, // 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 > > } > > ... > > > > I know that this GPIO can be used from other drivers. > > For example I successfully tested it using the "gpio-keys" device > driver, > > giving to my GPIO a key-code and emulating in this way a keyboard key. > > This could be a possible solution. > > > > But I prefer to expose my GPIO as a classic GPIO, not as a keyboard key. > > > > I was wondering if there is a generic GPIO driver that I can use to > expose > > this GPIO with its pre-defined name (caming from the ACPI table > declaration), > > to the userspace... > > > > Best regards, > > > > Flavio > > Adding Andy who knows ACPI GPIO well. > > In general, the "gpio-line-names" property is used for that and it's > supported both for device tree as well as ACPI, although I have only > ever used the former. > > Bartosz Thanks! I'll try!!! Flavio