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