• Max Filippov's avatar
    xtensa: add MMU v3 support · e85e335f
    Max Filippov authored
    
    
    MMUv3 comes out of reset with identity vaddr -> paddr mapping in the TLB
    way 6:
    
    Way 6 (512 MB)
            Vaddr       Paddr       ASID  Attr RWX Cache
            ----------  ----------  ----  ---- --- -------
            0x00000000  0x00000000  0x01  0x03 RWX Bypass
            0x20000000  0x20000000  0x01  0x03 RWX Bypass
            0x40000000  0x40000000  0x01  0x03 RWX Bypass
            0x60000000  0x60000000  0x01  0x03 RWX Bypass
            0x80000000  0x80000000  0x01  0x03 RWX Bypass
            0xa0000000  0xa0000000  0x01  0x03 RWX Bypass
            0xc0000000  0xc0000000  0x01  0x03 RWX Bypass
            0xe0000000  0xe0000000  0x01  0x03 RWX Bypass
    
    This patch adds remapping code at the reset vector or at the kernel
    _start (depending on CONFIG_INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX) that
    reconfigures MMUv3 as MMUv2:
    
    Way 5 (128 MB)
            Vaddr       Paddr       ASID  Attr RWX Cache
            ----------  ----------  ----  ---- --- -------
            0xd0000000  0x00000000  0x01  0x07 RWX WB
            0xd8000000  0x00000000  0x01  0x03 RWX Bypass
    Way 6 (256 MB)
            Vaddr       Paddr       ASID  Attr RWX Cache
            ----------  ----------  ----  ---- --- -------
            0xe0000000  0xf0000000  0x01  0x07 RWX WB
            0xf0000000  0xf0000000  0x01  0x03 RWX Bypass
    
    Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
    Signed-off-by: default avatarChris Zankel <chris@zankel.net>
    e85e335f