Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 May 2004 20:20:04 +1200
From:      Mark Kirkwood <markir@paradise.net.nz>
To:        freebsd-smp@freebsd.org
Subject:   SMP disables USB mass storage in Freebsd 4.9 RELEASE
Message-ID:  <40A32FB4.2030601@paradise.net.nz>

next in thread | raw e-mail | index | archive | help
Dear list,

I have a Tyan Tiger 133 / S1834 running Freebsd 4.9 RELEASE that 
exhibits the following:

booting with SMP and APIC_IO *disabled* lets me plug in usb devices and 
mount them - e.g:

<messages>
May 11 22:50:19 istral /kernel.STANDARD: umass0: Creative Tech NOMAD 
MuVo, rev 1.10/0.01, addr 2
May 11 22:50:19 istral /kernel.STANDARD: umass0: Get Max Lun not 
supported (IOERROR)  
May 11 22:50:19 istral /kernel.STANDARD: da0 at umass-sim0 bus 0 target 
0 lun 0
May 11 22:50:19 istral /kernel.STANDARD: da0: <CREATIVE NOMAD_MUVO 0001> 
Removable Direct Access SCSI-4 device
May 11 22:50:19 istral /kernel.STANDARD: da0: 650KB/s transfers
May 11 22:50:19 istral /kernel.STANDARD: da0: 125MB (256001 512 byte 
sectors: 64H 32S/T 125C)
</messages>

whereas with them enabled I cannot - e.g:

<messages>
May 12 22:29:23 istral /kernel.SMP: uhub0: device problem, disabling port 1
</messages>

The difference between STANDARD and GENERIC is

$ diff STANDARD GENERIC
21,23c21,23
< #cpu          I386_CPU
< #cpu          I486_CPU
< #cpu          I586_CPU
---
 > cpu           I386_CPU
 > cpu           I486_CPU
 > cpu           I586_CPU
25c25
< ident         STANDARD
---
 > ident         GENERIC
29d28
< makeoptions   COPTFLAGS="-O2 -pipe -funroll-loops -ffast-math"
118d116
< device                atapicam        # CAM Cooked SCSI device

The difference between SMP and STANDARD is
$ diff STANDARD SMP
65,66c65,66
< #options      SMP                     # Symmetric MultiProcessor Kernel
< #options      APIC_IO                 # Symmetric (APIC) I/O
---
 > options       SMP                     # Symmetric MultiProcessor Kernel
 > options       APIC_IO                 # Symmetric (APIC) I/O

My mptable:

===============================================================================

MPTable, version 2.0.15

-------------------------------------------------------------------------------

MP Floating Pointer Structure:

  location:            BIOS
  physical address:        0x000f5940
  signature:            '_MP_'
  length:            16 bytes
  version:            1.1
  checksum:            0x80
  mode:                Virtual Wire

-------------------------------------------------------------------------------

MP Config Table Header:

  physical address:        0x000f1400
  signature:            'PCMP'
  base table length:        260
  version:            1.1
  checksum:            0xd5
  OEM ID:            'OEM00000'
  Product ID:            'PROD00000000'
  OEM table pointer:        0x00000000
  OEM table size:        0
  entry count:            24
  local APIC address:        0xfee00000
  extended table length:    0
  extended table checksum:    0

-------------------------------------------------------------------------------

MP Config Base Table Entries:

--
Processors:    APIC ID    Version    State        Family    Model   
 Step    Flags
         0     0x11     BSP, usable     6     8     3     0xfbff
         1     0x11     AP, usable     6     8     3     0xfbff
--
Bus:        Bus ID    Type
         0     PCI
         1     PCI   
         2     ISA
--
I/O APICs:    APIC ID    Version    State        Address
         2     0x11     usable         0xfec00000
--
I/O Ints:    Type    Polarity    Trigger    Bus ID     IRQ    APIC ID   
 PIN#
        ExtINT     conforms    conforms         2       0          2       0
        INT     conforms    conforms         2       1          2       1
        INT     conforms    conforms         2       0          2       2
        INT     conforms    conforms         2       3          2       3
        INT     conforms    conforms         2       4          2       4
        INT     conforms    conforms         2       6          2       6
        INT     conforms    conforms         2       7          2       7
        INT    active-hi        edge         2       8          2       8
        INT     conforms    conforms         2       9          2       9
        INT     conforms    conforms         2      12          2      12
        INT     conforms    conforms         2      13          2      13
        INT     conforms    conforms         2      14          2      14
        INT     conforms    conforms         2      15          2      15
        INT    active-lo       level         2      11          2      16
        INT    active-lo       level         2      10          2      18
        INT    active-lo       level         2       5          2      19
--
Local Ints:    Type    Polarity    Trigger    Bus ID     IRQ    APIC 
ID    PIN#
        ExtINT     conforms    conforms         2       0        255       0
        NMI     conforms    conforms         2       0        255       1

===============================================================================

My general configuration is:

Tyan Tiger 133 S1834:VIA 82C691 PCI/82C596 ATA/83C572 USB
2xPIII 700 100Mhz
4x512Mb Kingston DIMM
2x40G Maxtor +8 connected to Promise TX2000 PCI RAID
1xMatrix Millenium II AGP

Any ideas would be greatly appreciated, as it is very convenient to have 
USB working without having to effectively "lose" a CPU.

(As a general note Freebsd/SMP on this box seems to work flawlessly 
apart from this issue!)

regards

Mark



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40A32FB4.2030601>