I'd like to gather rough opinions about an idea to "simplify" pcmcia. Our pcmcia stack in Solaris is rather complex, and I think a lot of this owes to a desire to make it compliant with the quasi-portable Card Services API/DDK (specified by the PCMCIA org, and largely meant for use with other operating systems; intended to facilitate porting pccard drivers, I think.)
I'd like to officially deprecate the Card Services API & DDK. In fact, what I'd really like to do is "desupport" them entirely, so that no new card services based drivers can be supported. This is probably not any significant concern, since nobody (at least nobody sane!) is developing new pc-card hardware or device drivers. I firmly believe that the *entire* set of "interesting" pcmcia device drivers are those that are already integrated into ON. We can, through a variety of possible approaches, make it so that the interfaces revert to Consolidation Private within ON, and actually enforce this technologically (so drivers that are not participating within ON will simply fail to load at modload time.) Several folks have asked me about just nuking pcmcia altogether. I personally don't think this is viable for several reasons: 1) CompactFlash adapters -- CF is still used in some cases, though there are cheap USB readers 2) pcser is still used with modems. And not just 56K modems, but also (and possibly more importantly) 3G wireless modems. While USB alternatives exist, I think it is premature to force people to change these out. (Cardbus and express card alternatives exist as well, but are less common. Most of the products released during the early days of 3G were pcmcia.) 3) WiFi. There are (or were) quite a few PRISM 802.11b WLAN devices on the market, which work with "pcwl". Also, the Cisco Aironet products are supported by "pcan". Although, the reality is that these days there are good 802.11g cardbus variants that are a better choice for most people. The clincher IMO is the 3G and 56K modem issue. I think these products are (or were until recently) still manufactured, as there is no compelling reason to use Cardbus if you only need a few Mbps or less and the logic for Cardbus is more complex than for 16-bit PCMCIA. Anyway, I'm interested to hear what people think? Is there any need to retain a public version of the Card Services API/DDK? - Garrett