{ },
 };
 MODULE_DEVICE_TABLE(acpi, ssif_acpi_match);
-
-/*
- * Once we get an ACPI failure, we don't try any more, because we go
- * through the tables sequentially.  Once we don't find a table, there
- * are no more.
- */
-static int acpi_failure;
-
-/*
- * Defined in the IPMI 2.0 spec.
- */
-struct SPMITable {
-       s8      Signature[4];
-       u32     Length;
-       u8      Revision;
-       u8      Checksum;
-       s8      OEMID[6];
-       s8      OEMTableID[8];
-       s8      OEMRevision[4];
-       s8      CreatorID[4];
-       s8      CreatorRevision[4];
-       u8      InterfaceType;
-       u8      IPMIlegacy;
-       s16     SpecificationRevision;
-
-       /*
-        * Bit 0 - SCI interrupt supported
-        * Bit 1 - I/O APIC/SAPIC
-        */
-       u8      InterruptType;
-
-       /*
-        * If bit 0 of InterruptType is set, then this is the SCI
-        * interrupt in the GPEx_STS register.
-        */
-       u8      GPE;
-
-       s16     Reserved;
-
-       /*
-        * If bit 1 of InterruptType is set, then this is the I/O
-        * APIC/SAPIC interrupt.
-        */
-       u32     GlobalSystemInterrupt;
-
-       /* The actual register address. */
-       struct acpi_generic_address addr;
-
-       u8      UID[4];
-
-       s8      spmi_id[1]; /* A '\0' terminated array starts here. */
-};
-
-static int try_init_spmi(struct SPMITable *spmi)
-{
-       unsigned short myaddr;
-
-       if (num_addrs >= MAX_SSIF_BMCS)
-               return -1;
-
-       if (spmi->IPMIlegacy != 1) {
-               pr_warn("IPMI: Bad SPMI legacy: %d\n", spmi->IPMIlegacy);
-               return -ENODEV;
-       }
-
-       if (spmi->InterfaceType != 4)
-               return -ENODEV;
-
-       if (spmi->addr.space_id != ACPI_ADR_SPACE_SMBUS) {
-               pr_warn(PFX "Invalid ACPI SSIF I/O Address type: %d\n",
-                       spmi->addr.space_id);
-               return -EIO;
-       }
-
-       myaddr = spmi->addr.address & 0x7f;
-
-       return new_ssif_client(myaddr, NULL, 0, 0, SI_SPMI, NULL);
-}
-
-static void spmi_find_bmc(void)
-{
-       acpi_status      status;
-       struct SPMITable *spmi;
-       int              i;
-
-       if (acpi_disabled)
-               return;
-
-       if (acpi_failure)
-               return;
-
-       for (i = 0; ; i++) {
-               status = acpi_get_table(ACPI_SIG_SPMI, i+1,
-                                       (struct acpi_table_header **)&spmi);
-               if (status != AE_OK)
-                       return;
-
-               try_init_spmi(spmi);
-       }
-}
-#else
-static void spmi_find_bmc(void) { }
 #endif
 
 #ifdef CONFIG_DMI
                ssif_i2c_driver.driver.acpi_match_table =
                        ACPI_PTR(ssif_acpi_match);
 
-       if (ssif_tryacpi)
-               spmi_find_bmc();
-
        if (ssif_trydmi) {
                rv = platform_driver_register(&ipmi_driver);
                if (rv)