aihaike |
07-20-2011 12:27 AM |
I've just realized that I can "remove" (actually switch off) the device and put it back
To remove it, I do
Code:
echo 1 > /sys/bus/pci/devices/0000\:01\:00.0/remove
and
echo 1 > /sys/bus/pci/devices/0000\:01\:00.1/remove
and it does not appear in lspci output anymore.
Then I switch it off.
After that, I start it again.
If I do lspci, it (obviously) does not appear in the list.
I do
Code:
echo 1 > /sys/bus/pci/rescan
And here it is!!
It works 100% of time (of my tests).
When the device gets detected, demesg shows
Code:
pci 0000:01:00.0: reg 10: [mem 0x00000000-0x00ffffff]
pci 0000:01:00.0: reg 14: [mem 0xf0000000-0xf7ffffff 64bit pref]
pci 0000:01:00.0: reg 1c: [mem 0xf8000000-0xf9ffffff 64bit pref]
pci 0000:01:00.0: reg 24: [io 0x1000-0x107f]
pci 0000:01:00.0: reg 30: [mem 0x00000000-0x0007ffff pref]
pci 0000:01:00.1: reg 10: [mem 0xfe500000-0xfe503fff]
i915 0000:00:02.0: BAR 6: [??? 0 flags 0x2] has bogus alignment
pci 0000:01:00.0: BAR 1: assigned [mem 0xf0000000-0xf7ffffff 64bit pref]
pci 0000:01:00.0: BAR 1: set to [mem 0xf0000000-0xf7ffffff 64bit pref] (PCI address [0xf0000000-0xf7ffffff]
pci 0000:01:00.0: BAR 3: assigned [mem 0xf8000000-0xf9ffffff 64bit pref]
pci 0000:01:00.0: BAR 3: set to [mem 0xf8000000-0xf9ffffff 64bit pref] (PCI address [0xf8000000-0xf9ffffff]
pci 0000:01:00.0: BAR 0: can't assign mem (size 0x1000000)
pci 0000:01:00.0: BAR 6: assigned [mem 0xfa000000-0xfa07ffff pref]
pci 0000:01:00.1: BAR 0: assigned [mem 0xfe500000-0xfe503fff]
pci 0000:01:00.1: BAR 0: set to [mem 0xfe500000-0xfe503fff] (PCI address [0xfe500000-0xfe503fff]
pci 0000:01:00.0: BAR 5: assigned [io 0x1000-0x107f]
pci 0000:01:00.0: BAR 5: set to [io 0x1000-0x107f] (PCI address [0x1000-0x107f]
vgaarb: device added: PCI:0000:01:00.0,decodes=io+mem,owns=none,locks=none
nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
That would be awesome if someone can explain to me the meaning of this and if there is a way solve this issue.
Thank you,
Éric.
|