• Lu Baolu's avatar
    iommu/vt-d: Setup pasid entry for RID2PASID support · ef848b7e
    Lu Baolu authored
    when the scalable mode is enabled, there is no second level
    page translation pointer in the context entry any more (for
    DMA request without PASID). Instead, a new RID2PASID field
    is introduced in the context entry. Software can choose any
    PASID value to set RID2PASID and then setup the translation
    in the corresponding PASID entry. Upon receiving a DMA request
    without PASID, hardware will firstly look at this RID2PASID
    field and then treat this request as a request with a pasid
    value specified in RID2PASID field.
    
    Though software is allowed to use any PASID for the RID2PASID,
    we will always use the PASID 0 as a sort of design decision.
    
    Cc: Ashok Raj <ashok.raj@intel.com>
    Cc: Jacob Pan <jacob.jun.pan@linux.intel.com>
    Cc: Kevin Tian <kevin.tian@intel.com>
    Signed-off-by: default avatarSanjay Kumar <sanjay.k.kumar@intel.com>
    Signed-off-by: default avatarLiu Yi L <yi.l.liu@intel.com>
    Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
    Reviewed-by: default avatarAshok Raj <ashok.raj@intel.com>
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    ef848b7e
intel-iommu.c 135 KB