Re: [PATCH v10 07/10] OF: Introduce helper function for getting PCI domain_nr
From: Yijing Wang <hidden>
Date: 2014-09-10 02:01:36
Also in:
linux-arch, linux-arm-kernel, linux-pci, lkml
From: Yijing Wang <hidden>
Date: 2014-09-10 02:01:36
Also in:
linux-arch, linux-arm-kernel, linux-pci, lkml
quoted
OK. Sorry, I have one last question, because domain will be used to calculate the address used to access PCI hardware config registers. So if DTS file doesn't report the domain, how do we know we would access the right registers when we use the auto increment domain vaule ? Has there a mechanism to make sure system can access the correct registers by the domain ?I think you're referring to config access via ECAM (PCIe r3.0, sec 7.2.2). In that case, I don't think the domain should be used to compute the memory-mapped configuration address. Each host bridge is in exactly one domain, and each host bridge has an associated ECAM area base. The address calculation uses the bus number, device number, function number, and register number to compute an offset into the ECAM area. So as long as the DT tells you the ECAM information for each host bridge, that should be sufficient. The domain number is then just a Linux convenience and is not tied to the platform as it is on ia64.
Hi Bjorn, you are right, thanks for your detailed explanation! :) Thanks! Yijing.
Bjorn .
-- Thanks! Yijing