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;