Skip to content

Major changes in upstream Linux kernel for ARC cores

Alexey Brodkin edited this page May 23, 2018 · 11 revisions

It is important to note that ARC-port of the Linux kernel is an essential part of upstream projects which means: a) ARC port benefits from all the fixes and improvements that were done across the entire source tree like new device drivers, file-systems or even brand new subsystems, as well as fixes for existing code b) All ARC-specific changes are introduced in new kernel releases and only fixes that conform to so-called "stable kernel" rules are back-ported to older kernel versions. That said major changes in existing ARC code or any new features we add in arch/arc/ won't ever be back-ported to upstream stable releases.

Lengthy changelogs for entire source tree (not only ARC-related) could be found here: https://kernelnewbies.org/LinuxVersions. Given above note about ARC port we strongly recommend to take generic changes into account as serious as ARC-only changes.

Linux 4.16 (changes)

  • ARC: MCIP (ARConnect): Minor improvements

Linux 4.15 (changes)

  • ARC: Support for ARC HS48 cores (MMUv5)
  • ARC: Perf: Clean-up and micro-optimizations
  • ARC: Platforms
    • HSDK: Switch DisplayLink driver from FBDEV to DRM version

4.14 (changes), LTS - projected EOL Jan, 2020,

  • ARC: Platforms
    • HSDK: Added initial support
    • AXS10x: Switch to CLK driver
    • NPS400: Fixes and improvements

Linux 4.13 (changes)

  • ARC: PAE40
    • Fixes
    • Prepare AXS103 for use of PAE40

Linux 4.12 (changes)

  • ARC: ARCv2: Implement regional operations for L1 data- and instruction caches

Linux 4.11 (changes)

  • ARC: Read CPU clock value from CLK driver
  • ARC: ARCv2
    • Save accumulator regs (r58, r59) if present
    • IDU INTC: Fixes and improvements
  • ARC: Platforms
    • VDK: Add support of MMC and UIO

Linux 4.10 (changes)

  • ARC: Move ARC Timers to clocksource
  • ARC: Minor improvements for IRQs
  • ARC: ARCompact
    • Fix unaligned access handler
    • Accommodate 4-color aliased data cache
  • ARC: ARCv2
    • Clean-up of MCIP (ARConnect) code
    • Fixes and improvements for IO-Coherency
    • Re-enable IO-Coherency by default
    • Save user-space r30 on kernel entry
    • GFRC, RTC fixes and improvements
  • ARC: Platforms
    • AXS10X: Enable ARC PGU as kernel module by default
    • NPS400: Support hardware scheduling
    • Rename ZEBU platform to HAPS

Linux 4.9 (changes), LTS - projected EOL Jan, 2019

  • ARC: Minor improvements for IRQs
  • ARC: Implement arch-specific dma_map_ops.mmap
  • ARC: Bootlog improvements
  • ARC: Syscall for kernel-aasisted atomic operations
  • ARC: Dwarf2 unwinder refactoring (switch from .debug_frame to .eh_frame)
  • ARC: Enable generic "cache-references" and "cache-misses" events in perf for ARC
  • ARC: ARCv2
    • IOC: Disable by default
    • Support 64-bit atomic ops
  • ARC: Platforms
    • NPS400: Minor improvements
    • NSIM: Support perf events with interrupts
    • ZEBU: Add support of emulation platform

Linux 4.8 (changes)

Linux 4.7 (changes)

  • ARC: ARC built-in timers refactoring
  • ARC: Support for reserved memory defined by device tree
  • ARC: Platforms
    • AXS10x: Add support of ARC PGU
    • NPS400: Add new platform

Linux 4.6 (changes)

  • ARC: Enable LOCKDEP
  • ARC: DMA: Support DMA to/from memory beyond 4Gb
  • ARC: PCI: Add support in ARC architecture
  • ARC: Platforms
    • NSIMOSCI: Use NPS_ENET driver for Ethernet controller

Linux 4.5 (changes)

  • ARC: DMA: Convert to dma_map_ops
  • ARC: ARCv2
    • MCIP (ARConnect): IPI Cross-core interrupts fixes and improvements
    • Introduce MMU Super Page Size support (2 and 16MB)

Linux 4.4 (changes), LTS - projected EOL Feb, 2022

  • ARC: Dwarf2 fixes and improvements
  • ARC: ARCv2
    • Add PAE40 support
    • Add HIGHMEM support
    • Add Transparent Huge Pages support

Linux 4.3 (changes)

  • ARC: ARCv2
    • Improvements for perf (support of SMP, overflow IRQs, user-/kernel-mode selection)
    • Initial support of IO-Coherency

Linux 4.2 (changes)

  • ARC: ARCv2
    • Introduce initial port for ARCv2 ISA
Clone this wiki locally