aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/vme (follow)
AgeCommit message (Collapse)AuthorFilesLines
2010-05-21Merge staging-next tree into Linus's latest versionGreg Kroah-Hartman6-265/+295
Conflicts: drivers/staging/arlan/arlan-main.c drivers/staging/comedi/drivers/cb_das16_cs.c drivers/staging/cx25821/cx25821-alsa.c drivers/staging/dt3155/dt3155_drv.c drivers/staging/hv/hv.c drivers/staging/netwave/netwave_cs.c drivers/staging/wavelan/wavelan.c drivers/staging/wavelan/wavelan_cs.c drivers/staging/wlags49_h2/wl_cs.c This required a bit of hand merging due to the conflicts that happened in the later .34-rc releases, as well as some staging driver changing coming in through other trees (v4l and pcmcia). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-14Staging: Use kcalloc or kzallocJulia Lawall2-12/+4
Use kcalloc or kzalloc rather than the combination of kmalloc and memset. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression x,y,flags; statement S; type T; @@ x = - kmalloc + kcalloc ( - y * sizeof(T), + y, sizeof(T), flags); if (x == NULL) S -memset(x, 0, y * sizeof(T)); @@ expression x,size,flags; statement S; @@ -x = kmalloc(size,flags); +x = kzalloc(size,flags); if (x == NULL) S -memset(x, 0, size); // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk>
2010-05-11Staging: Drop memory allocation castJulia Lawall2-3/+2
Drop cast on the result of kmalloc and similar functions. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ type T; @@ - (T *) (\(kmalloc\|kzalloc\|kcalloc\|kmem_cache_alloc\|kmem_cache_zalloc\| kmem_cache_alloc_node\|kmalloc_node\|kzalloc_node\)(...)) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: vme: declare vme_calc_slot() as staticBill Pemberton1-1/+1
vme_calc_slot() is not used anywhere other than vme.c so it should be declared as static. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: vme: declare vme_bus_num_mtx staticBill Pemberton1-1/+1
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: vme: Correct checkpatch errorsMartyn Welch3-119/+102
Correct numerous checkpatch errors in the vme driver. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: vme: Use dev_err rather than printkMartyn Welch2-126/+171
Replace instances of printk with dev_err where possible. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: push down BKL into ioctl functionsArnd Bergmann1-3/+15
Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Frederic Weisbecker <fweisbec@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-05-11Staging: remove unused #include <linux/version.h>Huang Weiyi1-1/+0
Remove unused #include <linux/version.h>('s) in drivers/staging/dt3155/allocator.c drivers/staging/rtl8192u/ieee80211/ieee80211_tx.c drivers/staging/vme/boards/vme_vmivme7805.c Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-30Staging: vme: Re-introduce necessary bracketsMartyn Welch1-1/+2
Somehow I managed to remove a set of rather necessary brackets in commit 29848ac9f3b33bf171439ae2d66d40e6a71446c4. Put them back. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-30include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.hTejun Heo4-0/+4
percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: Tejun Heo <tj@kernel.org> Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
2010-03-03Staging: vme: VMIVME-7805 board supportArthur Benilov6-0/+178
VMIVME-7805 board has a special control register that has to be used in order to activate the VME bus access via the Universe II bridge. This control register also handles endianess convertion. Signed-off-by: Arthur Benilov <arthur.benilov@iba-group.com> Signed-off-by: Vincent Bossier <vincent.bossier@iba-group.com> Acked-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Allocate memory buffers for master windowsArthur Benilov1-0/+14
For VME device I/O operations on master windows the user driver tends to use kern_buf buffer array which is not allocated. This causes an error when reading from master window device files. Signed-off-by: Arthur Benilov <arthur.benilov@iba-group.com> Signed-off-by: Vincent Bossier <vincent.bossier@iba-group.com> Acked-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Use A24 when requesting slave resourceArthur Benilov1-1/+5
When requesting slave resources A16 addressing mode flag is used to find available windows. Since the ca91cx42 bridge only supports two A16 slave windows but four are requested, the driver fails to initialize. The flag has been changed to A24, which is supported by all slave windows. Signed-off-by: Arthur Benilov <arthur.benilov@iba-group.com> Signed-off-by: Vincent Bossier <vincent.bossier@iba-group.com> Acked-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: llseek support in user driverArthur Benilov1-2/+33
Provide vme_user_llseek() implementation. Signed-off-by: Arthur Benilov <arthur.benilov@iba-group.com> Signed-off-by: Vincent Bossier <vincent.bossier@iba-group.com> Acked-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Remove legacy unsupported codeMartyn Welch4-559/+4
Remove the code from the drivers that we are not going to implement before submitting for review. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: ca91cx42 slot detectionMartyn Welch1-14/+5
Sort out slot detection on the ca91cx42. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Add ca91cx42 rmw supportMartyn Welch3-85/+64
Add support for Master Read-Modify-Write cycles on the ca91cx42. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Correct ca91cx42 resource handlingMartyn Welch1-10/+15
The ca91cx42 driver currently incorrectly handles master windows, setting and retrieving the sizing parameters incorrectly. Also, in the slave window handling, it uses an incorrectly set variable. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: add ca91cx42 dma supportMartyn Welch4-367/+327
Add support for the DMA controller in the ca91cx42 bridge. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Add location monitor support for ca91cx42Martyn Welch3-73/+213
Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Make vme_master_resource naming bus neutralMartyn Welch4-51/+50
The vme_master_resource structure contains an item called "pci_resource". Rename to make bus agnostic. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Enable drivers to handle more than one bridgeMartyn Welch7-464/+633
At the moment the vme bridge drivers are written in a way that only allows them to support one bridge at a time. Modify the drivers to enable more than one bridge to be present per board. Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Attribute Testing For Dma RequestMartyn Welch7-34/+40
Check the directions in which the DMA controller is expected to operate before giving control of a resource. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Renaming following split of GE Fanuc joint ventureMartyn Welch5-12/+12
This patch corrects author email addresses and Copyright notices as a result of the split up of the GE Fanuc joint venture. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme/tsi148: Depend on VIRT_TO_BUSJeff Mahoney1-0/+1
This driver depends on virt_to_bus working correctly, but it doesn't exist on ppc64 (and probably other arches). Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03staging: make PCI device id constantNémeth Márton2-2/+2
The id_table field of the struct pci_driver is constant in <linux/pci.h> so it is worth to make the initialization data also constant. The semantic match that finds this kind of pattern is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ disable decl_init,const_decl_init; identifier I1, I2, x; @@ struct I1 { ... const struct I2 *x; ... }; @s@ identifier r.I1, y; identifier r.x, E; @@ struct I1 y = { .x = E, }; @c@ identifier r.I2; identifier s.E; @@ const struct I2 E[] = ... ; @depends on !c@ identifier r.I2; identifier s.E; @@ + const struct I2 E[] = ...; // </smpl> Signed-off-by: Németh Márton <nm127@freemail.hu> Cc: Julia Lawall <julia@diku.dk> Cc: cocci@diku.dk Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Allow drivers to co-existMartyn Welch2-25/+27
Unable to build both drivers at the same time due to classing variables that should be declared static but aren't. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Remove old structures for implemented featuresMartyn Welch1-32/+0
Functionality for master RMW and location monitors has been implemented. Remove the commented out structures from the original codebase. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Fix checkpatch errors on VME core.Martyn Welch3-127/+126
Running checkpatch on the core VME code highlights many errors. Fix them. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Allow override of geographical address on ca91c142Martyn Welch1-2/+12
Geographical addressing only works if the VME backplane supports it. There are a large number of old backplanes which do not support geographical addressing. These boards will generally report a slot ID of zero - which is an invalid ID in the slot numbering scheme. Allow the geographical address to be over-ridden on the ca91c142 so that a slot ID can be provided manually in these circumstances. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Allow override of geographical address on tsi148Martyn Welch1-5/+20
Geographical addressing only works if the VME backplane supports it. There are a large number of old backplanes which do not support geographical addressing. These boards will generally report a slot ID of zero - which is an invalid ID in the slot numbering scheme. Allow the geographical address to be over-ridden on the tsi148 so that a slot ID can be provided manually in these circumstances. Signed-off-by: Markus Kraemer <mkraemer@e18.physik.tu-muenchen.de> Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03Staging: vme: Correct vme_user error message typoMartyn Welch1-2/+2
Correction of erroneous error message in vme_user.c. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11staging: vme: Fix mutex lockingMartyn Welch1-3/+3
Fix incorrect use of mutex_trylock(). Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: Rename VME DMA functionsMartyn Welch4-5/+5
The DMA resource allocation function is called "vme_request_dma" while master and slave window allocation functions are called "vme_master_request" and "vme_slave_request" respectively. Rename "vme_request_dma" to "vme_dma_request" to fit the pattern. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: Clean up tsi148 driverMartyn Welch1-9/+1
* Remove message from IACK interrupt handler * Correct clearing of location monitor interrupts * Remove interrupt cleanup code that's duplcated in sub function Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: Correct operation of vme_lm_freeMartyn Welch1-6/+8
The vme_lm_free() function is not clearing up the resource created in vme_lm_request(). In addition vme_lm_free() is void function and is used in exit/error paths, we should wait for mutex to become free rather than exiting and not freeing the resource. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: Allow size of 0 when disabling a windowMartyn Welch1-22/+34
The TSI148 driver currently does not allow a size of zero to be passed to a window. Zero is a valid value if the window is being disabled. Allow windows to be disabled and their registers cleared. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: fix compiler warnings in vme_ca91cx42.cGreg Kroah-Hartman1-1/+2
It's causing people to ignore problems in the file, so get rid of them so it's obvious something is wrong in the future. Cc: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: Pull common VME interrupt handling into core codeMartyn Welch6-158/+111
Currently the VME callback infrastructure is replicated in each VME driver. Move this common code into the VME core. Rename functions to fit in better with naming of other VME functions. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11staging: vme: correct array overflowMartyn Welch1-1/+1
Eric Sesterhenn noticed that vme_user is overflowing an array used by sprintf. Use a bigger array. CC: Eric Sesterhenn <eric.sesterhenn@lsexperts.de> Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-12-11Staging: vme: remove unused #include <linux/version.h>Huang Weiyi4-4/+0
Remove unused #include <linux/version.h>('s) in drivers/staging/vme/bridges/vme_ca91cx42.c drivers/staging/vme/bridges/vme_tsi148.c drivers/staging/vme/devices/vme_user.c drivers/staging/vme/vme.c Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Acked-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-10-14Staging: vme: fix sched.h build breakageGreg Kroah-Hartman2-0/+2
commit d43c36dc removed sched.h from interrupt.h. This broke the vme drivers. This patch fixes them. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: vme: change to VME_BUSGreg Kroah-Hartman2-3/+3
Turns out the m68k arch already has a CONFIG_VME, so use CONFIG_VME_BUS instead. Thanks to Geet Uytterhoeven for pointing this out. Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: vme: Separate the list of TODOs from the API documentationMartyn Welch2-352/+434
This patch moves the API documentation to it's own file and provides a proper list of TODOs. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: vme: Update support for the Universe II VME driverMartyn Welch3-1589/+1812
This patch starts the reworking of the vme_ca91cx42.c for the VME core. The driver seems to have only supported the Universe II for a long time, I have no hardware to check to see if it would work on the Universe I. This patch is compile tested with minimal run-time testing. It enables basic support for slave and master windows and interrupts. The master windows have undergone basic run testing. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: vme: add VME Location Monitor management mechanismMartyn Welch5-78/+232
Extend the image and DMA channel resource management methods to control the location monitor resource. The location monitor should be controlled as it can only be used at a single location at a time. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: Use proper mutexes in the tsi-148 VME driverMartyn Welch3-83/+71
The VME core and tsi-148 driver currently use semaphores as mutexes. Switch to proper mutex implementation. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Reviewed-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: Update VME vme_user moduleMartyn Welch2-148/+212
* Add ifdef wrapper to vme_user.h * Correct Initialisation routine * Add remove routine to correct probe routine * Remove old test routines Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-15Staging: vme: Add syncronize interrupts before removing callbackMartyn Welch1-0/+5
As identified by Jiri, there is no syncronisation before callback is removed. Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com> Cc: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>