New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test 841 requires memory under 2^32? #197
Comments
|
Hi @hrw, We are checking the query and provide update soon. Thanks, |
|
Hello @hrw, Can you help us with below data to debug the issue.
Thanks, |
|
Log with:
I use QEMU master HEAD with UEFI built also with HEAD of edk2 and edk2-platforms repos. Can attach firmware image if needed. |
|
Hello @hrw, The failure was seen for 0x80000 device ( Bus 8 Dev 0 Func 0) BDF - 0x80000 But the pci dump command list no such device, the only device at bus 8 is In case if same setup of QEMU was used for running BSA test and sharing pci cmd output, can you please attach bsa log with below command, to check PCIe devices found by BSA suite.
Thanks, |
|
Here is output of (boot-sbsa-ref.sh is in https://github.com/hrw/sbsa-ref-status repo) |
|
Thanks for looking into it. |
|
Hello @hrw, The support of ITS and SMMU + booting qemu with number of different PCIe devices is great. :clap On the failure, the PCIe device on which test is failing is a "PCI Express to PCI/PCI-X Bridge" Pci Express device capability structure: It is a Type1 header device, but is requesting 64-bit NP memory. Shell> pci 07 00 00 -i Bits 0 -> 0 // memory address requested As per BSA and PCIe spec, Type1 headers supports 32-bit addresses
Thanks, |
|
I mailed QEMU devel ML: https://lore.kernel.org/qemu-devel/20230911062751-mutt-send-email-mst@kernel.org/T/ Please check the answer. |
|
Hi @hrw, We are having an internal discussion around the PCIe prefetchable bits and type (32/64-bit), will keep you updated. Thanks, |
|
I have Arm support case 03445990 opened for it as well. |
|
Hi @hrw, The requirement of a PCIe device requesting NP memory should use 32-bit address only (32-bit BAR) is applicable only for EP. Thanks, |
|
Hi @hrw, Further updates on top of the last one. As RP can only support 32-bit address for NP memory living downstream of a Type-1 header, EP which are downstream to the RP for NP memory should only have 32-bit address programmed in the BAR's. But PCIe specification doesn't mandate BAR Type Bit to be 32-bit for NP memory. It can be 64-bit but the address programmed should be 32-bit address (below 4GB). In case system is mapping PCI memory in above 4GB range, it can use address translation offset. RPCI_MM_04 Systems compliant to this specification must support 32-bit programming of NP BARs on such endpoints. Based on above inputs, there is no FAIL case from BSA specification perspective for current test. In case NP BAR is programmed with 64-bit address, it will be PCIe enumeration software issue but not hardware issue. We will deprecate the test case. Thanks, |
|
Thanks |
On SBSA-ref there is no memory below 2^40 address.
Test 841 wants memory in 32-bit address space:
Doc says:
Looks like we would need to go with method 2 then?
The text was updated successfully, but these errors were encountered: