On Wed, Oct 08, 2014 at 04:09:50PM +0200, Loic Poulain wrote: > Thanks, it sounds good to use a label instead of index. > However: > - DSD is only compatible with BIOS ACPI 5.1 > - gpiod_get_index does not take care of con_id (label) parameter in case of > ACPI (acpi_find_gpio). > - gpiod_get calls gpiod_get_index with index 0. > > Any patch ongoing to support con_id parameter with ACPI? Yes. This is the latest version being review as we speak: https://lkml.org/lkml/2014/10/6/530 It is really important you get your firmware fixed. We simply can not rely on the order of the resources like GPIOs in the resource templates. They may be different on every second board/BIOS/configuration/whatever. It's even possible for a ACPI device object to have two (or more) different resource templates describing the same GPIOs in different order which are then selected based on some magic condition, for example user selection in BIOS setup. The existing hardware works with the drivers we have now, and it's not possible to change the BIOS/system firmware on those so we just have to live with them and rely on being able to pick the correct resources based on index. But everything new _must_ use _DSD properties, and ACPI 5.1 in general. So basically your BIOS must produce the ACPI tables according to ACPI 5.1. If you are worried about support for ACPI 5.1 in kernel, don't worry about it, it's almost ready. And in the meantime, _DSD is just something kernel will ignore. Cheers, -- heikki -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html