* Rescan PCIE bus to find recently powered on device. @ 2013-04-19 2:59 Frank Rizzo 2013-04-19 3:27 ` Yijing Wang 2013-05-12 22:13 ` Frank Rizzo 0 siblings, 2 replies; 14+ messages in thread From: Frank Rizzo @ 2013-04-19 2:59 UTC (permalink / raw) To: linux-pci@vger.kernel.org Hey list. I'm working on a driver for a device that's external from the PC. It's connected to the PC via a weird cable that connects to a PCIE card inside the case that appears to be nothing other than glue logic to allow the signals from the cable to be tossed onto the bus. When the external device is powered off during boot, nothing is found. hwinfo doesn't find it, lspci doesn't find it, etc. If you power on the device BEFORE booting, everything is found, and it works fine. And lastly, if you power it on AFTER Linux has booted, you still can't find it. I've tried echoing "1" to rescan, and everything else that I could find via Google search. So, what are my options here? I'm not allergic to adding code to the driver to scan for the device periodically, if I knew HOW to find it. And, once found, how do I get it registered? Thanks! ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-19 2:59 Rescan PCIE bus to find recently powered on device Frank Rizzo @ 2013-04-19 3:27 ` Yijing Wang 2013-04-19 15:49 ` Bjorn Helgaas 2013-05-12 22:13 ` Frank Rizzo 1 sibling, 1 reply; 14+ messages in thread From: Yijing Wang @ 2013-04-19 3:27 UTC (permalink / raw) To: Frank Rizzo; +Cc: linux-pci@vger.kernel.org On 2013/4/19 10:59, Frank Rizzo wrote: > Hey list. > > I'm working on a driver for a device that's external from the PC. It's connected to the PC via a weird cable that connects to a PCIE card inside the case that appears to be nothing other than glue logic to allow the signals from the cable to be tossed onto the bus. > > When the external device is powered off during boot, nothing is found. hwinfo doesn't find it, lspci doesn't find it, etc. If you power on the device BEFORE booting, everything is found, and it works fine. And lastly, if you power it on AFTER Linux has booted, you still can't find it. I've tried echoing "1" to rescan, and everything else that I could find via Google search. > > So, what are my options here? I'm not allergic to adding code to the driver to scan for the device periodically, if I knew HOW to find it. And, once found, how do I get it registered? > When your device power off during boot, system maybe will not reserve resource like bus res for your device. So when you power on your device after system boot, system cannot scan your device by rescan interface, I guess. > > Thanks! -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- Thanks! Yijing ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-19 3:27 ` Yijing Wang @ 2013-04-19 15:49 ` Bjorn Helgaas [not found] ` <BLU0-SMTP305A7D1308063E03F4C5CE9B2C90@phx.gbl> 0 siblings, 1 reply; 14+ messages in thread From: Bjorn Helgaas @ 2013-04-19 15:49 UTC (permalink / raw) To: Yijing Wang; +Cc: Frank Rizzo, linux-pci@vger.kernel.org On Thu, Apr 18, 2013 at 9:27 PM, Yijing Wang <wangyijing@huawei.com> wrote: > On 2013/4/19 10:59, Frank Rizzo wrote: >> Hey list. >> >> I'm working on a driver for a device that's external from the PC. It's connected to the PC via a weird cable that connects to a PCIE card inside the case that appears to be nothing other than glue logic to allow the signals from the cable to be tossed onto the bus. The card probably contains a PCIe switch with the downstream link being routed on the cable. >> >> When the external device is powered off during boot, nothing is found. hwinfo doesn't find it, lspci doesn't find it, etc. That's completely normal, of course. When the device is powered off, it doesn't respond, so we can't find it. >> If you power on the device BEFORE booting, everything is found, and it works fine. Also normal. >> And lastly, if you power it on AFTER Linux has booted, you still can't find it. I've tried echoing "1" to rescan, and everything else that I could find via Google search. >> >> So, what are my options here? I'm not allergic to adding code to the driver to scan for the device periodically, if I knew HOW to find it. And, once found, how do I get it registered? >> > > When your device power off during boot, system maybe will not reserve resource like bus res for your device. So when you power on your device after system boot, > system cannot scan your device by rescan interface, I guess. I think Yijing is right; this is probably a resource allocation problem. Linux isn't smart enough to reassign bus numbers, MMIO address space, or I/O port numbers at run-time, so if we didn't leave space at boot-time to accommodate the new device, we won't be able to use it. I think your best option is to reserve space at boot-time. The "pci=hpmemsize=..." and "pci=hpiosize=..." parameters might be useful, but since it sounds like we can't find the device at all, it's more likely that bus number space is the problem, and we don't have a parameter to reserve that. If you collect "lspci -vv" output (when device was powered on before boot) and complete dmesg logs (both from when device was powered on before boot and when it was powered off at boot), we should be able to figure out exactly what the problem is. Bjorn ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <BLU0-SMTP305A7D1308063E03F4C5CE9B2C90@phx.gbl>]
[parent not found: <5171F610.80001@huawei.com>]
* Re: Rescan PCIE bus to find recently powered on device. [not found] ` <5171F610.80001@huawei.com> @ 2013-04-20 2:22 ` Frank Rizzo 2013-04-20 2:59 ` Yijing Wang 0 siblings, 1 reply; 14+ messages in thread From: Frank Rizzo @ 2013-04-20 2:22 UTC (permalink / raw) To: Yijing Wang; +Cc: Bjorn Helgaas, linux-pci@vger.kernel.org (with device powered on AFTER boot) root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan root@frank-System-Product-Name:~# lspci -tv -[0000:00]-+-00.0 Advanced Micro Devices [AMD] RS780 Host Bridge +-01.0-[01]--+-05.0 Advanced Micro Devices [AMD] nee ATI RS780 [Radeon HD 3200] | \-05.1 Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series] +-05.0-[02]----00.0 JMicron Technology Corp. IEEE 1394 Host Controller +-06.0-[03]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller +-11.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] +-12.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller +-12.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller +-12.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller +-13.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller +-13.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller +-13.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller +-14.0 Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller +-14.1 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller +-14.2 Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) +-14.3 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC host controller +-14.4-[04]-- +-14.5 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller +-18.0 Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration +-18.1 Advanced Micro Devices [AMD] Family 10h Processor Address Map +-18.2 Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller +-18.3 Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control \-18.4 Advanced Micro Devices [AMD] Family 10h Processor Link Control (with device powered on BEFORE boot) root@frank-System-Product-Name:~# lspci -tv -[0000:00]-+-00.0 Advanced Micro Devices [AMD] RS780 Host Bridge +-01.0-[01]--+-05.0 Advanced Micro Devices [AMD] nee ATI RS780 [Radeon HD 3200] | \-05.1 Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series] +-02.0-[02]----00.0 Device 1a39:0004 +-05.0-[03]----00.0 JMicron Technology Corp. IEEE 1394 Host Controller +-06.0-[04]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller +-11.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] +-12.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller +-12.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller +-12.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller +-13.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller +-13.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller +-13.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller +-14.0 Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller +-14.1 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller +-14.2 Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) +-14.3 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC host controller +-14.4-[05]-- +-14.5 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller +-18.0 Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration +-18.1 Advanced Micro Devices [AMD] Family 10h Processor Address Map +-18.2 Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller +-18.3 Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control \-18.4 Advanced Micro Devices [AMD] Family 10h Processor Link Control ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 2:22 ` Frank Rizzo @ 2013-04-20 2:59 ` Yijing Wang 2013-04-20 3:26 ` Frank Rizzo 0 siblings, 1 reply; 14+ messages in thread From: Yijing Wang @ 2013-04-20 2:59 UTC (permalink / raw) To: Frank Rizzo; +Cc: Bjorn Helgaas, linux-pci@vger.kernel.org On 2013/4/20 10:22, Frank Rizzo wrote: > (with device powered on AFTER boot) > > root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan Hi Frank, When you do rescan here, any new message info will print in dmesg? Compare the two lspci info, it seems like your external device is 02.0-[02]----00.0 Device 1a39:0004, which include a pci bridge and a pci endpoint device. But let me confused is that after you rescan (with device powered on AFTER boot), there is no any new device found, normally, at least we should found the bridge device. Maybe the link between host bridge and your external device got some problems? I am not sure. > root@frank-System-Product-Name:~# lspci -tv > -[0000:00]-+-00.0 Advanced Micro Devices [AMD] RS780 Host Bridge > +-01.0-[01]--+-05.0 Advanced Micro Devices [AMD] nee ATI RS780 [Radeon HD 3200] > | \-05.1 Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series] > +-05.0-[02]----00.0 JMicron Technology Corp. IEEE 1394 Host Controller > +-06.0-[03]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller > +-11.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] > +-12.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller > +-12.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller > +-12.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller > +-13.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller > +-13.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller > +-13.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller > +-14.0 Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller > +-14.1 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller > +-14.2 Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) > +-14.3 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC host controller > +-14.4-[04]-- > +-14.5 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller > +-18.0 Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration > +-18.1 Advanced Micro Devices [AMD] Family 10h Processor Address Map > +-18.2 Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller > +-18.3 Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control > \-18.4 Advanced Micro Devices [AMD] Family 10h Processor Link Control > > > > (with device powered on BEFORE boot) > > root@frank-System-Product-Name:~# lspci -tv > -[0000:00]-+-00.0 Advanced Micro Devices [AMD] RS780 Host Bridge > +-01.0-[01]--+-05.0 Advanced Micro Devices [AMD] nee ATI RS780 [Radeon HD 3200] > | \-05.1 Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series] > +-02.0-[02]----00.0 Device 1a39:0004 > +-05.0-[03]----00.0 JMicron Technology Corp. IEEE 1394 Host Controller > +-06.0-[04]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller > +-11.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] > +-12.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller > +-12.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller > +-12.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller > +-13.0 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller > +-13.1 Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller > +-13.2 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller > +-14.0 Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller > +-14.1 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller > +-14.2 Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) > +-14.3 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC host controller > +-14.4-[05]-- > +-14.5 Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller > +-18.0 Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration > +-18.1 Advanced Micro Devices [AMD] Family 10h Processor Address Map > +-18.2 Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller > +-18.3 Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control > \-18.4 Advanced Micro Devices [AMD] Family 10h Processor Link Control > > . > -- Thanks! Yijing ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 2:59 ` Yijing Wang @ 2013-04-20 3:26 ` Frank Rizzo 2013-04-20 5:47 ` Yijing Wang ` (2 more replies) 0 siblings, 3 replies; 14+ messages in thread From: Frank Rizzo @ 2013-04-20 3:26 UTC (permalink / raw) To: Yijing Wang; +Cc: Bjorn Helgaas, linux-pci@vger.kernel.org On Fri, 19 Apr 2013 19:59:58 -0700, Yijing Wang <wangyijing@huawei.com> wrote: > On 2013/4/20 10:22, Frank Rizzo wrote: >> (with device powered on AFTER boot) >> >> root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan > > Hi Frank, > When you do rescan here, any new message info will print in dmesg? > Compare the two lspci info, it seems like your external device is > 02.0-[02]----00.0 Device 1a39:0004, which include a pci bridge and a > pci endpoint device. > But let me confused is that after you rescan (with device powered on > AFTER boot), > there is no any new device found, normally, at least we should found the > bridge device. > Maybe the link between host bridge and your external device got some > problems? I am not sure. Yijing, when powered on, the device works fine. I can talk to all the registers, and do everything that I need to do. This "late power-on issue" is the only thing holding me back. This is what I get in dmesg. (Cleared first) root@frank-System-Product-Name:~# dmesg -c (SNIP!) root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan root@frank-System-Product-Name:~# dmesg [ 1180.917841] fglrx_pci 0000:01:05.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment root@frank-System-Product-Name:~# ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 3:26 ` Frank Rizzo @ 2013-04-20 5:47 ` Yijing Wang 2013-04-20 16:10 ` Jiang Liu 2013-04-20 16:17 ` Jiang Liu 2 siblings, 0 replies; 14+ messages in thread From: Yijing Wang @ 2013-04-20 5:47 UTC (permalink / raw) To: Frank Rizzo; +Cc: Bjorn Helgaas, linux-pci@vger.kernel.org On 2013/4/20 11:26, Frank Rizzo wrote: > On Fri, 19 Apr 2013 19:59:58 -0700, Yijing Wang <wangyijing@huawei.com> wrote: > >> On 2013/4/20 10:22, Frank Rizzo wrote: >>> (with device powered on AFTER boot) >>> >>> root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan >> >> Hi Frank, >> When you do rescan here, any new message info will print in dmesg? >> Compare the two lspci info, it seems like your external device is >> 02.0-[02]----00.0 Device 1a39:0004, which include a pci bridge and a pci endpoint device. >> But let me confused is that after you rescan (with device powered on AFTER boot), >> there is no any new device found, normally, at least we should found the bridge device. >> Maybe the link between host bridge and your external device got some problems? I am not sure. > > > Yijing, when powered on, the device works fine. I can talk to all the registers, and do everything that I need to do. This "late power-on issue" is the only thing holding me back. > Yes, in "late power-on issue" case, seems linux cannot enumerate your external device(both the bridge device and endpoint device). Maybe when do rescan, linux cannot read the device vendor id register success. Frank, Are there other slots in your platform ? Or what will happen if your try to use other pci devices instead ? > This is what I get in dmesg. (Cleared first) > > root@frank-System-Product-Name:~# dmesg -c > (SNIP!) > root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan > root@frank-System-Product-Name:~# dmesg > [ 1180.917841] fglrx_pci 0000:01:05.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment > root@frank-System-Product-Name:~# > > -- Thanks! Yijing ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 3:26 ` Frank Rizzo 2013-04-20 5:47 ` Yijing Wang @ 2013-04-20 16:10 ` Jiang Liu 2013-04-20 16:17 ` Jiang Liu 2 siblings, 0 replies; 14+ messages in thread From: Jiang Liu @ 2013-04-20 16:10 UTC (permalink / raw) To: Frank Rizzo; +Cc: Yijing Wang, Bjorn Helgaas, linux-pci@vger.kernel.org On 04/20/2013 11:26 AM, Frank Rizzo wrote: > On Fri, 19 Apr 2013 19:59:58 -0700, Yijing Wang <wangyijing@huawei.com> wrote: > >> On 2013/4/20 10:22, Frank Rizzo wrote: >>> (with device powered on AFTER boot) >>> >>> root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan >> >> Hi Frank, >> When you do rescan here, any new message info will print in dmesg? >> Compare the two lspci info, it seems like your external device is >> 02.0-[02]----00.0 Device 1a39:0004, which include a pci bridge and a pci endpoint device. >> But let me confused is that after you rescan (with device powered on AFTER boot), >> there is no any new device found, normally, at least we should found the bridge device. >> Maybe the link between host bridge and your external device got some problems? I am not sure. > > > Yijing, when powered on, the device works fine. I can talk to all the registers, and do everything that I need to do. This "late power-on issue" is the only thing holding me back. > > This is what I get in dmesg. (Cleared first) > > root@frank-System-Product-Name:~# dmesg -c > (SNIP!) > root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan > root@frank-System-Product-Name:~# dmesg > [ 1180.917841] fglrx_pci 0000:01:05.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment > root@frank-System-Product-Name:~# > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Hi Frank, I have a feeling that BIOS has done something bad here. According to a googled message as below, 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge Alternate 00:01.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (int gfx) 00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0) 00:05.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 1) 00:06.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 2) 00:11.0 SATA controller: ATI Technologies Inc SB700/SB800 SATA Controller [AHCI mode] 00:12.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller 00:12.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller 00:13.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller 00:13.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller Device 00:02.0 on AMD RS780 chipset should be a PCIe root port. But note here, seems it's specially designed for external graphics(ext gfx port 0). BIOS may disable this root port on boot if there's no device connected to this PCIe root port because it's for graphics. This explains why 00:02.0 even doesn't show up in the "with device powered on AFTER boot" case. You may try to plug the special adapter into another PCIe slot. It may also help to send out "lspci -v" messages with the device powered on boot. Thanks! Gerry ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 3:26 ` Frank Rizzo 2013-04-20 5:47 ` Yijing Wang 2013-04-20 16:10 ` Jiang Liu @ 2013-04-20 16:17 ` Jiang Liu 2013-04-20 20:52 ` Frank Rizzo 2 siblings, 1 reply; 14+ messages in thread From: Jiang Liu @ 2013-04-20 16:17 UTC (permalink / raw) To: Frank Rizzo; +Cc: Yijing Wang, Bjorn Helgaas, linux-pci@vger.kernel.org On 04/20/2013 11:26 AM, Frank Rizzo wrote: > On Fri, 19 Apr 2013 19:59:58 -0700, Yijing Wang <wangyijing@huawei.com> wrote: > >> On 2013/4/20 10:22, Frank Rizzo wrote: >>> (with device powered on AFTER boot) >>> >>> root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan >> >> Hi Frank, >> When you do rescan here, any new message info will print in dmesg? >> Compare the two lspci info, it seems like your external device is >> 02.0-[02]----00.0 Device 1a39:0004, which include a pci bridge and a pci endpoint device. >> But let me confused is that after you rescan (with device powered on AFTER boot), >> there is no any new device found, normally, at least we should found the bridge device. >> Maybe the link between host bridge and your external device got some problems? I am not sure. > > > Yijing, when powered on, the device works fine. I can talk to all the registers, and do everything that I need to do. This "late power-on issue" is the only thing holding me back. > > This is what I get in dmesg. (Cleared first) > > root@frank-System-Product-Name:~# dmesg -c > (SNIP!) > root@frank-System-Product-Name:~# echo 1 > /sys/bus/pci/rescan > root@frank-System-Product-Name:~# dmesg > [ 1180.917841] fglrx_pci 0000:01:05.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment > root@frank-System-Product-Name:~# > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Hi Frank, Message from "sudo lspci -vvv" gives more information, including PCIe capabilities, so please help to send out "sudo lspci -vvv" instead of "lspci -v". Thanks! ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 16:17 ` Jiang Liu @ 2013-04-20 20:52 ` Frank Rizzo 2013-04-21 2:21 ` Jiang Liu 0 siblings, 1 reply; 14+ messages in thread From: Frank Rizzo @ 2013-04-20 20:52 UTC (permalink / raw) To: Jiang Liu; +Cc: Yijing Wang, Bjorn Helgaas, linux-pci@vger.kernel.org > Hi Frank, > Message from "sudo lspci -vvv" gives more information, including PCIe > capabilities, > so please help to send out "sudo lspci -vvv" instead of "lspci -v". > Thanks! Here's the info: root@frank-System-Product-Name:~# lspci -vvv 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx- Latency: 0 Capabilities: [c4] HyperTransport: Slave or Primary Interface Command: BaseUnitID=0 UnitCnt=12 MastHost- DefDir- DUL- Link Control 0: CFlE- CST- CFE- <LkFail- Init+ EOC- TXO- <CRCErr=0 IsocEn- LSEn- ExtCTL- 64b- Link Config 0: MLWI=16bit DwFcIn- MLWO=16bit DwFcOut- LWI=16bit DwFcInEn- LWO=16bit DwFcOutEn- Link Control 1: CFlE- CST- CFE- <LkFail+ Init- EOC+ TXO+ <CRCErr=0 IsocEn- LSEn- ExtCTL- 64b- Link Config 1: MLWI=8bit DwFcIn- MLWO=8bit DwFcOut- LWI=8bit DwFcInEn- LWO=8bit DwFcOutEn- Revision ID: 3.00 Link Frequency 0: [b] Link Error 0: <Prot- <Ovfl- <EOC- CTLTm- Link Frequency Capability 0: 200MHz+ 300MHz- 400MHz+ 500MHz- 600MHz+ 800MHz+ 1.0GHz+ 1.2GHz- 1.4GHz- 1.6GHz- Vend- Feature Capability: IsocFC- LDTSTOP+ CRCTM- ECTLT- 64bA- UIDRD- Link Frequency 1: 200MHz Link Error 1: <Prot- <Ovfl- <EOC- CTLTm- Link Frequency Capability 1: 200MHz- 300MHz- 400MHz- 500MHz- 600MHz- 800MHz- 1.0GHz- 1.2GHz- 1.4GHz- 1.6GHz- Vend- Error Handling: PFlE- OFlE- PFE- OFE- EOCFE- RFE- CRCFE- SERRFE- CF- RE+ PNFE- ONFE- EOCNFE- RNFE- CRCNFE- SERRNFE- Prefetchable memory behind bridge Upper: 00-00 Bus Number: 00 Capabilities: [54] HyperTransport: UnitID Clumping Capabilities: [40] HyperTransport: Retry Mode Capabilities: [9c] HyperTransport: #1a Capabilities: [f8] HyperTransport: #1c 00:01.0 PCI bridge: ASUSTeK Computer Inc. RS880 PCI to PCI bridge (int gfx) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 Bus: primary=00, secondary=01, subordinate=01, sec-latency=64 I/O behind bridge: 0000d000-0000dfff Memory behind bridge: fb900000-fbafffff Prefetchable memory behind bridge: 00000000d0000000-00000000dfffffff Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+ Capabilities: [b0] Subsystem: ASUSTeK Computer Inc. Device 82f1 Kernel modules: shpchp 00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0) (prog-if 00 [Normal decode]) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 I/O behind bridge: 0000f000-00000fff Memory behind bridge: fbb00000-fbdfffff Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [50] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [58] Express (v2) Root Port (Slot+), MSI 00 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag+ RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 128 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #0, Speed 5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us ClockPM- Surprise- LLActRep+ BwNot+ LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt- SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- Slot #2, PowerLimit 75.000W; Interlock- NoCompl+ SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg- Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock- SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock- Changed: MRL- PresDet+ LinkState+ RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible- RootCap: CRSVisible- RootSta: PME ReqID 0000, PMEStatus- PMEPending- DevCap2: Completion Timeout: Not Supported, TimeoutDis- ARIFwd- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- ARIFwd- LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -3.5dB Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -3.5dB Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit- Address: fee0f00c Data: 4159 Capabilities: [b0] Subsystem: ASUSTeK Computer Inc. Device 82f1 Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+ Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?> Capabilities: [110 v1] Virtual Channel Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 Arb: Fixed- WRR32- WRR64- WRR128- Ctrl: ArbSelect=Fixed Status: InProgress- VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- Arb: Fixed+ WRR32- WRR64- WRR128- TWRR128- WRR256- Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff Status: NegoPending- InProgress- Kernel driver in use: pcieport Kernel modules: shpchp 00:05.0 PCI bridge: Advanced Micro Devices [AMD] RS780/RS880 PCI to PCI bridge (PCIE port 1) (prog-if 00 [Normal decode]) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Bus: primary=00, secondary=03, subordinate=03, sec-latency=0 I/O behind bridge: 0000f000-00000fff Memory behind bridge: fbe00000-fbefffff Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [50] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [58] Express (v2) Root Port (Slot+), MSI 00 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag+ RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 128 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #2, Speed 5GT/s, Width x1, ASPM L0s L1, Latency L0 <64ns, L1 <1us ClockPM- Surprise- LLActRep+ BwNot+ LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt- SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- Slot #5, PowerLimit 25.000W; Interlock- NoCompl+ SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg- Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock- SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock- Changed: MRL- PresDet+ LinkState+ RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible- RootCap: CRSVisible- RootSta: PME ReqID 0000, PMEStatus- PMEPending- DevCap2: Completion Timeout: Not Supported, TimeoutDis- ARIFwd- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- ARIFwd- LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit- Address: fee0f00c Data: 4161 Capabilities: [b0] Subsystem: ASUSTeK Computer Inc. Device 82f1 Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+ Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?> Capabilities: [110 v1] Virtual Channel Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 Arb: Fixed- WRR32- WRR64- WRR128- Ctrl: ArbSelect=Fixed Status: InProgress- VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- Arb: Fixed+ WRR32- WRR64- WRR128- TWRR128- WRR256- Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff Status: NegoPending- InProgress- Kernel driver in use: pcieport Kernel modules: shpchp 00:06.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 2) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Bus: primary=00, secondary=04, subordinate=04, sec-latency=0 I/O behind bridge: 0000e000-0000efff Memory behind bridge: fbf00000-fbffffff Prefetchable memory behind bridge: 00000000faf00000-00000000faffffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [50] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [58] Express (v2) Root Port (Slot+), MSI 00 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag+ RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 128 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #3, Speed 5GT/s, Width x1, ASPM L0s L1, Latency L0 <64ns, L1 <1us ClockPM- Surprise- LLActRep+ BwNot+ LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt- SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- Slot #6, PowerLimit 25.000W; Interlock- NoCompl+ SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg- Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock- SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock- Changed: MRL- PresDet+ LinkState+ RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible- RootCap: CRSVisible- RootSta: PME ReqID 0000, PMEStatus- PMEPending- DevCap2: Completion Timeout: Not Supported, TimeoutDis- ARIFwd- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- ARIFwd- LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit- Address: fee0f00c Data: 4169 Capabilities: [b0] Subsystem: ASUSTeK Computer Inc. Device 82f1 Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+ Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?> Capabilities: [110 v1] Virtual Channel Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 Arb: Fixed- WRR32- WRR64- WRR128- Ctrl: ArbSelect=Fixed Status: InProgress- VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- Arb: Fixed+ WRR32- WRR64- WRR128- TWRR128- WRR256- Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff Status: NegoPending- InProgress- Kernel driver in use: pcieport Kernel modules: shpchp 00:11.0 SATA controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] (prog-if 01 [AHCI 1.0]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 22 Region 0: I/O ports at c000 [size=8] Region 1: I/O ports at b000 [size=4] Region 2: I/O ports at a000 [size=8] Region 3: I/O ports at 9000 [size=4] Region 4: I/O ports at 8000 [size=16] Region 5: Memory at fb8ff800 (32-bit, non-prefetchable) [size=1K] Capabilities: [60] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [70] SATA HBA v1.0 InCfgSpace Kernel driver in use: ahci 00:12.0 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Region 0: Memory at fb8fe000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 00:12.1 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Region 0: Memory at fb8fd000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 00:12.2 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 17 Region 0: Memory at fb8ff000 (32-bit, non-prefetchable) [size=256] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ Capabilities: [e4] Debug port: BAR=1 offset=00e0 Kernel driver in use: ehci_hcd 00:13.0 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at fb8fc000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 00:13.1 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0 USB OHCI1 Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at fb8fb000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 00:13.2 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 19 Region 0: Memory at fb8fa800 (32-bit, non-prefetchable) [size=256] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ Capabilities: [e4] Debug port: BAR=1 offset=00e0 Kernel driver in use: ehci_hcd 00:14.0 SMBus: Advanced Micro Devices [AMD] nee ATI SBx00 SMBus Controller (rev 3a) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Capabilities: [b0] HyperTransport: MSI Mapping Enable- Fixed+ Kernel modules: sp5100_tco, i2c-piix4 00:14.1 IDE interface: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 IDE Controller (prog-if 8a [Master SecP PriP]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 Interrupt: pin A routed to IRQ 16 Region 0: I/O ports at 01f0 [size=8] Region 1: I/O ports at 03f4 [size=1] Region 2: I/O ports at 0170 [size=8] Region 3: I/O ports at 0374 [size=1] Region 4: I/O ports at ff00 [size=16] Capabilities: [70] MSI: Enable- Count=1/2 Maskable- 64bit- Address: 00000000 Data: 0000 Kernel driver in use: pata_atiixp Kernel modules: pata_atiixp 00:14.2 Audio device: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) Subsystem: ASUSTeK Computer Inc. Device 82fe Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Region 0: Memory at fb8f4000 (64-bit, non-prefetchable) [size=16K] Capabilities: [50] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: snd_hda_intel Kernel modules: snd-hda-intel 00:14.3 ISA bridge: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 LPC host controller Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 00:14.4 PCI bridge: Advanced Micro Devices [AMD] nee ATI SBx00 PCI to PCI Bridge (prog-if 01 [Subtractive decode]) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 Bus: primary=00, secondary=05, subordinate=05, sec-latency=64 I/O behind bridge: 0000f000-00000fff Memory behind bridge: fff00000-000fffff Prefetchable memory behind bridge: fff00000-000fffff Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- 00:14.5 USB controller: Advanced Micro Devices [AMD] nee ATI SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Interrupt: pin C routed to IRQ 18 Region 0: Memory at fb8f9000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Capabilities: [80] HyperTransport: Host or Secondary Interface Command: WarmRst+ DblEnd- DevNum=0 ChainSide- HostHide+ Slave- <EOCErr- DUL- Link Control: CFlE- CST- CFE- <LkFail- Init+ EOC- TXO- <CRCErr=0 IsocEn- LSEn- ExtCTL- 64b- Link Config: MLWI=16bit DwFcIn- MLWO=16bit DwFcOut- LWI=16bit DwFcInEn- LWO=16bit DwFcOutEn- Revision ID: 3.00 Link Frequency: [b] Link Error: <Prot- <Ovfl- <EOC- CTLTm- Link Frequency Capability: 200MHz+ 300MHz- 400MHz+ 500MHz- 600MHz+ 800MHz+ 1.0GHz+ 1.2GHz+ 1.4GHz- 1.6GHz- Vend- Feature Capability: IsocFC+ LDTSTOP+ CRCTM- ECTLT- 64bA+ UIDRD- ExtRS- UCnfE- 00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Address Map Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- 00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Kernel modules: amd64_edac_mod 00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Capabilities: [f0] Secure device <?> Kernel modules: k10temp 00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Link Control Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- 01:05.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RS780 [Radeon HD 3200] (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device 82f1 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at d0000000 (32-bit, prefetchable) [size=256M] Region 1: I/O ports at d000 [size=256] Region 2: Memory at fbaf0000 (32-bit, non-prefetchable) [size=64K] Region 5: Memory at fb900000 (32-bit, non-prefetchable) [size=1M] Expansion ROM at <unassigned> [disabled] Capabilities: [50] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Kernel driver in use: fglrx_pci Kernel modules: fglrx, radeon 01:05.1 Audio device: Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series] Subsystem: ASUSTeK Computer Inc. Device 82f1 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 19 Region 0: Memory at fbae8000 (32-bit, non-prefetchable) [size=16K] Capabilities: [50] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Kernel driver in use: snd_hda_intel Kernel modules: snd-hda-intel 02:00.0 Non-VGA unclassified device: Device 1a39:0004 (rev 01) Subsystem: Device 1a39:0004 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 10 Region 0: Memory at fbd00000 (64-bit, non-prefetchable) [size=1M] Region 2: Memory at fbc00000 (64-bit, non-prefetchable) [size=1M] Region 4: Memory at fbbff000 (64-bit, non-prefetchable) [size=4K] Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+ Address: 0000000000000000 Data: 0000 Capabilities: [58] Express (v2) Endpoint, MSI 00 DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #0, Speed 2.5GT/s, Width x4, ASPM L0s L1, Latency L0 unlimited, L1 unlimited ClockPM- Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Range ABCD, TimeoutDis- DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB 03:00.0 FireWire (IEEE 1394): JMicron Technology Corp. IEEE 1394 Host Controller (prog-if 10 [OHCI]) Subsystem: ASUSTeK Computer Inc. Device 8313 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 17 Region 0: Memory at fbeff800 (32-bit, non-prefetchable) [size=2K] Region 1: Memory at fbeff400 (32-bit, non-prefetchable) [size=128] Region 4: Memory at fbeff000 (32-bit, non-prefetchable) [size=128] Region 5: Memory at fbefec00 (32-bit, non-prefetchable) [size=128] Capabilities: [44] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME+ Capabilities: [80] Express (v1) Endpoint, MSI 00 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend- LnkCap: Port #1, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 unlimited, L1 unlimited ClockPM- Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- Capabilities: [94] MSI: Enable- Count=1/1 Maskable- 64bit- Address: fffffffc Data: 0000 Kernel driver in use: firewire_ohci Kernel modules: firewire-ohci 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02) Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 43 Region 0: I/O ports at e800 [size=256] Region 2: Memory at fbfff000 (64-bit, non-prefetchable) [size=4K] Region 4: Memory at faff0000 (64-bit, prefetchable) [size=64K] Expansion ROM at fbfc0000 [disabled] [size=128K] Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+ Address: 00000000fee0100c Data: 4179 Capabilities: [70] Express (v1) Endpoint, MSI 01 DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <512ns, L1 <8us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- MaxPayload 128 bytes, MaxReadReq 4096 bytes DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend- LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <512ns, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- Capabilities: [b0] MSI-X: Enable- Count=2 Masked- Vector table: BAR=4 offset=00000000 PBA: BAR=4 offset=00000800 Capabilities: [d0] Vital Product Data Unknown small resource type 05, will not decode more. Capabilities: [100 v1] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr+ BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn- Capabilities: [140 v1] Virtual Channel Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 Arb: Fixed- WRR32- WRR64- WRR128- Ctrl: ArbSelect=Fixed Status: InProgress- VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256- Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff Status: NegoPending- InProgress- Capabilities: [160 v1] Device Serial Number 00-00-00-00-ec-10-68-81 Kernel driver in use: r8169 Kernel modules: r8169 root@frank-System-Product-Name:~# ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-20 20:52 ` Frank Rizzo @ 2013-04-21 2:21 ` Jiang Liu 2013-04-22 17:21 ` Bjorn Helgaas 0 siblings, 1 reply; 14+ messages in thread From: Jiang Liu @ 2013-04-21 2:21 UTC (permalink / raw) To: Frank Rizzo; +Cc: Yijing Wang, Bjorn Helgaas, linux-pci@vger.kernel.org On 04/21/2013 04:52 AM, Frank Rizzo wrote: >> Hi Frank, >> Message from "sudo lspci -vvv" gives more information, including PCIe capabilities, >> so please help to send out "sudo lspci -vvv" instead of "lspci -v". >> Thanks! > > Here's the info: > > root@frank-System-Product-Name:~# lspci -vvv > 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge > Subsystem: ASUSTeK Computer Inc. M3A78-EH Motherboard > Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- > Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx- > Latency: 0 > Capabilities: [c4] HyperTransport: Slave or Primary Interface > Command: BaseUnitID=0 UnitCnt=12 MastHost- DefDir- DUL- > Link Control 0: CFlE- CST- CFE- <LkFail- Init+ EOC- TXO- <CRCErr=0 IsocEn- LSEn- ExtCTL- 64b- > Link Config 0: MLWI=16bit DwFcIn- MLWO=16bit DwFcOut- LWI=16bit DwFcInEn- LWO=16bit DwFcOutEn- > Link Control 1: CFlE- CST- CFE- <LkFail+ Init- EOC+ TXO+ <CRCErr=0 IsocEn- LSEn- ExtCTL- 64b- > Link Config 1: MLWI=8bit DwFcIn- MLWO=8bit DwFcOut- LWI=8bit DwFcInEn- LWO=8bit DwFcOutEn- > Revision ID: 3.00 > Link Frequency 0: [b] > Link Error 0: <Prot- <Ovfl- <EOC- CTLTm- > Link Frequency Capability 0: 200MHz+ 300MHz- 400MHz+ 500MHz- 600MHz+ 800MHz+ 1.0GHz+ 1.2GHz- 1.4GHz- 1.6GHz- Vend- > Feature Capability: IsocFC- LDTSTOP+ CRCTM- ECTLT- 64bA- UIDRD- > Link Frequency 1: 200MHz > Link Error 1: <Prot- <Ovfl- <EOC- CTLTm- > Link Frequency Capability 1: 200MHz- 300MHz- 400MHz- 500MHz- 600MHz- 800MHz- 1.0GHz- 1.2GHz- 1.4GHz- 1.6GHz- Vend- > Error Handling: PFlE- OFlE- PFE- OFE- EOCFE- RFE- CRCFE- SERRFE- CF- RE+ PNFE- ONFE- EOCNFE- RNFE- CRCNFE- SERRNFE- > Prefetchable memory behind bridge Upper: 00-00 > Bus Number: 00 > Capabilities: [54] HyperTransport: UnitID Clumping > Capabilities: [40] HyperTransport: Retry Mode > Capabilities: [9c] HyperTransport: #1a > Capabilities: [f8] HyperTransport: #1c > > 00:01.0 PCI bridge: ASUSTeK Computer Inc. RS880 PCI to PCI bridge (int gfx) (prog-if 00 [Normal decode]) > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- > Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- > Latency: 64 > Bus: primary=00, secondary=01, subordinate=01, sec-latency=64 > I/O behind bridge: 0000d000-0000dfff > Memory behind bridge: fb900000-fbafffff > Prefetchable memory behind bridge: 00000000d0000000-00000000dfffffff > Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- <SERR- <PERR- > BridgeCtl: Parity- SERR+ NoISA- VGA+ MAbort- >Reset- FastB2B- > PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- > Capabilities: [44] HyperTransport: MSI Mapping Enable+ Fixed+ > Capabilities: [b0] Subsystem: ASUSTeK Computer Inc. Device 82f1 > Kernel modules: shpchp > > 00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0) (prog-if 00 [Normal decode]) > Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ > Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- > Latency: 0, Cache Line Size: 64 bytes > Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 > I/O behind bridge: 0000f000-00000fff > Memory behind bridge: fbb00000-fbdfffff > Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff > Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- > BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- > PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- > Capabilities: [50] Power Management version 3 > Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) > Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- > Capabilities: [58] Express (v2) Root Port (Slot+), MSI 00 > DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us > ExtTag+ RBE+ FLReset- > DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- > RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ > MaxPayload 128 bytes, MaxReadReq 128 bytes > DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- > LnkCap: Port #0, Speed 5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us > ClockPM- Surprise- LLActRep+ BwNot+ > LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt- > SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- > Slot #2, PowerLimit 75.000W; Interlock- NoCompl+ Hi Frank, According to "Hotplug-" flag above, the slot for 00:02.0 doesn't support hotplug. Actually no slot in this system supports PCI devic hotplug at all. So simply powering on the device connected to the adapter after booting won't work. Please find another system with PCIe device hotplug capability for your tests. You may confirm PCIe hotplug capability by scanning "hotplug+" flag and also insmod pciehp. Regards! Gerry ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-21 2:21 ` Jiang Liu @ 2013-04-22 17:21 ` Bjorn Helgaas 0 siblings, 0 replies; 14+ messages in thread From: Bjorn Helgaas @ 2013-04-22 17:21 UTC (permalink / raw) To: Jiang Liu; +Cc: Frank Rizzo, Yijing Wang, linux-pci@vger.kernel.org On Sat, Apr 20, 2013 at 8:21 PM, Jiang Liu <liuj97@gmail.com> wrote: > On 04/21/2013 04:52 AM, Frank Rizzo wrote: >> 00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0) (prog-if 00 [Normal decode]) >> Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+ >> Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- >> Latency: 0, Cache Line Size: 64 bytes >> Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 >> I/O behind bridge: 0000f000-00000fff >> Memory behind bridge: fbb00000-fbdfffff >> Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff >> Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- >> BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- >> PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- >> Capabilities: [50] Power Management version 3 >> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) >> Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- >> Capabilities: [58] Express (v2) Root Port (Slot+), MSI 00 >> DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us >> ExtTag+ RBE+ FLReset- >> DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- >> RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ >> MaxPayload 128 bytes, MaxReadReq 128 bytes >> DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- >> LnkCap: Port #0, Speed 5GT/s, Width x16, ASPM L0s L1, Latency L0 <64ns, L1 <1us >> ClockPM- Surprise- LLActRep+ BwNot+ >> LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ >> ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- >> LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt- >> SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise- >> Slot #2, PowerLimit 75.000W; Interlock- NoCompl+ > Hi Frank, > According to "Hotplug-" flag above, the slot for 00:02.0 doesn't support hotplug. > Actually no slot in this system supports PCI devic hotplug at all. So simply powering on > the device connected to the adapter after booting won't work. Hotplug support in the bridge just means we can *automatically* detect hotplug events. Powering on a connected device and manually rescanning may still work. But the first problem is that the 00:02.0 root port is left disabled if there's nothing connected at boot-time. This is a BIOS issue; it must be using a chipset-specific way to disable the port completely, and Linux has no way to enable it. If the BIOS had left 00:02.0 enabled, it should work to power-on the device below it, and even though 00:02.0 does not support hotplug, we should be able to find the device below it with a manual rescan, e.g., "echo 1 > /sys/bus/pci/rescan". (There might still be resource issues with actually *using* the device, but we should at least find it.) If 00:02.0 supported hotplug as well, then we would be able to to the rescan automatically when the device below it powers up. It's possible that the BIOS treats 00:02.0 specially because it's intended as a graphics slot. So if it's physically possible, you might try swapping your external device connection with another device that is always present at boot, e.g., the JMicron 1394 firewire device at 03:00.0 or the Realtek NIC at 04:00.0. Then the graphics slot would be populated, so the BIOS should configure the 00:02.0 root port, and it might leave the 00:05.0 or 00:06.0 root port configured even if the external device is unpowered. If that's the case, you should be able to power-up the external device later, and a manual rescan should find it. Bjorn ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-04-19 2:59 Rescan PCIE bus to find recently powered on device Frank Rizzo 2013-04-19 3:27 ` Yijing Wang @ 2013-05-12 22:13 ` Frank Rizzo 2013-05-13 5:35 ` Frank Rizzo 1 sibling, 1 reply; 14+ messages in thread From: Frank Rizzo @ 2013-05-12 22:13 UTC (permalink / raw) To: linux-pci@vger.kernel.org, Frank Rizzo OK list, here's an update. I had my software engineer do some tests on his system, and this is what I get when he powers on the target device: [ 149.626692] pci 0000:01:00.0: [1a39:0004] type 0 class 0x000000 [ 149.626721] pci 0000:01:00.0: reg 10: [mem 0x00000000-0x000fffff 64bit] [ 149.626741] pci 0000:01:00.0: reg 18: [mem 0x00000000-0x000fffff 64bit] [ 149.626761] pci 0000:01:00.0: reg 20: [mem 0x00000000-0x00000fff 64bit] [ 149.631745] pcieport 0000:00:01.0: BAR 14: assigned [mem 0xc0800000-0xc0afffff] [ 149.631837] gn_pcie 0000:01:00.0: device not available (can't reserve [mem 0x00000000-0x000fffff 64bit]) A simple lspci shows the device in the list, but since the driver failed to register the device, it is inaccessible to his applications. Any ideas? -Frank On Thu, 18 Apr 2013 19:59:11 -0700, Frank Rizzo <thefrankrizzo@hotmail.com> wrote: > Hey list. > > I'm working on a driver for a device that's external from the PC. It's > connected to the PC via a weird cable that connects to a PCIE card > inside the case that appears to be nothing other than glue logic to > allow the signals from the cable to be tossed onto the bus. > > When the external device is powered off during boot, nothing is found. > hwinfo doesn't find it, lspci doesn't find it, etc. If you power on > the device BEFORE booting, everything is found, and it works fine. And > lastly, if you power it on AFTER Linux has booted, you still can't find > it. I've tried echoing "1" to rescan, and everything else that I could > find via Google search. > > So, what are my options here? I'm not allergic to adding code to the > driver to scan for the device periodically, if I knew HOW to find it. > And, once found, how do I get it registered? ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Rescan PCIE bus to find recently powered on device. 2013-05-12 22:13 ` Frank Rizzo @ 2013-05-13 5:35 ` Frank Rizzo 0 siblings, 0 replies; 14+ messages in thread From: Frank Rizzo @ 2013-05-13 5:35 UTC (permalink / raw) To: linux-pci@vger.kernel.org, Frank Rizzo Let me be more specific. Any idea how to fix the "device not available" issue? -Frank On Sun, 12 May 2013 15:13:59 -0700, Frank Rizzo <thefrankrizzo@hotmail.com> wrote: > OK list, here's an update. I had my software engineer do some tests on > his system, and this is what I get when he powers on the target device: > > [ 149.626692] pci 0000:01:00.0: [1a39:0004] type 0 class 0x000000 > [ 149.626721] pci 0000:01:00.0: reg 10: [mem 0x00000000-0x000fffff 64bit] > [ 149.626741] pci 0000:01:00.0: reg 18: [mem 0x00000000-0x000fffff 64bit] > [ 149.626761] pci 0000:01:00.0: reg 20: [mem 0x00000000-0x00000fff 64bit] > [ 149.631745] pcieport 0000:00:01.0: BAR 14: assigned [mem > 0xc0800000-0xc0afffff] > [ 149.631837] gn_pcie 0000:01:00.0: device not available (can't reserve > [mem 0x00000000-0x000fffff 64bit]) > > A simple lspci shows the device in the list, but since the driver failed > to register the device, it is inaccessible to his applications. > > Any ideas? > > -Frank > > > On Thu, 18 Apr 2013 19:59:11 -0700, Frank Rizzo > <thefrankrizzo@hotmail.com> wrote: > >> Hey list. >> >> I'm working on a driver for a device that's external from the PC. It's >> connected to the PC via a weird cable that connects to a PCIE card >> inside the case that appears to be nothing other than glue logic to >> allow the signals from the cable to be tossed onto the bus. >> >> When the external device is powered off during boot, nothing is found. >> hwinfo doesn't find it, lspci doesn't find it, etc. If you power on >> the device BEFORE booting, everything is found, and it works fine. And >> lastly, if you power it on AFTER Linux has booted, you still can't find >> it. I've tried echoing "1" to rescan, and everything else that I could >> find via Google search. >> >> So, what are my options here? I'm not allergic to adding code to the >> driver to scan for the device periodically, if I knew HOW to find it. >> And, once found, how do I get it registered? > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2013-05-13 5:36 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-19 2:59 Rescan PCIE bus to find recently powered on device Frank Rizzo
2013-04-19 3:27 ` Yijing Wang
2013-04-19 15:49 ` Bjorn Helgaas
[not found] ` <BLU0-SMTP305A7D1308063E03F4C5CE9B2C90@phx.gbl>
[not found] ` <5171F610.80001@huawei.com>
2013-04-20 2:22 ` Frank Rizzo
2013-04-20 2:59 ` Yijing Wang
2013-04-20 3:26 ` Frank Rizzo
2013-04-20 5:47 ` Yijing Wang
2013-04-20 16:10 ` Jiang Liu
2013-04-20 16:17 ` Jiang Liu
2013-04-20 20:52 ` Frank Rizzo
2013-04-21 2:21 ` Jiang Liu
2013-04-22 17:21 ` Bjorn Helgaas
2013-05-12 22:13 ` Frank Rizzo
2013-05-13 5:35 ` Frank Rizzo
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.