• Jiasen Lin's avatar
    NTB: Fix an error in get link status · bb81bf62
    Jiasen Lin authored
    The offset of PCIe Capability Header for AMD and HYGON NTB is 0x64,
    but the macro which named "AMD_LINK_STATUS_OFFSET" is defined as 0x68.
    It is offset of Device Capabilities Reg rather than Link Control Reg.
    
    This code trigger an error in get link statsus:
    
    	cat /sys/kernel/debug/ntb_hw_amd/0000:43:00.1/info
    		LNK STA -               0x8fa1
    		Link Status -           Up
    		Link Speed -            PCI-E Gen 0
    		Link Width -            x0
    
    This patch use pcie_capability_read_dword to get link status.
    After fix this issue, we can get link status accurately:
    
    	cat /sys/kernel/debug/ntb_hw_amd/0000:43:00.1/info
    		LNK STA -               0x11030042
    		Link Status -           Up
    		Link Speed -            PCI-E Gen 3
    		Link Width -            x16
    
    Fixes: a1b36958 ("NTB: Add support for AMD PCI-Express Non-Transparent Bridge")
    Signed-off-by: default avatarJiasen Lin <linjiasen@hygon.cn>
    Signed-off-by: default avatarJon Mason <jdmason@kudzu.us>
    bb81bf62
ntb_hw_amd.h 5.89 KB