Module Name:    src
Committed By:   phx
Date:           Sun Sep  7 22:24:40 UTC 2014

Modified Files:
        src/sys/arch/amiga/dev: gayle_pcmcia.c

Log Message:
According to http://eab.abime.net/showpost.php?p=782840&postcount=115
there are two methods for a Gayle PCMCIA soft-reset.
pccard_attach() only implemented a method with works on A600 and some
older (?) A1200 models. I added the second method as well, to make the
reset work in any case. Tested on the latest A1200 model, which failed before.


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 src/sys/arch/amiga/dev/gayle_pcmcia.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/amiga/dev/gayle_pcmcia.c
diff -u src/sys/arch/amiga/dev/gayle_pcmcia.c:1.29 src/sys/arch/amiga/dev/gayle_pcmcia.c:1.30
--- src/sys/arch/amiga/dev/gayle_pcmcia.c:1.29	Wed Jan 22 00:25:16 2014
+++ src/sys/arch/amiga/dev/gayle_pcmcia.c	Sun Sep  7 22:24:40 2014
@@ -1,9 +1,9 @@
-/*	$NetBSD: gayle_pcmcia.c,v 1.29 2014/01/22 00:25:16 christos Exp $ */
+/*	$NetBSD: gayle_pcmcia.c,v 1.30 2014/09/07 22:24:40 phx Exp $ */
 
 /* public domain */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: gayle_pcmcia.c,v 1.29 2014/01/22 00:25:16 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gayle_pcmcia.c,v 1.30 2014/09/07 22:24:40 phx Exp $");
 
 /* PCMCIA front-end driver for A1200's and A600's. */
 
@@ -206,6 +206,11 @@ pccard_attach(device_t parent, device_t 
 	/* reset the card if it's already there */
 	if (gayle_pcmcia_status_read() & GAYLE_CCMEM_DETECT) {
 		volatile u_int8_t x;
+
+		gayle_intr_ack(0xff);
+		delay(500);
+		gayle_intr_ack(0xfc);
+
 		*reset_card_reg = 0x0;
 		delay(1000);
 		x = *reset_card_reg;

Reply via email to