Subject: 32-bit PCI cards in 64-bit PCI slot in Alpha PC164 - SRM blows chunks
To: None <port-alpha@netbsd.org>
From: Erik E. Fair <fair@digital.clock.org>
List: port-alpha
Date: 02/20/2000 19:19:35
The PC164 has four PCI slots, two 32-bit, and two 64-bit. This
evening, I tried to put a 32-bit card into a 64-bit slot (I'm out
of 32-bit slots). I tried a Matrox Millennium II (4MB), and later
a Qlogic ISP 1020 SCSI controller.

Both cards work fine in a 32-bit slot, but when placed in a 64-bit
slot, SRM v5.5 blows chunks.

What have I missed? What am I doing wrong?

	curious,

	Erik <fair@clock.org>

>>>show config
                        Digital AlphaPC 164 500 MHz

SRM Console:    V5.5-1
PALcode:        OpenVMS PALcode V1.21-9, Digital UNIX PALcode V1.23-8

SROM Revision: 2.2
Alpha 21164A-2
DECchip (tm) 21172 CIA ASIC Pass 3

MEMORY
256 Meg of system memory


PCI Bus
     Bus 00  Slot 05: DECchip 21140 Network Controller
                                   ewa0.0.0.5.0          67-E4-E8-E1-FF-00
     Bus 00  Slot 08: Intel 82378IB PCI to ISA Bridge
     Bus 00  Slot 11: CMD PCI0646 IDE Controller
                                   dqa.0.0.11.0
                                   dqa0.0.0.11.0          FUJITSU MPB3064ATU


ISA
Slot    Device  Name            Type         Enabled  BaseAddr  IRQ     DMA
0
        0       MOUSE           Embedded        Yes     60      12
        1       KBD             Embedded        Yes     60      1
        2       COM1            Embedded        Yes     3f8     4
        3       COM2            Embedded        Yes     2f8     3
        4       LPT1            Embedded        Yes     3bc     7
        5       FLOPPY          Embedded        Yes     3f0     6       2

When a card is placed in either 64-bit PCI slot, this happens:

*** keyboard not plugged in...
ff.fe.fd.fc.fb.fa.f9.f8.f7.f6.f5.f3.f2.f1.f0.
ef.b0.b1.b2.b3.ee.ed.ec.f4.eb.ea.e9.e8.e7.

Digital AlphaPC 164 500 MHz Console V5.5-1, Jul 14 1999 12:37:45

CPU 0 booting

CPU0: insufficient dynamic memory for a request of 12784 bytes
   PID       bytes  name
-------- ---------- ----
00000000      27072 ????
00000001      32032 idle
00000002        800 dead_eater
00000003        800 poll
00000004        800 timer
00000005     255616 powerup
00000006     609024 tt_control
00000007       2336 shell_0
00000008       2336 shell
0000000C       2336 shell
0000000D       2336 shell
0000000E       2336 shell
00000009       1056 ????
0000000F       2336 shell
00000010       2336 shell
0000000A        512 ????
00000011       2336 shell
00000012       2336 shell
00000013       2336 shell
00000014       2336 shell
00000015       2336 shell
00000016       2336 shell
00000017       2336 shell
00000018       2336 shell
00000019        992 rx_ewa0
0000001A       2336 shell
0000001B       2336 shell
0000001C       2336 shell
0000001D       2336 shell
0000001E       2336 shell
0000001F       2336 shell
00000020       2336 shell
00000021       2336 shell
00000022       2336 shell
00000023       2336 shell
00000024       2336 shell
00000025       2336 shell
00000026       2336 shell
00000028       2368 shell
00000027        128 ????
00000029       2336 shell
0000002A       2368 shell
0000002B       2336 shell
0000002C       2336 shell
0000002D       2336 shell
0000002E       2336 shell
0000002F       2336 shell
00000030       2336 shell
00000031       2336 shell
00000032       2336 shell
00000033       2336 shell
00000034       1088 pka0_poll
00000035       2336 shell
00000036       5696 entry
00000037        800 setmode
00000038       2336 shell
00000039       2336 shell
0000003A       2336 shell
0000003B       2336 shell
0000003C       2336 shell
0000003D       2336 shell

SYSFAULT CPU0 - pc = 0015c73c

exception context saved starting at 00033020

GPRs:
  0: 00000000 0004A19C  16: 00000000 0000001E
  1: 00000000 0015D7E0  17: 00000000 EFEFEFC8
  2: 00000000 0011AC30  18: 00000000 00032B68
  3: 00000000 000031F0  19: 00000000 00000025
  4: 00000000 0000002A  20: 00000000 000003F8
  5: 00000000 00000020  21: 00000000 00000005
  6: 00000000 00000000  22: 00000000 000F5000
  7: 00000000 00038128  23: 00000000 00B00086
  8: 00000000 00000000  24: 00000000 00000001
  9: 00000000 00000000  25: 00000000 00000001
 10: 00000000 00000000  26: 00000000 0015C73C
 11: 00000000 0FFFF700  27: 00000000 0015D7F0
 12: 00000000 001298F0  28: 00000000 00038898
 13: 00000000 000F56E8  29: 00000000 00033160
 14: 00000000 0FFFF680  30: 00000000 00033160
 15: 00000000 00000001

dump of active call frames:

PC  =  0015C73C
PD  =  0011AC30 (dyn$_malloc)
FP  =  00033160
SP  =  00033020

R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R29 saved starting at 00033168

R2  =  00121960
R3  =  00119670
R4  =  00119770
R5  =  00000000
R6  =  001299B0
R7  =  00000001
R8  =  00003000
R9  =  0002278C
R10 =  00000000
R11 =  00000001
R12 =  001298F0
R13 =  00038788
R29 =  000331E0

PC  =  000698B4
PD  =  00121960 (krn$_create)
FP  =  000331E0
SP  =  000330A0

R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 R29 saved starting at 00033228

R2  =  001298F0
R3  =  00022754
R4  =  000F4F80
R5  =  0FFFF680
R6  =  00129910
R7  =  00037A00
R8  =  00000000
R9  =  00000000
R10 =  00000000
R11 =  00000000
R12 =  00000000
R13 =  00000000
R14 =  00000000
R15 =  00000000
R29 =  00033300

PC  =  0008E25C
PD  =  001298F0 (control_x_action)
FP  =  00033300
SP  =  00033170

R2 R3 R4 R5 R6 R29 saved starting at 00033308

R2  =  001299B0
R3  =  000321E0
R4  =  000382E8
R5  =  000F4F80
R6  =  00038BA0
R29 =  00033340

PC  =  0008DF74
PD  =  001299B0 (tt_control)
F starting at 00033348

R2  =  001216D0
R3  =  000321E0
R4  =  000323B0
R5  =  00000000
R6  =  00000000
R7  =  00000000
R29 =  00033390

PC  =  0006943C
PD  =  001216D0 (krn$_process)
FP  =  00033390
SP  =  00033200

R2 R3 R4 R29 saved starting at 00033398

R2  =  00000000
R3  =  00000000
R4  =  00000000
R29 =  00000000