• Linus Torvalds's avatar
    Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 143a6252
    Linus Torvalds authored
    Pull arm64 updates from Catalin Marinas:
    
     - Initial support for the ARMv9 Scalable Matrix Extension (SME).
    
       SME takes the approach used for vectors in SVE and extends this to
       provide architectural support for matrix operations. No KVM support
       yet, SME is disabled in guests.
    
     - Support for crashkernel reservations above ZONE_DMA via the
       'crashkernel=X,high' command line option.
    
     - btrfs search_ioctl() fix for live-lock with sub-page faults.
    
     - arm64 perf updates: support for the Hisilicon "CPA" PMU for
       monitoring coherent I/O traffic, support for Arm's CMN-650 and
       CMN-700 interconnect PMUs, minor driver fixes, kerneldoc cleanup.
    
     - Kselftest updates for SME, BTI, MTE.
    
     - Automatic generation of the system register macros from a 'sysreg'
       file describing the register bitfields.
    
     - Update the type of the function argument holding the ESR_ELx register
       value to unsigned long to match the architecture register size
       (originally 32-bit but extended since ARMv8.0).
    
     - stacktrace cleanups.
    
     - ftrace cleanups.
    
     - Miscellaneous updates, most notably: arm64-specific huge_ptep_get(),
       avoid executable mappings in kexec/hibernate code, drop TLB flushing
       from get_clear_flush() (and rename it to get_clear_contig()),
       ARCH_NR_GPIO bumped to 2048 for ARCH_APPLE.
    
    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (145 commits)
      arm64/sysreg: Generate definitions for FAR_ELx
      arm64/sysreg: Generate definitions for DACR32_EL2
      arm64/sysreg: Generate definitions for CSSELR_EL1
      arm64/sysreg: Generate definitions for CPACR_ELx
      arm64/sysreg: Generate definitions for CONTEXTIDR_ELx
      arm64/sysreg: Generate definitions for CLIDR_EL1
      arm64/sve: Move sve_free() into SVE code section
      arm64: Kconfig.platforms: Add comments
      arm64: Kconfig: Fix indentation and add comments
      arm64: mm: avoid writable executable mappings in kexec/hibernate code
      arm64: lds: move special code sections out of kernel exec segment
      arm64/hugetlb: Implement arm64 specific huge_ptep_get()
      arm64/hugetlb: Use ptep_get() to get the pte value of a huge page
      arm64: kdump: Do not allocate crash low memory if not needed
      arm64/sve: Generate ZCR definitions
      arm64/sme: Generate defintions for SVCR
      arm64/sme: Generate SMPRI_EL1 definitions
      arm64/sme: Automatically generate SMPRIMAP_EL2 definitions
      arm64/sme: Automatically generate SMIDR_EL1 defines
      arm64/sme: Automatically generate defines for SMCR
      ...
    143a6252
arm.c 51.5 KB