Port-ofppc archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: FirePower (was Re: TODO list for ofppc)
root%garbled.net@localhost wrote:
> But then, we unconditionally do:
>
> extent_alloc_region(tag->pbs_extent,
> holes[i].addr, holes[i].size, EX_NOWAIT);
>
> To map the holes. However, this is wrong, because the offset is different for
> io and mem. it looks like the hole extent needs to be conditionalized on
> iomem.
:
> As a quick guess.. I would think your io extent for PCI_NETBSD_CONFIGURE would
> be something like 0-8000.
I change "holes[i].addr" to "holes[i].addr - tag->pbs_offset"
in the extent_alloc_region(), also make I/O space region 0x100-0xffff
and leave MATROX_MILLENNIUM vga in genofw_pci_conf_hook(), then I get:
---
start=0x100000
Loaded initial symtab at 0x5431c0, strtab at 0x57beec, # entries 13643
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 4.99.49 (DEBUG) #15: Fri Jan 25 02:34:43 JST 2008
tsutsui@mirage:/usr/src/sys/arch/ofppc/compile/DEBUG
total memory = 128 MB
avail memory = 117 MB
bootpath: /pci/ethernet@4/netbsd.ofppc
mainbus0 (root)
cpu0 at mainbus0: 604e (Revision 2.3), ID 0 (primary)
cpu0: HID0 8000c084<EMCP,ICE,DCE,SGE,BHT>, powersave: 1
cpu0: 166.67 MHz
ofwpci0 at mainbus0
found a map reclen=5 cur=0 len=60
FOUND PCI RANGE
FOUND PCI RANGE
FOUND PCI RANGE
returning with CUR=3
cur == 3
addr=0x80000000 size=0x10000 type=1
addr=0x81000000 size=0x3e800000 type=1
addr=0xc0000000 size=0x3c000000 type=2
range==0
i==0
range==1
i==1
RANGE iomem=1 FOUND
addr=0x80000000 size=0x3f800000 type=1
HOLES FOUND
addr=0x80010000 size=0xfeffff type=-1
found a map reclen=5 cur=0 len=60
FOUND PCI RANGE
FOUND PCI RANGE
FOUND PCI RANGE
returning with CUR=3
cur == 3
addr=0x80000000 size=0x10000 type=1
addr=0x81000000 size=0x3e800000 type=1
addr=0xc0000000 size=0x3c000000 type=2
range==2
i==0
RANGE iomem=2 FOUND
addr=0xc0000000 size=0x3c000000 type=2
HOLES FOUND
pci0 at ofwpci0 bus 0: OFW method configuration space access
pchb0 at pci0 dev 0 function 0
pchb0: IBM 82660 PowerPC to PCI Bridge and Memory Controller (rev. 0x02)
pchb0: L1: enabled L2: enabled
pchb0: DRAM EDO (ECC) SRAM sync
pcib0 at pci0 dev 1 function 0: Symphony Labs 83C553 PCI-ISA Bridge (rev. 0x05)
pciide0 at pci0 dev 1 function 1
pciide0: Symphony Labs 82C105 (rev. 0x05)
pciide0: couldn't map native-PCI interrupt
pciide0: couldn't map native-PCI interrupt
esiop0 at pci0 dev 2 function 0: Symbios Logic 53c825a (fast wide scsi)
esiop0: using on-board RAM
esiop0: interrupting at irq 15
esiop0: alloc new tag DSA table at PHY addr 0x8dc000
scsibus0 at esiop0: 16 targets, 8 luns per target
tlp0 at pci0 dev 4 function 0: DECchip 21140A Ethernet, pass 2.2
tlp0: sorry, unable to handle your board
Matrox MGA Millennium 2064W ("Storm") (VGA display, revision 0x01) at pci0 dev
8 function 0 not configured
isa0 at pcib0
lpt0 at isa0 port 0x3bc-0x3bf irq 7
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com0: console
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
attimer0 at isa0 port 0x40-0x43: AT Timer
pcppi0 at isa0 port 0x61
pcppi0: attached to attimer0
biomask 8000006 netmask 8000006 ttymask 8000006
raidattach: Asked for 8 units
Kernelized RAIDframe activated
scsibus0: waiting 2 seconds for devices to settle...
esiop0: alloc newcdb at PHY addr 0x8dd000
probe(esiop0:0:0:0): command timeout, CDB: 0x12 00 00 00 24 00
[break here]
Stopped in pid 0.2 (system) at netbsd:cpu_Debugger+0x10: lwz r0, r1, 0
x14
db> tr
0x005b4f10: at comintr+0x568
0x005b4f50: at pic_handle_intr+0x17c
0x005b4fa0: at trapstart+0x8fc
0xa9b96ee0: at lwp_park_tab+0xc3c
0xa9b96ef0: at idle_loop+0xc8
0xa9b96f40: at emptyidlespin+0x10
0xa9b96f50: at _prop_dictionary_keysym32_pool+0xffabcf34
db>
---
Looks iomem space still has some problem, but not so bad..
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index