Mario, thank you for your input. I agree that it seems that the IRQ polarity and/or i8042 options seem to be a dead end here.
The GPIO controller issue indeed looks suspect so lets start with trying to fix that and then see from there.
The "error -EINVAL: IRQ index 0 not found" error comes from platform_get_irq() and looking at that function the only way it can return -EINVAL without first printing an error is by acpi_irq_get() returning -EINVAL.
Which means that either one of these 2 calls is returning -EINVAL:
int acpi_irq_get(acpi_handle handle, unsigned int index, struct resource *res)
{
...
rc = acpi_irq_parse_one(handle, index, &fwspec, &flags);
if (rc) return rc;
...
rc = irq_create_fwspec_mapping(&fwspec);
if (rc <= 0) return -EINVAL;
with me suspecting that it is the second call which is failing.
Mario, thank you for your input. I agree that it seems that the IRQ polarity and/or i8042 options seem to be a dead end here.
The GPIO controller issue indeed looks suspect so lets start with trying to fix that and then see from there.
The "error -EINVAL: IRQ index 0 not found" error comes from platform_get_irq() and looking at that function the only way it can return -EINVAL without first printing an error is by acpi_irq_get() returning -EINVAL.
Which means that either one of these 2 calls is returning -EINVAL:
int acpi_irq_ get(acpi_ handle handle, unsigned int index, struct resource *res) parse_one( handle, index, &fwspec, &flags);
return rc; fwspec_ mapping( &fwspec) ;
return -EINVAL;
{
...
rc = acpi_irq_
if (rc)
...
rc = irq_create_
if (rc <= 0)
with me suspecting that it is the second call which is failing.