From: Guan Xuetao <guanxuetao@xxxxxxxxxxxxxxx> The whole patch could be fetched from: git://git.kernel.org/pub/scm/linux/kernel/git/epip/unicore32.git with branch name: unicore32. And it is divided into three patch sets: core architecture files, additional architecture files, and machine related files. This patch set adds the core architecture support for UniCore32 ISA. Patch 1 implements build infrastructure. Patch 2 includes some generic headers stuff. Because all one-line asm-generic headers are auto-generated by ASM_GENERIC_HEADERS in arch/unicore32/Makefile, so the rest seems very little. ELF handling functions are also here. Patch 3 includes processor and system headers. System call interface is here. We used the similar syscall interface as ARM formerly, so the similar calls.S, unistd.h and sys_unicore.c. While we are defining new ABI, it will use the syscall numbers in asm-generic/unistd.h. Patch 4 implements low level entry and setup codes. Patch 5 implements process/thread related codes. Backtrace and stacktrace are here. Patch 6 includes generic codes of memory management. Patch 7 implements fault handling of memory management. Patch 8 implements consistent device DMA handling of memory management. DMA device operations are also here. Patch 9 implements timer and time. RTC and PWM device drivers are also here. Patch 10 implements interrupts and gpio. UniCore32 has 9 gpio interrupt sources. And gpio device operations are also here. Patch 11 implements signals. Patch 12 implements booting process before uncompressed. Signed-off-by: Guan Xuetao <guanxuetao@xxxxxxxxxxxxxxx> --- arch/unicore32/.gitignore | 70 ++ arch/unicore32/Kconfig | 258 ++++++++ arch/unicore32/Kconfig.debug | 86 +++ arch/unicore32/Makefile | 153 +++++ arch/unicore32/boot/Makefile | 47 ++ arch/unicore32/boot/compressed/Makefile | 71 ++ arch/unicore32/boot/compressed/head.S | 203 ++++++ arch/unicore32/boot/compressed/misc.c | 126 ++++ arch/unicore32/boot/compressed/piggy.S.in | 6 + arch/unicore32/boot/compressed/vmlinux.lds.in | 61 ++ arch/unicore32/configs/debug_defconfig | 208 ++++++ arch/unicore32/configs/nb0916_defconfig | 203 ++++++ arch/unicore32/include/asm/Kbuild | 4 + arch/unicore32/include/asm/byteorder.h | 24 + arch/unicore32/include/asm/cache.h | 27 + arch/unicore32/include/asm/cacheflush.h | 211 ++++++ arch/unicore32/include/asm/cpu-single.h | 45 ++ arch/unicore32/include/asm/cputype.h | 33 + arch/unicore32/include/asm/dma-mapping.h | 124 ++++ arch/unicore32/include/asm/dma.h | 23 + arch/unicore32/include/asm/elf.h | 94 +++ arch/unicore32/include/asm/ftrace.h | 4 + arch/unicore32/include/asm/gpio.h | 103 +++ arch/unicore32/include/asm/hwcap.h | 32 + arch/unicore32/include/asm/irq.h | 107 +++ arch/unicore32/include/asm/irqflags.h | 53 ++ arch/unicore32/include/asm/linkage.h | 22 + arch/unicore32/include/asm/mach/dma.h | 41 ++ arch/unicore32/include/asm/mach/map.h | 20 + arch/unicore32/include/asm/mach/memory.h | 53 ++ arch/unicore32/include/asm/mach/uncompress.h | 34 + arch/unicore32/include/asm/memblock.h | 20 + arch/unicore32/include/asm/memory.h | 123 ++++ arch/unicore32/include/asm/mmu.h | 17 + arch/unicore32/include/asm/mmu_context.h | 87 +++ arch/unicore32/include/asm/page.h | 80 +++ arch/unicore32/include/asm/pgalloc.h | 110 +++ arch/unicore32/include/asm/pgtable-hwdef.h | 55 ++ arch/unicore32/include/asm/pgtable.h | 317 +++++++++ arch/unicore32/include/asm/processor.h | 92 +++ arch/unicore32/include/asm/setup.h | 51 ++ arch/unicore32/include/asm/sigcontext.h | 61 ++ arch/unicore32/include/asm/sizes.h | 47 ++ arch/unicore32/include/asm/stacktrace.h | 31 + arch/unicore32/include/asm/stat.h | 71 ++ arch/unicore32/include/asm/string.h | 52 ++ arch/unicore32/include/asm/system.h | 171 +++++ arch/unicore32/include/asm/thread_info.h | 152 +++++ arch/unicore32/include/asm/timex.h | 34 + arch/unicore32/include/asm/tlb.h | 98 +++ arch/unicore32/include/asm/tlbflush.h | 192 ++++++ arch/unicore32/include/asm/traps.h | 32 + arch/unicore32/include/asm/unistd.h | 450 +++++++++++++ arch/unicore32/kernel/Makefile | 34 + arch/unicore32/kernel/asm-offsets.c | 112 ++++ arch/unicore32/kernel/calls.S | 390 +++++++++++ arch/unicore32/kernel/elf.c | 38 ++ arch/unicore32/kernel/entry.S | 875 +++++++++++++++++++++++++ arch/unicore32/kernel/head.S | 261 ++++++++ arch/unicore32/kernel/init_task.c | 44 ++ arch/unicore32/kernel/irq.c | 440 +++++++++++++ arch/unicore32/kernel/ksyms.c | 87 +++ arch/unicore32/kernel/module.c | 152 +++++ arch/unicore32/kernel/process.c | 389 +++++++++++ arch/unicore32/kernel/setup.c | 360 ++++++++++ arch/unicore32/kernel/setup.h | 28 + arch/unicore32/kernel/signal.c | 571 ++++++++++++++++ arch/unicore32/kernel/signal.h | 16 + arch/unicore32/kernel/stacktrace.c | 131 ++++ arch/unicore32/kernel/sys_unicore.c | 132 ++++ arch/unicore32/kernel/time.c | 157 +++++ arch/unicore32/kernel/traps.c | 498 ++++++++++++++ arch/unicore32/kernel/vmlinux.lds.S | 120 ++++ arch/unicore32/lib/backtrace.S | 163 +++++ arch/unicore32/mm/Kconfig | 52 ++ arch/unicore32/mm/Makefile | 15 + arch/unicore32/mm/alignment.c | 524 +++++++++++++++ arch/unicore32/mm/cache-ucv2.S | 212 ++++++ arch/unicore32/mm/dma-swiotlb.c | 33 + arch/unicore32/mm/extable.c | 24 + arch/unicore32/mm/fault-unicore.c | 65 ++ arch/unicore32/mm/fault.c | 491 ++++++++++++++ arch/unicore32/mm/fault.h | 14 + arch/unicore32/mm/flush.c | 98 +++ arch/unicore32/mm/init.c | 517 +++++++++++++++ arch/unicore32/mm/iomap.c | 56 ++ arch/unicore32/mm/ioremap.c | 261 ++++++++ arch/unicore32/mm/mm.h | 39 ++ arch/unicore32/mm/mmu.c | 494 ++++++++++++++ arch/unicore32/mm/pgd.c | 102 +++ arch/unicore32/mm/proc-macros.S | 145 ++++ arch/unicore32/mm/proc-syms.c | 28 + arch/unicore32/mm/proc-ucv2.S | 134 ++++ arch/unicore32/mm/tlb-ucv2.S | 89 +++ drivers/staging/puv3/puv3_dma.c | 187 ++++++ drivers/staging/puv3/puv3_gpio.c | 129 ++++ drivers/staging/puv3/puv3_pwm.c | 271 ++++++++ drivers/staging/puv3/puv3_rtc.c | 388 +++++++++++ firmware/Makefile | 2 +- 99 files changed, 14256 insertions(+), 1 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html