Workaround? for hard lock caused by O2 Micro OZ601/6912/711E0

Daniel Ritz daniel.ritz at
Sat Apr 30 18:04:41 EDT 2005


good work tracking this down. the check you commented out was added to
fix problems on some bridges that don't get a already recognized up again
after redoing the interrogation. but the state your bridge initially reports
is so wrong that it's easy to see it...the following code in this place should
also do the trick while not breaking other setups...

	/* Redo card voltage interrogation */
	state = cb_readl(socket, CB_SOCKET_STATE);
        if (!(state & (CB_5VCARD | CB_3VCARD | CB_XVCARD | CB_YVCARD)) ||
             (state & (CB_CDETECT1 | CB_CDETECT2 | CB_NOTACARD | CB_BADVCCREQ)) ||
             ((state & (CB_16BITCARD | CB_CBCARD)) == (CB_16BITCARD | CB_CBCARD)))
                cb_writel(socket, CB_SOCKET_FORCE, CB_CVSTEST);


More information about the linux-pcmcia mailing list