Module Name:    src
Committed By:   skrll
Date:           Fri Mar 20 06:33:00 UTC 2020

Modified Files:
        src/sys/arch/arm/samsung: exynos_gpio.c

Log Message:
Use __BIT/__SHIFTOUT some more.  NFCI.


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/arm/samsung/exynos_gpio.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/samsung/exynos_gpio.c
diff -u src/sys/arch/arm/samsung/exynos_gpio.c:1.26 src/sys/arch/arm/samsung/exynos_gpio.c:1.27
--- src/sys/arch/arm/samsung/exynos_gpio.c:1.26	Tue Mar 17 21:24:30 2020
+++ src/sys/arch/arm/samsung/exynos_gpio.c	Fri Mar 20 06:33:00 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_gpio.c,v 1.26 2020/03/17 21:24:30 skrll Exp $ */
+/*	$NetBSD: exynos_gpio.c,v 1.27 2020/03/20 06:33:00 skrll Exp $ */
 
 /*-
 * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
 #include "gpio.h"
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: exynos_gpio.c,v 1.26 2020/03/17 21:24:30 skrll Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exynos_gpio.c,v 1.27 2020/03/20 06:33:00 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -179,11 +179,13 @@ static int
 exynos_gpio_pin_read(void *cookie, int pin)
 {
 	struct exynos_gpio_bank * const bank = cookie;
+	uint8_t val;
 
 	KASSERT(pin < bank->bank_bits);
-	return (bus_space_read_1(bank->bank_sc->sc_bst,
-				 bank->bank_sc->sc_bsh,
-		EXYNOS_GPIO_DAT) >> pin) & 1;
+	val = bus_space_read_1(bank->bank_sc->sc_bst, bank->bank_sc->sc_bsh,
+	    EXYNOS_GPIO_DAT);
+
+	return __SHIFTOUT(val, __BIT(pin));
 }
 
 static void
@@ -193,15 +195,13 @@ exynos_gpio_pin_write(void *cookie, int 
 	int val;
 
 	KASSERT(pin < bank->bank_bits);
-	val = bus_space_read_1(bank->bank_sc->sc_bst,
-			       bank->bank_sc->sc_bsh,
-			       EXYNOS_GPIO_DAT);
+	val = bus_space_read_1(bank->bank_sc->sc_bst, bank->bank_sc->sc_bsh,
+	    EXYNOS_GPIO_DAT);
 	val &= ~__BIT(pin);
 	if (value)
 		val |= __BIT(pin);
-	bus_space_write_1(bank->bank_sc->sc_bst,
-			  bank->bank_sc->sc_bsh,
-		EXYNOS_GPIO_DAT, val);
+	bus_space_write_1(bank->bank_sc->sc_bst, bank->bank_sc->sc_bsh,
+	    EXYNOS_GPIO_DAT, val);
 }
 
 static void

Reply via email to