Date: Tue, 20 Jan 2004 15:24:32 -0800 From: Marcel Moolenaar <marcel@xcllnt.net> To: Vladimir Kushnir <vkushnir@Alfacom.net> Cc: current@freebsd.org Subject: Re: ATA still broken Message-ID: <20040120232432.GB67810@ns1.xcllnt.net> In-Reply-To: <200401210059.24928.vkushnir@Alfacom.net> References: <200401210059.24928.vkushnir@Alfacom.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--k1lZvvs/B4yU6o8G Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Jan 21, 2004 at 12:59:24AM +0200, Vladimir Kushnir wrote: > Hello, > An ATA problem seems to persist here. With last night's sources I still cannot > boot my -CURRENT box. Setup: > MB - oldish 440BX - based ChainTech > ata0: master - NEC CDRW, slave - none > ata1: master - CDROM. slave - none > External card (CMD649-based): > ata2: master - 60G WD (the only HD), slave - none > ata3 - nothing > Tried both my customized config (with atapicam) and GENERIC, with or without > apic/ACPI - no difference. I see you have a CMD649. Can you try the attached patch. Thanks, -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net --k1lZvvs/B4yU6o8G Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="ata.diff" Index: sys/dev/ata/ata-chipset.c =================================================================== RCS file: /home/ncvs/src/sys/dev/ata/ata-chipset.c,v retrieving revision 1.57 diff -u -r1.57 ata-chipset.c --- sys/dev/ata/ata-chipset.c 17 Jan 2004 23:34:13 -0000 1.57 +++ sys/dev/ata/ata-chipset.c 20 Jan 2004 03:34:23 -0000 @@ -103,7 +103,6 @@ static int ata_sii_mio_allocate(device_t, struct ata_channel *); static void ata_sii_reset(struct ata_channel *); static void ata_sii_intr(void *); -static void ata_cmd_intr(void *); static void ata_cmd_old_intr(void *); static void ata_sii_setmode(struct ata_device *, int); static void ata_cmd_setmode(struct ata_device *, int); @@ -1667,7 +1666,7 @@ else { if ((bus_setup_intr(dev, ctlr->r_irq, ATA_INTR_FLAGS, ctlr->chip->cfg2 & SIIINTR ? - ata_cmd_intr : ata_cmd_old_intr, + ata_cmd_old_intr : ata_cmd_old_intr, ctlr, &ctlr->handle))) { device_printf(dev, "unable to setup interrupt\n"); return ENXIO; @@ -1756,6 +1755,7 @@ } } +#if 0 static void ata_cmd_intr(void *data) { @@ -1785,6 +1785,7 @@ } } } +#endif static void ata_cmd_old_intr(void *data) --k1lZvvs/B4yU6o8G--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040120232432.GB67810>