[PATCH 0/2] i2c: use designated initializers for acpi_device_id
From: Pawel Zalewski <hidden>
Date: 2026-09-18 13:02:00
Also in:
chrome-platform, imx, linux-acpi, linux-arm-msm, linux-i2c, linux-tegra, lkml
This series is converting lists that contain the acpi_device_id struct, which is defined in the include/linux/device-id/acpi.h to make use of named initializers (which they do not use currently). This work is part of the on going effort in the kernel associated with device-ids [1] The plan is to convert acpi_device_id::driver_data to have an anonymous union, similarly to what was introduced for PCI and I2C device ID tables. The goal is to increase type-safety (most of the existing casts are gone), to improve readability and to make use intent a bit more clear:
union {
kernel_ulong_t driver_data;
const void *driver_data_ptr;
}
But for that to work all lists containing the structs need to use named initializers first to avoid triggering -Wmissing-braces. I already have patches that implement this and touching a lot of kernel subsystmes that use the acpi_device_id struct and that list keeps on growing. Therefore, I have decided to split the series per every subsystem into: - pre-clean-ups that convert the lists to use named initializers (which is this series) - actual implementations that make some of the modules use the new driver_data_ptr member That way the task can be fragmented into manageable and independent chunks of work and makes this effort easier to review. Tested builds on x86-64 and a64 in Yocto using 7.3-rc3. [1] https://lore.kernel.org/all/cover.1780048925.git.u.kleine-koenig@baylibre.com/ (local) Signed-off-by: Pawel Zalewski <redacted> --- Pawel Zalewski (2): i2c: i2c-core-acpi: use named initializers for acpi_device_id i2c: busses: use named initializers for acpi_device_id drivers/i2c/busses/i2c-amd-asf-plat.c | 2 +- drivers/i2c/busses/i2c-amd-mp2-plat.c | 2 +- drivers/i2c/busses/i2c-cros-ec-tunnel.c | 2 +- drivers/i2c/busses/i2c-designware-platdrv.c | 42 ++++++++++++++--------------- drivers/i2c/busses/i2c-gpio.c | 2 +- drivers/i2c/busses/i2c-hisi.c | 2 +- drivers/i2c/busses/i2c-imx.c | 2 +- drivers/i2c/busses/i2c-ls2x.c | 2 +- drivers/i2c/busses/i2c-mlxbf.c | 8 +++--- drivers/i2c/busses/i2c-qcom-geni.c | 4 +-- drivers/i2c/busses/i2c-qup.c | 2 +- drivers/i2c/busses/i2c-scmi.c | 8 +++--- drivers/i2c/busses/i2c-synquacer.c | 4 +-- drivers/i2c/busses/i2c-tegra.c | 8 +++--- drivers/i2c/busses/i2c-usbio.c | 12 ++++----- drivers/i2c/busses/i2c-viai2c-zhaoxin.c | 2 +- drivers/i2c/busses/i2c-xgene-slimpro.c | 6 ++--- drivers/i2c/busses/i2c-xlp9xx.c | 6 ++--- drivers/i2c/i2c-core-acpi.c | 14 +++++----- 19 files changed, 65 insertions(+), 65 deletions(-) --- base-commit: 238650ef6c7c7cca08e032527329424c9fbd70e5 change-id: 20260917-acpi-i2c-4198c83df77e Best regards, -- Pawel Zalewski [off-list ref]