• Cho KyongHo's avatar
    iommu/exynos: Turn on useful configuration options · eeb5184b
    Cho KyongHo authored
    This turns on FLPD_CACHE, ACGEN and SYSSEL.
    
    FLPD_CACHE is a cache of 1st level page table entries that contains
    the address of a 2nd level page table to reduce latency of page table
    walking.
    
    ACGEN is architectural clock gating that gates clocks by System MMU
    itself if it is not active. Note that ACGEN is different from clock
    gating by the CPU. ACGEN just gates clocks to the internal logic of
    System MMU while clock gating by the CPU gates clocks to the System
    MMU.
    
    SYSSEL selects System MMU version in some Exynos SoCs. Some Exynos
    SoCs have an option to select System MMU versions exclusively because
    the SoCs adopts new System MMU version experimentally.
    
    This also always selects LRU as TLB replacement policy. Selecting TLB
    replacement policy is deprecated from System MMU 3.2. TLB in System
    MMU 3.3 has single TLB replacement policy, LRU. The bit of MMU_CFG
    selecting TLB replacement policy is remained as reserved.
    
    QoS value of page table walking is set to 15 (highst value). System
    MMU 3.3 can inherit QoS value of page table walking from its master
    H/W's transaction. This new feature is enabled by default and QoS
    value written to MMU_CFG is ignored.
    
    This patch also adds simplifies the sysmmu version checking by
    introducing some macros.
    Signed-off-by: default avatarCho KyongHo <pullip.cho@samsung.com>
    Signed-off-by: default avatarShaik Ameer Basha <shaik.ameer@samsung.com>
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    eeb5184b
exynos-iommu.c 26.1 KB