summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tileLinus Torvalds2010-08-08210-21/+39334
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: arch/tile: check kmalloc() result arch/tile: catch up on various minor cleanups. arch/tile: avoid erroneous error return for PTRACE_POKEUSR. tile: set ARCH_KMALLOC_MINALIGN tile: remove homegrown L1_CACHE_ALIGN macro arch/tile: Miscellaneous cleanup changes. arch/tile: Split the icache flush code off to a generic <arch> header. arch/tile: Fix bug in support for atomic64_xx() ops. arch/tile: Shrink the tile-opcode files considerably. arch/tile: Add driver to enable access to the user dynamic network. arch/tile: Enable more sophisticated IRQ model for 32-bit chips. Move list types from <linux/list.h> to <linux/types.h>. Add wait4() back to the set of <asm-generic/unistd.h> syscalls. Revert adding some arch-specific signal syscalls to <linux/syscalls.h>. arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent(). Feedback from fujita.tomonori@lab.ntt.co.jp. arch/tile: core support for Tilera 32-bit chips. Fix up the "generic" unistd.h ABI to be more useful.
| * Merge branch 'master' into for-linusChris Metcalf2010-08-064568-333402/+225114
| |\
| * | arch/tile: check kmalloc() resultKulikov Vasiliy2010-07-161-0/+2
| | | | | | | | | | | | | | | | | | | | | If kmalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Acked-by: Chris Metcalf <cmetcalf@tilera.com>
| * | Merge branch 'master' into for-linusChris Metcalf2010-07-06441-3143/+3920
| |\ \
| * | | arch/tile: catch up on various minor cleanups.Chris Metcalf2010-07-067-41/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | None of these changes fix any actual bugs, but are just various cleanups that fell out along the way. In particular, some unused #defines and includes are removed, PREFETCH_STRIDE is added (the default is right for our shipping chips, but wrong for our next generation), our tile-specific prefetching code is removed so the (identical) generic prefetching code can be used instead, a comment is fixed to be proper GPL and not just a "paste GPL here" token, a "//" comment is converted to "/* */", etc. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: avoid erroneous error return for PTRACE_POKEUSR.Chris Metcalf2010-07-061-0/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | tile: set ARCH_KMALLOC_MINALIGNFUJITA Tomonori2010-07-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Architectures that handle DMA-non-coherent memory need to set ARCH_KMALLOC_MINALIGN to make sure that kmalloc'ed buffer is DMA-safe: the buffer doesn't share a cache with the others. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | tile: remove homegrown L1_CACHE_ALIGN macroFUJITA Tomonori2010-07-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Let's use the standard L1_CACHE_ALIGN macro instead. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | arch/tile: Miscellaneous cleanup changes.Chris Metcalf2010-07-0656-679/+798
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit is primarily changes caused by reviewing "sparse" and "checkpatch" output on our sources, so is somewhat noisy, since things like "printk() -> pr_err()" (or whatever) throughout the codebase tend to get tedious to read. Rather than trying to tease apart precisely which things changed due to which type of code review, this commit includes various cleanups in the code: - sparse: Add declarations in headers for globals. - sparse: Fix __user annotations. - sparse: Using gfp_t consistently instead of int. - sparse: removing functions not actually used. - checkpatch: Clean up printk() warnings by using pr_info(), etc.; also avoid partial-line printks except in bootup code. - checkpatch: Use exposed structs rather than typedefs. - checkpatch: Change some C99 comments to C89 comments. In addition, a couple of minor other changes are rolled in to this commit: - Add support for a "raise" instruction to cause SIGFPE, etc., to be raised. - Remove some compat code that is unnecessary when we fully eliminate some of the deprecated syscalls from the generic syscall ABI. - Update the tile_defconfig to reflect current config contents. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: Split the icache flush code off to a generic <arch> header.Chris Metcalf2010-07-065-114/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code is used in other places in our system than in Linux, so to share it we now implement it as an inline function in our low-level <arch> headers, and instantiate it in one file in Linux's arch/tile/lib. The file is now cacheflush.c and is C code rather than the strangely-named and assembler-implemented __invalidate_icache.S. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: Fix bug in support for atomic64_xx() ops.Chris Metcalf2010-07-061-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This wasn't properly tested until the perf-event subsystem started to get brought up under the tile architecture. The bug caused bogus atomic64_cmpxchg() values to be returned, among other things. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: Shrink the tile-opcode files considerably.Chris Metcalf2010-07-063-12527/+1017
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The C file (tile-desc_{32,64}.c) was about 300KB before this change, and is now shrunk down to 100K. The original file included support for BFD in the binutils toolchain, which is not necessary in the kernel; the kernel version only needs to include enough support to enable the single-stepper and backtracer. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: Add driver to enable access to the user dynamic network.Chris Metcalf2010-07-067-6/+874
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This network (the "UDN") connects all the cpus on the chip in a wormhole-routed dynamic network. Subrectangles of the chip can be allocated by a "create" ioctl on /dev/hardwall, and then to access the UDN in that rectangle, tasks must perform an "activate" ioctl on that same file object after affinitizing themselves to a single cpu in the region. Sending a wormhole-routed message that tries to leave that subrectangle causes all activated tasks to receive a SIGILL (just as they would if they tried to access the UDN without first activating themselves to a hardwall rectangle). The original submission of this code to LKML had the driver instantiated under /proc/tile/hardwall. Now we just use a character device for this, conventionally /dev/hardwall. Some futures planning for the TILE-Gx chip suggests that we may want to have other types of devices that share the general model of "bind a task to a cpu, then 'activate' a file descriptor on a pseudo-device that gives access to some hardware resource". As such, we are using a device rather than, for example, a syscall, to set up and activate this code. As part of this change, the compat_ptr() declaration was fixed and used to pass the compat_ioctl argument to the normal ioctl. So far we limit compat code to 2GB, so the difference between zero-extend and sign-extend (the latter being correct, eventually) had been overlooked. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | arch/tile: Enable more sophisticated IRQ model for 32-bit chips.Chris Metcalf2010-07-069-154/+435
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This model is based on the on-chip interrupt model used by the TILE-Gx next-generation hardware, and interacts much more cleanly with the Linux generic IRQ layer. The change includes modifications to the Tilera hypervisor, which are reflected in the hypervisor headers in arch/tile/include/arch/. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Thomas Gleixner <tglx@linutronix.de>
| * | | Move list types from <linux/list.h> to <linux/types.h>.Chris Metcalf2010-07-062-12/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows a list_head (or hlist_head, etc.) to be used from places that used to be impractical, in particular <asm/processor.h>, which used to cause include file recursion: <linux/list.h> includes <linux/prefetch.h>, which always includes <asm/processor.h> for the prefetch macros, as well as <asm/system.h>, which often includes <asm/processor.h> directly or indirectly. This avoids a lot of painful workaround hackery on the tile architecture, where we use a list_head in the thread_struct to chain together tasks that are activated on a particular hardwall. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
| * | | Add wait4() back to the set of <asm-generic/unistd.h> syscalls.Chris Metcalf2010-06-252-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The initial pass at the generic ABI assumed that wait4() could be easily expressed using waitid(). Although it's true that wait4() can be built on waitid(), it's awkward enough that it makes more sense to continue to include wait4 in the generic syscall ABI. Since there is already a deprecated wait4 in the ABI, this change converts that wait4 into old_wait, and puts wait4 in the next available slot for new supported syscalls, after the platform-specific syscalls at number 260. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * | | Merge branch 'master' into for-linusChris Metcalf2010-06-25216-1890/+2656
| |\ \ \
| * | | | Revert adding some arch-specific signal syscalls to <linux/syscalls.h>.Chris Metcalf2010-06-075-29/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out there is some variance on the calling conventions for these syscalls, and <asm-generic/syscalls.h> is already the mechanism used to handle this. Switch arch/tile over to using that mechanism and tweak the calling conventions for a couple of tile syscalls to match <asm-generic/syscalls.h>. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | Merge branch 'master' into for-linusChris Metcalf2010-06-05411-2599/+66263
| |\ \ \ \
| * | | | | arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent().Chris Metcalf2010-06-051-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Feedback from fujita.tomonori@lab.ntt.co.jp. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
| * | | | | arch/tile: core support for Tilera 32-bit chips.Chris Metcalf2010-06-04202-0/+49569
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change is the core kernel support for TILEPro and TILE64 chips. No driver support (except the console driver) is included yet. This includes the relevant Linux headers in asm/; the low-level low-level "Tile architecture" headers in arch/, which are shared with the hypervisor, etc., and are build-system agnostic; and the relevant hypervisor headers in hv/. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Reviewed-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | Fix up the "generic" unistd.h ABI to be more useful.Chris Metcalf2010-06-042-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reserve 16 "architecture-specific" syscall numbers starting at 244. Allow use of the sys_sync_file_range2() API with the generic unistd.h by specifying __ARCH_WANT_SYNC_FILE_RANGE2 before including it. Allow using the generic unistd.h to create the "compat" syscall table by specifying __SYSCALL_COMPAT before including it. Use sys_fadvise64_64 for __NR3264_fadvise64 in both 32- and 64-bit mode. Request the appropriate __ARCH_WANT_COMPAT_SYS_xxx values when some deprecated syscall modes are selected. As part of this change to fix up the syscalls, also provide a couple of missing signal-related syscall prototypes in <linux/syscalls.h>. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
* | | | | | Merge branch 'for-linus' of git://www.jni.nu/crisLinus Torvalds2010-08-0854-742/+857
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://www.jni.nu/cris: (51 commits) CRIS: Fix alignment problem for older ld CRIS: Always dump registers for segfaulting process. CRIS: Add config for pausing a seg-faulting process CRIS: Don't take faults while in_atomic CRIS: Fixup lookup for delay slot faults CRIS: Discard exit.text and .data at runtime CRIS: Add cache aligned and read mostly data sections CRIS: Return something from profile write CRIS: Add ARTPEC-3 and timestamps for sync-serial CRIS: Better ARTPEC-3 support for gpio CRIS: Add include guard CRIS: Better handling of pinmux settings CRIS: New DMA defines for ARTPEC-3 CRIS: __do_strncpy_from_user: Don't read the byte beyond the nil CRIS: Pagetable for ARTPEC-3 CRIS: Machine dependent memmap.h CRIS: Check if pointer is set before using it CRIS: Machine dependent dma.h CRIS: Define __read_mostly for CRISv32 CRIS: Discard .note.gnu.build-id section ...
| * | | | | | CRIS: Fix alignment problem for older ldJesper Nilsson2010-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CRISv10 uses a pretty old ld, which does not allow ALIGN(0), (It becomes . = 0;) so instead we align to 1 byte. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Always dump registers for segfaulting process.Jesper Nilsson2010-08-041-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add config for pausing a seg-faulting processJesper Nilsson2010-08-042-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Put it on a wait queue, so we can attach gdb to the process to debug it instead of just killing it. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Don't take faults while in_atomicJesper Nilsson2010-08-041-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Fixup lookup for delay slot faultsJesper Nilsson2010-08-041-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Discard exit.text and .data at runtimeJesper Nilsson2010-08-041-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to handle references from __bug_table. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add cache aligned and read mostly data sectionsJesper Nilsson2010-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Return something from profile writeJesper Nilsson2010-08-041-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if it doesn't matter, we should return something. Also, clean up some formatting. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add ARTPEC-3 and timestamps for sync-serialJesper Nilsson2010-08-041-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Better ARTPEC-3 support for gpioJesper Nilsson2010-08-041-18/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add PWM support, correct comment for ARTPEC-3. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add include guardJesper Nilsson2010-08-041-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Better handling of pinmux settingsJesper Nilsson2010-08-041-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depending on eth, eth_mido and geth fields in wr_hwprot, don't set corresponding pins on gpio port b to gpio mode. This avoids re-resetting the ethernet PHY should this already have been done. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: New DMA defines for ARTPEC-3Jesper Nilsson2010-08-041-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: __do_strncpy_from_user: Don't read the byte beyond the nilJesper Nilsson2010-08-041-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Pagetable for ARTPEC-3Jesper Nilsson2010-08-041-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Machine dependent memmap.hJesper Nilsson2010-08-042-24/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the old one to mach-fs and replace with a new one that only include the correct one for the machine architecture. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Check if pointer is set before using itJesper Nilsson2010-08-041-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Machine dependent dma.hJesper Nilsson2010-08-042-79/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the old one to mach-fs and replace with a new one that only include the correct one for the machine architecture. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Define __read_mostly for CRISv32Jesper Nilsson2010-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Discard .note.gnu.build-id sectionJesper Nilsson2010-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Avoid compilation warning for putsJesper Nilsson2010-08-041-40/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename to aputs. Also, simplify code by moving some common code out to macros. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add debug for assembler macrosJesper Nilsson2010-08-041-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Update for ARTPEC-3Jesper Nilsson2010-08-041-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add more delays in DDR setupJesper Nilsson2010-08-043-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, make DDR latency configurable. Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add debug info for assembler codeJesper Nilsson2010-08-041-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add debug info for assembler codeJesper Nilsson2010-08-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
| * | | | | | CRIS: Add debug symbols for assembler codeJesper Nilsson2010-08-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
OpenPOWER on IntegriCloud