SMP on Compaq DL380

From: Matthew Sullivan <matthew_at_uq.edu.au>
Date: Thu, 21 Apr 2005 22:51:27 +1000
Hey all,

I've been reading about problems with HP/Compaq's regarding launching of 
second CPUs on SMP systems.

I've been through the BIOS settings and there seems to be no settings to 
change the APCI table etc....

Now one thing that does seem common, when I have BIOS's with MP table 
version set to 1.4 FreeBSD doesn't report the second CPU being launched 
(even though it is seen in the acpidump)....  When I set the BIOS to 
version 1.2 of the MP table the second CPU is reported and launched.

Now the Compaq DL380's I have done seem to have the ability to set 1.4 
or 1.2 of the table ... mptable reports 1.4... (below)

Any suggestions on how to launch the second CPU...?

(kernel is  5.3-RELEASE-p9 with 'options SMP')

kern.threads.virtual_cpu: 1
kern.smp.maxcpus: 16
kern.smp.cpus: 1
hw.ncpu: 1
hw.acpi.cpu.cx_supported: C1/0
hw.acpi.cpu.cx_lowest: C1
hw.acpi.cpu.cx_usage: 100.00%
machdep.cpu_idle_hlt: 1
machdep.hlt_cpus: 0
dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0

mptable:
===============================================================================

MPTable, version 2.0.15

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

MP Floating Pointer Structure:

  location:                     BIOS
  physical address:             0x000f4ff0
  signature:                    '_MP_'
  length:                       16 bytes
  version:                      1.4
  checksum:                     0x00
  mode:                         Virtual Wire

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

MP Config Table Header:

  physical address:             0x000f27c3
  signature:                    'PCMP'
  base table length:            412
  version:                      1.4
  checksum:                     0x1c
  OEM ID:                       'COMPAQ  '
  Product ID:                   'PROLIANT    '
  OEM table pointer:            0x00000000
  OEM table size:               0
  entry count:                  43
  local APIC address:           0xfee00000
  extended table length:        184
  extended table checksum:      13

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

MP Config Base Table Entries:

--
Processors:     APIC ID Version State           Family  Model   Step    
Flags
                 0       0x10    BSP, usable     6       2       1       
0x0381
                 0       0x10    AP, usable      6       8       6       
0x383fbff
--
Bus:            Bus ID  Type
                 0       PCI  
                 1       PCI  
                 9       ISA  
--
I/O APICs:      APIC ID Version State           Address
                 8       0x11    usable          0xfec00000
--
I/O Ints:       Type    Polarity    Trigger     Bus ID   IRQ    APIC ID PIN#
                INT     active-lo       level        0   5:A          8   21
                INT     active-lo       level        0   5:B          8   20
                INT     active-lo       level        0   5:C          8   21
                INT     active-lo       level        0   5:D          8   20
                INT     active-lo       level        1   4:A          8   27
                INT     active-lo       level        1   4:B          8   26
                INT     active-lo       level        1   4:C          8   27
                INT     active-lo       level        1   4:D          8   26
                INT     active-lo       level        1   5:A          8   29
                INT     active-lo       level        1   5:B          8   28
                INT     active-lo       level        1   5:C          8   29
                INT     active-lo       level        1   5:D          8   28
                INT     active-lo       level        1   6:A          8   31
                INT     active-lo       level        1   6:B          8   30
                INT     active-lo       level        1   6:C          8   31
                INT     active-lo       level        1   6:D          8   30
                INT     active-lo       level        0   1:A          8   19
                INT     active-lo       level        0   1:B          8   18
                INT     active-lo       level        0   2:A          8   17
                INT     active-hi        edge        9     1          8    1
                INT     active-hi        edge        9     0          8    2
                INT     active-hi        edge        9     3          8    3
                INT     active-hi        edge        9     4          8    4
                INT     active-hi        edge        9     5          8    5
                INT     active-hi        edge        9     6          8    6
                INT     active-hi        edge        9     7          8    7
                INT     active-hi        edge        9     8          8    8
                INT     active-hi        edge        9     9          8    9
                INT     active-hi        edge        9    10          8   10
                INT     active-hi        edge        9    11          8   11
                INT     active-hi        edge        9    12          8   12
                INT     active-lo       level        9    13          8   13
                INT     active-hi        edge        9    14          8   14
                INT     active-hi        edge        9    15          8   15
--
Local Ints:     Type    Polarity    Trigger     Bus ID   IRQ    APIC ID PIN#
                ExtINT   conforms    conforms        9     0        255    0
                NMI      conforms    conforms        9     0        255    1
--
MPTABLE OUT OF ORDER!
I/O Ints:       Type    Polarity    Trigger     Bus ID   IRQ    APIC ID PIN#
                ExtINT   conforms    conforms        9     0          8    0

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

