On 2/8/2019 8:02 PM, sathyanarayanan kuppuswamy wrote:
This means that you should probably have some kind of version check
here.
There is no version field in ATS v1.0 spec. Also, If I follow the
history log in PCI spec, I think ATS if first added at v1.2. Please
correct me if I am wrong.
v1.2 was incorporated into PCIe spec at that time. However, the ATS spec
is old and there could be some HW that could claim to be ATS compatible.
I know AMD GPUs declare ATS capability.
See this ECN
https://composter.com.ua/documents/ats_r1.1_26Jan09.pdf
You need to validate the version field from ATS capability header to be
1 before reading this register.
See Table 5-1: ATS Extended Capability Header