etc:users:jcmvbkbc:linux-xtensa
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| etc:users:jcmvbkbc:linux-xtensa [2012/08/29 16:50] – progress jcmvbkbc | etc:users:jcmvbkbc:linux-xtensa [2023/07/12 06:25] (current) – add esp32s3 linux wifi notes jcmvbkbc | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Linux port for Xtensa ====== | ====== Linux port for Xtensa ====== | ||
| - | ===== Phase 1 ===== | + | * Linux git tree: https:// |
| - | Goal: linux mainline contains the latest | + | * Build/test tools git tree: https:// |
| - | * compilable with latest GCC | + | * Toolchain build scripts/overlays |
| - | * overlays | + | * [[.:linux-xtensa: |
| - | * tests to pass: builds, boots, LTP | + | * [[.:linux-xtensa: |
| - | * boards to focus on: ISS, ML605 | + | * [[.:linux-xtensa: |
| - | * configurations: UP, linux-next specific, more TBD | + | |
| - | ===== Plan ===== | + | ===== TODO ===== |
| - | * Prepare for linux-next participation | + | |
| - | * [2/3] Make mainline build for ARCH=xtensa | + | * dynamic ftrace |
| - | * [-] fix remaining issues | + | * kgdb/kdb |
| - | * concept of IO space? IO mapping? | + | * kexec |
| - | * why there' | + | * NX |
| - | * qemu needs proper handling | + | |
| - | * [+] Make built images work (qemu, FSF) | + | ===== In Progress ===== |
| - | * [+] Build userspace | + | |
| - | * Automated build/test scripts | + | * kprobes |
| - | * [+] build/test status/logs | + | * [[.:linux-xtensa: |
| - | * expect script to run LTP | + | * [[.:linux-xtensa:esp32s3]] |
| - | * Analyse reference tree | + | * [[.:linux-xtensa: |
| - | * proper bugfixes | + | |
| - | * new cores (dc233c, test_hifi_c3, s*) | + | ===== Features by release ===== |
| - | * new platforms | + | ==== Linux 6.4 ==== |
| - | * SMP and its fixes | + | |
| - | * XCC fixes | + | * support for FDPIC ELF executable format on noMMU |
| + | |||
| + | ==== Linux 6.1 ==== | ||
| + | |||
| + | * support for static PIE ELF executable format on noMMU | ||
| + | * partial support for FDPIC ELF executable format on noMMU (signal delivery is broken, fixed in 6.1.31) | ||
| + | |||
| + | ==== Linux 5.19 ==== | ||
| + | |||
| + | * support coprocessors on SMP. | ||
| + | * support protection faults on noMMU. | ||
| + | * support full tickless operation. | ||
| + | * KCSAN. | ||
| + | * hibernation. | ||
| + | |||
| + | ==== Linux 5.18 ==== | ||
| + | |||
| + | * support compiler plugins (with gcc-12 and newer). | ||
| + | * support for kernel ABI selection. | ||
| + | * removed dependency on compiler' | ||
| + | |||
| + | ==== Linux 5.16 ==== | ||
| + | |||
| + | * support for cores without windowed registers. | ||
| + | * call0 ABI kernel. | ||
| + | |||
| + | ==== Linux 5.13 ==== | ||
| + | |||
| + | * GDBIO semihosting. | ||
| + | |||
| + | ==== Linux 5.9 ==== | ||
| + | |||
| + | * syscall audit. | ||
| + | * seccomp filter. | ||
| + | |||
| + | ==== Linux 5.6 ==== | ||
| + | |||
| + | * exception vectors can be attached to the rest of the kernel or placed at specific address. | ||
| + | |||
| + | ==== Linux 5.5 ==== | ||
| + | |||
| + | * eXecute In Place (XIP) kernel. | ||
| + | |||
| + | ==== Linux 5.4 ==== | ||
| + | |||
| + | | ||
| + | |||
| + | ==== Linux 5.3 ==== | ||
| + | |||
| + | | ||
| + | |||
| + | ==== Linux 5.2 ==== | ||
| + | |||
| + | * support for cores with exclusive access option. | ||
| + | * basic support for cores with MPU. | ||
| + | |||
| + | ==== Linux 5.1 ==== | ||
| + | |||
| + | | ||
| + | |||
| + | ==== Linux 5.0 ==== | ||
| + | |||
| + | | ||
| + | * Jump labels. | ||
| + | * tracehook. | ||
| + | * syscall tracepoints. | ||
| + | * multiple coprocessor fixes. | ||
| + | * SMP fixes. | ||
| + | |||
| + | ==== Linux 4.16 ==== | ||
| + | |||
| + | * KASAN. | ||
| + | * SSP. | ||
| + | * allocation of DMA buffers from high memory. | ||
| + | * support DMA_ATTR_NO_KERNEL_MAPPING. | ||
| + | * kernel is built with -mtext-section-literals and -mno-serialize-volatile. | ||
| + | |||
| + | ==== Linux 4.9 ==== | ||
| + | |||
| + | * New kernel memory layouts: with 256MBytes and 512MBytes of low memory. | ||
| + | * Configurable KSEG physical memory address and kernel load address. | ||
| + | * Custom sysmem boot time memory allocator is replaced with memblock. | ||
| + | * KMEMLEAK. | ||
| + | * reserved-memory DT node. | ||
| + | * Cadence Configurable System Platform | ||
| + | |||
| + | ==== Linux 4.6 ==== | ||
| + | |||
| + | * Hardware breakpoints/ | ||
| + | * ioremap for memory outside KIO region. | ||
| + | * Big endian: serial, network, i2c work. | ||
| + | |||
| + | ==== Linux 4.4 ==== | ||
| + | |||
| + | | ||
| + | |||
| + | ==== Linux 4.3 ==== | ||
| + | |||
| + | * Hardware perf counters and perf support. | ||
| + | |||
| + | ==== Linux 4.1 ==== | ||
| + | |||
| + | * ALSA playback driver for XTFPGA. | ||
| + | |||
| + | ==== Linux 3.19 ==== | ||
| + | |||
| + | * noMMU. | ||
| + | |||
| + | ==== Linux 3.17 ==== | ||
| + | |||
| + | * Highmem on cores with aliasing cache. | ||
| + | * New (simpler) method of configuring for specific core variant. | ||
| + | |||
| + | ==== Linux 3.16 ==== | ||
| + | |||
| + | | ||
| + | |||
| + | ==== Linux 3.15 ==== | ||
| + | |||
| + | * Highmem. | ||
| + | * KC705 board. | ||
| + | |||
| + | ==== Linux 3.14 ==== | ||
| + | |||
| + | * SMP. | ||
| + | * Futex. | ||
| + | * register spilling overhaul. | ||
| + | * OpenCores ethernet works when connected to gigabit network. | ||
| + | * c67x00 USB host is usable on XTFPGA. | ||
| + | * TAP network works in ISS. | ||
| + | |||
| + | ==== Linux 3.12 ==== | ||
| + | |||
| + | * Kernel preemption. | ||
| + | |||
| + | ==== Linux 3.11 ==== | ||
| + | |||
| + | * Multihit exceptions fixed. | ||
| + | * Static function tracer. | ||
| + | |||
| + | ==== Linux 3.10 ==== | ||
| + | |||
| + | * MMUv3 cores. | ||
| + | * Lockdep/ | ||
| + | |||
| + | ==== Linux 3.9 ==== | ||
| + | |||
| + | * TLS (THREADPTR register). | ||
| + | | ||
| + | | ||
| + | |||
| + | ==== Linux 3.8 ==== | ||
| + | |||
| + | * Device trees. | ||
| + | * uImage generation. | ||
| + | * IRQ subsystem overhaul (IRQ domains, medium-priority interrupts). | ||
| + | * XTFPGA boards. | ||
| + | * s32c1i-based atomic/bit operations | ||
| + | |||
| + | ==== Linux 3.7 ==== | ||
| + | |||
| + | | ||
| + | * There were dragons prior to that release. | ||
etc/users/jcmvbkbc/linux-xtensa.1346244635.txt.gz · Last modified: 2012/08/29 16:50 by jcmvbkbc