Unchartevice 6640MA notebook with amd64 ZHAOXIN KaiXian KX-6640MA CPU. https://unchartevice.ru https://www.devicekb.com/hardware/pci-vendors/ven_1d17-dev_9083
BIOS one of three SATA speed modes: - Gen1/2: bsd.rd reaches installer, but SSD does not attach ahci0: device not communicating on port 0 - Gen3: bsd.rd attaches SSD and hangs after scsibus2 at softraid0: 256 targets Diff below adds PCI IDs and disables MSI for the AHCI controller, then bsd.rd attaches the SSD and successfully installs to it: |@@ |-ahci0 at pci0 dev 15 function 0 unknown vendor 0x1d17 product 0x9083 rev 0x01: msi, AHCI 1.3.1 |-ahci0: device not communicating on port 0 |+ahci0 at pci0 dev 15 function 0 "Zhaoxin StorX AHCI" rev 0x01: apic 9 int 21, AHCI 1.3.1 |+ahci0: port 0: 6.0Gb/s | scsibus0 at ahci0: 32 targets |+sd0 at scsibus0 targ 0 lun 0: <ATA, 256GB SSD, V1.3> naa.5000000000000000 |+sd0: 244198MB, 512 bytes/sector, 500118192 sectors, thin |@@ |-sd0 at scsibus1 targ 1 lun 0: <USB, SanDisk 3.2Gen1, 1.00> removable serial.07815583810735aa43ca |-sd0: 29340MB, 512 bytes/sector, 60088320 sectors |+sd1 at scsibus1 targ 1 lun 0: <USB, SanDisk 3.2Gen1, 1.00> removable serial.07815583810735aa43ca |+sd1: 29340MB, 512 bytes/sector, 60088320 sectors Feedback? Objection? OK? on either pcidevs or ahci? GENERIC and GENERIC_MP both hang with this diff after cpu0: 4MB 64b/line 16-way L2 cache but I haven't looked into that yet. Index: dev/pci/pcidevs =================================================================== RCS file: /cvs/src/sys/dev/pci/pcidevs,v diff -u -p -r1.2076 pcidevs --- dev/pci/pcidevs 22 May 2024 16:24:59 -0000 1.2076 +++ dev/pci/pcidevs 15 Jun 2024 20:11:14 -0000 @@ -352,6 +352,7 @@ vendor ROCKCHIP 0x1d87 Rockchip vendor LONGSYS 0x1d97 Longsys vendor TEKRAM2 0x1de1 Tekram vendor AMPERE 0x1def Ampere +vendor ZHAOXIN 0x1d17 Zhaoxin vendor KIOXIA 0x1e0f Kioxia vendor YMTC 0x1e49 YMTC vendor SSSTC 0x1e95 SSSTC @@ -10038,6 +10039,9 @@ product YMTC PC005 0x1001 PC005 /* Zeinet products */ product ZEINET 1221 0x0001 1221 + +/* Zhaoxin products */ +product ZHAOXIN STORX_AHCI 0x9083 StorX AHCI /* Ziatech products */ product ZIATECH ZT8905 0x8905 PCI-ST32 Index: dev/pci/ahci_pci.c =================================================================== RCS file: /cvs/src/sys/dev/pci/ahci_pci.c,v diff -u -p -r1.17 ahci_pci.c --- dev/pci/ahci_pci.c 24 May 2024 06:02:53 -0000 1.17 +++ dev/pci/ahci_pci.c 15 Jun 2024 20:19:30 -0000 @@ -71,6 +71,8 @@ int ahci_intel_attach(struct ahci_soft struct pci_attach_args *); int ahci_samsung_attach(struct ahci_softc *, struct pci_attach_args *); +int ahci_storx_attach(struct ahci_softc *, + struct pci_attach_args *); static const struct ahci_device ahci_devices[] = { { PCI_VENDOR_AMD, PCI_PRODUCT_AMD_HUDSON2_SATA_1, @@ -148,7 +150,10 @@ static const struct ahci_device ahci_dev NULL, ahci_samsung_attach }, { PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8251_SATA, - ahci_no_match, ahci_vt8251_attach } + ahci_no_match, ahci_vt8251_attach }, + + { PCI_VENDOR_ZHAOXIN, PCI_PRODUCT_ZHAOXIN_STORX_AHCI, + NULL, ahci_storx_attach }, }; int ahci_pci_match(struct device *, void *, void *); @@ -279,6 +284,19 @@ ahci_samsung_attach(struct ahci_softc *s * as the XP941 SSD controller. * https://bugzilla.kernel.org/show_bug.cgi?id=60731 * https://bugzilla.kernel.org/show_bug.cgi?id=89171 + */ + sc->sc_flags |= AHCI_F_NO_MSI; + + return (0); +} + +int +ahci_storx_attach(struct ahci_softc *sc, struct pci_attach_args *pa) +{ + /* + * Disable MSI with the ZX-100/ZX-200/ZX-E StorX AHCI Controller + * in the Unchartevice 6640MA notebook, otherwise ahci(4) hangs + * with SATA speed set to "Gen3" in BIOS. */ sc->sc_flags |= AHCI_F_NO_MSI; OpenBSD 7.5-current (RAMDISK_CD) #127: Fri Jun 14 09:55:04 MDT 2024 dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/RAMDISK_CD real mem = 8026165248 (7654MB) avail mem = 7778664448 (7418MB) random: good seed from bootblocks mainbus0 at root bios0 at mainbus0: SMBIOS rev. 3.1 @ 0x9648a000 (37 entries) bios0: vendor Byosoft version "R20" date 05/06/2022 bios0: IP3 Tech. ZEN1 acpi0 at bios0: ACPI 6.0 acpi0: tables DSDT FACP SLIC UEFI HPET APIC MCFG DMAR FPDT BGRT acpihpet0 at acpi0: 14318179 Hz acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat cpu0 at mainbus0: apid 0 (boot processor) cpu0: ZHAOXIN KaiXian KX-6640MA@2.2+GHz, 2594.84 MHz, 07-0b-00 cpu0: cpuid 1 edx=bfcbfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> ecx=77da63eb<SSE3,PCLMUL,MWAIT,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PCID,SSE4.1,SSE4.2,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND> cpu0: cpuid 6 eax=3<SENSOR> ecx=1<EFFFREQ> cpu0: cpuid 7.0 ebx=c258b<FSGSBASE,TSC_ADJUST,BMI1,SMEP,BMI2,INVPCID,RDSEED,ADX> ecx=4<UMIP> edx=20000000 cpu0: cpuid a vers=2, gp=4, gpwidth=48, ff=3, ffwidth=48 cpu0: cpuid d.1 eax=1<XSAVEOPT> cpu0: cpuid 80000001 edx=2c100800<NXE,PAGE1GB,RDTSCP,LONG> ecx=121<LAHF,ABM,3DNOWP> cpu0: cpuid 80000007 edx=100<ITSC> cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache cpu0: 4MB 64b/line 16-way L2 cache cpu0: apic clock running at 99MHz cpu0: RNG AES AES-CTR SHA1 SHA256 RSA cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2, IBE cpu at mainbus0: not configured cpu at mainbus0: not configured cpu at mainbus0: not configured ioapic0 at mainbus0: apid 9 pa 0xfec00000, version 3, 24 pins ioapic1 at mainbus0: apid 10 pa 0xfecc0000, version 3, 24 pins acpiprt0 at acpi0: bus 0 (PCI0) acpiprt1 at acpi0: bus 1 (NPE0) acpiprt2 at acpi0: bus 2 (NPE4) acpiprt3 at acpi0: bus 3 (NPE5) acpiprt4 at acpi0: bus 4 (NPE6) acpiprt5 at acpi0: bus 5 (NPE7) acpiec0 at acpi0 acpipci0 at acpi0 PCI0: 0x00000010 0x00000011 0x00000000 acpicmos0 at acpi0 "PNP0C0E" at acpi0 not configured "PNP0C0D" at acpi0 not configured "ACPI0003" at acpi0 not configured "PNP0C0A" at acpi0 not configured "PNP0C0C" at acpi0 not configured acpicpu at acpi0 not configured acpipwrres at acpi0 not configured pci0 at mainbus0 bus 0 pchb0 at pci0 dev 0 function 0 unknown vendor 0x1d17 product 0x1003 rev 0x80 pchb1 at pci0 dev 0 function 1 unknown vendor 0x1d17 product 0x31b0 rev 0x04 pchb2 at pci0 dev 0 function 2 unknown vendor 0x1d17 product 0x31b1 rev 0x04 pchb3 at pci0 dev 0 function 3 unknown vendor 0x1d17 product 0x31b2 rev 0x04 pchb4 at pci0 dev 0 function 4 unknown vendor 0x1d17 product 0x31b3 rev 0x04 pchb5 at pci0 dev 0 function 5 unknown vendor 0x1d17 product 0x31b4 rev 0x04 pchb6 at pci0 dev 0 function 6 unknown vendor 0x1d17 product 0x31b5 rev 0x04 unknown vendor 0x1d17 product 0x3a04 (class display subclass VGA, rev 0x00) at pci0 dev 1 function 0 not configured unknown vendor 0x1d17 product 0x9144 (class multimedia subclass hdaudio, rev 0x00) at pci0 dev 1 function 1 not configured ppb0 at pci0 dev 3 function 0 unknown vendor 0x1d17 product 0x0717 rev 0x01: msi pci1 at ppb0 bus 1 ppb1 at pci0 dev 4 function 0 unknown vendor 0x1d17 product 0x071b rev 0x01: msi pci2 at ppb1 bus 2 ppb2 at pci0 dev 4 function 1 unknown vendor 0x1d17 product 0x071c rev 0x01: msi pci3 at ppb2 bus 3 ppb3 at pci0 dev 5 function 0 unknown vendor 0x1d17 product 0x071d rev 0x01: msi pci4 at ppb3 bus 4 iwm0 at pci4 dev 0 function 0 "Intel AC 7265" rev 0x59, msi ppb4 at pci0 dev 5 function 1 unknown vendor 0x1d17 product 0x071e rev 0x01: msi pci5 at ppb4 bus 5 ahci0 at pci0 dev 15 function 0 unknown vendor 0x1d17 product 0x9083 rev 0x01: msi, AHCI 1.3.1 ahci0: device not communicating on port 0 scsibus0 at ahci0: 32 targets uhci0 at pci0 dev 16 function 0 unknown vendor 0x1d17 product 0x3038 rev 0xa0: apic 9 int 20 uhci1 at pci0 dev 16 function 1 unknown vendor 0x1d17 product 0x3038 rev 0xa0: apic 9 int 22 ehci0 at pci0 dev 16 function 7 unknown vendor 0x1d17 product 0x3104 rev 0x90: apic 9 int 21 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 configuration 1 interface 0 "vendor 0x1d17 EHCI root hub" rev 2.00/1.00 addr 1 unknown vendor 0x1d17 product 0x1001 (class bridge subclass ISA, rev 0x03) at pci0 dev 17 function 0 not configured pchb7 at pci0 dev 17 function 7 unknown vendor 0x1d17 product 0x31b7 rev 0x04 xhci0 at pci0 dev 18 function 0 unknown vendor 0x1d17 product 0x9204 rev 0x00: msi, xHCI 1.10 usb1 at xhci0: USB revision 3.0 uhub1 at usb1 configuration 1 interface 0 "vendor 0x1d17 xHCI root hub" rev 3.00/1.00 addr 1 unknown vendor 0x1d17 product 0x3288 (class multimedia subclass hdaudio, rev 0x20) at pci0 dev 20 function 0 not configured usb2 at uhci0: USB revision 1.0 uhub2 at usb2 configuration 1 interface 0 "vendor 0x1d17 UHCI root hub" rev 1.00/1.00 addr 1 usb3 at uhci1: USB revision 1.0 uhub3 at usb3 configuration 1 interface 0 "vendor 0x1d17 UHCI root hub" rev 1.00/1.00 addr 1 isa0 at mainbus0 com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo pckbc0 at isa0 port 0x60/5 irq 1 irq 12 pckbd0 at pckbc0 (kbd slot) wskbd0 at pckbd0: console keyboard efifb0 at mainbus0: 1920x1080, 32bpp wsdisplay0 at efifb0 mux 1: console (std, vt100 emulation), using wskbd0 uhub4 at uhub0 port 2 configuration 1 interface 0 "vendor 0x05e3 USB2.0 Hub" rev 2.00/85.36 addr 2 "Generic USB2.0-CRW" rev 2.00/39.60 addr 3 at uhub4 port 1 not configured "Sonix Technology Co., Ltd. USB 2.0 Camera" rev 2.00/1.00 addr 4 at uhub0 port 4 not configured uhub5 at uhub1 port 2 configuration 1 interface 0 "Generic 4-Port USB 2.1 Hub" rev 2.10/1.01 addr 2 umass0 at uhub1 port 3 configuration 1 interface 0 "USB SanDisk 3.2Gen1" rev 3.20/1.00 addr 3 umass0: using SCSI over Bulk-Only scsibus1 at umass0: 2 targets, initiator 0 sd0 at scsibus1 targ 1 lun 0: <USB, SanDisk 3.2Gen1, 1.00> removable serial.07815583810735aa43ca sd0: 29340MB, 512 bytes/sector, 60088320 sectors uhub6 at uhub1 port 4 configuration 1 interface 0 "Generic 4-Port USB 3.1 Hub" rev 3.10/1.01 addr 4 "vendor 0x8087 product 0x0a2a" rev 2.00/0.03 addr 2 at uhub3 port 1 not configured softraid0 at root scsibus2 at softraid0: 256 targets root on rd0a swap on rd0b dump on rd0b iwm0: could not read firmware iwm-7265-17 (error 2) iwm0: failed to load init firmware