.via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_IWM,
        },
 
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_IWM,
        }, {
                .ident          = MAC_MODEL_IIX,
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_IICX,
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_SE30,
                .via_type       = MAC_VIA_II,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_IIFX,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_IIFX,
                .scc_type       = MAC_SCC_IOP,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_IOP,
        }, {
                .ident          = MAC_MODEL_IISI,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_IIVI,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_IIVX,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_CCL,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_CCLII,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_LCII,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_LCIII,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q605_ACC,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q610,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q630,
                .scsi_type      = MAC_SCSI_QUADRA,
                .ide_type       = MAC_IDE_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
-               .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_COMM,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q650,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        },
        /* The Q700 does have a NS Sonic */
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q800,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_Q840,
                .scsi_type      = MAC_SCSI_QUADRA3,
                .scc_type       = MAC_SCC_PSC,
                .ether_type     = MAC_ETHER_MACE,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_AV,
        }, {
                .ident          = MAC_MODEL_Q900,
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_IOP,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_IOP,
        }, {
                .ident          = MAC_MODEL_Q950,
                .scsi_type      = MAC_SCSI_QUADRA2,
                .scc_type       = MAC_SCC_IOP,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_IOP,
        },
 
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_P475,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_P475F,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_P520,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_P550,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
        /* These have the comm slot, and therefore possibly SONIC ethernet */
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_COMM,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_P588,
                .scsi_type      = MAC_SCSI_QUADRA,
                .ide_type       = MAC_IDE_QUADRA,
                .scc_type       = MAC_SCC_II,
-               .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_COMM,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_TV,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_P600,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_LC,
                .scc_type       = MAC_SCC_II,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_C650,
                .scsi_type      = MAC_SCSI_QUADRA,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR1,
        }, {
                .ident          = MAC_MODEL_C660,
                .scsi_type      = MAC_SCSI_QUADRA3,
                .scc_type       = MAC_SCC_PSC,
                .ether_type     = MAC_ETHER_MACE,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_PDS_NUBUS,
                .floppy_type    = MAC_FLOPPY_AV,
        },
 
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB145,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB150,
                .scsi_type      = MAC_SCSI_OLD,
                .ide_type       = MAC_IDE_PB,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB160,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB165,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB165C,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB170,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB180,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB180C,
                .via_type       = MAC_VIA_QUADRA,
                .scsi_type      = MAC_SCSI_OLD,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB190,
                .scsi_type      = MAC_SCSI_LATE,
                .ide_type       = MAC_IDE_BABOON,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB520,
                .scsi_type      = MAC_SCSI_LATE,
                .scc_type       = MAC_SCC_QUADRA,
                .ether_type     = MAC_ETHER_SONIC,
-               .nubus_type     = MAC_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB230,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB250,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB270C,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB280,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        }, {
                .ident          = MAC_MODEL_PB280C,
                .via_type       = MAC_VIA_IICI,
                .scsi_type      = MAC_SCSI_DUO,
                .scc_type       = MAC_SCC_QUADRA,
-               .nubus_type     = MAC_NUBUS,
+               .expansion_type = MAC_EXP_NUBUS,
                .floppy_type    = MAC_FLOPPY_SWIM_ADDR2,
        },
 
         * Ethernet device
         */
 
-       switch (macintosh_config->ether_type) {
-       case MAC_ETHER_SONIC:
+       if (macintosh_config->ether_type == MAC_ETHER_SONIC ||
+           macintosh_config->expansion_type == MAC_EXP_PDS_COMM)
                platform_device_register_simple("macsonic", -1, NULL, 0);
-               break;
-       case MAC_ETHER_MACE:
+
+       if (macintosh_config->ether_type == MAC_ETHER_MACE)
                platform_device_register_simple("macmace", -1, NULL, 0);
-               break;
-       }
 
        return 0;
 }