]> git.karo-electronics.de Git - karo-tx-linux.git/commit
arch/tile: fix hardwall for tilegx and generalize for idn and ipi
authorChris Metcalf <cmetcalf@tilera.com>
Fri, 30 Mar 2012 20:01:48 +0000 (16:01 -0400)
committerChris Metcalf <cmetcalf@tilera.com>
Thu, 12 Apr 2012 16:38:28 +0000 (12:38 -0400)
commit35888a7ca47999474ed7bb0272a0bee9da4b7122
treed14e9b6f8412b92706c964519c046346f185abdf
parent8a19a670004f5322fe1c0d63bed85d6d87c19c98
arch/tile: fix hardwall for tilegx and generalize for idn and ipi

The hardwall drain code was not properly implemented for tilegx,
just tilepro, so you couldn't reliably restart an application that
made use of the udn.

In addition, the code was only applicable to the udn (user dynamic
network).  On tilegx there is a second user network that is available
(the "idn"), and there is support for having I/O shims deliver
user-level interrupts to applications ("ipi") which functions in a
very similar way to the inter-core permissions used for udn/idn.
So this change also generalizes the code from supporting just the udn
to supports udn/idn/ipi on tilegx.

By default we now use /dev/hardwall/{udn,idn,ipi} with separate
minor numbers for the three devices.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
arch/tile/include/arch/spr_def_32.h
arch/tile/include/arch/spr_def_64.h
arch/tile/include/asm/hardwall.h
arch/tile/include/asm/processor.h
arch/tile/include/asm/setup.h
arch/tile/kernel/hardwall.c
arch/tile/kernel/intvec_64.S
arch/tile/kernel/process.c