Date: Wed, 11 Mar 2009 20:11:35 +0000 From: Nick Hilliard <nick-lists@netability.ie> To: freebsd-current@freebsd.org Subject: SiI3531 SATA port multipler Message-ID: <49B81AF7.1040702@netability.ie>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Hello, I've been poking around with a SiI3531 sata300 host card, connected to an external disk enclosure with an internal SiI4726 card. There are 3 x SATA disks hanging off it at the moment: > http://www.startech.com/item/SAT3540ERGB-35in-4-Drive-eSATA-Multi-RAID-External-Hard-Drive-Enclosure.aspx I have assumed that the SiI3531 is command-compatible with the SiI3112, and put in the attached patch to see what might happen. The kernel appears to recognise the sata card, but dies before initialising it properly: > ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports > ata2: error writing PM port > ata2: p6: writing ATA_SC_DET_RESET failed > ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports > ata2: error writing PM port > ata2: p4: writing ATA_SC_DET_RESET failed > ata2: error writing PM port > ata2: p5: writing ATA_SC_DET_RESET failed > ata2: error writing PM port > ata2: p6: writing ATA_SC_DET_RESET failed > ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports > ata2: error writing PM port > ata2: p6: writing ATA_SC_DET_RESET failed > ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports > ata2: error writing PM port > ata2: p6: writing ATA_SC_DET_RESET failed I've attached a full dmesg. This setup is running on an Asus P5Q SE2 motherboard, in amd64 mode with a -current kernel pulled today. Any suggestions about what could be done to make this work? Nick [-- Attachment #2 --] --- sys/dev/ata/ata-pci.h.old 2009-02-21 22:57:26.000000000 +0000 +++ sys/dev/ata/ata-pci.h 2009-03-11 17:14:11.000000000 +0000 @@ -338,6 +338,7 @@ #define ATA_SII3124 0x31241095 #define ATA_SII3132 0x31321095 #define ATA_SII3132_1 0x02421095 +#define ATA_SII3531 0x35311095 #define ATA_SII0680 0x06801095 #define ATA_CMD646 0x06461095 #define ATA_CMD648 0x06481095 --- sys/dev/ata/chipsets/ata-siliconimage.c.old 2009-03-04 18:25:39.000000000 +0000 +++ sys/dev/ata/chipsets/ata-siliconimage.c 2009-03-11 17:14:16.000000000 +0000 @@ -99,6 +99,7 @@ { ATA_SII3124, 0x00, SII_PRBIO, SII_4CH, ATA_SA300, "3124" }, { ATA_SII3132, 0x00, SII_PRBIO, 0, ATA_SA300, "3132" }, { ATA_SII3132_1, 0x00, SII_PRBIO, 0, ATA_SA300, "3132" }, + { ATA_SII3531, 0x00, SII_PRBIO, 0, ATA_SA300, "3531" }, { ATA_SII0680, 0x00, SII_MEMIO, SII_SETCLK, ATA_UDMA6, "680" }, { ATA_CMD649, 0x00, 0, SII_INTR, ATA_UDMA5, "(CMD) 649" }, { ATA_CMD648, 0x00, 0, SII_INTR, ATA_UDMA4, "(CMD) 648" }, [-- Attachment #3 --] Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 8.0-CURRENT #4: Tue Mar 10 18:19:38 GMT 2009 nick@pancake.xxxxxxx:/usr/src/sys/amd64/compile/PANCAKE WARNING: WITNESS option enabled, expect reduced performance. Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz (3010.05-MHz K8-class CPU) Origin = "GenuineIntel" Id = 0x1067a Stepping = 10 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x408e3fd<SSE3,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,XSAVE> AMD Features=0x20100800<SYSCALL,NX,LM> AMD Features2=0x1<LAHF> TSC: P-state invariant Cores per package: 2 usable memory = 8580993024 (8183 MB) avail memory = 8285020160 (7901 MB) ACPI APIC Table: <A_M_I_ OEMAPIC > FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 ioapic0 <Version 2.0> irqs 0-23 on motherboard kbd1 at kbdmux0 acpi0: <A_M_I_ OEMXSDT> on motherboard acpi0: [ITHREAD] acpi0: Power Button (fixed) acpi0: reservation of 0, a0000 (3) failed acpi0: reservation of 100000, cff00000 (3) failed Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 14318180 Hz quality 900 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <ACPI PCI-PCI bridge> irq 16 at device 1.0 on pci0 pci1: <ACPI PCI bus> on pcib1 vgapci0: <VGA-compatible display> mem 0xf8000000-0xfbffffff,0xd0000000-0xdfffffff,0xfd000000-0xfdffffff irq 16 at device 0.0 on pci1 pci0: <serial bus, USB> at device 26.0 (no driver attached) pci0: <serial bus, USB> at device 26.1 (no driver attached) pci0: <serial bus, USB> at device 26.2 (no driver attached) pci0: <serial bus, USB> at device 26.7 (no driver attached) pci0: <multimedia, HDA> at device 27.0 (no driver attached) pcib2: <ACPI PCI-PCI bridge> irq 17 at device 28.0 on pci0 pci5: <ACPI PCI bus> on pcib2 em0: <Intel(R) PRO/1000 Network Connection 6.9.6> port 0xec00-0xec1f mem 0xfebe0000-0xfebfffff,0xfebc0000-0xfebdffff irq 16 at device 0.0 on pci5 em0: Using MSI interrupt em0: [FILTER] em0: Ethernet address: 00:1b:21:32:1a:9e pcib3: <ACPI PCI-PCI bridge> irq 16 at device 28.1 on pci0 pci4: <ACPI PCI bus> on pcib3 atapci0: <SiI 3531 SATA300 controller> port 0xdc00-0xdc7f mem 0xfeaffc00-0xfeaffc7f,0xfeafc000-0xfeafdfff irq 17 at device 0.0 on pci4 atapci0: [ITHREAD] ata2: <ATA channel 0> on atapci0 ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports ata2: error writing PM port ata2: p6: writing ATA_SC_DET_RESET failed ata2: [ITHREAD] ata3: <ATA channel 1> on atapci0 ata3: [ITHREAD] pcib4: <ACPI PCI-PCI bridge> irq 17 at device 28.4 on pci0 pci3: <ACPI PCI bus> on pcib4 atapci1: <Marvell 88SX6101 UDMA133 controller> port 0xcc00-0xcc07,0xc880-0xc883,0xc800-0xc807,0xc480-0xc483,0xc400-0xc40f mem 0xfe9ffc00-0xfe9ffdff irq 16 at device 0.0 on pci3 atapci1: [ITHREAD] ata4: <ATA channel 0> on atapci1 ata4: [ITHREAD] pcib5: <ACPI PCI-PCI bridge> irq 16 at device 28.5 on pci0 pci2: <ACPI PCI bus> on pcib5 pci2: <network, ethernet> at device 0.0 (no driver attached) pci0: <serial bus, USB> at device 29.0 (no driver attached) pci0: <serial bus, USB> at device 29.1 (no driver attached) pci0: <serial bus, USB> at device 29.2 (no driver attached) pci0: <serial bus, USB> at device 29.7 (no driver attached) pcib6: <ACPI PCI-PCI bridge> at device 30.0 on pci0 pci6: <ACPI PCI bus> on pcib6 isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 atapci2: <Intel AHCI controller> port 0x9c00-0x9c07,0x9880-0x9883,0x9800-0x9807,0x9480-0x9483,0x9400-0x941f mem 0xf7ffe800-0xf7ffefff irq 19 at device 31.2 on pci0 atapci2: [ITHREAD] atapci2: AHCI Version 01.20 controller with 6 ports PM supported ata5: <ATA channel 0> on atapci2 ata5: [ITHREAD] ata6: <ATA channel 1> on atapci2 ata6: [ITHREAD] ata7: <ATA channel 2> on atapci2 ata7: [ITHREAD] ata8: <ATA channel 3> on atapci2 ata8: [ITHREAD] ata9: <ATA channel 4> on atapci2 ata9: [ITHREAD] ata10: <ATA channel 5> on atapci2 ata10: [ITHREAD] pci0: <serial bus, SMBus> at device 31.3 (no driver attached) acpi_button0: <Power Button> on acpi0 atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0 atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] atkbd0: [ITHREAD] cpu0: <ACPI CPU> on acpi0 ACPI Warning (tbutils-0243): Incorrect checksum in table [OEMB] - A5, should be A4 [20070320] est0: <Enhanced SpeedStep Frequency Control> on cpu0 p4tcc0: <CPU Frequency Thermal Control> on cpu0 cpu1: <ACPI CPU> on acpi0 est1: <Enhanced SpeedStep Frequency Control> on cpu1 est: CPU supports Enhanced Speedstep, but is not recognized. est: cpu_vendor GenuineIntel, msr 616092106000921 device_attach: est1 attach returned 6 p4tcc1: <CPU Frequency Thermal Control> on cpu1 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 1.000 msec ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports ata2: error writing PM port ata2: p6: writing ATA_SC_DET_RESET failed ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports ata2: error writing PM port ata2: p4: writing ATA_SC_DET_RESET failed ata2: error writing PM port ata2: p5: writing ATA_SC_DET_RESET failed ata2: error writing PM port ata2: p6: writing ATA_SC_DET_RESET failed ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports ata2: error writing PM port ata2: p6: writing ATA_SC_DET_RESET failed ata2: Portmultiplier (id=47261095 rev=1f06) with 7 ports ata2: error writing PM port ata2: p6: writing ATA_SC_DET_RESET failed acd0: DVDR <HL-DT-ST DVDRAM GSA-4163B/A103> at ata4-master UDMA33 ad10: 1430799MB <Seagate ST31500341AS CC1H> at ata5-master SATA300 SMP: AP CPU #1 Launched! WARNING: WITNESS option enabled, expect reduced performance. GEOM: ad10s1: geometry does not match label (255h,63s != 16h,63s). Trying to mount root from ufs:/dev/ad10s1a
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49B81AF7.1040702>
