Thanks for the help Kerry,
Kerry Shu wrote:
I attached the pcitool package for you to have a try. <snipped package
install instructions for SUNWio-tools>
access the configuration space:
# pcitool /p...@0,0 -d bdf=5.0.0,config -b 0x100 -r
==> from this output, you can check if the device is in D0 or not. I can
also help to double check it for you.
My output:
% pfexec pcitool /p...@0,0 -d bdf=5.0.0,config -b 0x100 -r
0F 0E 0D 0C 0B 0A 09 08 07 06 05 04 03 02 01 00
-----------------------------------------------
0x00000000e0500000: 00 00 00 10 05 01 00 02 00 10 00 47 00 14 15 b6
0x00000000e0500010: 00 00 00 00 00 00 00 00 fe 5e 00 00 fe 5f 00 00
0x00000000e0500020: 00 14 10 ee 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e0500030: 00 00 01 0b 00 00 00 00 00 00 00 40 fe 60 00 00
0x00000000e0500040: 00 00 00 00 01 80 60 05 00 00 00 00 08 03 48 01
0x00000000e0500050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e0500060: 00 03 f4 41 00 00 20 37 00 64 80 2a 00 01 00 10
0x00000000e0500070: 00 00 00 00 00 00 00 00 00 00 00 00 10 41 00 00
0x00000000e0500080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e0500090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00000000e05000f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
I'll go over this with my hardware engineer once I figure out what it
is. :-) I assume it is the configuration space for the PCI nexus
device? I can't figure out what "-d bdf=5.0.0,config -b 0x100" is.
access the bar0(chipset internal registers)
# pcitool /p...@0,0 -d bdf=5.0.0,bar0 -b 0x100 -r
==> are they 0xffffffff?
Yes.
% pfexec pcitool /p...@0,0 -d bdf=5.0.0,bar0 -b 0x100 -r
0F 0E 0D 0C 0B 0A 09 08 07 06 05 04 03 02 01 00
-----------------------------------------------
0x00000000fe5f0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0010: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0020: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0030: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0040: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0050: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0060: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0070: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f0090: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5f00f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
access the bar1
# pcitool /p...@0,0 -d bdf=5.0.0,bar1 -b 0x100 -r
==> are they 0xffffffff?
Yes.
% pfexec pcitool /p...@0,0 -d bdf=5.0.0,bar1 -b 0x100 -r
0F 0E 0D 0C 0B 0A 09 08 07 06 05 04 03 02 01 00
-----------------------------------------------
0x00000000fe5e0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0010: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0020: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0030: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0040: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0050: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0060: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0070: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e0090: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
0x00000000fe5e00f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
***
I didn't think much of it before, but when I attach my driver I get the
following output in /var/adm/messages:
May 7 10:36:54 dlx-a36 genunix: [ID 513080 kern.notice] NOTICE:
Inside _info
May 7 10:36:54 dlx-a36 genunix: [ID 874762 kern.notice] NOTICE:
Inside _init
May 7 10:36:54 dlx-a36 genunix: [ID 877790 kern.notice] NOTICE:
Inside pflash_attach
May 7 10:36:54 dlx-a36 pflash: [ID 714553 kern.notice] NOTICE:
registers at ffffff028ed87000
May 7 10:36:54 dlx-a36 genunix: [ID 636263 kern.notice] NOTICE:
Reporting pflash_attach
May 7 10:36:54 dlx-a36 pcie_pci: [ID 586369 kern.info] PCIE-device:
pci10ee,1...@0, pflash1
May 7 10:36:54 dlx-a36 genunix: [ID 936769 kern.info] pflash1 is
/p...@0,0/pci8086,3...@6/pci10ee,1...@0
May 7 10:36:54 dlx-a36 unix: [ID 954099 kern.info] NOTICE: IRQ18 is
being shared by drivers with different interrupt levels.
May 7 10:36:54 dlx-a36 This may result in reduced system performance.
May 7 10:36:54 dlx-a36 pflash: [ID 590603 kern.notice] NOTICE:
register hwid@ = xffffffff
May 7 10:36:54 dlx-a36 pcplusmp: [ID 444295 kern.info] pcplusmp:
ide (ata) instance #1 vector 0xf ioapic 0x8 intin 0xf is bound to cpu 1
Perhaps the "IRQ18 is being shared by drivers with different interrupt
levels" is something to be concerned about?
_______________________________________________
driver-discuss mailing list
driver-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/driver-discuss