That may be true, but I think it's more likely that the chip just needs re-flashing.
OK, so I made some more progress. Despite UPDFLASH.EXE's instructions claiming that you can run it from Windows 98 when restarted into DOS mode, I don't think it works reliably from there. So I used their other instructions and made a FreeDOS floppy and copied everything to it. With that change, UPDFLASH.EXE was able to perfectly flash the SST chip and verify its contents on the first try.
Then I booted into OS X in verbose mode (holding down command-V) and took a video so I could see the kernel panic scrollback. Here's what I saw as I stepped frame-by-frame in my video DIRECTLY before the kernel panic:
FT_ATA_Sil3112::InitialState: integrity check: FlashMemoryVenId = BF, FlashMemoryDevId = D7
FirmtekCtrllr::start: InitialState() failure
BF and D7 are the manufacturer/device IDs of the SST39VF040 from its datasheet. I'm almost 100% certain now that the driver is crashing on purpose because it's finding a chip they didn't use. Basically they're trying to prevent you from flashing their firmware onto any old PC card that uses a different flash chip. So not only does the chip you use have to be big enough, but it also has to be a chip model that they used.
OK, so I made some more progress. Despite UPDFLASH.EXE's instructions claiming that you can run it from Windows 98 when restarted into DOS mode, I don't think it works reliably from there. So I used their other instructions and made a FreeDOS floppy and copied everything to it. With that change, UPDFLASH.EXE was able to perfectly flash the SST chip and verify its contents on the first try.
Then I booted into OS X in verbose mode (holding down command-V) and took a video so I could see the kernel panic scrollback. Here's what I saw as I stepped frame-by-frame in my video DIRECTLY before the kernel panic:
FT_ATA_Sil3112::InitialState: integrity check: FlashMemoryVenId = BF, FlashMemoryDevId = D7
FirmtekCtrllr::start: InitialState() failure
BF and D7 are the manufacturer/device IDs of the SST39VF040 from its datasheet. I'm almost 100% certain now that the driver is crashing on purpose because it's finding a chip they didn't use. Basically they're trying to prevent you from flashing their firmware onto any old PC card that uses a different flash chip. So not only does the chip you use have to be big enough, but it also has to be a chip model that they used.
