write_scoop_reg(scoop, SCOOP_CDR, 0x0002); 
if ((machine_is_spitz() || machine_is_borzoi()) && skt->nr == 1) { write_scoop_reg(scoop, SCOOP_CDR, 0x0000); } else { write_scoop_reg(scoop, SCOOP_CDR, 0x0002); } 
static void sharpsl_pcmcia_socket_state(struct soc_pcmcia_socket *skt,				    struct pcmcia_state *state){	unsigned short cpr, csr;	struct device *scoop = scoop_devs[skt->nr].dev;	cpr = read_scoop_reg(scoop_devs[skt->nr].dev, SCOOP_CPR);	write_scoop_reg(scoop, SCOOP_IRM, 0x00FF);	write_scoop_reg(scoop, SCOOP_ISR, 0x0000);	write_scoop_reg(scoop, SCOOP_IRM, 0x0000);	csr = read_scoop_reg(scoop, SCOOP_CSR);	if (csr & 0x0004) {		/* card eject */		write_scoop_reg(scoop, SCOOP_CDR, 0x0000);		scoop_devs[skt->nr].keep_vs = NO_KEEP_VS;	}	else if (!(scoop_devs[skt->nr].keep_vs & NO_KEEP_VS)) {		/* keep vs1,vs2 */		write_scoop_reg(scoop, SCOOP_CDR, 0x0000);		csr |= scoop_devs[skt->nr].keep_vs;	}	else if (cpr & 0x0003) {		/* power on */		write_scoop_reg(scoop, SCOOP_CDR, 0x0000);		scoop_devs[skt->nr].keep_vs = (csr & 0x00C0);	}	else {		/* card detect */		write_scoop_reg(scoop, SCOOP_CDR, 0x0002);	}	state->detect = (csr & 0x0004) ? 0 : 1;	state->ready  = (csr & 0x0002) ? 1 : 0;	state->bvd1   = (csr & 0x0010) ? 1 : 0;	state->bvd2   = (csr & 0x0020) ? 1 : 0;	state->wrprot = (csr & 0x0008) ? 1 : 0;	state->vs_3v  = (csr & 0x0040) ? 0 : 1;	state->vs_Xv  = (csr & 0x0080) ? 0 : 1;	if ((cpr & 0x0080) && ((cpr & 0x8040) != 0x8040)) {		printk(KERN_ERR "sharpsl_pcmcia_socket_state(): CPR=%04X, Low voltage!\n", cpr);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/a63ae4427c6af66d6eda26e5da8fed53f8fbede3/pxa2xx_sharpsl.c/clean/drivers/pcmcia/pxa2xx_sharpsl.c