Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Oct 1997 07:28:11 -0700 (PDT)
From:      dan@math.berkeley.edu (Dan Strick)
To:        freebsd-smp@freebsd.org
Cc:        dan@math.berkeley.edu
Subject:   multiple I/O APICs
Message-ID:  <199710191428.HAA13450@math.berkeley.edu>

next in thread | raw e-mail | index | archive | help
The io_apic_setup() routine in mpapic.c doesn't like my motherboard.
It says "panic io_apic_setup: apic #1".  The problem seems to be that
the motherboard has more than one I/O APIC and this is not supported.

Please forgive this possibly stupid question, but I am not yet familiar
with the Intel 1.4 MP spec.  Can I configure the kernel to just ignore
the second I/O APIC that it doesn't know how to use?  If I set NAPIC
to 1 in the config file, the kernel panics when it starts and tells
me that I must reconfigure it with NAPIC set to 2.

I am not certain about the motherboard's correct name or model number.
I thought the machine was an Intel "AP450GX MP Server System", but none
of the manuals or papers that came with it, including the rather bulky
installation manual, carry any model name or number.

The mptable program output follows.

Dan Strick
dan@math.berkeley.edu

===============================================================================
 
MPTable, version 2.0.15
 
-------------------------------------------------------------------------------
 
MP Floating Pointer Structure:
 
  location:                     BIOS
  physical address:             0x000f75a0
  signature:                    '_MP_'
  length:                       16 bytes
  version:                      1.4
  checksum:                     0x6c
  mode:                         Virtual Wire
 
-------------------------------------------------------------------------------
 
MP Config Table Header:
 
  physical address:             0x000f75b0
  signature:                    'PCMP'
  base table length:            508
  version:                      1.4
  checksum:                     0xe1
  OEM ID:                       'INTEL   '
  Product ID:                   'ALDER       '
  OEM table pointer:            0x00000000
  OEM table size:               0
  entry count:                  52
  local APIC address:           0xfec08000
  extended table length:        240
  extended table checksum:      201
 
-------------------------------------------------------------------------------
 
MP Config Base Table Entries:
 
--
Processors:     APIC ID Version State           Family  Model   Step    Flags
                 0       0x11    BSP, usable     6       1       9       0xfbff
                 4       0x11    AP, usable      6       1       9       0xfbff
                 1       0x11    AP, usable      6       1       9       0xfbff
                 2       0x11    AP, usable      6       1       9       0xfbff
--
Bus:            Bus ID  Type
                 0       PCI   
                 1       PCI   
                18       EISA  
--
I/O APICs:      APIC ID Version State           Address
                14       0x11    usable          0xfec00000
                13       0x11    usable          0xfec01000
--
I/O Ints:       Type    Polarity    Trigger     Bus ID   IRQ    APIC ID PIN#
                INT     active-hi        edge       18     1         14    1
                INT     active-hi        edge       18     0         14    2
                INT     active-hi        edge       18     3         14    3
                INT     active-hi        edge       18     4         14    4
                INT     active-hi        edge       18     5         14    5
                INT     active-hi        edge       18     6         14    6
                INT     active-hi        edge       18     7         14    7
                INT     active-hi        edge       18     8         14    8
                INT     active-hi        edge       18     9         14    9
                INT     active-hi       level       18    10         14   10
                INT     active-hi       level       18    11         14   11
                INT     active-hi        edge       18    12         14   12
                INT     active-hi        edge       18    13         14   13
                INT     active-hi        edge       18    14         14   14
                INT     active-hi        edge       18    15         14   15
                INT     active-hi       level        0  11:A         13    0
                INT     active-hi       level        0  12:A         13    1
                INT     active-hi       level        0  13:A         13    2
                INT     active-hi       level        1  10:A         13    3
                INT     active-hi       level        1  13:A         13    4
                INT     active-hi       level        0  11:B         13    5
                INT     active-hi       level        0  12:C         13    5
                INT     active-hi       level        0  13:D         13    5
                INT     active-hi       level        1  10:B         13    5
                INT     active-hi       level        1  13:C         13    5
                INT     active-hi       level        1  14:D         13    5
                INT     active-hi       level        0  11:C         13    6
                INT     active-hi       level        0  12:D         13    6
                INT     active-hi       level        0  13:B         13    6
                INT     active-hi       level        1  14:B         13    6
                INT     active-hi       level        1  10:C         13    6
                INT     active-hi       level        1  13:D         13    6
                INT     active-hi       level        0  12:B         13    7
                INT     active-hi       level        0  13:C         13    7
                INT     active-hi       level        0  11:D         13    7
                INT     active-hi       level        1  13:B         13    7
                INT     active-hi       level        1  14:C         13    7
                INT     active-hi       level        1  10:D         13    7
                INT     active-hi       level        1  11:A         13   12
                INT     active-hi       level        1  12:A         13   13
                INT     active-hi       level        1  14:A         13   15
--
Local Ints:     Type    Polarity    Trigger     Bus ID   IRQ    APIC ID PIN#
                ExtINT  active-hi        edge       18     0        255    0
                NMI     active-hi        edge        0   0:A        255    1
 
-------------------------------------------------------------------------------
 
MP Config Extended Table Entries:
 
--
 
 bus ID: 0 address type: memory address
 address base: 0xa0000
 address range: 0x20000
--
 
 bus ID: 0 address type: prefetch address
 address base: 0xfc500000
 address range: 0x100000
--
 
 bus ID: 0 address type: memory address
 address base: 0xfc600000
 address range: 0x2500000
--
 
 bus ID: 0 address type: I/O address
 address base: 0xf000
 address range: 0x1000
--
 
 bus ID: 1 address type: prefetch address
 address base: 0xfc300000
 address range: 0x100000
--
 
 bus ID: 1 address type: memory address
 address base: 0xfc400000
 address range: 0x100000
--
 
 bus ID: 1 address type: I/O address
 address base: 0xe000
 address range: 0x1000
--
 
 bus ID: 0 address type: memory address
 address base: 0x10000000
 address range: 0xec300000
--
 
 bus ID: 0 address type: memory address
 address base: 0xfeb00000
 address range: 0x1500000
--
 
 bus ID: 0 address type: I/O address
 address base: 0x0
 address range: 0xe000
--
 
 bus ID: 18 bus info: 0x01 parent bus ID: 0--
 
 bus ID: 0 address modifier: add
 predefined range: 0x00000000--
 
 bus ID: 0 address modifier: add
 predefined range: 0x00000001--
 
 bus ID: 1 address modifier: subtract
 predefined range: 0x00000000--
 
 bus ID: 1 address modifier: subtract
 predefined range: 0x00000001
-------------------------------------------------------------------------------
 
# SMP kernel config file options:
 
 
# Required:
options         SMP                     # Symmetric MultiProcessor Kernel
options         APIC_IO                 # Symmetric (APIC) I/O
 
# Optional (built-in defaults will work in most cases):
#options                NCPU=4                  # number of CPUs
#options                NBUS=3                  # number of busses
#options                NAPIC=2                 # number of IO APICs
#options                NINTR=41                # number of INTs
 
===============================================================================




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