MP Config Extended Table Entries:

--
System Address Space
 bus ID: 0 address type: I/O address
 address base: 0x0
 address range: 0x10000
--
System Address Space
 bus ID: 0 address type: I/O address
 address base: 0x0
 address range: 0x0
--
System Address Space
 bus ID: 0 address type: memory address
 address base: 0xc3d00000
 address range: 0x3300000
--
System Address Space
 bus ID: 0 address type: memory address
 address base: 0x40000000
 address range: 0x83000000
--
System Address Space
 bus ID: 3 address type: I/O address
 address base: 0x0
 address range: 0x0
--
System Address Space
 bus ID: 3 address type: memory address
 address base: 0x0
 address range: 0x0
--
System Address Space
 bus ID: 3 address type: memory address
 address base: 0x0
 address range: 0x0
--
System Address Space
 bus ID: 0 address type: memory address
 address base: 0xa0000
 address range: 0x60000
--
Bus Heirarchy
 bus ID: 9 bus info: 0x01 parent bus ID: 0
--
Compatibility Bus Address
 bus ID: 0 address modifier: add
 predefined range: 0x00000000
--
Compatibility Bus Address
 bus ID: 3 address modifier: subtract
 predefined range: 0x00000000

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

apcidump -t

/*
  RSD PTR: OEM=COMPAQ, ACPI_Rev=1.0x (0)
        RSDT=0x3fffc000, cksum=34
 */
/*
  RSDT: Length=52, Revision=1, Checksum=132,
        OEMID=COMPAQ, OEM Table ID=RACEBAIT, OEM Revision=0x2,
        Creator ID=Ò, Creator Revision=0x162e
        Entries={ 0x3fffc040, 0x3fffc100, 0x3ffff800, 0x3fffc180 }
 */
/*
  FACP: Length=116, Revision=1, Checksum=190,
        OEMID=COMPAQ, OEM Table ID=MICRO, OEM Revision=0x2,
        Creator ID=Ò, Creator Revision=0x162e
        FACS=0x3fffc0c0, DSDT=0x3fffc200
        INT_MODEL=APIC
        Preferred_PM_Profile=Unspecified (0)
        SCI_INT=9
        SMI_CMD=0x230, ACPI_ENABLE=0x1, ACPI_DISABLE=0x0, S4BIOS_REQ=0x0
        PSTATE_CNT=0x0
        PM1a_EVT_BLK=0x220-0x223
        PM1a_CNT_BLK=0x230-0x231
        PM_TMR_BLK=0x240-0x243
        P_LVL2_LAT=65535 us, P_LVL3_LAT=65535 us
        FLUSH_SIZE=0, FLUSH_STRIDE=0
        DUTY_OFFSET=0, DUTY_WIDTH=0
        DAY_ALRM=0, MON_ALRM=0, CENTURY=0
        IAPC_BOOT_ARCH=
        Flags={WBINVD,PROC_C1,SLP_BUTTON,FIX_RTC}
 */
/*
  FACS: Length=64, HwSig=0x0000abcd, Firm_Wake_Vec=0x00000000
        Global_Lock=
        Flags=
        Version=0
 */
/*
  DSDT: Length=12051, Revision=1, Checksum=225,
        OEMID=COMPAQ, OEM Table ID=DSDT, OEM Revision=0x1,
        Creator ID=MSFT, Creator Revision=0x100000b
 */
/*
  APIC: Length=78, Revision=1, Checksum=118,
        OEMID=COMPAQ, OEM Table ID=00000083, OEM Revision=0x2,
        Creator ID=, Creator Revision=0x0
        Local APIC ADDR=0xfee00000
        Flags={PC-AT}

        Type=Local APIC
        ACPI CPU=0
        Flags={ENABLED}
        APIC ID=0

        Type=Local APIC
        ACPI CPU=1
        Flags={ENABLED}
        APIC ID=1

        Type=IO APIC
        APIC ID=8
        INT BASE=0
        ADDR=0x00000000fec00000

        Type=Local NMI
        ACPI CPU=ALL
        LINT Pin=1
        Flags={Polarity=conforming, Trigger=conforming}
 */
/*
  SSDT: Length=620, Revision=1, Checksum=60,
        OEMID=COMPAQ, OEM Table ID=SSDT, OEM Revision=0x1,
        Creator ID=MSFT, Creator Revision=0x100000b
 */
/*
  SPCR: Length=80, Revision=1, Checksum=14,
        OEMID=COMPAQ, OEM Table ID=SPCR_ROM, OEM Revision=0x1,
        Creator ID=Ò, Creator Revision=0x162e
 */

Regards,

-- 
Matthew Sullivan
Specialist Systems Programmer
Information Technology Services
The University of Queensland


Received on Thu Apr 21 2005 - 10:52:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:32 UTC