OSDN Git Service

macintosh/via-pmu68k: Don't load driver on unsupported hardware
authorFinn Thain <fthain@telegraphics.com.au>
Mon, 2 Jul 2018 08:21:19 +0000 (04:21 -0400)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 31 Jul 2018 09:56:42 +0000 (19:56 +1000)
Don't load the via-pmu68k driver on early PowerBooks. The M50753 PMU
device found in those models was never supported by this driver.
Attempting to load the driver usually causes a boot hang.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reviewed-by: Michael Schmitz <schmitzmic@gmail.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/m68k/mac/misc.c
drivers/macintosh/via-pmu68k.c
include/uapi/linux/pmu.h

index c680543..7ccb799 100644 (file)
@@ -478,8 +478,7 @@ void mac_poweroff(void)
                cuda_shutdown();
 #endif
 #ifdef CONFIG_ADB_PMU68K
-       } else if (macintosh_config->adb_type == MAC_ADB_PB1
-               || macintosh_config->adb_type == MAC_ADB_PB2) {
+       } else if (macintosh_config->adb_type == MAC_ADB_PB2) {
                pmu_shutdown();
 #endif
        }
@@ -520,8 +519,7 @@ void mac_reset(void)
                cuda_restart();
 #endif
 #ifdef CONFIG_ADB_PMU68K
-       } else if (macintosh_config->adb_type == MAC_ADB_PB1
-               || macintosh_config->adb_type == MAC_ADB_PB2) {
+       } else if (macintosh_config->adb_type == MAC_ADB_PB2) {
                pmu_restart();
 #endif
        } else if (CPU_IS_030) {
index d545ed4..bec8e18 100644 (file)
@@ -175,9 +175,6 @@ static s8 pmu_data_len[256][2] = {
 int __init find_via_pmu(void)
 {
        switch (macintosh_config->adb_type) {
-       case MAC_ADB_PB1:
-               pmu_kind = PMU_68K_V1;
-               break;
        case MAC_ADB_PB2:
                pmu_kind = PMU_68K_V2;
                break;
@@ -785,7 +782,6 @@ pmu_enable_backlight(int on)
            /* first call: get current backlight value */
            if (backlight_level < 0) {
                switch(pmu_kind) {
-                   case PMU_68K_V1:
                    case PMU_68K_V2:
                        pmu_request(&req, NULL, 3, PMU_READ_NVRAM, 0x14, 0xe);
                        while (!req.complete)
index 89cb1ac..e128f60 100644 (file)
@@ -93,7 +93,7 @@ enum {
        PMU_HEATHROW_BASED,     /* PowerBook G3 series */
        PMU_PADDINGTON_BASED,   /* 1999 PowerBook G3 */
        PMU_KEYLARGO_BASED,     /* Core99 motherboard (PMU99) */
-       PMU_68K_V1,             /* 68K PMU, version 1 */
+       PMU_68K_V1,             /* Unused/deprecated */
        PMU_68K_V2,             /* 68K PMU, version 2 */
 };