History

Merge tag 'gpio-fixes-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio

Pull GPIO fixes from Linus Walleij: "These are some GPIO regression fixes for v3.6: - Erroneous debug message from of_get_named_gpio_flags() - Make sure the MC9S08DZ60 GPIO driver depend on I2C being compiled in (not module) or allmodconfig breaks. - Check return value from irq_alloc_descs() in the Emma Mobile GPIO driver. - Assign the owner field for the rdc321x driver so the module won't be removed if it has active GPIOs." * tag 'gpio-fixes-for-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: gpio: rdc321x: Prevent removal of modules exporting active GPIOs gpio: em: Fix checking return value of irq_alloc_descs gpio: mc9s08dz60: Fix build error if I2C=m gpio: Fix debug message in of_get_named_gpio_flags()

Linus Torvalds committed 14 years ago

Commit 813e6432 parents 5e682c0 1146f884 files · +5 −4Browse files

Unified · Split

4 files
  1. drivers/gpio/Kconfig +1 −1
  2. drivers/gpio/gpio-em.c +2 −2
  3. drivers/gpio/gpio-rdc321x.c +1 −0
  4. drivers/gpio/gpiolib-of.c +1 −1
drivers/gpio/Kconfig+1−1
@@ -294,7 +294,7 @@ config GPIO_MAX732X_IRQ · 293 unmodified lines
294294
295295 config GPIO_MC9S08DZ60
296296 bool "MX35 3DS BOARD MC9S08DZ60 GPIO functions"
297− depends on I2C && MACH_MX35_3DS
297+ depends on I2C=y && MACH_MX35_3DS
298298 help
299299 Select this to enable the MC9S08DZ60 GPIO driver
300300
drivers/gpio/gpio-em.c+2−2
@@ -247,9 +247,9 @@ static int __devinit em_gio_irq_domain_init(struct em_gio_priv *p) · 246 unmodified lines
247247
248248 p->irq_base = irq_alloc_descs(pdata->irq_base, 0,
249249 pdata->number_of_pins, numa_node_id());
250− if (IS_ERR_VALUE(p->irq_base)) {
250+ if (p->irq_base < 0) {
251251 dev_err(&pdev->dev, "cannot get irq_desc\n");
252− return -ENXIO;
252+ return p->irq_base;
253253 }
254254 pr_debug("gio: hw base = %d, nr = %d, sw base = %d\n",
255255 pdata->gpio_base, pdata->number_of_pins, p->irq_base);
drivers/gpio/gpio-rdc321x.c+1−0
@@ -170,6 +170,7 @@ static int __devinit rdc321x_gpio_probe(struct platform_device *pdev) · 169 unmodified lines
170170 rdc321x_gpio_dev->reg2_data_base = r->start + 0x4;
171171
172172 rdc321x_gpio_dev->chip.label = "rdc321x-gpio";
173+ rdc321x_gpio_dev->chip.owner = THIS_MODULE;
173174 rdc321x_gpio_dev->chip.direction_input = rdc_gpio_direction_input;
174175 rdc321x_gpio_dev->chip.direction_output = rdc_gpio_config;
175176 rdc321x_gpio_dev->chip.get = rdc_gpio_get_value;
drivers/gpio/gpiolib-of.c+1−1
@@ -82,7 +82,7 @@ int of_get_named_gpio_flags(struct device_node *np, const char *propname, · 81 unmodified lines
8282 gpiochip_find(&gg_data, of_gpiochip_find_and_xlate);
8383
8484 of_node_put(gg_data.gpiospec.np);
85− pr_debug("%s exited with status %d\n", __func__, ret);
85+ pr_debug("%s exited with status %d\n", __func__, gg_data.out_gpio);
8686 return gg_data.out_gpio;
8787 }
8888 EXPORT_SYMBOL(of_get_named_gpio_flags);