From: Ley Foon Tan <lftan@altera.com>
To: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-doc@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>, Ley Foon Tan <lftan@altera.com>,
lftan.linux@gmail.com, cltang@codesourcery.com
Subject: [PATCH v6 00/29] nios2 Linux kernel port
Date: Mon, 3 Nov 2014 18:51:56 +0800 [thread overview]
Message-ID: <1415011945-3297-1-git-send-email-lftan@altera.com> (raw)
This is the 6th version of patchset adds the Linux kernel port for Nios II
processor from Altera. All of the feedback from v5 patchseries has been
addressed. Note, only patch #1, #7 and #21 have non-trivial changes.
Thanks to all who provided feedback on the previous version.
About Nios II Cores
-------------------
Nios II is a 32-bit embedded-processor architecture designed specifically for the
Altera family of FPGAs.
More information is available at http://www.altera.com/devices/processor/nios2/ni2-index.html
Instruction set and architecture overview documents can be found on the
following page:
http://www.altera.com/literature/lit-nio2.jsp
Nios2 GCC port is in mainline and will be in the FSF 4.9 release.
The patchset are based on v3.18-rc3 and can also be found in the following git tree:
git://git.rocketboards.org/linux-socfpga-next.git nios2-upstream
v6:
* time: change from setup_irq to request_irq
* time: move num_called to nios2_time_init()
* time: remove checking for period==0
* time: change to use statically allocation for nios2 clock structures
* time: remove ARCH_HAS_READ_CURRENT_TIMER and use lpj_fine
* io: remove unused outs{b,w,l}, ins{b,w,l}, out{b,w,l} and in{b,w,l}
* remove __divdi3 and __udivdi3 sysmbol export
* add description to futex.h
patchset history
-----------------
[v1] : https://lkml.org/lkml/2014/4/18/216
[v2] : https://lkml.org/lkml/2014/7/15/120
[v3] : https://lkml.org/lkml/2014/9/8/139
[v4] : https://lkml.org/lkml/2014/10/8/141
[v5] : https://lkml.org/lkml/2014/10/24/104
Ley Foon Tan (29):
asm-generic: add generic futex for !CONFIG_SMP
nios2: Assembly macros and definitions
nios2: Kernel booting and initialization
nios2: Exception handling
nios2: Traps exception handling
nios2: Memory management
nios2: I/O Mapping
nios2: MMU Fault handling
nios2: Page table management
nios2: Process management
nios2: Cache handling
nios2: TLB handling
nios2: Interrupt handling
nios2: DMA mapping API
Add ELF machine define for Nios2
nios2: ELF definitions
nios2: System calls handling
nios2: Signal handling support
nios2: Library functions
nios2: Device tree support
nios2: Time keeping
nios2: Cpuinfo handling
nios2: Miscellaneous header files
nios2: Nios2 registers
nios2: Module support
nios2: ptrace support
MAINTAINERS: Add nios2 maintainer
Documentation: Add documentation for Nios2 architecture
nios2: Build infrastructure
Documentation/devicetree/bindings/nios2/nios2.txt | 62 +++
Documentation/devicetree/bindings/nios2/timer.txt | 19 +
Documentation/nios2/README | 23 +
MAINTAINERS | 7 +
arch/nios2/Kconfig | 201 ++++++++
arch/nios2/Kconfig.debug | 17 +
arch/nios2/Makefile | 73 +++
arch/nios2/boot/Makefile | 52 ++
arch/nios2/boot/dts/3c120_devboard.dts | 164 ++++++
arch/nios2/boot/install.sh | 52 ++
arch/nios2/boot/linked_dtb.S | 19 +
arch/nios2/configs/3c120_defconfig | 77 +++
arch/nios2/include/asm/Kbuild | 66 +++
arch/nios2/include/asm/asm-macros.h | 309 +++++++++++
arch/nios2/include/asm/asm-offsets.h | 20 +
arch/nios2/include/asm/cache.h | 36 ++
arch/nios2/include/asm/cacheflush.h | 52 ++
arch/nios2/include/asm/checksum.h | 78 +++
arch/nios2/include/asm/cmpxchg.h | 61 +++
arch/nios2/include/asm/cpuinfo.h | 57 +++
arch/nios2/include/asm/delay.h | 21 +
arch/nios2/include/asm/dma-mapping.h | 140 +++++
arch/nios2/include/asm/elf.h | 101 ++++
arch/nios2/include/asm/entry.h | 120 +++++
arch/nios2/include/asm/io.h | 61 +++
arch/nios2/include/asm/irq.h | 28 +
arch/nios2/include/asm/irqflags.h | 72 +++
arch/nios2/include/asm/linkage.h | 25 +
arch/nios2/include/asm/mmu.h | 16 +
arch/nios2/include/asm/mmu_context.h | 66 +++
arch/nios2/include/asm/mutex.h | 1 +
arch/nios2/include/asm/page.h | 111 ++++
arch/nios2/include/asm/pgalloc.h | 86 ++++
arch/nios2/include/asm/pgtable-bits.h | 35 ++
arch/nios2/include/asm/pgtable.h | 310 +++++++++++
arch/nios2/include/asm/processor.h | 103 ++++
arch/nios2/include/asm/ptrace.h | 33 ++
arch/nios2/include/asm/registers.h | 71 +++
arch/nios2/include/asm/setup.h | 38 ++
arch/nios2/include/asm/signal.h | 22 +
arch/nios2/include/asm/string.h | 24 +
arch/nios2/include/asm/switch_to.h | 31 ++
arch/nios2/include/asm/syscall.h | 138 +++++
arch/nios2/include/asm/syscalls.h | 25 +
arch/nios2/include/asm/thread_info.h | 120 +++++
arch/nios2/include/asm/timex.h | 24 +
arch/nios2/include/asm/tlb.h | 34 ++
arch/nios2/include/asm/tlbflush.h | 46 ++
arch/nios2/include/asm/traps.h | 19 +
arch/nios2/include/asm/uaccess.h | 231 +++++++++
arch/nios2/include/asm/ucontext.h | 32 ++
arch/nios2/include/uapi/asm/Kbuild | 4 +
arch/nios2/include/uapi/asm/byteorder.h | 22 +
arch/nios2/include/uapi/asm/elf.h | 67 +++
arch/nios2/include/uapi/asm/ptrace.h | 120 +++++
arch/nios2/include/uapi/asm/sigcontext.h | 28 +
arch/nios2/include/uapi/asm/signal.h | 23 +
arch/nios2/include/uapi/asm/swab.h | 37 ++
arch/nios2/include/uapi/asm/unistd.h | 25 +
arch/nios2/kernel/Makefile | 24 +
arch/nios2/kernel/asm-offsets.c | 88 ++++
arch/nios2/kernel/cpuinfo.c | 201 ++++++++
arch/nios2/kernel/entry.S | 555 ++++++++++++++++++++
arch/nios2/kernel/head.S | 175 +++++++
arch/nios2/kernel/insnemu.S | 592 ++++++++++++++++++++++
arch/nios2/kernel/irq.c | 93 ++++
arch/nios2/kernel/misaligned.c | 256 ++++++++++
arch/nios2/kernel/module.c | 138 +++++
arch/nios2/kernel/nios2_ksyms.c | 33 ++
arch/nios2/kernel/process.c | 258 ++++++++++
arch/nios2/kernel/prom.c | 65 +++
arch/nios2/kernel/ptrace.c | 166 ++++++
arch/nios2/kernel/setup.c | 218 ++++++++
arch/nios2/kernel/signal.c | 323 ++++++++++++
arch/nios2/kernel/sys_nios2.c | 53 ++
arch/nios2/kernel/syscall_table.c | 29 ++
arch/nios2/kernel/time.c | 310 +++++++++++
arch/nios2/kernel/traps.c | 185 +++++++
arch/nios2/kernel/vmlinux.lds.S | 75 +++
arch/nios2/lib/Makefile | 8 +
arch/nios2/lib/delay.c | 52 ++
arch/nios2/lib/memcpy.c | 202 ++++++++
arch/nios2/lib/memmove.c | 82 +++
arch/nios2/lib/memset.c | 81 +++
arch/nios2/mm/Makefile | 14 +
arch/nios2/mm/cacheflush.c | 271 ++++++++++
arch/nios2/mm/dma-mapping.c | 186 +++++++
arch/nios2/mm/extable.c | 25 +
arch/nios2/mm/fault.c | 251 +++++++++
arch/nios2/mm/init.c | 142 ++++++
arch/nios2/mm/ioremap.c | 187 +++++++
arch/nios2/mm/mmu_context.c | 116 +++++
arch/nios2/mm/pgtable.c | 74 +++
arch/nios2/mm/tlb.c | 275 ++++++++++
arch/nios2/mm/uaccess.c | 163 ++++++
arch/nios2/platform/Kconfig.platform | 129 +++++
arch/nios2/platform/Makefile | 1 +
arch/nios2/platform/platform.c | 46 ++
include/asm-generic/futex.h | 114 +++++
include/uapi/linux/elf-em.h | 1 +
100 files changed, 10212 insertions(+)
create mode 100644 Documentation/devicetree/bindings/nios2/nios2.txt
create mode 100644 Documentation/devicetree/bindings/nios2/timer.txt
create mode 100644 Documentation/nios2/README
create mode 100644 arch/nios2/Kconfig
create mode 100644 arch/nios2/Kconfig.debug
create mode 100644 arch/nios2/Makefile
create mode 100644 arch/nios2/boot/Makefile
create mode 100644 arch/nios2/boot/dts/3c120_devboard.dts
create mode 100644 arch/nios2/boot/install.sh
create mode 100644 arch/nios2/boot/linked_dtb.S
create mode 100644 arch/nios2/configs/3c120_defconfig
create mode 100644 arch/nios2/include/asm/Kbuild
create mode 100644 arch/nios2/include/asm/asm-macros.h
create mode 100644 arch/nios2/include/asm/asm-offsets.h
create mode 100644 arch/nios2/include/asm/cache.h
create mode 100644 arch/nios2/include/asm/cacheflush.h
create mode 100644 arch/nios2/include/asm/checksum.h
create mode 100644 arch/nios2/include/asm/cmpxchg.h
create mode 100644 arch/nios2/include/asm/cpuinfo.h
create mode 100644 arch/nios2/include/asm/delay.h
create mode 100644 arch/nios2/include/asm/dma-mapping.h
create mode 100644 arch/nios2/include/asm/elf.h
create mode 100644 arch/nios2/include/asm/entry.h
create mode 100644 arch/nios2/include/asm/io.h
create mode 100644 arch/nios2/include/asm/irq.h
create mode 100644 arch/nios2/include/asm/irqflags.h
create mode 100644 arch/nios2/include/asm/linkage.h
create mode 100644 arch/nios2/include/asm/mmu.h
create mode 100644 arch/nios2/include/asm/mmu_context.h
create mode 100644 arch/nios2/include/asm/mutex.h
create mode 100644 arch/nios2/include/asm/page.h
create mode 100644 arch/nios2/include/asm/pgalloc.h
create mode 100644 arch/nios2/include/asm/pgtable-bits.h
create mode 100644 arch/nios2/include/asm/pgtable.h
create mode 100644 arch/nios2/include/asm/processor.h
create mode 100644 arch/nios2/include/asm/ptrace.h
create mode 100644 arch/nios2/include/asm/registers.h
create mode 100644 arch/nios2/include/asm/setup.h
create mode 100644 arch/nios2/include/asm/signal.h
create mode 100644 arch/nios2/include/asm/string.h
create mode 100644 arch/nios2/include/asm/switch_to.h
create mode 100644 arch/nios2/include/asm/syscall.h
create mode 100644 arch/nios2/include/asm/syscalls.h
create mode 100644 arch/nios2/include/asm/thread_info.h
create mode 100644 arch/nios2/include/asm/timex.h
create mode 100644 arch/nios2/include/asm/tlb.h
create mode 100644 arch/nios2/include/asm/tlbflush.h
create mode 100644 arch/nios2/include/asm/traps.h
create mode 100644 arch/nios2/include/asm/uaccess.h
create mode 100644 arch/nios2/include/asm/ucontext.h
create mode 100644 arch/nios2/include/uapi/asm/Kbuild
create mode 100644 arch/nios2/include/uapi/asm/byteorder.h
create mode 100644 arch/nios2/include/uapi/asm/elf.h
create mode 100644 arch/nios2/include/uapi/asm/ptrace.h
create mode 100644 arch/nios2/include/uapi/asm/sigcontext.h
create mode 100644 arch/nios2/include/uapi/asm/signal.h
create mode 100644 arch/nios2/include/uapi/asm/swab.h
create mode 100644 arch/nios2/include/uapi/asm/unistd.h
create mode 100644 arch/nios2/kernel/Makefile
create mode 100644 arch/nios2/kernel/asm-offsets.c
create mode 100644 arch/nios2/kernel/cpuinfo.c
create mode 100644 arch/nios2/kernel/entry.S
create mode 100644 arch/nios2/kernel/head.S
create mode 100644 arch/nios2/kernel/insnemu.S
create mode 100644 arch/nios2/kernel/irq.c
create mode 100644 arch/nios2/kernel/misaligned.c
create mode 100644 arch/nios2/kernel/module.c
create mode 100644 arch/nios2/kernel/nios2_ksyms.c
create mode 100644 arch/nios2/kernel/process.c
create mode 100644 arch/nios2/kernel/prom.c
create mode 100644 arch/nios2/kernel/ptrace.c
create mode 100644 arch/nios2/kernel/setup.c
create mode 100644 arch/nios2/kernel/signal.c
create mode 100644 arch/nios2/kernel/sys_nios2.c
create mode 100644 arch/nios2/kernel/syscall_table.c
create mode 100644 arch/nios2/kernel/time.c
create mode 100644 arch/nios2/kernel/traps.c
create mode 100644 arch/nios2/kernel/vmlinux.lds.S
create mode 100644 arch/nios2/lib/Makefile
create mode 100644 arch/nios2/lib/delay.c
create mode 100644 arch/nios2/lib/memcpy.c
create mode 100644 arch/nios2/lib/memmove.c
create mode 100644 arch/nios2/lib/memset.c
create mode 100644 arch/nios2/mm/Makefile
create mode 100644 arch/nios2/mm/cacheflush.c
create mode 100644 arch/nios2/mm/dma-mapping.c
create mode 100644 arch/nios2/mm/extable.c
create mode 100644 arch/nios2/mm/fault.c
create mode 100644 arch/nios2/mm/init.c
create mode 100644 arch/nios2/mm/ioremap.c
create mode 100644 arch/nios2/mm/mmu_context.c
create mode 100644 arch/nios2/mm/pgtable.c
create mode 100644 arch/nios2/mm/tlb.c
create mode 100644 arch/nios2/mm/uaccess.c
create mode 100644 arch/nios2/platform/Kconfig.platform
create mode 100644 arch/nios2/platform/Makefile
create mode 100644 arch/nios2/platform/platform.c
--
1.8.2.1
next reply other threads:[~2014-11-03 10:51 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-03 10:51 Ley Foon Tan [this message]
2014-11-03 10:51 ` [PATCH v6 00/29] nios2 Linux kernel port Ley Foon Tan
2014-11-03 10:51 ` [PATCH v6 01/29] asm-generic: add generic futex for !CONFIG_SMP Ley Foon Tan
2014-11-03 10:51 ` Ley Foon Tan
2014-11-03 10:51 ` [PATCH v6 02/29] nios2: Assembly macros and definitions Ley Foon Tan
2014-11-03 10:51 ` [PATCH v6 03/29] nios2: Kernel booting and initialization Ley Foon Tan
2014-11-03 10:51 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 04/29] nios2: Exception handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 05/29] nios2: Traps exception handling Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 06/29] nios2: Memory management Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 07/29] nios2: I/O Mapping Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 08/29] nios2: MMU Fault handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 09/29] nios2: Page table management Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 10/29] nios2: Process management Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 11/29] nios2: Cache handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 12/29] nios2: TLB handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 13/29] nios2: Interrupt handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 14/29] nios2: DMA mapping API Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 15/29] Add ELF machine define for Nios2 Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 16/29] nios2: ELF definitions Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 17/29] nios2: System calls handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 18/29] nios2: Signal handling support Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 19/29] nios2: Library functions Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 20/29] nios2: Device tree support Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 21/29] nios2: Time keeping Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 12:26 ` Thomas Gleixner
2014-11-04 2:17 ` Ley Foon Tan
2014-11-04 2:17 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 22/29] nios2: Cpuinfo handling Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 23/29] nios2: Miscellaneous header files Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 24/29] nios2: Nios2 registers Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 25/29] nios2: Module support Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 26/29] nios2: ptrace support Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 27/29] MAINTAINERS: Add nios2 maintainer Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 28/29] Documentation: Add documentation for Nios2 architecture Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-03 10:52 ` [PATCH v6 29/29] nios2: Build infrastructure Ley Foon Tan
2014-11-03 10:52 ` Ley Foon Tan
2014-11-07 7:39 ` [PATCH v6 00/29] nios2 Linux kernel port LF.Tan
2014-11-07 7:39 ` LF.Tan
2014-11-07 9:24 ` Ley Foon Tan
2014-11-07 9:24 ` Ley Foon Tan
2014-11-09 13:12 ` Stephen Rothwell
2014-11-09 13:12 ` Stephen Rothwell
2014-11-11 3:00 ` Ley Foon Tan
2014-11-11 3:00 ` Ley Foon Tan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1415011945-3297-1-git-send-email-lftan@altera.com \
--to=lftan@altera.com \
--cc=arnd@arndb.de \
--cc=cltang@codesourcery.com \
--cc=lftan.linux@gmail.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox