On Sun, Oct 23, 2011 at 11:40 PM, Richard Zhu <richard.zhu@xxxxxxxxxx> wrote: > Any suggestions? > > Best Regard > Richard Zhu > > On 20 October 2011 11:14, Richard Zhu <richard.zhu@xxxxxxxxxx> wrote: >> Hi All: >> I'm a new pci/pcie developer, and trying to enable the pcie rc host on >> the arm platform. >> Up to now, >> * the cfg space of target pcie device can be accessed, and the link >> between host and target is set up. >> * the target pcie device (intel 4965AGN wifi card) had been scanned >> and allocated the mem resource >> >> But the wifi driver can't access the pcie target device's mem resource. >> System is halt when wifi driver accesses the pcie target device's mem address. >> >> The memory layout of the pcie host: >> * 0x0100_0000 --- 0x0100_FFFF 64KB IORESOURCE_IO >> * 0x0101_0000 --- 0x01FE_FFFF 16MB - 128KB IORESOURCE_MEM >> * 0x01FF_0000 --- 0x01FF_FFFF 64KB Cfg + Registers >> >> Can anyone help me to analysis this situation? >> Any suggestions and advices are appriciated. >> >> here are the logs: >> ---------------------------------Log------------------------------------------------- >> root@freescale ~$ lspci >> 00:00.0 Network controller: Intel Corporation Unknown device 4229 (rev 61) >> root@freescale ~$ lspci -vv >> 00:00.0 Network controller: Intel Corporation Unknown device 4229 (rev 61) >> Subsystem: Intel Corporation Unknown device 1100 >> Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- >> ParErr+ Stepping- SERR+ FastB2B- >> Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- >> <TAbort- <MAbort- >SERR- <PERR- >> Latency: 0, Cache Line Size: 32 bytes >> Interrupt: pin A routed to IRQ 152 >> Region 0: Memory at 01010000 (64-bit, non-prefetchable) [size=8K] >> Capabilities: [c8] Power Management version 3 >> Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA >> PME(D0+,D1-,D2-,D3hot+,D3cold+) >> Status: D0 PME-Enable- DSel=0 DScale=0 PME- >> Capabilities: [d0] Message Signalled Interrupts: Mask- 64bit+ >> Queue=0/0 Enable- >> Address: 0000000000000000 Data: 0000 >> Capabilities: [e0] Express Endpoint IRQ 0 >> Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag- >> Device: Latency L0s <512ns, L1 unlimited >> Device: AtnBtn- AtnInd- PwrInd- >> Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported- >> Device: RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ >> Device: MaxPayload 128 bytes, MaxReadReq 128 bytes >> Link: Supported Speed 2.5Gb/s, Width x1, ASPM L0s L1, Port 4 >> Link: Latency L0s <128ns, L1 <64us >> Link: ASPM Disabled RCB 64 bytes CommClk- ExtSynch- >> Link: Speed 2.5Gb/s, Width x1 >> Capabilities: [100] Advanced Error Reporting >> Capabilities: [140] Device Serial Number d5-af-73-ff-ff-5c-21-00 >> >> root@freescale ~$ cat /proc/ioports >> 01000000-0100ffff : PCIe 0 I/O >> root@freescale ~$ cat /proc/iomem >> ... >> 01010000-01feffff : PCIe 0 MEM >> 01010000-01011fff : 0000:00:00.0 >> 01010000-01011fff : iwlagn >> ... >> >> >> pcie target 4965agn wifi card mem remap log: >> --------------------------------------------------------------------------------- >> iwlagn: Intel(R) Wireless WiFi Link AGN driver for Linux, in-tree:d >> iwlagn: Copyright(c) 2003-2010 Intel Corporation >> iwlagn: *** LOAD DRIVER *** >> iwlagn: BT channel inhibition is On >> PCI: enabling device 0000:00:00.0 (0140 -> 0142) >> pci_iomap entering, start 0x01010000, len 0x00002000 >> iwlagn: pci_resource_len = 0x00002000 >> iwlagn: pci_resource_base = ea9b0000 A complete dmesg log is always a good start. I don't see anything obviously wrong. The device address (bus 0, device 0, function 0) is unusual, so I'd double-check that. At least on x86, 00:00.0 is usually something in the north bridge, not a normal device. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html