summaryrefslogtreecommitdiff
path: root/arch/nios2
AgeCommit message (Collapse)Author
2014-12-31nios2: Use preempt_schedule_irqTobias Klauser
Follow aa0d53260596 ("ia64: Use preempt_schedule_irq") and use preempt_schedule_irq instead of enabling/disabling interrupts and messing around with PREEMPT_ACTIVE in the nios2 low-level preemption code ourselves. Also get rid of the now needless re-check for TIF_NEED_RESCHED, preempt_schedule_irq will already take care of rescheduling. This also fixes the following build error when building with CONFIG_PREEMPT: arch/nios2/kernel/built-in.o: In function `need_resched': arch/nios2/kernel/entry.S:374: undefined reference to `PREEMPT_ACTIVE' Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-31nios2: Initialize cpuinfo.mmuWalter Goossens
This patch initializes the mmu field of the cpuinfo structure to the value supplied by the devicetree. Signed-off-by: Walter Goossens <waltergoossens@home.nl> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-17nios2/uaccess: fix sparse errorsLey Foon Tan
virtio wants to read bitwise types from userspace using get_user. At the moment this triggers sparse errors, since the value is passed through an integer. Fix that up using __force. Suggested-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-17nios2: enable "make defconfig"Paul Bolle
Running "make defconfig" currently fails for nios2: $ make ARCH=nios2 defconfig scripts/kconfig/conf --defconfig Kconfig *** *** Can't find default configuration "arch/nios2/defconfig"! *** make[1]: *** [defconfig] Error 1 make: *** [defconfig] Error 2 Add a definition for KBUILD_DEFCONFIG to the nios2's main Makefile to enable this make target. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-17nios2: add definition of ioremap_wc to io.hGuenter Roeck
Fix drivers/gpu/drm/drm_bufs.c: In function 'drm_addmap_core': drivers/gpu/drm/drm_bufs.c:213:5: error: implicit declaration of function 'ioremap_wc' seen when building nios2:allmodconfig. Signed-off-by: Guenter Roeck <linux@roeck-us.net> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-11Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-nextLinus Torvalds
Pull networking updates from David Miller: 1) New offloading infrastructure and example 'rocker' driver for offloading of switching and routing to hardware. This work was done by a large group of dedicated individuals, not limited to: Scott Feldman, Jiri Pirko, Thomas Graf, John Fastabend, Jamal Hadi Salim, Andy Gospodarek, Florian Fainelli, Roopa Prabhu 2) Start making the networking operate on IOV iterators instead of modifying iov objects in-situ during transfers. Thanks to Al Viro and Herbert Xu. 3) A set of new netlink interfaces for the TIPC stack, from Richard Alpe. 4) Remove unnecessary looping during ipv6 routing lookups, from Martin KaFai Lau. 5) Add PAUSE frame generation support to gianfar driver, from Matei Pavaluca. 6) Allow for larger reordering levels in TCP, which are easily achievable in the real world right now, from Eric Dumazet. 7) Add a variable of napi_schedule that doesn't need to disable cpu interrupts, from Eric Dumazet. 8) Use a doubly linked list to optimize neigh_parms_release(), from Nicolas Dichtel. 9) Various enhancements to the kernel BPF verifier, and allow eBPF programs to actually be attached to sockets. From Alexei Starovoitov. 10) Support TSO/LSO in sunvnet driver, from David L Stevens. 11) Allow controlling ECN usage via routing metrics, from Florian Westphal. 12) Remote checksum offload, from Tom Herbert. 13) Add split-header receive, BQL, and xmit_more support to amd-xgbe driver, from Thomas Lendacky. 14) Add MPLS support to openvswitch, from Simon Horman. 15) Support wildcard tunnel endpoints in ipv6 tunnels, from Steffen Klassert. 16) Do gro flushes on a per-device basis using a timer, from Eric Dumazet. This tries to resolve the conflicting goals between the desired handling of bulk vs. RPC-like traffic. 17) Allow userspace to ask for the CPU upon what a packet was received/steered, via SO_INCOMING_CPU. From Eric Dumazet. 18) Limit GSO packets to half the current congestion window, from Eric Dumazet. 19) Add a generic helper so that all drivers set their RSS keys in a consistent way, from Eric Dumazet. 20) Add xmit_more support to enic driver, from Govindarajulu Varadarajan. 21) Add VLAN packet scheduler action, from Jiri Pirko. 22) Support configurable RSS hash functions via ethtool, from Eyal Perry. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1820 commits) Fix race condition between vxlan_sock_add and vxlan_sock_release net/macb: fix compilation warning for print_hex_dump() called with skb->mac_header net/mlx4: Add support for A0 steering net/mlx4: Refactor QUERY_PORT net/mlx4_core: Add explicit error message when rule doesn't meet configuration net/mlx4: Add A0 hybrid steering net/mlx4: Add mlx4_bitmap zone allocator net/mlx4: Add a check if there are too many reserved QPs net/mlx4: Change QP allocation scheme net/mlx4_core: Use tasklet for user-space CQ completion events net/mlx4_core: Mask out host side virtualization features for guests net/mlx4_en: Set csum level for encapsulated packets be2net: Export tunnel offloads only when a VxLAN tunnel is created gianfar: Fix dma check map error when DMA_API_DEBUG is enabled cxgb4/csiostor: Don't use MASTER_MUST for fw_hello call net: fec: only enable mdio interrupt before phy device link up net: fec: clear all interrupt events to support i.MX6SX net: fec: reset fep link status in suspend function net: sock: fix access via invalid file descriptor net: introduce helper macro for_each_cmsghdr ...
2014-12-08nios2: Make NIOS2_CMDLINE_IGNORE_DTB depend on CMDLINE_BOOLTobias Klauser
If NIOS2_CMDLINE_IGNORE_DTB is selected but CMDLINE_BOOL isn't and thus CONFIG_CMDLINE is not defined, the build fails with the following error: arch/nios2/kernel/setup.c: In function 'nios2_boot_init': arch/nios2/kernel/setup.c:131:30: error: 'CONFIG_CMDLINE' undeclared (first use in this function) strncpy(boot_command_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE); This can be reproduced using randconfig with KCONFIG_SEED=0xE5B8749E, i.e. 'make KCONFIG_SEED=0xE5B8749E ARCH=nios2 randconfig'. Fix this by letting NIOS2_CMDLINE_IGNORE_DTB depend on CMDLINE_BOOL, so we actually have a default kernel command string to fall back to. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Add missing NR_CPUS to KconfigTobias Klauser
kernel/time/Kconfig expects that NR_CPUS is defined. This fixes the following config warning: "kernel/time/Kconfig:163:warning: range is invalid" Follow 4cbbbb43d666 ("microblaze: Fix missing NR_CPUS in menuconfig") Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: asm-offsets: Remove unused definition TI_TASKTobias Klauser
TI_TASK is not used in nios2 assembly code, so remove it. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Remove write-only struct member from nios2_timerTobias Klauser
The irq member of struct nios2_timer is only written to but never read, thus it can be removed. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Remove unused extern declaration of shm_align_maskTobias Klauser
shm_align_mask is not defined/used on nios2, thus there is no need to declare it. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: include linux/type.h in io.hLey Foon Tan
This is require for __iomem definition. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: move include asm-generic/io.h to end of fileLey Foon Tan
Move asm-generic/io.h to end of file to override functions like phys_to_virt, virt_to_phys in asm-generic/io.h. This is due to recent commit 9216efaf introduced new way to override functions by checking for the existence of a macro with the same of the function. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: remove include asm-generic/iomap.h from io.hLey Foon Tan
Don't need asm-generic/iomap.h and asm-generic/io.h added default ioread8/16/32 iowrite8/16/32 implementation. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: remove unnecessary space before defineLey Foon Tan
Remove extra space between # and define. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: fix error handling of irq_of_parse_and_mapDmitry Torokhov
Return value of irq_of_parse_and_map() is unsigned int, with 0 indicating failure, so testing for negative result never works. Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Use IS_ENABLED instead of #ifdefs to check config symbolsTobias Klauser
Make the checking for div/mul/mulx instruction config symbols easier to read by using IS_ENABLED instead of #ifdefs. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Build infrastructureLey Foon Tan
This patch adds Makefile and Kconfig files required for building a nios2 kernel. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: ptrace supportLey Foon Tan
Add ptrace support for nios2. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Module supportLey Foon Tan
This patch adds support for loadable modules. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Nios2 registersLey Foon Tan
This file contains constants for the instruction macros, cpu registers, fields and bits. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Miscellaneous header filesLey Foon Tan
This patch introduces a few nios2-specific header files. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Cpuinfo handlingLey Foon Tan
Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Time keepingLey Foon Tan
Add time keeping code for nios2. Signed-off-by: Ley Foon Tan <lftan@altera.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
2014-12-08nios2: Device tree supportLey Foon Tan
Add device tree support to arch/nios2. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Library functionsLey Foon Tan
Add optimised library functions for nios2. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Signal handling supportLey Foon Tan
This patch adds support for signal handling. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: System calls handlingLey Foon Tan
This patch adds support for system calls from userspaces. It uses the asm-generic/unistd.h definitions with architecture spcific syscall. The sys_call_table is just an array defined in a C file and it contains pointers to the syscall functions. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: ELF definitionsLey Foon Tan
This patch adds definitions for the ELF format Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: DMA mapping APILey Foon Tan
This patch adds support for the DMA mapping API. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Interrupt handlingLey Foon Tan
This patch adds the support for IRQ handling. Signed-off-by: Ley Foon Tan <lftan@altera.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
2014-12-08nios2: TLB handlingLey Foon Tan
This patch adds the TLB maintenance functions. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Cache handlingLey Foon Tan
This patch adds functionality required for cache maintenance. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Process managementLey Foon Tan
This patch adds support for thread creation and context switching. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Page table managementLey Foon Tan
This patch adds support for page table management. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: MMU Fault handlingLey Foon Tan
This patch adds support for the handling of the MMU faults (exception entry code introduced by a previous patch, kernel/entry.S). Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: I/O MappingLey Foon Tan
This patch adds several definitions for I/O accessors and ioremap(). Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Memory managementLey Foon Tan
This patch contains the initialisation of the memory blocks, MMU attributes and the memory map. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Traps exception handlingLey Foon Tan
This patch contains traps exception handling. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Exception handlingLey Foon Tan
This patch contains the exception entry code (kernel/entry.S) and misaligned exception. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Kernel booting and initializationLey Foon Tan
This patch adds the kernel booting and the initial setup code. Signed-off-by: Ley Foon Tan <lftan@altera.com>
2014-12-08nios2: Assembly macros and definitionsLey Foon Tan
This patch add assembly macros and definitions used in the .S files across arch/nios2/ and together with asm-offsets.c. Signed-off-by: Ley Foon Tan <lftan@altera.com>