Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'gpio-v4.20-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio

Pull GPIO fixes from Linus Walleij:
"Minor stuff except the IDA leak which was kind of important to fix.
Also new maintainers, yay.

- Do not lose an IDA on the gpiochip register errorpath.

- Fix the PXA non-pincontrol GPIO-using platforms.

- Fix the direction on the mockup GPIO driver.

- Add some MAINTAINERS stuff: Bartosz stepped up as GPIO
co-maintainer, and Andy established an Intel git tree"

* tag 'gpio-v4.20-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
MAINTAINERS: Do maintain Intel GPIO drivers via separate tree
gpio: mockup: fix indicated direction
gpio: pxa: fix legacy non pinctrl aware builds again
gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path
MAINTAINERS: add myself as co-maintainer of gpiolib

+30 -19
+22 -12
MAINTAINERS
··· 6305 6305 6306 6306 GPIO SUBSYSTEM 6307 6307 M: Linus Walleij <linus.walleij@linaro.org> 6308 + M: Bartosz Golaszewski <bgolaszewski@baylibre.com> 6308 6309 L: linux-gpio@vger.kernel.org 6309 6310 T: git git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git 6310 6311 S: Maintained ··· 7443 7442 F: Documentation/fb/intelfb.txt 7444 7443 F: drivers/video/fbdev/intelfb/ 7445 7444 7445 + INTEL GPIO DRIVERS 7446 + M: Andy Shevchenko <andriy.shevchenko@linux.intel.com> 7447 + L: linux-gpio@vger.kernel.org 7448 + S: Maintained 7449 + T: git git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel.git 7450 + F: drivers/gpio/gpio-ich.c 7451 + F: drivers/gpio/gpio-intel-mid.c 7452 + F: drivers/gpio/gpio-lynxpoint.c 7453 + F: drivers/gpio/gpio-merrifield.c 7454 + F: drivers/gpio/gpio-ml-ioh.c 7455 + F: drivers/gpio/gpio-pch.c 7456 + F: drivers/gpio/gpio-sch.c 7457 + F: drivers/gpio/gpio-sodaville.c 7458 + 7446 7459 INTEL GVT-g DRIVERS (Intel GPU Virtualization) 7447 7460 M: Zhenyu Wang <zhenyuw@linux.intel.com> 7448 7461 M: Zhi Wang <zhi.a.wang@intel.com> ··· 7466 7451 T: git https://github.com/intel/gvt-linux.git 7467 7452 S: Supported 7468 7453 F: drivers/gpu/drm/i915/gvt/ 7469 - 7470 - INTEL PMIC GPIO DRIVER 7471 - R: Andy Shevchenko <andriy.shevchenko@linux.intel.com> 7472 - S: Maintained 7473 - F: drivers/gpio/gpio-*cove.c 7474 - F: drivers/gpio/gpio-msic.c 7475 7454 7476 7455 INTEL HID EVENT DRIVER 7477 7456 M: Alex Hung <alex.hung@canonical.com> ··· 7554 7545 S: Supported 7555 7546 F: drivers/platform/x86/intel_menlow.c 7556 7547 7557 - INTEL MERRIFIELD GPIO DRIVER 7558 - M: Andy Shevchenko <andriy.shevchenko@linux.intel.com> 7559 - L: linux-gpio@vger.kernel.org 7560 - S: Maintained 7561 - F: drivers/gpio/gpio-merrifield.c 7562 - 7563 7548 INTEL MIC DRIVERS (mic) 7564 7549 M: Sudeep Dutt <sudeep.dutt@intel.com> 7565 7550 M: Ashutosh Dixit <ashutosh.dixit@intel.com> ··· 7585 7582 F: drivers/platform/x86/intel_punit_ipc.c 7586 7583 F: arch/x86/include/asm/intel_pmc_ipc.h 7587 7584 F: arch/x86/include/asm/intel_punit_ipc.h 7585 + 7586 + INTEL PMIC GPIO DRIVERS 7587 + M: Andy Shevchenko <andriy.shevchenko@linux.intel.com> 7588 + S: Maintained 7589 + T: git git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel.git 7590 + F: drivers/gpio/gpio-*cove.c 7591 + F: drivers/gpio/gpio-msic.c 7588 7592 7589 7593 INTEL MULTIFUNCTION PMIC DEVICE DRIVERS 7590 7594 R: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+3 -3
drivers/gpio/gpio-mockup.c
··· 35 35 #define gpio_mockup_err(...) pr_err(GPIO_MOCKUP_NAME ": " __VA_ARGS__) 36 36 37 37 enum { 38 - GPIO_MOCKUP_DIR_OUT = 0, 39 - GPIO_MOCKUP_DIR_IN = 1, 38 + GPIO_MOCKUP_DIR_IN = 0, 39 + GPIO_MOCKUP_DIR_OUT = 1, 40 40 }; 41 41 42 42 /* ··· 131 131 { 132 132 struct gpio_mockup_chip *chip = gpiochip_get_data(gc); 133 133 134 - return chip->lines[offset].dir; 134 + return !chip->lines[offset].dir; 135 135 } 136 136 137 137 static int gpio_mockup_to_irq(struct gpio_chip *gc, unsigned int offset)
+2 -2
drivers/gpio/gpio-pxa.c
··· 268 268 269 269 if (pxa_gpio_has_pinctrl()) { 270 270 ret = pinctrl_gpio_direction_input(chip->base + offset); 271 - if (!ret) 272 - return 0; 271 + if (ret) 272 + return ret; 273 273 } 274 274 275 275 spin_lock_irqsave(&gpio_lock, flags);
+3 -2
drivers/gpio/gpiolib.c
··· 1295 1295 gdev->descs = kcalloc(chip->ngpio, sizeof(gdev->descs[0]), GFP_KERNEL); 1296 1296 if (!gdev->descs) { 1297 1297 status = -ENOMEM; 1298 - goto err_free_gdev; 1298 + goto err_free_ida; 1299 1299 } 1300 1300 1301 1301 if (chip->ngpio == 0) { ··· 1427 1427 kfree_const(gdev->label); 1428 1428 err_free_descs: 1429 1429 kfree(gdev->descs); 1430 - err_free_gdev: 1430 + err_free_ida: 1431 1431 ida_simple_remove(&gpio_ida, gdev->id); 1432 + err_free_gdev: 1432 1433 /* failures here can mean systems won't boot... */ 1433 1434 pr_err("%s: GPIOs %d..%d (%s) failed to register, %d\n", __func__, 1434 1435 gdev->base, gdev->base + gdev->ngpio - 1,