Hi Rob, On Thu, Jan 23, 2020 at 03:42:22PM -0600, Rob Herring wrote: > Convert the gpio-keys and gpio-keys-polled bindings to a DT schema. As > both bindings are almost the same, combine them into a single schema. > > The binding said 'interrupts' was required, but testing on dts files > showed that it isn't required. > > 'linux,input-value' was only documented for gpio-keys-polled, but there > doesn't seem to be any reason for it to be specific to that. Actually, there is: with gpio-keys-polled we take a "snapshot" of the entire device state, so we know when to generate a 0 event (the example we have a device with several GPIOs with values assigned 1, 2, 3, 4, 5.. values, when one of the gpios is active we generate event with given value, when all are inactive we generate 0 event). This does not work for interrupt-only driven device. > + > + properties: > + gpios: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 We support "interrupt-only" mode where we do not have GPIO, so for "gpio-keys" we need either interrupts or gpios or both, and for polled we must have gpios (and I guess we simply ignore interrupts if they are specified). Does this binding manages to enforce this? Thanks. -- Dmitry