This is an old revision of the document!
Table of Contents
Linux port for Xtensa
Phase 1
Goal: linux mainline contains the latest linux-xtensa updates, builds and works.
- compilable with latest GCC
- overlays to cover: FSF, dc232b, more TBD
- tests to pass: builds, boots, LTP
- boards to focus on: ISS, ML605
- configurations: UP, linux-next specific, more TBD
Plan
- Prepare for linux-next participation
- [2/3] Make mainline build for ARCH=xtensa in defconfig, allnoconfig, allmodconfig
- [+] fix remaining issues with allmodconfig
- why there's no simdisk in the mainline?
- qemu needs proper handling for guest ioctls triggered via simcalls
- [+] Make built images work (qemu, FSF)
- [+] Build userspace
- Automated build/test scripts
- [+] build/test status/logs
- expect script to run LTP
- Analyse reference tree
- proper bugfixes
- new cores (dc233c, test_hifi_c3, s*)
- new platforms (lx*, ml605, s*)
- SMP and its fixes
- XCC fixes
Work items
SMP support
Support for Tensilica FPGA boards
- [+] serial
- [+] ethernet
- [+] FLASH
- [-] audio
Atomics (arch/xtensa/include/asm/atomic.h, bitops.h, spinlock.h) and check for S32C1I
Merged in the eb0a9bf31fdbcee9463c0f42fbf4a292ef149a7d, pick up from individual files. Done, posted to the linux-xtensa ML.
TIE coprocessors
23ae3f723c8996d47ef205e98cb7732bbde4775f
Highmem
Interrupt management
Medium level interrupts in less hacky way
489fb47c75772e3a41ef3e988eb0c0e512592085
Device trees support
On the xtensa-fixes branch.
MMU v3
ptrace (support latest GDB)
617244763e19a4eebb4fabe41ba56eb1ccbdb049, 23ae3f723c8996d47ef205e98cb7732bbde4775f, ff1b10f85a1176d1eb8df433434b717f6f0841d4, a2b61af3328025d6069e8bf9ff36f5288e11dba9
Support for building with XCC
simdisk
1a955825662fa378d447b91485d9fe2438124b0a, 8bcbc3adb5c5bfdbd96078c1e68916be859c832d
Various fixes made for debuggability
oprofile
8c502ca703956e56bf191774e4169752f0f71c8e, 7dd1d39e70769f2dd7a6a508d58b187ed8d1cb95
Generic kernel_thread & friends
Done, in the mainline.