Commit 7b67b836 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Linus Walleij
Browse files

mfd: sm501: Use GPIO_LOOKUP_IDX() helper macro



i801_add_mux() fills in the GPIO lookup table by manually populating an
array of gpiod_lookup structures.  Use the existing GPIO_LOOKUP_IDX()
helper macro instead, to relax a dependency on the gpiod_lookup
structure's member names.

Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Acked-by: default avatarLee Jones <lee.jones@linaro.org>
Link: https://lore.kernel.org/r/20200511145257.22970-3-geert+renesas@glider.be


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 22b3bc63
Loading
Loading
Loading
Loading
+8 −16
Original line number Diff line number Diff line
@@ -1145,22 +1145,14 @@ static int sm501_register_gpio_i2c_instance(struct sm501_devdata *sm,
		return -ENOMEM;

	lookup->dev_id = "i2c-gpio";
	if (iic->pin_sda < 32)
		lookup->table[0].chip_label = "SM501-LOW";
	else
		lookup->table[0].chip_label = "SM501-HIGH";
	lookup->table[0].chip_hwnum = iic->pin_sda % 32;
	lookup->table[0].con_id = NULL;
	lookup->table[0].idx = 0;
	lookup->table[0].flags = GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN;
	if (iic->pin_scl < 32)
		lookup->table[1].chip_label = "SM501-LOW";
	else
		lookup->table[1].chip_label = "SM501-HIGH";
	lookup->table[1].chip_hwnum = iic->pin_scl % 32;
	lookup->table[1].con_id = NULL;
	lookup->table[1].idx = 1;
	lookup->table[1].flags = GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN;
	lookup->table[0] = (struct gpiod_lookup)
		GPIO_LOOKUP_IDX(iic->pin_sda < 32 ? "SM501-LOW" : "SM501-HIGH",
				iic->pin_sda % 32, NULL, 0,
				GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN);
	lookup->table[1] = (struct gpiod_lookup)
		GPIO_LOOKUP_IDX(iic->pin_scl < 32 ? "SM501-LOW" : "SM501-HIGH",
				iic->pin_scl % 32, NULL, 1,
				GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN);
	gpiod_add_lookup_table(lookup);

	icd = dev_get_platdata(&pdev->dev);