• Ajay Gupta's avatar
    Tegra194: program stream ids for XUSB · bc019041
    Ajay Gupta authored
    
    
    T194 XUSB has support for XUSB virtualization. It will have one
    physical function (PF) and four Virtual function (VF)
    
    There were below two SIDs for XUSB until T186.
    1) #define TEGRA_SID_XUSB_HOST    0x1bU
    2) #define TEGRA_SID_XUSB_DEV    0x1cU
    
    We have below four new SIDs added for VF(s)
    3) #define TEGRA_SID_XUSB_VF0    0x5dU
    4) #define TEGRA_SID_XUSB_VF1    0x5eU
    5) #define TEGRA_SID_XUSB_VF2    0x5fU
    6) #define TEGRA_SID_XUSB_VF3    0x60U
    
    When virtualization is enabled then we have to disable SID override
    and program above SIDs in below newly added SID registers in XUSB
    PADCTL MMIO space. These registers are TZ protected and so need to
    be done in ATF.
    a) #define XUSB_PADCTL_HOST_AXI_STREAMID_PF_0 (0x136cU)
    b) #define XUSB_PADCTL_DEV_AXI_STREAMID_PF_0  (0x139cU)
    c) #define XUSB_PADCTL_HOST_AXI_STREAMID_VF_0 (0x1370U)
    d) #define XUSB_PADCTL_HOST_AXI_STREAMID_VF_1 (0x1374U)
    e) #define XUSB_PADCTL_HOST_AXI_STREAMID_VF_2 (0x1378U)
    f) #define XUSB_PADCTL_HOST_AXI_STREAMID_VF_3 (0x137cU)
    
    This change disables SID override and programs XUSB SIDs in
    above registers to support both virtualization and non-virtualization.
    
    Change-Id: I38213a72999e933c44c5392441f91034d3b47a39
    Signed-off-by: default avatarAjay Gupta <ajayg@nvidia.com>
    bc019041
plat_memctrl.c 14.4 KB