mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-24 17:23:29 -04:00
gpio: Initialize i2c_device_id arrays using member names
While being less compact, using named initializers allows to more easily see which members of the structs are assigned which value without having to lookup the declaration of the struct. And it's also more robust against changes to the struct definition. The mentioned robustness is relevant for a planned change to struct i2c_device_id that replaces .driver_data by an anonymous union. This patch doesn't modify the compiled arrays, only their representation in source form benefits. The former was confirmed with x86 and arm64 builds. Signed-off-by: Uwe Kleine-König (The Capable Hub) <u.kleine-koenig@baylibre.com> Link: https://patch.msgid.link/20260512152125.924433-2-u.kleine-koenig@baylibre.com Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
This commit is contained in:
committed by
Bartosz Golaszewski
parent
cccecb5cbe
commit
553e26a45e
@@ -103,16 +103,16 @@ static uint64_t max732x_features[] = {
|
||||
};
|
||||
|
||||
static const struct i2c_device_id max732x_id[] = {
|
||||
{ "max7319", MAX7319 },
|
||||
{ "max7320", MAX7320 },
|
||||
{ "max7321", MAX7321 },
|
||||
{ "max7322", MAX7322 },
|
||||
{ "max7323", MAX7323 },
|
||||
{ "max7324", MAX7324 },
|
||||
{ "max7325", MAX7325 },
|
||||
{ "max7326", MAX7326 },
|
||||
{ "max7327", MAX7327 },
|
||||
{ },
|
||||
{ .name = "max7319", .driver_data = MAX7319 },
|
||||
{ .name = "max7320", .driver_data = MAX7320 },
|
||||
{ .name = "max7321", .driver_data = MAX7321 },
|
||||
{ .name = "max7322", .driver_data = MAX7322 },
|
||||
{ .name = "max7323", .driver_data = MAX7323 },
|
||||
{ .name = "max7324", .driver_data = MAX7324 },
|
||||
{ .name = "max7325", .driver_data = MAX7325 },
|
||||
{ .name = "max7326", .driver_data = MAX7326 },
|
||||
{ .name = "max7327", .driver_data = MAX7327 },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, max732x_id);
|
||||
|
||||
|
||||
@@ -86,49 +86,49 @@
|
||||
#define PCA_CHIP_TYPE(x) ((x) & PCA_TYPE_MASK)
|
||||
|
||||
static const struct i2c_device_id pca953x_id[] = {
|
||||
{ "pca6408", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca6416", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9505", 40 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9506", 40 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9534", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9535", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9536", 4 | PCA953X_TYPE, },
|
||||
{ "pca9537", 4 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9538", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9539", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9554", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9555", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca9556", 8 | PCA953X_TYPE, },
|
||||
{ "pca9557", 8 | PCA953X_TYPE, },
|
||||
{ "pca9574", 8 | PCA957X_TYPE | PCA_INT, },
|
||||
{ "pca9575", 16 | PCA957X_TYPE | PCA_INT, },
|
||||
{ "pca9698", 40 | PCA953X_TYPE, },
|
||||
{ .name = "pca6408", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca6416", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9505", .driver_data = 40 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9506", .driver_data = 40 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9534", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9535", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9536", .driver_data = 4 | PCA953X_TYPE },
|
||||
{ .name = "pca9537", .driver_data = 4 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9538", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9539", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9554", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9555", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca9556", .driver_data = 8 | PCA953X_TYPE },
|
||||
{ .name = "pca9557", .driver_data = 8 | PCA953X_TYPE },
|
||||
{ .name = "pca9574", .driver_data = 8 | PCA957X_TYPE | PCA_INT },
|
||||
{ .name = "pca9575", .driver_data = 16 | PCA957X_TYPE | PCA_INT },
|
||||
{ .name = "pca9698", .driver_data = 40 | PCA953X_TYPE },
|
||||
|
||||
{ "pcal6408", 8 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal6416", 16 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal6524", 24 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal6534", 34 | PCAL653X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal9535", 16 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal9554b", 8 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "pcal9555a", 16 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ .name = "pcal6408", .driver_data = 8 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal6416", .driver_data = 16 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal6524", .driver_data = 24 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal6534", .driver_data = 34 | PCAL653X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal9535", .driver_data = 16 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal9554b", .driver_data = 8 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "pcal9555a", .driver_data = 16 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
|
||||
{ "max7310", 8 | PCA953X_TYPE, },
|
||||
{ "max7312", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "max7313", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "max7315", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "max7318", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "pca6107", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca6408", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca6416", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca6418", 18 | TCA6418_TYPE | PCA_INT, },
|
||||
{ "tca6424", 24 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca9538", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca9539", 16 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "tca9554", 8 | PCA953X_TYPE | PCA_INT, },
|
||||
{ "xra1202", 8 | PCA953X_TYPE },
|
||||
{ .name = "max7310", .driver_data = 8 | PCA953X_TYPE },
|
||||
{ .name = "max7312", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "max7313", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "max7315", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "max7318", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "pca6107", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca6408", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca6416", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca6418", .driver_data = 18 | TCA6418_TYPE | PCA_INT },
|
||||
{ .name = "tca6424", .driver_data = 24 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca9538", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca9539", .driver_data = 16 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "tca9554", .driver_data = 8 | PCA953X_TYPE | PCA_INT },
|
||||
{ .name = "xra1202", .driver_data = 8 | PCA953X_TYPE },
|
||||
|
||||
{ "tcal6408", 8 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ "tcal6416", 16 | PCA953X_TYPE | PCA_LATCH_INT, },
|
||||
{ .name = "tcal6408", .driver_data = 8 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ .name = "tcal6416", .driver_data = 16 | PCA953X_TYPE | PCA_LATCH_INT },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, pca953x_id);
|
||||
|
||||
@@ -163,9 +163,9 @@ static const struct pca9570_chip_data slg7xl45106_gpio = {
|
||||
};
|
||||
|
||||
static const struct i2c_device_id pca9570_id_table[] = {
|
||||
{ "pca9570", (kernel_ulong_t)&pca9570_gpio},
|
||||
{ "pca9571", (kernel_ulong_t)&pca9571_gpio },
|
||||
{ "slg7xl45106", (kernel_ulong_t)&slg7xl45106_gpio },
|
||||
{ .name = "pca9570", .driver_data = (kernel_ulong_t)&pca9570_gpio },
|
||||
{ .name = "pca9571", .driver_data = (kernel_ulong_t)&pca9571_gpio },
|
||||
{ .name = "slg7xl45106", .driver_data = (kernel_ulong_t)&slg7xl45106_gpio },
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, pca9570_id_table);
|
||||
|
||||
@@ -20,19 +20,19 @@
|
||||
#include <linux/spinlock.h>
|
||||
|
||||
static const struct i2c_device_id pcf857x_id[] = {
|
||||
{ "pcf8574", 8 },
|
||||
{ "pcf8574a", 8 },
|
||||
{ "pca8574", 8 },
|
||||
{ "pca9670", 8 },
|
||||
{ "pca9672", 8 },
|
||||
{ "pca9674", 8 },
|
||||
{ "pcf8575", 16 },
|
||||
{ "pca8575", 16 },
|
||||
{ "pca9671", 16 },
|
||||
{ "pca9673", 16 },
|
||||
{ "pca9675", 16 },
|
||||
{ "max7328", 8 },
|
||||
{ "max7329", 8 },
|
||||
{ .name = "pcf8574", .driver_data = 8 },
|
||||
{ .name = "pcf8574a", .driver_data = 8 },
|
||||
{ .name = "pca8574", .driver_data = 8 },
|
||||
{ .name = "pca9670", .driver_data = 8 },
|
||||
{ .name = "pca9672", .driver_data = 8 },
|
||||
{ .name = "pca9674", .driver_data = 8 },
|
||||
{ .name = "pcf8575", .driver_data = 16 },
|
||||
{ .name = "pca8575", .driver_data = 16 },
|
||||
{ .name = "pca9671", .driver_data = 16 },
|
||||
{ .name = "pca9673", .driver_data = 16 },
|
||||
{ .name = "pca9675", .driver_data = 16 },
|
||||
{ .name = "max7328", .driver_data = 8 },
|
||||
{ .name = "max7329", .driver_data = 8 },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, pcf857x_id);
|
||||
|
||||
Reference in New Issue
Block a user