This is an automated email from Gerrit.

"Antonio Borneo <borneo.anto...@gmail.com>" just uploaded a new patch set to 
Gerrit, which you can find at https://review.openocd.org/c/openocd/+/7033

-- gerrit

commit 955b6fce849d53c6334ae8c1a680dd172d47ab23
Author: Antonio Borneo <borneo.anto...@gmail.com>
Date:   Mon Jun 13 15:56:14 2022 +0200

    drivers/linuxgpiod: simplify gpio release
    
    We already have a helper to release the gpio.
    Extend it to also release its corresponding gpio chip.
    
    As side effect, remove comparison with NULL.
    
    Change-Id: I47cd446edfaead662d63c3330f25a791b747e882
    Signed-off-by: Antonio Borneo <borneo.anto...@gmail.com>

diff --git a/src/jtag/drivers/linuxgpiod.c b/src/jtag/drivers/linuxgpiod.c
index 70fb555146..0e96d82e54 100644
--- a/src/jtag/drivers/linuxgpiod.c
+++ b/src/jtag/drivers/linuxgpiod.c
@@ -288,45 +288,26 @@ static bool linuxgpiod_swd_mode_possible(void)
        return true;
 }
 
-static inline void helper_release(struct gpiod_line *line)
+static inline void helper_release(struct gpiod_line *line, struct gpiod_chip 
*chip)
 {
        if (line)
                gpiod_line_release(line);
+       if (chip)
+               gpiod_chip_close(chip);
 }
 
 static int linuxgpiod_quit(void)
 {
-       helper_release(gpiod_led);
-       helper_release(gpiod_srst);
-       helper_release(gpiod_swdio);
-       helper_release(gpiod_swdio_dir);
-       helper_release(gpiod_swclk);
-       helper_release(gpiod_trst);
-       helper_release(gpiod_tms);
-       helper_release(gpiod_tck);
-       helper_release(gpiod_tdi);
-       helper_release(gpiod_tdo);
-
-       if (gpiod_chip_led != NULL)
-               gpiod_chip_close(gpiod_chip_led);
-       if (gpiod_chip_srst != NULL)
-               gpiod_chip_close(gpiod_chip_srst);
-       if (gpiod_chip_swdio != NULL)
-               gpiod_chip_close(gpiod_chip_swdio);
-       if (gpiod_chip_swdio_dir != NULL)
-               gpiod_chip_close(gpiod_chip_swdio_dir);
-       if (gpiod_chip_swclk != NULL)
-               gpiod_chip_close(gpiod_chip_swclk);
-       if (gpiod_chip_trst != NULL)
-               gpiod_chip_close(gpiod_chip_trst);
-       if (gpiod_chip_tms != NULL)
-               gpiod_chip_close(gpiod_chip_tms);
-       if (gpiod_chip_tck != NULL)
-               gpiod_chip_close(gpiod_chip_tck);
-       if (gpiod_chip_tdi != NULL)
-               gpiod_chip_close(gpiod_chip_tdi);
-       if (gpiod_chip_tdo != NULL)
-               gpiod_chip_close(gpiod_chip_tdo);
+       helper_release(gpiod_led,       gpiod_chip_led);
+       helper_release(gpiod_srst,      gpiod_chip_srst);
+       helper_release(gpiod_swdio,     gpiod_chip_swdio);
+       helper_release(gpiod_swdio_dir, gpiod_chip_swdio_dir);
+       helper_release(gpiod_swclk,     gpiod_chip_swclk);
+       helper_release(gpiod_trst,      gpiod_chip_trst);
+       helper_release(gpiod_tms,       gpiod_chip_tms);
+       helper_release(gpiod_tck,       gpiod_chip_tck);
+       helper_release(gpiod_tdi,       gpiod_chip_tdi);
+       helper_release(gpiod_tdo,       gpiod_chip_tdo);
 
        return ERROR_OK;
 }

-- 

Reply via email to