Date: Thu, 05 Dec 2002 22:54:14 +0000 From: Ian Dowse <iedowse@maths.tcd.ie> To: Soeren Schmidt <sos@spider.deepcore.dk> Cc: sos@FreeBSD.org, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/ata ata-all.c ata-all.h ata-cbus.c ata-disk.c ata-dma.c ata-isa.c ata-pci.c atapi-fd.c Message-ID: <200212052254.aa76768@salmon.maths.tcd.ie> In-Reply-To: Your message of "Wed, 04 Dec 2002 19:56:52 %2B0100." <200212041856.gB4IuqsX064096@spider.deepcore.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <200212041856.gB4IuqsX064096@spider.deepcore.dk>, Soeren Schmidt wri tes: >> In article <200212032019.gB3KJcdf074276@repoman.freebsd.org> >> Søren Schmidt <sos@FreeBSD.org> writes: >> >> > sos 2002/12/03 12:19:38 PST >> >> > Add support for the PC98 platform to the ATA driver. >> > This mostly consists of functionality to serialize accesses to >> > the two ATA channels (which can also be used to "fix" certain >> > PCI based controllers). This seems to break pccard CD-ROM drives, as `intr_func' and `lock_func' are not set in ata-card.c. Something like the following patch should fix it. (the two pccard CD-ROM drives that I have access to need more patches to work with NEWCARD, but I guess that is more Warner's territory: the ata_pccard_probe routine needs to do a pccard_product_lookup on a list of devices, and I've found that I need to comment out the 'else return ENOMEM' in the case where getting the alt IO resource fails). Ian Index: ata-card.c =================================================================== RCS file: /home/iedowse/CVS/src/sys/dev/ata/ata-card.c,v retrieving revision 1.6 diff -u -r1.6 ata-card.c --- ata-card.c 20 Sep 2002 18:08:57 -0000 1.6 +++ ata-card.c 5 Dec 2002 22:39:42 -0000 @@ -63,6 +63,17 @@ } static int +ata_pccard_intrnoop(struct ata_channel *ch) +{ + return 1; +} + +static void +ata_pccard_locknoop(struct ata_channel *ch, int type) +{ +} + +static int ata_pccard_probe(device_t dev) { struct ata_channel *ch = device_get_softc(dev); @@ -106,6 +117,8 @@ ch->unit = 0; ch->flags |= (ATA_USE_16BIT | ATA_NO_SLAVE); + ch->intr_func = ata_pccard_intrnoop; + ch->lock_func = ata_pccard_locknoop; return ata_probe(dev); } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200212052254.aa76768>