OSDN Git Service

macintosh/via-pmu: Add missing mmio accessors
authorFinn Thain <fthain@telegraphics.com.au>
Mon, 2 Jul 2018 08:21:18 +0000 (04:21 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Sep 2018 20:48:57 +0000 (22:48 +0200)
[ Upstream commit 576d5290d678a651b9f36050fc1717e0573aca13 ]

Add missing in_8() accessors to init_pmu() and pmu_sr_intr().

This fixes several sparse warnings:
drivers/macintosh/via-pmu.c:536:29: warning: dereference of noderef expression
drivers/macintosh/via-pmu.c:537:33: warning: dereference of noderef expression
drivers/macintosh/via-pmu.c:1455:17: warning: dereference of noderef expression
drivers/macintosh/via-pmu.c:1456:69: warning: dereference of noderef expression

Tested-by: Stan Johnson <userm57@yahoo.com>
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/macintosh/via-pmu.c

index f9512bf..0a41132 100644 (file)
@@ -530,8 +530,9 @@ init_pmu(void)
        int timeout;
        struct adb_request req;
 
-       out_8(&via[B], via[B] | TREQ);                  /* negate TREQ */
-       out_8(&via[DIRB], (via[DIRB] | TREQ) & ~TACK);  /* TACK in, TREQ out */
+       /* Negate TREQ. Set TACK to input and TREQ to output. */
+       out_8(&via[B], in_8(&via[B]) | TREQ);
+       out_8(&via[DIRB], (in_8(&via[DIRB]) | TREQ) & ~TACK);
 
        pmu_request(&req, NULL, 2, PMU_SET_INTR_MASK, pmu_intr_mask);
        timeout =  100000;
@@ -1453,8 +1454,8 @@ pmu_sr_intr(void)
        struct adb_request *req;
        int bite = 0;
 
-       if (via[B] & TREQ) {
-               printk(KERN_ERR "PMU: spurious SR intr (%x)\n", via[B]);
+       if (in_8(&via[B]) & TREQ) {
+               printk(KERN_ERR "PMU: spurious SR intr (%x)\n", in_8(&via[B]));
                out_8(&via[IFR], SR_INT);
                return NULL;
        }