Public bug reported:

Two small SAUCE patches to bring up the MediaTek MT8901 I²C host
controller under ACPI on 26.04 linux-nvidia(-bos).

gpiolib: acpi: route acpi_dev_gpio_irq_wake_get_by() debounce through
the warn-only wrapper

Mainline commit e4a77f9 ("gpiolib: acpi: Make set debounce errors non
fatal") added the warn-only acpi_gpio_set_debounce_timeout() wrapper and
converted two of the three ACPI call sites that program a debounce
timeout. The third, in acpi_dev_gpio_irq_wake_get_by(), still returns
the raw error: on firmware whose _CRS declares a GpioInt with a
DebounceTimeout on an edge-triggered pin, the MediaTek EINT driver
rejects set_config(PIN_CONFIG_INPUT_DEBOUNCE) with -EINVAL, the error
propagates through acpi_dev_gpio_irq_get(), and i2c_hid_acpi fails probe
with HID over i2c has not been provided an Int IRQ — the internal
keyboard never enumerates. Convert the remaining call site to the same
wrapper so all three ACPI debounce paths behave consistently: the
rejection is logged and the IRQ is still delivered. Core gpiolib.c
semantics are untouched.

i2c: mediatek: add ACPI/MT8901 support and firmware-managed clocks
Adds ACPI binding to the DT-only i2c-mt65xx driver so the MT8901 I²C 
controllers enumerate under NVDA0200:

New mt8901_compat (v3 register layout, default_parent_rate=124.8 MHz) and an 
acpi_match_table entry NVDA0200 → mt8901_compat.
Switch probe to device_get_match_data() and fwnode-aware 
device_property_read_*() so DT and ACPI share the same code path.
device_set_node(&adap->dev, dev_fwnode(&pdev->dev)) so 
i2c_acpi_register_devices() walks the child HID nodes and instantiates them.
Gate devm_clk_get() for main/dma on has_acpi_companion() — use 
devm_clk_get_optional() for the ACPI path (firmware keeps those clocks running 
and does not expose them via the Linux clk framework), and fall back to 
dev_comp->default_parent_rate in mtk_i2c_set_speed() when no clock handle is 
available.
DT behaviour is unchanged: both device_get_match_data() and 
device_property_read_*() fall through to the existing OF helpers for 
DT-described nodes, and the DT clock path is preserved.

These have not been sent upstream yet.  ETA for this is October.

** Affects: linux-nvidia-7.0 (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2163407

Title:
  linux-nvidia-7.0:  ACPI enablement for the MT8901 I2C controller and
  its HID keyboard interrupt on Spark

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-nvidia-7.0/+bug/2163407/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to