From owner-p4-projects@FreeBSD.ORG Fri Dec 16 22:26:32 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 255EA16A41F; Fri, 16 Dec 2005 22:26:31 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 645AA16A41F for ; Fri, 16 Dec 2005 22:26:31 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 40D9E43D45 for ; Fri, 16 Dec 2005 22:26:30 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jBGMQN9K009678 for ; Fri, 16 Dec 2005 22:26:23 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jBGMQMaW009675 for perforce@freebsd.org; Fri, 16 Dec 2005 22:26:22 GMT (envelope-from jhb@freebsd.org) Date: Fri, 16 Dec 2005 22:26:22 GMT Message-Id: <200512162226.jBGMQMaW009675@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 88287 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Dec 2005 22:26:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=88287 Change 88287 by jhb@jhb_slimer on 2005/12/16 22:25:54 IFC @88284. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/clock.c#17 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_sysvec.c#23 integrate .. //depot/projects/smpng/sys/amd64/amd64/apic_vector.S#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#20 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysvec.c#13 integrate .. //depot/projects/smpng/sys/compat/linux/linux_mib.c#13 integrate .. //depot/projects/smpng/sys/compat/linux/linux_mib.h#8 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#35 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#40 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#60 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#38 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#42 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.h#24 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#65 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#34 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#44 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#59 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#39 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#31 integrate .. //depot/projects/smpng/sys/dev/usb/ugen.c#35 integrate .. //depot/projects/smpng/sys/i386/i386/apic_vector.s#21 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysvec.c#48 integrate .. //depot/projects/smpng/sys/kern/imgact_elf.c#49 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#45 integrate .. //depot/projects/smpng/sys/kern/subr_prof.c#28 integrate .. //depot/projects/smpng/sys/kern/sys_pipe.c#53 integrate .. //depot/projects/smpng/sys/kern/uipc_mbuf.c#42 integrate .. //depot/projects/smpng/sys/kern/uipc_mqueue.c#3 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#52 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#18 integrate .. //depot/projects/smpng/sys/netinet/if_ether.c#43 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#65 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#44 integrate .. //depot/projects/smpng/sys/netinet/raw_ip.c#54 integrate .. //depot/projects/smpng/sys/netinet/tcp_usrreq.c#46 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#62 integrate .. //depot/projects/smpng/sys/pci/amdpm.c#15 integrate .. //depot/projects/smpng/sys/powerpc/include/frame.h#9 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/genassym.c#25 integrate .. //depot/projects/smpng/sys/sys/resourcevar.h#26 integrate .. //depot/projects/smpng/sys/vm/vm_extern.h#28 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#56 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/clock.c#17 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.40 2005/11/20 01:31:29 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.41 2005/12/14 21:42:12 jhb Exp $"); #include "opt_clock.h" @@ -158,8 +158,8 @@ static u_int32_t last_time; static void handleclock(void* arg); -static void -calibrate_clocks(u_int32_t firmware_freq, u_int32_t *pcc, u_int32_t *timer); +static void calibrate_clocks(u_int32_t firmware_freq, u_int32_t *pcc, + u_int32_t *timer); static void set_timer_freq(u_int freq, int intr_freq); void ==== //depot/projects/smpng/sys/alpha/linux/linux_sysvec.c#23 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_sysvec.c,v 1.96 2005/10/14 12:43:43 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/linux/linux_sysvec.c,v 1.97 2005/12/15 16:30:41 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" ==== //depot/projects/smpng/sys/amd64/amd64/apic_vector.S#12 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.106 2005/12/08 18:33:29 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.107 2005/12/14 21:47:01 jhb Exp $ */ /* @@ -171,8 +171,7 @@ iretq /* - * Forward hardclock to another CPU. Pushes a clockframe and calls - * forwarded_hardclock(). + * Handler for IPIs sent via the per-cpu IPI bitmap. */ .text SUPERALIGN_TEXT ==== //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#20 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.71 2005/11/24 15:28:32 le Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.72 2005/12/16 05:57:18 scottl Exp $"); #include #include @@ -49,7 +49,7 @@ #include #include -#define MAX_BPAGES 512 +#define MAX_BPAGES 8192 struct bounce_zone; ==== //depot/projects/smpng/sys/amd64/linux32/linux32_sysvec.c#13 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.12 2005/11/02 21:18:07 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.13 2005/12/15 16:30:41 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" ==== //depot/projects/smpng/sys/compat/linux/linux_mib.c#13 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_mib.c,v 1.23 2005/01/14 04:44:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_mib.c,v 1.24 2005/12/15 16:30:41 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/compat/linux/linux_mib.h#8 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/compat/linux/linux_mib.h,v 1.8 2003/03/26 18:29:44 jhb Exp $ + * $FreeBSD: src/sys/compat/linux/linux_mib.h,v 1.9 2005/12/15 16:30:41 jhb Exp $ */ #ifndef _LINUX_MIB_H_ ==== //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#35 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.103 2005/11/20 01:29:29 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.104 2005/12/16 17:27:45 wpaul Exp $"); /* * This file implements a translation layer between the BSD networking ==== //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#40 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.85 2005/11/23 17:10:46 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.86 2005/12/16 17:27:45 wpaul Exp $"); #include #include ==== //depot/projects/smpng/sys/dev/ata/ata-chipset.c#60 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.140 2005/12/14 12:13:00 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.141 2005/12/16 08:12:13 sos Exp $"); #include "opt_ata.h" #include @@ -687,18 +687,19 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ATP850R, 0, ATPOLD, 0x00, ATA_UDMA2, "Acard ATP850" }, - { ATA_ATP860A, 0, 0, 0x00, ATA_UDMA4, "Acard ATP860A" }, - { ATA_ATP860R, 0, 0, 0x00, ATA_UDMA4, "Acard ATP860R" }, - { ATA_ATP865A, 0, 0, 0x00, ATA_UDMA6, "Acard ATP865A" }, - { ATA_ATP865R, 0, 0, 0x00, ATA_UDMA6, "Acard ATP865R" }, + {{ ATA_ATP850R, 0, ATPOLD, 0x00, ATA_UDMA2, "ATP850" }, + { ATA_ATP860A, 0, 0, 0x00, ATA_UDMA4, "ATP860A" }, + { ATA_ATP860R, 0, 0, 0x00, ATA_UDMA4, "ATP860R" }, + { ATA_ATP865A, 0, 0, 0x00, ATA_UDMA6, "ATP865A" }, + { ATA_ATP865R, 0, 0, 0x00, ATA_UDMA6, "ATP865R" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "Acard %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_acard_chipinit; @@ -844,21 +845,22 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ALI_5289, 0x00, 2, ALISATA, ATA_SA150, "AcerLabs M5289" }, - { ATA_ALI_5287, 0x00, 4, ALISATA, ATA_SA150, "AcerLabs M5287" }, - { ATA_ALI_5281, 0x00, 2, ALISATA, ATA_SA150, "AcerLabs M5281" }, - { ATA_ALI_5229, 0xc5, 0, ALINEW, ATA_UDMA6, "AcerLabs M5229" }, - { ATA_ALI_5229, 0xc4, 0, ALINEW, ATA_UDMA5, "AcerLabs M5229" }, - { ATA_ALI_5229, 0xc2, 0, ALINEW, ATA_UDMA4, "AcerLabs M5229" }, - { ATA_ALI_5229, 0x20, 0, ALIOLD, ATA_UDMA2, "AcerLabs M5229" }, - { ATA_ALI_5229, 0x00, 0, ALIOLD, ATA_WDMA2, "AcerLabs M5229" }, + {{ ATA_ALI_5289, 0x00, 2, ALISATA, ATA_SA150, "M5289" }, + { ATA_ALI_5287, 0x00, 4, ALISATA, ATA_SA150, "M5287" }, + { ATA_ALI_5281, 0x00, 2, ALISATA, ATA_SA150, "M5281" }, + { ATA_ALI_5229, 0xc5, 0, ALINEW, ATA_UDMA6, "M5229" }, + { ATA_ALI_5229, 0xc4, 0, ALINEW, ATA_UDMA5, "M5229" }, + { ATA_ALI_5229, 0xc2, 0, ALINEW, ATA_UDMA4, "M5229" }, + { ATA_ALI_5229, 0x20, 0, ALIOLD, ATA_UDMA2, "M5229" }, + { ATA_ALI_5229, 0x00, 0, ALIOLD, ATA_WDMA2, "M5229" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "AcerLabs %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_ali_chipinit; @@ -1077,17 +1079,18 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_AMD756, 0x00, AMDNVIDIA, 0x00, ATA_UDMA4, "AMD 756" }, - { ATA_AMD766, 0x00, AMDNVIDIA, AMDCABLE|AMDBUG, ATA_UDMA5, "AMD 766" }, - { ATA_AMD768, 0x00, AMDNVIDIA, AMDCABLE, ATA_UDMA5, "AMD 768" }, - { ATA_AMD8111, 0x00, AMDNVIDIA, AMDCABLE, ATA_UDMA6, "AMD 8111" }, + {{ ATA_AMD756, 0x00, AMDNVIDIA, 0x00, ATA_UDMA4, "756" }, + { ATA_AMD766, 0x00, AMDNVIDIA, AMDCABLE|AMDBUG, ATA_UDMA5, "766" }, + { ATA_AMD768, 0x00, AMDNVIDIA, AMDCABLE, ATA_UDMA5, "768" }, + { ATA_AMD8111, 0x00, AMDNVIDIA, AMDCABLE, ATA_UDMA6, "8111" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "AMD %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_amd_chipinit; @@ -1122,19 +1125,20 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ATI_IXP200, 0x00, 0, 0, ATA_UDMA5, "ATI IXP200" }, - { ATA_ATI_IXP300, 0x00, 0, 0, ATA_UDMA6, "ATI IXP300" }, - { ATA_ATI_IXP400, 0x00, 0, 0, ATA_UDMA6, "ATI IXP400" }, - { ATA_ATI_IXP300_S1, 0x00, SIIMEMIO, 0, ATA_SA150, "ATI IXP300" }, - { ATA_ATI_IXP400_S1, 0x00, SIIMEMIO, 0, ATA_SA150, "ATI IXP400" }, - { ATA_ATI_IXP400_S2, 0x00, SIIMEMIO, 0, ATA_SA150, "ATI IXP400" }, + {{ ATA_ATI_IXP200, 0x00, 0, 0, ATA_UDMA5, "IXP200" }, + { ATA_ATI_IXP300, 0x00, 0, 0, ATA_UDMA6, "IXP300" }, + { ATA_ATI_IXP400, 0x00, 0, 0, ATA_UDMA6, "IXP400" }, + { ATA_ATI_IXP300_S1, 0x00, SIIMEMIO, 0, ATA_SA150, "IXP300" }, + { ATA_ATI_IXP400_S1, 0x00, SIIMEMIO, 0, ATA_SA150, "IXP400" }, + { ATA_ATI_IXP400_S2, 0x00, SIIMEMIO, 0, ATA_SA150, "IXP400" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "ATI %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; @@ -1365,15 +1369,15 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_HPT374, 0x07, HPT374, 0x00, ATA_UDMA6, "HighPoint HPT374" }, - { ATA_HPT372, 0x02, HPT372, 0x00, ATA_UDMA6, "HighPoint HPT372N" }, - { ATA_HPT372, 0x01, HPT372, 0x00, ATA_UDMA6, "HighPoint HPT372" }, - { ATA_HPT371, 0x01, HPT372, 0x00, ATA_UDMA6, "HighPoint HPT371" }, - { ATA_HPT366, 0x05, HPT372, 0x00, ATA_UDMA6, "HighPoint HPT372" }, - { ATA_HPT366, 0x03, HPT370, 0x00, ATA_UDMA5, "HighPoint HPT370" }, - { ATA_HPT366, 0x02, HPT366, 0x00, ATA_UDMA4, "HighPoint HPT368" }, - { ATA_HPT366, 0x00, HPT366, HPTOLD, ATA_UDMA4, "HighPoint HPT366" }, - { ATA_HPT302, 0x01, HPT372, 0x00, ATA_UDMA6, "HighPoint HPT302" }, + {{ ATA_HPT374, 0x07, HPT374, 0x00, ATA_UDMA6, "HPT374" }, + { ATA_HPT372, 0x02, HPT372, 0x00, ATA_UDMA6, "HPT372N" }, + { ATA_HPT372, 0x01, HPT372, 0x00, ATA_UDMA6, "HPT372" }, + { ATA_HPT371, 0x01, HPT372, 0x00, ATA_UDMA6, "HPT371" }, + { ATA_HPT366, 0x05, HPT372, 0x00, ATA_UDMA6, "HPT372" }, + { ATA_HPT366, 0x03, HPT370, 0x00, ATA_UDMA5, "HPT370" }, + { ATA_HPT366, 0x02, HPT366, 0x00, ATA_UDMA4, "HPT368" }, + { ATA_HPT366, 0x00, HPT366, HPTOLD, ATA_UDMA4, "HPT366" }, + { ATA_HPT302, 0x01, HPT372, 0x00, ATA_UDMA6, "HPT302" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; @@ -1387,7 +1391,8 @@ else if (pci_get_function(dev) == 1) strcat(buffer, " (channel 2+3)"); } - sprintf(buffer, "%s %s controller", buffer, ata_mode2str(idx->max_dma)); + sprintf(buffer, "HighPoint %s %s controller", + buffer, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_highpoint_chipinit; @@ -1546,43 +1551,44 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_I82371FB, 0, 0, 0x00, ATA_WDMA2, "Intel PIIX" }, - { ATA_I82371SB, 0, 0, 0x00, ATA_WDMA2, "Intel PIIX3" }, - { ATA_I82371AB, 0, 0, 0x00, ATA_UDMA2, "Intel PIIX4" }, - { ATA_I82443MX, 0, 0, 0x00, ATA_UDMA2, "Intel PIIX4" }, - { ATA_I82451NX, 0, 0, 0x00, ATA_UDMA2, "Intel PIIX4" }, - { ATA_I82801AB, 0, 0, 0x00, ATA_UDMA2, "Intel ICH0" }, - { ATA_I82801AA, 0, 0, 0x00, ATA_UDMA4, "Intel ICH" }, - { ATA_I82372FB, 0, 0, 0x00, ATA_UDMA4, "Intel ICH" }, - { ATA_I82801BA, 0, 0, 0x00, ATA_UDMA5, "Intel ICH2" }, - { ATA_I82801BA_1, 0, 0, 0x00, ATA_UDMA5, "Intel ICH2" }, - { ATA_I82801CA, 0, 0, 0x00, ATA_UDMA5, "Intel ICH3" }, - { ATA_I82801CA_1, 0, 0, 0x00, ATA_UDMA5, "Intel ICH3" }, - { ATA_I82801DB, 0, 0, 0x00, ATA_UDMA5, "Intel ICH4" }, - { ATA_I82801DB_1, 0, 0, 0x00, ATA_UDMA5, "Intel ICH4" }, - { ATA_I82801EB, 0, 0, 0x00, ATA_UDMA5, "Intel ICH5" }, - { ATA_I82801EB_S1, 0, 0, 0x00, ATA_SA150, "Intel ICH5" }, - { ATA_I82801EB_R1, 0, 0, 0x00, ATA_SA150, "Intel ICH5" }, - { ATA_I6300ESB, 0, 0, 0x00, ATA_UDMA5, "Intel 6300ESB" }, - { ATA_I6300ESB_S1, 0, 0, 0x00, ATA_SA150, "Intel 6300ESB" }, - { ATA_I6300ESB_R1, 0, 0, 0x00, ATA_SA150, "Intel 6300ESB" }, - { ATA_I82801FB, 0, 0, 0x00, ATA_UDMA5, "Intel ICH6" }, - { ATA_I82801FB_S1, 0, AHCI, 0x00, ATA_SA150, "Intel ICH6" }, - { ATA_I82801FB_R1, 0, AHCI, 0x00, ATA_SA150, "Intel ICH6" }, - { ATA_I82801FB_M, 0, AHCI, 0x00, ATA_SA150, "Intel ICH6" }, - { ATA_I82801GB, 0, 0, 0x00, ATA_UDMA5, "Intel ICH7" }, - { ATA_I82801GB_S1, 0, AHCI, 0x00, ATA_SA300, "Intel ICH7" }, - { ATA_I82801GB_R1, 0, AHCI, 0x00, ATA_SA300, "Intel ICH7" }, - { ATA_I82801GB_M, 0, AHCI, 0x00, ATA_SA300, "Intel ICH7" }, - { ATA_I82801GB_AH, 0, AHCI, 0x00, ATA_SA300, "Intel ICH7" }, - { ATA_I31244, 0, 0, 0x00, ATA_SA150, "Intel 31244" }, + {{ ATA_I82371FB, 0, 0, 0x00, ATA_WDMA2, "PIIX" }, + { ATA_I82371SB, 0, 0, 0x00, ATA_WDMA2, "PIIX3" }, + { ATA_I82371AB, 0, 0, 0x00, ATA_UDMA2, "PIIX4" }, + { ATA_I82443MX, 0, 0, 0x00, ATA_UDMA2, "PIIX4" }, + { ATA_I82451NX, 0, 0, 0x00, ATA_UDMA2, "PIIX4" }, + { ATA_I82801AB, 0, 0, 0x00, ATA_UDMA2, "ICH0" }, + { ATA_I82801AA, 0, 0, 0x00, ATA_UDMA4, "ICH" }, + { ATA_I82372FB, 0, 0, 0x00, ATA_UDMA4, "ICH" }, + { ATA_I82801BA, 0, 0, 0x00, ATA_UDMA5, "ICH2" }, + { ATA_I82801BA_1, 0, 0, 0x00, ATA_UDMA5, "ICH2" }, + { ATA_I82801CA, 0, 0, 0x00, ATA_UDMA5, "ICH3" }, + { ATA_I82801CA_1, 0, 0, 0x00, ATA_UDMA5, "ICH3" }, + { ATA_I82801DB, 0, 0, 0x00, ATA_UDMA5, "ICH4" }, + { ATA_I82801DB_1, 0, 0, 0x00, ATA_UDMA5, "ICH4" }, + { ATA_I82801EB, 0, 0, 0x00, ATA_UDMA5, "ICH5" }, + { ATA_I82801EB_S1, 0, 0, 0x00, ATA_SA150, "ICH5" }, + { ATA_I82801EB_R1, 0, 0, 0x00, ATA_SA150, "ICH5" }, + { ATA_I6300ESB, 0, 0, 0x00, ATA_UDMA5, "6300ESB" }, + { ATA_I6300ESB_S1, 0, 0, 0x00, ATA_SA150, "6300ESB" }, + { ATA_I6300ESB_R1, 0, 0, 0x00, ATA_SA150, "6300ESB" }, + { ATA_I82801FB, 0, 0, 0x00, ATA_UDMA5, "ICH6" }, + { ATA_I82801FB_S1, 0, AHCI, 0x00, ATA_SA150, "ICH6" }, + { ATA_I82801FB_R1, 0, AHCI, 0x00, ATA_SA150, "ICH6" }, + { ATA_I82801FB_M, 0, AHCI, 0x00, ATA_SA150, "ICH6" }, + { ATA_I82801GB, 0, 0, 0x00, ATA_UDMA5, "ICH7" }, + { ATA_I82801GB_S1, 0, AHCI, 0x00, ATA_SA300, "ICH7" }, + { ATA_I82801GB_R1, 0, AHCI, 0x00, ATA_SA300, "ICH7" }, + { ATA_I82801GB_M, 0, AHCI, 0x00, ATA_SA300, "ICH7" }, + { ATA_I82801GB_AH, 0, AHCI, 0x00, ATA_SA300, "ICH7" }, + { ATA_I31244, 0, 0, 0x00, ATA_SA150, "31244" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "Intel %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_intel_chipinit; @@ -1977,15 +1983,16 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_IT8212F, 0x00, 0x00, 0x00, ATA_UDMA6, "ITE IT8212F" }, - { ATA_IT8211F, 0x00, 0x00, 0x00, ATA_UDMA6, "ITE IT8211F" }, + {{ ATA_IT8212F, 0x00, 0x00, 0x00, ATA_UDMA6, "IT8212F" }, + { ATA_IT8211F, 0x00, 0x00, 0x00, ATA_UDMA6, "IT8211F" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "ITE %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_ite_chipinit; @@ -2171,27 +2178,34 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_NFORCE1, 0, AMDNVIDIA, NVIDIA, ATA_UDMA5, "nVidia nForce" }, - { ATA_NFORCE2, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce2" }, - { ATA_NFORCE2_MCP, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce2 MCP" }, - { ATA_NFORCE2_MCP_S1, 0, 0, 0, ATA_SA150, "nVidia nForce2 MCP" }, - { ATA_NFORCE3, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce3" }, - { ATA_NFORCE3_PRO, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce3 Pro" }, - { ATA_NFORCE3_PRO_S1, 0, 0, 0, ATA_SA150, "nVidia nForce3 Pro" }, - { ATA_NFORCE3_PRO_S2, 0, 0, 0, ATA_SA150, "nVidia nForce3 Pro" }, - { ATA_NFORCE3_MCP, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce3 MCP" }, - { ATA_NFORCE3_MCP_S1, 0, 0, NV4OFF, ATA_SA150, "nVidia nForce3 MCP" }, - { ATA_NFORCE3_MCP_S2, 0, 0, NV4OFF, ATA_SA150, "nVidia nForce3 MCP" }, - { ATA_NFORCE4, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nVidia nForce4" }, - { ATA_NFORCE4_S1, 0, 0, NV4OFF, ATA_SA300, "nVidia nForce4" }, - { ATA_NFORCE4_S2, 0, 0, NV4OFF, ATA_SA300, "nVidia nForce4" }, - { 0, 0, 0, 0, 0, 0}}; - char buffer[64]; + {{ ATA_NFORCE1, 0, AMDNVIDIA, NVIDIA, ATA_UDMA5, "nForce" }, + { ATA_NFORCE2, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce2" }, + { ATA_NFORCE2_PRO, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce2 Pro" }, + { ATA_NFORCE2_PRO_S1, 0, 0, 0, ATA_SA150, "nForce2 Pro" }, + { ATA_NFORCE3, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce3" }, + { ATA_NFORCE3_PRO, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce3 Pro" }, + { ATA_NFORCE3_PRO_S1, 0, 0, 0, ATA_SA150, "nForce3 Pro" }, + { ATA_NFORCE3_PRO_S2, 0, 0, 0, ATA_SA150, "nForce3 Pro" }, + { ATA_NFORCE_MCP04, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce MCP" }, + { ATA_NFORCE_MCP04_S1, 0, 0, NV4OFF, ATA_SA150, "nForce MCP" }, + { ATA_NFORCE_MCP04_S2, 0, 0, NV4OFF, ATA_SA150, "nForce MCP" }, + { ATA_NFORCE_CK804, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce CK804" }, + { ATA_NFORCE_CK804_S1, 0, 0, NV4OFF, ATA_SA300, "nForce CK804" }, + { ATA_NFORCE_CK804_S2, 0, 0, NV4OFF, ATA_SA300, "nForce CK804" }, + { ATA_NFORCE_MCP51, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce MCP51" }, + { ATA_NFORCE_MCP51_S1, 0, 0, NV4OFF, ATA_SA300, "nForce MCP51" }, + { ATA_NFORCE_MCP51_S2, 0, 0, NV4OFF, ATA_SA300, "nForce MCP51" }, + { ATA_NFORCE_MCP55, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce MCP55" }, + { ATA_NFORCE_MCP55_S1, 0, 0, NV4OFF, ATA_SA300, "nForce MCP55" }, + { ATA_NFORCE_MCP55_S2, 0, 0, NV4OFF, ATA_SA300, "nForce MCP55" }, + { 0, 0, 0, 0, 0, 0}} ; + char buffer[64] ; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "nVidia %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_nvidia_chipinit; @@ -2382,40 +2396,40 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_PDC20246, 0, PROLD, 0x00, ATA_UDMA2, "Promise PDC20246" }, - { ATA_PDC20262, 0, PRNEW, 0x00, ATA_UDMA4, "Promise PDC20262" }, - { ATA_PDC20263, 0, PRNEW, 0x00, ATA_UDMA4, "Promise PDC20263" }, - { ATA_PDC20265, 0, PRNEW, 0x00, ATA_UDMA5, "Promise PDC20265" }, - { ATA_PDC20267, 0, PRNEW, 0x00, ATA_UDMA5, "Promise PDC20267" }, - { ATA_PDC20268, 0, PRTX, PRTX4, ATA_UDMA5, "Promise PDC20268" }, - { ATA_PDC20269, 0, PRTX, 0x00, ATA_UDMA6, "Promise PDC20269" }, - { ATA_PDC20270, 0, PRTX, PRTX4, ATA_UDMA5, "Promise PDC20270" }, - { ATA_PDC20271, 0, PRTX, 0x00, ATA_UDMA6, "Promise PDC20271" }, - { ATA_PDC20275, 0, PRTX, 0x00, ATA_UDMA6, "Promise PDC20275" }, - { ATA_PDC20276, 0, PRTX, PRSX6K, ATA_UDMA6, "Promise PDC20276" }, - { ATA_PDC20277, 0, PRTX, 0x00, ATA_UDMA6, "Promise PDC20277" }, - { ATA_PDC20318, 0, PRMIO, PRSATA, ATA_SA150, "Promise PDC20318" }, - { ATA_PDC20319, 0, PRMIO, PRSATA, ATA_SA150, "Promise PDC20319" }, - { ATA_PDC20371, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20371" }, - { ATA_PDC20375, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20375" }, - { ATA_PDC20376, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20376" }, - { ATA_PDC20377, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20377" }, - { ATA_PDC20378, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20378" }, - { ATA_PDC20379, 0, PRMIO, PRCMBO, ATA_SA150, "Promise PDC20379" }, - { ATA_PDC20571, 0, PRMIO, PRCMBO2, ATA_SA150, "Promise PDC20571" }, - { ATA_PDC20575, 0, PRMIO, PRCMBO2, ATA_SA150, "Promise PDC20575" }, - { ATA_PDC20579, 0, PRMIO, PRCMBO2, ATA_SA150, "Promise PDC20579" }, - { ATA_PDC20580, 0, PRMIO, PRCMBO2, ATA_SA150, "Promise PDC20580" }, - { ATA_PDC20617, 0, PRMIO, PRPATA, ATA_UDMA6, "Promise PDC20617" }, - { ATA_PDC20618, 0, PRMIO, PRPATA, ATA_UDMA6, "Promise PDC20618" }, - { ATA_PDC20619, 0, PRMIO, PRPATA, ATA_UDMA6, "Promise PDC20619" }, - { ATA_PDC20620, 0, PRMIO, PRPATA, ATA_UDMA6, "Promise PDC20620" }, - { ATA_PDC20621, 0, PRMIO, PRSX4X, ATA_UDMA5, "Promise PDC20621" }, - { ATA_PDC20622, 0, PRMIO, PRSX4X, ATA_SA150, "Promise PDC20622" }, - { ATA_PDC40518, 0, PRMIO, PRSATA2, ATA_SA150, "Promise PDC40518" }, - { ATA_PDC40519, 0, PRMIO, PRSATA2, ATA_SA150, "Promise PDC40519" }, - { ATA_PDC40718, 0, PRMIO, PRSATA2, ATA_SA300, "Promise PDC40718" }, - { ATA_PDC40719, 0, PRMIO, PRSATA2, ATA_SA300, "Promise PDC40719" }, + {{ ATA_PDC20246, 0, PROLD, 0x00, ATA_UDMA2, "PDC20246" }, + { ATA_PDC20262, 0, PRNEW, 0x00, ATA_UDMA4, "PDC20262" }, + { ATA_PDC20263, 0, PRNEW, 0x00, ATA_UDMA4, "PDC20263" }, + { ATA_PDC20265, 0, PRNEW, 0x00, ATA_UDMA5, "PDC20265" }, + { ATA_PDC20267, 0, PRNEW, 0x00, ATA_UDMA5, "PDC20267" }, + { ATA_PDC20268, 0, PRTX, PRTX4, ATA_UDMA5, "PDC20268" }, + { ATA_PDC20269, 0, PRTX, 0x00, ATA_UDMA6, "PDC20269" }, + { ATA_PDC20270, 0, PRTX, PRTX4, ATA_UDMA5, "PDC20270" }, + { ATA_PDC20271, 0, PRTX, 0x00, ATA_UDMA6, "PDC20271" }, + { ATA_PDC20275, 0, PRTX, 0x00, ATA_UDMA6, "PDC20275" }, + { ATA_PDC20276, 0, PRTX, PRSX6K, ATA_UDMA6, "PDC20276" }, + { ATA_PDC20277, 0, PRTX, 0x00, ATA_UDMA6, "PDC20277" }, + { ATA_PDC20318, 0, PRMIO, PRSATA, ATA_SA150, "PDC20318" }, + { ATA_PDC20319, 0, PRMIO, PRSATA, ATA_SA150, "PDC20319" }, + { ATA_PDC20371, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20371" }, + { ATA_PDC20375, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20375" }, + { ATA_PDC20376, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20376" }, + { ATA_PDC20377, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20377" }, + { ATA_PDC20378, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20378" }, + { ATA_PDC20379, 0, PRMIO, PRCMBO, ATA_SA150, "PDC20379" }, + { ATA_PDC20571, 0, PRMIO, PRCMBO2, ATA_SA150, "PDC20571" }, + { ATA_PDC20575, 0, PRMIO, PRCMBO2, ATA_SA150, "PDC20575" }, + { ATA_PDC20579, 0, PRMIO, PRCMBO2, ATA_SA150, "PDC20579" }, + { ATA_PDC20580, 0, PRMIO, PRCMBO2, ATA_SA150, "PDC20580" }, + { ATA_PDC20617, 0, PRMIO, PRPATA, ATA_UDMA6, "PDC20617" }, + { ATA_PDC20618, 0, PRMIO, PRPATA, ATA_UDMA6, "PDC20618" }, + { ATA_PDC20619, 0, PRMIO, PRPATA, ATA_UDMA6, "PDC20619" }, + { ATA_PDC20620, 0, PRMIO, PRPATA, ATA_UDMA6, "PDC20620" }, + { ATA_PDC20621, 0, PRMIO, PRSX4X, ATA_UDMA5, "PDC20621" }, + { ATA_PDC20622, 0, PRMIO, PRSX4X, ATA_SA150, "PDC20622" }, + { ATA_PDC40518, 0, PRMIO, PRSATA2, ATA_SA150, "PDC40518" }, + { ATA_PDC40519, 0, PRMIO, PRSATA2, ATA_SA150, "PDC40519" }, + { ATA_PDC40718, 0, PRMIO, PRSATA2, ATA_SA300, "PDC40718" }, + { ATA_PDC40719, 0, PRMIO, PRSATA2, ATA_SA300, "PDC40719" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; uintptr_t devid = 0; @@ -2452,7 +2466,8 @@ start = end = 0; } } - sprintf(buffer, "%s %s controller", buffer, ata_mode2str(idx->max_dma)); + sprintf(buffer, "Promise %s %s controller", + buffer, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_promise_chipinit; @@ -3280,18 +3295,19 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ServerWorks ROSB4" }, - { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "ServerWorks CSB5" }, - { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "ServerWorks CSB5" }, - { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "ServerWorks CSB6" }, - { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "ServerWorks CSB6" }, + {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, + { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, + { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, + { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, + { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; if (!(idx = ata_match_chip(dev, ids))) return ENXIO; - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "ServerWorks %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_serverworks_chipinit; @@ -3815,31 +3831,31 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_SIS182, 0x00, SISSATA, 0, ATA_SA150, "SiS 182" }, /* south */ - { ATA_SIS181, 0x00, SISSATA, 0, ATA_SA150, "SiS 181" }, /* south */ - { ATA_SIS180, 0x00, SISSATA, 0, ATA_SA150, "SiS 180" }, /* south */ - { ATA_SIS965, 0x00, SIS133NEW, 0, ATA_UDMA6, "SiS 965" }, /* south */ - { ATA_SIS964, 0x00, SIS133NEW, 0, ATA_UDMA6, "SiS 964" }, /* south */ - { ATA_SIS963, 0x00, SIS133NEW, 0, ATA_UDMA6, "SiS 963" }, /* south */ - { ATA_SIS962, 0x00, SIS133NEW, 0, ATA_UDMA6, "SiS 962" }, /* south */ + {{ ATA_SIS182, 0x00, SISSATA, 0, ATA_SA150, "182" }, /* south */ + { ATA_SIS181, 0x00, SISSATA, 0, ATA_SA150, "181" }, /* south */ + { ATA_SIS180, 0x00, SISSATA, 0, ATA_SA150, "180" }, /* south */ + { ATA_SIS965, 0x00, SIS133NEW, 0, ATA_UDMA6, "965" }, /* south */ + { ATA_SIS964, 0x00, SIS133NEW, 0, ATA_UDMA6, "964" }, /* south */ + { ATA_SIS963, 0x00, SIS133NEW, 0, ATA_UDMA6, "963" }, /* south */ + { ATA_SIS962, 0x00, SIS133NEW, 0, ATA_UDMA6, "962" }, /* south */ - { ATA_SIS745, 0x00, SIS100NEW, 0, ATA_UDMA5, "SiS 745" }, /* 1chip */ - { ATA_SIS735, 0x00, SIS100NEW, 0, ATA_UDMA5, "SiS 735" }, /* 1chip */ - { ATA_SIS733, 0x00, SIS100NEW, 0, ATA_UDMA5, "SiS 733" }, /* 1chip */ - { ATA_SIS730, 0x00, SIS100OLD, 0, ATA_UDMA5, "SiS 730" }, /* 1chip */ + { ATA_SIS745, 0x00, SIS100NEW, 0, ATA_UDMA5, "745" }, /* 1chip */ + { ATA_SIS735, 0x00, SIS100NEW, 0, ATA_UDMA5, "735" }, /* 1chip */ + { ATA_SIS733, 0x00, SIS100NEW, 0, ATA_UDMA5, "733" }, /* 1chip */ + { ATA_SIS730, 0x00, SIS100OLD, 0, ATA_UDMA5, "730" }, /* 1chip */ - { ATA_SIS635, 0x00, SIS100NEW, 0, ATA_UDMA5, "SiS 635" }, /* 1chip */ - { ATA_SIS633, 0x00, SIS100NEW, 0, ATA_UDMA5, "SiS 633" }, /* unknown */ - { ATA_SIS630, 0x30, SIS100OLD, 0, ATA_UDMA5, "SiS 630S"}, /* 1chip */ - { ATA_SIS630, 0x00, SIS66, 0, ATA_UDMA4, "SiS 630" }, /* 1chip */ - { ATA_SIS620, 0x00, SIS66, 0, ATA_UDMA4, "SiS 620" }, /* 1chip */ + { ATA_SIS635, 0x00, SIS100NEW, 0, ATA_UDMA5, "635" }, /* 1chip */ + { ATA_SIS633, 0x00, SIS100NEW, 0, ATA_UDMA5, "633" }, /* unknown */ + { ATA_SIS630, 0x30, SIS100OLD, 0, ATA_UDMA5, "630S"}, /* 1chip */ + { ATA_SIS630, 0x00, SIS66, 0, ATA_UDMA4, "630" }, /* 1chip */ + { ATA_SIS620, 0x00, SIS66, 0, ATA_UDMA4, "620" }, /* 1chip */ - { ATA_SIS550, 0x00, SIS66, 0, ATA_UDMA5, "SiS 550" }, - { ATA_SIS540, 0x00, SIS66, 0, ATA_UDMA4, "SiS 540" }, - { ATA_SIS530, 0x00, SIS66, 0, ATA_UDMA4, "SiS 530" }, + { ATA_SIS550, 0x00, SIS66, 0, ATA_UDMA5, "550" }, + { ATA_SIS540, 0x00, SIS66, 0, ATA_UDMA4, "540" }, + { ATA_SIS530, 0x00, SIS66, 0, ATA_UDMA4, "530" }, - { ATA_SIS5513, 0xc2, SIS33, 1, ATA_UDMA2, "SiS 5513" }, - { ATA_SIS5513, 0x00, SIS33, 1, ATA_WDMA2, "SiS 5513" }, + { ATA_SIS5513, 0xc2, SIS33, 1, ATA_UDMA2, "5513" }, + { ATA_SIS5513, 0x00, SIS33, 1, ATA_WDMA2, "5513" }, { 0, 0, 0, 0, 0, 0 }}; char buffer[64]; int found = 0; @@ -3882,7 +3898,8 @@ pci_write_config(dev, 0x4a, reg4a, 1); } if (!found) - sprintf(buffer,"%s %s controller",idx->text,ata_mode2str(idx->max_dma)); + sprintf(buffer,"SiS %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; @@ -4054,26 +4071,26 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_VIA82C586, 0x02, VIA33, 0x00, ATA_UDMA2, "VIA 82C586B" }, - { ATA_VIA82C586, 0x00, VIA33, 0x00, ATA_WDMA2, "VIA 82C586" }, - { ATA_VIA82C596, 0x12, VIA66, VIACLK, ATA_UDMA4, "VIA 82C596B" }, - { ATA_VIA82C596, 0x00, VIA33, 0x00, ATA_UDMA2, "VIA 82C596" }, - { ATA_VIA82C686, 0x40, VIA100, VIABUG, ATA_UDMA5, "VIA 82C686B"}, - { ATA_VIA82C686, 0x10, VIA66, VIACLK, ATA_UDMA4, "VIA 82C686A" }, - { ATA_VIA82C686, 0x00, VIA33, 0x00, ATA_UDMA2, "VIA 82C686" }, - { ATA_VIA8231, 0x00, VIA100, VIABUG, ATA_UDMA5, "VIA 8231" }, - { ATA_VIA8233, 0x00, VIA100, 0x00, ATA_UDMA5, "VIA 8233" }, - { ATA_VIA8233C, 0x00, VIA100, 0x00, ATA_UDMA5, "VIA 8233C" }, - { ATA_VIA8233A, 0x00, VIA133, 0x00, ATA_UDMA6, "VIA 8233A" }, - { ATA_VIA8235, 0x00, VIA133, 0x00, ATA_UDMA6, "VIA 8235" }, - { ATA_VIA8237, 0x00, VIA133, 0x00, ATA_UDMA6, "VIA 8237" }, - { ATA_VIA8251, 0x00, VIA133, 0x00, ATA_UDMA6, "VIA 8251" }, + {{ ATA_VIA82C586, 0x02, VIA33, 0x00, ATA_UDMA2, "82C586B" }, + { ATA_VIA82C586, 0x00, VIA33, 0x00, ATA_WDMA2, "82C586" }, + { ATA_VIA82C596, 0x12, VIA66, VIACLK, ATA_UDMA4, "82C596B" }, + { ATA_VIA82C596, 0x00, VIA33, 0x00, ATA_UDMA2, "82C596" }, + { ATA_VIA82C686, 0x40, VIA100, VIABUG, ATA_UDMA5, "82C686B"}, + { ATA_VIA82C686, 0x10, VIA66, VIACLK, ATA_UDMA4, "82C686A" }, + { ATA_VIA82C686, 0x00, VIA33, 0x00, ATA_UDMA2, "82C686" }, + { ATA_VIA8231, 0x00, VIA100, VIABUG, ATA_UDMA5, "8231" }, + { ATA_VIA8233, 0x00, VIA100, 0x00, ATA_UDMA5, "8233" }, + { ATA_VIA8233C, 0x00, VIA100, 0x00, ATA_UDMA5, "8233C" }, + { ATA_VIA8233A, 0x00, VIA133, 0x00, ATA_UDMA6, "8233A" }, + { ATA_VIA8235, 0x00, VIA133, 0x00, ATA_UDMA6, "8235" }, + { ATA_VIA8237, 0x00, VIA133, 0x00, ATA_UDMA6, "8237" }, + { ATA_VIA8251, 0x00, VIA133, 0x00, ATA_UDMA6, "8251" }, { 0, 0, 0, 0, 0, 0 }}; static struct ata_chip_id new_ids[] = - {{ ATA_VIA6410, 0x00, 0, 0x00, ATA_UDMA6, "VIA 6410" }, - { ATA_VIA6420, 0x00, 7, 0x00, ATA_SA150, "VIA 6420" }, - { ATA_VIA6421, 0x00, 6, VIABAR, ATA_SA150, "VIA 6421" }, - { ATA_VIA8251, 0x00, 0, VIAAHCI, ATA_SA150, "VIA 8251" }, + {{ ATA_VIA6410, 0x00, 0, 0x00, ATA_UDMA6, "6410" }, + { ATA_VIA6420, 0x00, 7, 0x00, ATA_SA150, "6420" }, + { ATA_VIA6421, 0x00, 6, VIABAR, ATA_SA150, "6421" }, + { ATA_VIA8251, 0x00, 0, VIAAHCI, ATA_SA150, "8251" }, { 0, 0, 0, 0, 0, 0 }}; char buffer[64]; @@ -4086,7 +4103,8 @@ return ENXIO; } - sprintf(buffer, "%s %s controller", idx->text, ata_mode2str(idx->max_dma)); + sprintf(buffer, "VIA %s %s controller", + idx->text, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_via_chipinit; ==== //depot/projects/smpng/sys/dev/ata/ata-pci.h#38 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.56 2005/12/14 12:13:00 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.57 2005/12/16 08:12:13 sos Exp $ */ /* structure holding chipset config info */ @@ -171,19 +171,24 @@ #define ATA_NVIDIA_ID 0x10de #define ATA_NFORCE1 0x01bc10de #define ATA_NFORCE2 0x006510de -#define ATA_NFORCE2_MCP 0x008510de -#define ATA_NFORCE2_MCP_S1 0x008e10de +#define ATA_NFORCE2_PRO 0x008510de +#define ATA_NFORCE2_PRO_S1 0x008e10de #define ATA_NFORCE3 0x00d510de #define ATA_NFORCE3_PRO 0x00e510de #define ATA_NFORCE3_PRO_S1 0x00e310de #define ATA_NFORCE3_PRO_S2 0x00ee10de -#define ATA_NFORCE3_MCP 0x003510de -#define ATA_NFORCE3_MCP_S1 0x003610de -#define ATA_NFORCE3_MCP_S2 0x003e10de -#define ATA_NFORCE4 0x005310de -#define ATA_NFORCE4_S1 0x005410de -#define ATA_NFORCE4_S2 0x005510de - +#define ATA_NFORCE_MCP04 0x003510de +#define ATA_NFORCE_MCP04_S1 0x003610de +#define ATA_NFORCE_MCP04_S2 0x003e10de +#define ATA_NFORCE_CK804 0x005310de +#define ATA_NFORCE_CK804_S1 0x005410de +#define ATA_NFORCE_CK804_S2 0x005510de +#define ATA_NFORCE_MCP51 0x026510de +#define ATA_NFORCE_MCP51_S1 0x026610de +#define ATA_NFORCE_MCP51_S2 0x026710de +#define ATA_NFORCE_MCP55 0x036e10de +#define ATA_NFORCE_MCP55_S1 0x037e10de +#define ATA_NFORCE_MCP55_S2 0x037f10de #define ATA_PROMISE_ID 0x105a #define ATA_PDC20246 0x4d33105a ==== //depot/projects/smpng/sys/dev/ata/ata-raid.c#42 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.111 2005/12/14 13:07:49 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.113 2005/12/16 06:11:22 scottl Exp $"); #include "opt_ata.h" #include @@ -65,6 +65,7 @@ static int ata_raid_rebuild(int array); static int ata_raid_read_metadata(device_t subdisk); static int ata_raid_write_metadata(struct ar_softc *rdp); +static int ata_raid_wipe_metadata(struct ar_softc *rdp); static int ata_raid_adaptec_read_meta(device_t dev, struct ar_softc **raidp); static int ata_raid_hptv2_read_meta(device_t dev, struct ar_softc **raidp); static int ata_raid_hptv2_write_meta(struct ar_softc *rdp); @@ -81,6 +82,7 @@ static int ata_raid_sis_read_meta(device_t dev, struct ar_softc **raidp); static int ata_raid_sis_write_meta(struct ar_softc *rdp); static int ata_raid_via_read_meta(device_t dev, struct ar_softc **raidp); +static int ata_raid_via_write_meta(struct ar_softc *rdp); static struct ata_request *ata_raid_init_request(struct ar_softc *rdp, struct bio *bio); static int ata_raid_send_request(struct ata_request *request); static int ata_raid_rw(device_t dev, u_int64_t lba, void *data, u_int bcount, int flags); @@ -908,7 +910,7 @@ case 0: /* XXX SOS cover up for bug in our PCI code */ case ATA_PROMISE_ID: ctlr = AR_F_PROMISE_RAID; - rdp->disks[disk].sectors = PR_LBA(rdp->disks[disk].dev); + rdp->disks[disk].sectors = PROMISE_LBA(rdp->disks[disk].dev); break; case ATA_SIS_ID: @@ -938,7 +940,7 @@ "If that is not what you want, use the BIOS to " "create the array\n"); ctlr = AR_F_FREEBSD_RAID; - rdp->disks[disk].sectors = PR_LBA(rdp->disks[disk].dev); + rdp->disks[disk].sectors = PROMISE_LBA(rdp->disks[disk].dev); break; } @@ -1119,7 +1121,7 @@ rdp->disks[disk].flags = 0; } } - ata_raid_write_metadata(rdp); /* XXX SOS wipe metadata instead? */ + ata_raid_wipe_metadata(rdp); ata_raid_arrays[array] = NULL; free(rdp, M_AR); return 0; @@ -1308,6 +1310,9 @@ case AR_F_SIS_RAID: return ata_raid_sis_write_meta(rdp); + + case AR_F_VIA_RAID: + return ata_raid_via_write_meta(rdp); #if 0 case AR_F_HPTV3_RAID: return ata_raid_hptv3_write_meta(rdp); @@ -1330,8 +1335,6 @@ case AR_F_SII_RAID: return ata_raid_sii_write_meta(rdp); - case AR_F_VIA_RAID: - return ata_raid_via_write_meta(rdp); #endif default: printf("ar%d: writing of %s metadata is NOT supported yet\n", @@ -1340,6 +1343,96 @@ return -1; } +static int +ata_raid_wipe_metadata(struct ar_softc *rdp) +{ + int disk, error = 0; + u_int64_t lba; + u_int32_t size; + u_int8_t *meta; + + for (disk = 0; disk < rdp->total_disks; disk++) { + if (rdp->disks[disk].dev) { + switch (rdp->format) { + case AR_F_ADAPTEC_RAID: + lba = ADP_LBA(rdp->disks[disk].dev); + size = sizeof(struct adaptec_raid_conf); + break; + + case AR_F_HPTV2_RAID: + lba = HPTV2_LBA(rdp->disks[disk].dev); + size = sizeof(struct hptv2_raid_conf); + break; + + case AR_F_HPTV3_RAID: + lba = HPTV3_LBA(rdp->disks[disk].dev); + size = sizeof(struct hptv3_raid_conf); + break; + + case AR_F_INTEL_RAID: + lba = INTEL_LBA(rdp->disks[disk].dev); + size = 3 * 512; /* XXX SOS */ + break; + + case AR_F_ITE_RAID: + lba = ITE_LBA(rdp->disks[disk].dev); + size = sizeof(struct ite_raid_conf); + break; + + case AR_F_LSIV2_RAID: + lba = LSIV2_LBA(rdp->disks[disk].dev); + size = sizeof(struct lsiv2_raid_conf); + break; + + case AR_F_LSIV3_RAID: + lba = LSIV3_LBA(rdp->disks[disk].dev); + size = sizeof(struct lsiv3_raid_conf); + break; + + case AR_F_NVIDIA_RAID: + lba = NVIDIA_LBA(rdp->disks[disk].dev); + size = sizeof(struct nvidia_raid_conf); + break; + + case AR_F_FREEBSD_RAID: + case AR_F_PROMISE_RAID: + lba = PROMISE_LBA(rdp->disks[disk].dev); + size = sizeof(struct promise_raid_conf); + break; + + case AR_F_SII_RAID: + lba = SII_LBA(rdp->disks[disk].dev); + size = sizeof(struct sii_raid_conf); + break; + + case AR_F_SIS_RAID: + lba = SIS_LBA(rdp->disks[disk].dev); + size = sizeof(struct sis_raid_conf); + break; + + case AR_F_VIA_RAID: + lba = VIA_LBA(rdp->disks[disk].dev); + size = sizeof(struct via_raid_conf); + break; + + default: + printf("ar%d: wiping of %s metadata is NOT supported yet\n", + rdp->lun, ata_raid_format(rdp)); + return ENXIO; + } + if (!(meta = malloc(size, M_AR, M_NOWAIT | M_ZERO))) + return ENOMEM; + if (ata_raid_rw(rdp->disks[disk].dev, lba, meta, size, + ATA_R_WRITE | ATA_R_DIRECT)) { + device_printf(rdp->disks[disk].dev, "wipe metadata failed\n"); + error = EIO; + } + free(meta, M_AR); + } + } + return error; +} + /* Adaptec HostRAID Metadata */ static int ata_raid_adaptec_read_meta(device_t dev, struct ar_softc **raidp) @@ -2664,7 +2757,7 @@ malloc(sizeof(struct promise_raid_conf), M_AR, M_NOWAIT | M_ZERO))) return ENOMEM; - if (ata_raid_rw(parent, PR_LBA(parent), + if (ata_raid_rw(parent, PROMISE_LBA(parent), meta, sizeof(struct promise_raid_conf), ATA_R_READ)) { if (testing || bootverbose) device_printf(parent, "%s read metadata failed\n", @@ -2973,7 +3066,8 @@ meta->checksum += *ckptr++; if (testing || bootverbose) ata_raid_promise_print_meta(meta); - if (ata_raid_rw(rdp->disks[disk].dev, PR_LBA(rdp->disks[disk].dev), + if (ata_raid_rw(rdp->disks[disk].dev, + PROMISE_LBA(rdp->disks[disk].dev), meta, sizeof(struct promise_raid_conf), ATA_R_WRITE | ATA_R_DIRECT)) { device_printf(rdp->disks[disk].dev, "write metadata failed\n"); @@ -3362,7 +3456,7 @@ goto via_out; } - /* calc the checksum and compare for valid */ + /* calculate checksum and compare for valid */ for (checksum = 0, ptr = (u_int8_t *)meta, count = 0; count < 50; count++) checksum += *ptr++; if (checksum != meta->checksum) { @@ -3395,7 +3489,7 @@ switch (meta->type & VIA_T_MASK) { case VIA_T_RAID0: raid->type = AR_T_RAID0; - raid->width = meta->stripe_layout & VIA_L_MASK; + raid->width = meta->stripe_layout & VIA_L_DISKS; if (!raid->total_sectors || (raid->total_sectors > (raid->width * meta->disk_sectors))) raid->total_sectors = raid->width * meta->disk_sectors; @@ -3409,7 +3503,7 @@ case VIA_T_RAID01: raid->type = AR_T_RAID01; - raid->width = meta->stripe_layout & VIA_L_MASK; + raid->width = meta->stripe_layout & VIA_L_DISKS; if (!raid->total_sectors || (raid->total_sectors > (raid->width * meta->disk_sectors))) raid->total_sectors = raid->width * meta->disk_sectors; @@ -3417,7 +3511,7 @@ case VIA_T_RAID5: raid->type = AR_T_RAID5; - raid->width = meta->stripe_layout & VIA_L_MASK; + raid->width = meta->stripe_layout & VIA_L_DISKS; if (!raid->total_sectors || (raid->total_sectors > ((raid->width - 1)*meta->disk_sectors))) raid->total_sectors = (raid->width - 1) * meta->disk_sectors; @@ -3438,7 +3532,8 @@ raid->magic_0 = meta->disks[0]; raid->format = AR_F_VIA_RAID; raid->generation = 0; - raid->interleave = 0x08 << (meta->stripe_layout >> VIA_L_SHIFT); + raid->interleave = >>> TRUNCATED FOR MAIL (1000 lines) <<<