summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* staging:iio: remove legacy event chrdev for the buffersJonathan Cameron2011-05-196-103/+5
| | | | | | | | part of sca3000 driver temporarily disabled (buffer won't run anyway). This section is replaced later in this patch set. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging:iio: Add polling of events on the ring access chrdev.Jonathan Cameron2011-05-193-5/+35
| | | | | | | Staging one of combining the ring chrdevs. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging:iio: remove ability to escalate events.Jonathan Cameron2011-05-197-96/+16
| | | | | | | | | | | | | | Whilst it is possible to output events to say buffers have passed a particular level there are no obvious reasons to actually do so. The upshot of this patch is that buffers will only ever have one threshold turned on at a time. For now sca3000 has it's ring buffer effectively disabled. Fixed later in series. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging:iio:max1363 - move to channel_spec registration.Jonathan Cameron2011-05-193-819/+333
| | | | | | | | | | | V3: move to single chan registration macro. Also introduce some local macros to greatly reduce code length when setting up the chan_spec arrays for all the different devices. V2: update read_raw for two value approach. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging:iio:lis3l02dq - move to new channel_spec approach.Jonathan Cameron2011-05-193-481/+313
| | | | | | | | V3: Move to single IIO_CHAN macro. V2: Update to two part read_raw value. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging:iio: allow channels to be set up using a table of iio_channel_spec ↵Jonathan Cameron2011-05-196-54/+1161
| | | | | | | | | | | | | | | | | | | | | | | | structures. V8: Add missing address in IIO_CHAN macro. Spotted by Michael Hennerich. V7: Document additions to iio_dev structure. V6: Fixup the docs for iio_chan_spec structure. V5: Actually have the macro handle the _input type channels (oops) V4: Add ability to do, _input and modified channel naming in a coherent fashion. Scrap all the messy IIO_CHAN_* macros and move to only one. V3: Added more types - intensity and light. V2: Various fixes - some thanks to Arnd. Bug fix for unregistering of event attr group Changed iio_read_channel_info to have two part value - use for raw value read as well. constify the channelspec structures raw write support for calibbias and similar Additional strings for buidling attribute names. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: initial version of the nvec driverMarc Dietrich2011-05-1912-0/+1543
| | | | | | | | | This is an implementation of a NVidia compliant embedded controller protocol driver. It is used on some ARM-Tegra boards for device communication. Signed-off-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: sm7xx: printk loglevels modified to match the scenarioanish kumar2011-05-191-4/+4
| | | | | | | | KERN_ERR should be used in place of KERN_INFO in the case of error scenarios. Signed-off-by: anish kumar <anish198519851985@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: sm7xx: preferred form for passing a size to memory allocation routinesanish kumar2011-05-191-1/+1
| | | | | | | | | | The preferred form for passing a size of a struct is the following: p = kmalloc(sizeof(*p), ...); Please refer Documentation/Codingstyle chapter 14 Signed-off-by: anish kumar <anish198519851985@gmail.com> Acked-by: Harry Wei <harryxiyou@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: sm7xx: removing extra white spaces,redundant code and using macrosanish kumar2011-05-192-10/+4
| | | | | | | | This patch is to remove extra spaces,redundant code and using ARRAY_SIZE macros. Signed-off-by: anish kumar <anish198519851985@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: fix mei build when PM is not enabledRandy Dunlap2011-05-191-1/+1
| | | | | | | | | Fix mei build when CONFIG_PM is not enabled (i.e., fix typo): drivers/staging/mei/main.c:1159: error: 'MEI_PM_OPS' undeclared here (not in a function) Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: usbip: userspace: bind-driver.c: mark remote_host as unusedmatt mooney2011-05-191-1/+1
| | | | | | | | Use __attribute__((unused)) to suppress error until it can be determined that remote_host is not needed. Signed-off-by: matt mooney <mfm@muteddisk.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: usbip: userspace: stub_driver.c: update kernel module namematt mooney2011-05-191-1/+2
| | | | | | | Change kernel module name to usbip-host. Signed-off-by: matt mooney <mfm@muteddisk.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: support comedi auto-configurationJ. Ali Harlow2011-05-181-2/+14
| | | | | | | | | | | Add support for automatically associating a vmk8055 device with a comedi device (previously the user had to use comedi_num_legacy_minors to reserve device slots and then associate them with vmk8055 devices using comedi_config). Tested on multiple K8055s, but not on K8061s. Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: support bits instructionJ. Ali Harlow2011-05-181-0/+113
| | | | | | | | | | Calling comedi_dio_bifield2() returns EBUSY permanently. Implementing the insn_bits call fixes the problem and is good in its own right since one can then read and write to all the digitial lines at the same time. Tested on a K8055, but not on a K8061. Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: extend rudimentary_check to check both directionsJ. Ali Harlow2011-05-181-1/+2
| | | | | | | | | rudimentary_check() can currently check whether the input or output direction is currently available (no pending transaction), but not both at the same time. We need this facility for do_bits(). Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: simplify rinsn output calculationJ. Ali Harlow2011-05-181-4/+2
| | | | | | | | vmk80xx_di_rinsn() and vmk80xx_do_rinsn() extract the required channel data by inconsistent and overly-complex algorithms. Simplify them both. Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: Digitial I/O should have a maxdata of 1J. Ali Harlow2011-05-181-2/+2
| | | | | | | | Digitial input and output sub-devices were reporting a maxdata of 0x1F and 0xFF respectively. They should both be 1. Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* comedi vmk80xx: make rudimentary_check a static functionJ. Ali Harlow2011-05-181-27/+51
| | | | | | | | | rudimentary_check is a macro with side-effects (it returns on error) which is contary to CodingStyle. Replace it with a static function. Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* drivers/staging/cptm1217/clearpad_tm1217.c: Correct call to input_free_deviceJulia Lawall2011-05-181-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code is in a loop that currently is only executed once. Because of this property, the first block of code is currently actually correct. Nevertheless, the comments associated with the code suggest that the loop is planned to take more than one iteration in the future, and thus this patch is made with that case in mind. In the first block of code, there is currently an immediate abort from the function. It is changed to jump to the error handling code at fail, to be able to unregister and free the resources allocated on previous iterations. In the second block of code, the input_dev for the current iteration has been allocated, but has not been registered. It has also not been stored in ts->cp_input_info[i].input. Thus on jumping to fail, it will not be freed. In this case, we want to free, but not unregister, so the free for this most recently allocated resource is put before the jump. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // <smpl> @r exists@ local idexpression struct input_dev * x; expression ra,rr; position p1,p2; @@ x = input_allocate_device@p1(...) ... when != x = rr when != input_free_device(x,...) when != if (...) { ... input_free_device(x,...) ...} if(...) { ... when != x = ra when forall when != input_free_device(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("input_allocate_device",p1) cocci.print_secs("input_free_device",p2) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/easycap: easycap_probe: drop more unused variablesTomas Winkler2011-05-181-5/+0
| | | | | | | | wMaxPacketSize are bEndpointAddress assigned but not used Cc: Mike Thomas <rmthomas@sciolus.org> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/easycap: probe: simplify the endpoints testsTomas Winkler2011-05-181-144/+119
| | | | | | | | | we are interested only in isochronous in endpoints so we can simplify the flow Cc: Mike Thomas <rmthomas@sciolus.org> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/easycap: easycap_probe: drop verbose printoutsTomas Winkler2011-05-181-30/+0
| | | | | | | | reduce printouts of not necessary information Cc: Mike Thomas <rmthomas@sciolus.org> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: add mei to staging KbuildOren Weil2011-05-184-0/+42
| | | | | | | | | Add mei to Kconfig and Makefile in drivers/staging Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: AMT WatchdogOren Weil2011-05-181-0/+183
| | | | | | | | | | | | | | | | | code that open connection and invoke heartbeats to the AMT Watchdog client/feature, if exists Connect to WD Client, if exists Send Start WD Command. Every 2 secs send heartbeats. On System shutdown/suspends, send Stop WD command. This is intermediate stage before moving this code to standalone watchdog driver. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: mei.h defining user space interfaceOren Weil2011-05-181-0/+105
| | | | | | | | | | | | | | | | | | | | | | | | | define IOCTL_MEI_CONNECT_CLIENT and its associated structure When the user wants to connect to a ME feature/client after it open a file descriptor to the driver, he need to use Connect IOCTL. This IOCTL received a struct that contains a union of 2 other structs. 1st struct - Input Parameters: UUID - a predefine unique that identify the ME feature, this id per feature is constant all over the chipsets and versions. 2nd struct Output Parameters: MaxMessageLen - maximum message length that allowed to be send to the feature ProtocolVersion ME feature current protocol version. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: Hardware and MEI driver internal struct definitionOren Weil2011-05-181-0/+333
| | | | | | | | | | define the MEI protocol msg structs and HW registers, also define the MEI internal status and struct Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: MEI driver init flow.Oren Weil2011-05-181-0/+770
| | | | | | | | | | | | | | | | | | | | | | | | | | | Init driver list and queue, MEI Hardware reset flow, init of driver specific host client. MEI Init/reset flow: - Ack all waiting interrupts - Hardware reset flow (Set Reset Bit, Generate Interrupt, Clear Reset Bit Generate Interrupt) - Wait for ME Ready Bit (done in interrupt thread) - Set ME Ready Bit (done in interrupt thread) - Send Start request (done in interrupt thread) - wait for answer - Send Enumerate Clients request (done in interrupt thread) - wait for answer - Send Get Client property for each client request (done in interrupt thread) - Wait for answers - Init Done. MEI Driver connect internally to 2 ME clients/features: AMTHI and AMT watchdog. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: MEI link layerOren Weil2011-05-182-0/+509
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementation of the communication between host and ME. connect/disconnect to/from a client, send MEI message, read MEI message, flow control handling. Each MEI message has mei_msg_hdr followed by a payload. Driver is oblivious the payload. ME Address/ID - This is the logical address of the ME feature/client of that message. Host Address/ID - This is the logical address of the Host client of that message Length - This is the Length of message payload in bytes Reserved - reserved for future use. Message Complete - This bit is used to indicative that this is the last message of multi message MEI transfer of a client message that is larger then the MEI circular buffer. Payload - Message payload (data) up to 512bytes The HW data registers are consist two circular buffers, one for data from ME and other data from Host application. Each buffer has two pointers, read_ptr (H_CBRP) and write_ptr (H_CBWP). The buffers size is defined by depth value that exists in the status registers (H_CBD and ME_CBD_HRA). Every read from ME circular buffer cause read_ptr++ Every write to the Host circular buffer write_ptr++ Flow control MEI message that ME and MEI Driver use to notify each other that a ME feature/client or Host client buffer is ready to receive data. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: Interrupt handling.Oren Weil2011-05-181-0/+1624
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ISR and interrupt thread for handling incoming data. e.g. read bus message, read client message, handle reset requests. quick handler: As MEI may share interrupt with GFX and/or USB the HW register need to be checked and acknowledged. thread handler: Check if HW has data for read. Write data to HW if possible. May init reset flow on error there can be two types of messages: 1) bus messages: Management messages between MEI Driver and ME e.g. Connect request/response, Disconnect request/response Enum clients request/response Flow control request/response those message are indicated by ME Address/ID == 0 && Host Address/ID == 0 2) feature/client messages: message that are sends between ME Feature/Client and an application, the struct of the message is defined by the ME Feature Protocol (e.g. APF Protocol, AMTHI Protocol) those message are indicated by ME Address/ID != 0 && Host Address/ID != 0 MEI Initialization state machine is also managed by this patch. After MEI Reset is preform: Send Start request wait for answer Send Enumerate Clients request wait for answer Send Get Client property for each client request wait for answers Init Done. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: PCI device and char driver support.Oren Weil2011-05-184-0/+2406
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | contains module entries and PCI driver and char device definitions (using file_operations, pci_driver struts). The HW interface is exposed on PCI interface. PCI: The MEI HW resources are memory map 32 bit registers (Host and ME Status Registers and Data Registers) and interrupt (shared, with Intel GFX on some chipsets and USB2 controller on others). The device is part of the chipsets and cannot be hotplugged. The MEI device present is determined by BIOS configuration. Probe: The driver starts the init MEI flow, that is explained in the patch "MEI driver init flow" [06/10], then schedules a timer that handles timeouts and watchdog heartbeats. Remove: The driver closes all connections and stops the watchdog. The driver expose char device that supports: open, release, write, read, ioctl, poll. Open: Upon open the driver allocates HOST data structure on behalf of application which will resides in the file's private data and assign a host ID number which will identify messages between driver client instance and MEI client. The driver also checks readiness of the device. The number of simultaneously opened instances is limited to 253. (255 - (amthi + watchdog)) Release: In release the driver sends a Disconnect Command to ME feature and clean all the data structs. IOCTL: MEI adds new IOCTL: (IOCTL_MEI_CONNECT_CLIENT) The IOCTL links the current file descriptor to ME feature. This is done by sending MEI Bus command: 'hbm_client_connect_request' to the ME and waiting for an answer :'hbm_client_connect_response'. Upon answer reception the driver updates its and HOST data structures in file structure to indicate that the file descriptor is associated to ME feature. Each ME feature is represented by UUID which is given as an input parameter to the IOCTL, upon success connect command the IOCTL will return the ME feature properties. ME can reject CONNECT commands due to several reasons, most common are: Invalid UUID ME or feature does not exists in ME. No More Connection allowed to this is feature, usually only one connection is allowed. Write: Upon write, the driver splits the user data into several MEI messages up to 512 bytes each and sends it to the HW. If the user wants to write data to AMTHI ME feature then the drivers routes the messages through AMTHI queues. Read: In read the driver checks is a connection exists to current file descriptor and then wait until a data is available. Message might be received (by interrupt from ME) in multiple chunks. Only complete message is released to the application. Poll: Nothing special here. Waiting for see if we have data available for reading. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: MEI Driver TODO listOren Weil2011-05-181-0/+17
| | | | | | Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/mei: MEI Driver documentationsOren Weil2011-05-181-0/+189
| | | | | | Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix transport other code styleCho, Yu-Chen2011-05-181-2/+6
| | | | | | | | fix keucr transport.c other coding style but not from checkpatch.pl. replace ternary conditional "?:" with if/else Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr transport coding styleCho, Yu-Chen2011-05-182-208/+258
| | | | | | | fix keucr transport.c transport.h coding style Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr smil.h coding styleCho, Yu-Chen2011-05-181-141/+150
| | | | | | | fix keucr smil.h coding style Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr smilecc.c coding styleCho, Yu-Chen2011-05-181-144/+149
| | | | | | | fix keucr smilecc.c coding style Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr scsiglue coding styleCho, Yu-Chen2011-05-181-64/+93
| | | | | | | fix keucr scsiglue.c coding style Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr msscsi coding styleCho, Yu-Chen2011-05-181-102/+117
| | | | | | | | | Fix keucr msscsi.c coding style. Remove externs ,and move MS_SCSIIrp to end, because there are not necessary to add extern for MS_SCSIIrp function. Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging/keucr: fix keucr ms coding styleCho, Yu-Chen2011-05-182-465/+566
| | | | | | | fix keucr ms.c and ms.h coding style Signed-off-by: Cho, Yu-Chen <acho@novell.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: vmbus_drv: Get rid of util synchronixation based on channel ↵K. Y. Srinivasan2011-05-173-20/+0
| | | | | | | | | | | | | counting Now that we have dealt with this issue differently, get rid of the old mechanism. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Abhishek Kane <v-abkane@microsoft.com> Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Re-implement the synchronization for util channelsK. Y. Srinivasan2011-05-172-26/+37
| | | | | | | | | | | | | | | | | | | | | | | | The util module expects that the util channels are fully initialized when the module loads. To deal with the race condition which can result in a NULL pointer dereferencing if the util module were to load before all the util channels are fully initialized, in commit: commit: 8b5d6d3bd3e34e4cc67d875c8c88007c1c9aa96 Author: Haiyang Zhang <haiyangz@microsoft.com> Date: Fri May 28 23:22:44 2010 +000 code was introduced in the vmbus driver to ensure that all the util channels were fully initialized before returning from the load of the vmbus driver. This solution has several problems: if for whatever reason, any util channel were to fail to initialize, vmbus driver would wait indefinitely. We deal with this synchronization issue very differently in this patch. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Abhishek Kane <v-abkane@microsoft.com> Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: vmbus_drv: Introduce state in struct vmbus_channel to track ↵K. Y. Srinivasan2011-05-172-0/+7
| | | | | | | | | | | | | | util services In preparation for getting rid of util channel synchronization based on counting util channels, introduce state in struct vmbus_channel to track util services. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Abhishek Kane <v-abkane@microsoft.com> Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: comedi: addi-data: Get rid of redundant ps_BoardInfoIan Abbott2011-05-174-15/+10
| | | | | | | | | | The ps_BoardInfo pointer in the device private data is redundant as we can just use the this_board macro to access the same data, as is done elsewhere in the code. Get rid of the pointer and change the code to use the this_board macro instead. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: comedi: addi-data: Don't overwrite read-only dataIan Abbott2011-05-175-52/+102
| | | | | | | | | | | | | | | | | The drivers for ADDI-DATA cards can override some static parameters for the board type using information read from EEPROM. Unfortunately, they currently write the parameters from the EEPROM back to the shared, read-only board data! The problem has been masked during compilation by type-casting away the const-ness of the data. This patch changes the code to use an area in the private data for the board instance to hold the parameters read from EEPROM (after initializing the parameters from the static board data). It also changes the type-casts to the read-only data to preserve the const qualifier. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: comedi: adv_pci_dio: Add a counter subdevice to PCI-1751Ian Abbott2011-05-171-1/+2
| | | | | | | | | | | | The Advantech PCI-1751 has a 8254 counter chip on board. Add it to the device as a counter subdevice. Apparently the counter can generate interrupts although the driver does not currently use this capability. Original patch by Ivan Russkih (Иван Русских) <vanekrus at gmail dot com>. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* drivers/staging/line6/driver.c: Drop unneeded put functions.Julia Lawall2011-05-171-2/+0
| | | | | | | | | | | | | | This seems to be the result of patches ab366c1a and 1027f476 crossing each other. Patch ab366c1a adds calls to usb_put_intf and usb_put_dev at the end of the function line6_probe, in the error handling code, while patch 1027f476 moves the calls to the corresponding get function from the beginning to the end of line6_probe, making the calls to put in the error handling code unnecessary. // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* ath6kl: iw dev wlan0 link implementationNaveen Singh2011-05-171-0/+146
| | | | | | | | | | | | | implementing the cfg ops that gets called when iw dev wlan0 link is issued by user. The ops that needs to be implemented is get_station. kvalo: check the mac address, remove signal_pending(), use ARRAY_SIZE() and fix style issues Signed-off-by: Naveen Singh <nsingh@atheros.com> Signed-off-by: Kalle Valo <kalle.valo@atheros.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* drivers/staging/ath6kl/os/linux/cfg80211.c: Add missing call to cfg80211_put_bssJulia Lawall2011-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A call to cfg80211_get_bss hould be accompanied by a call to cfg80211_put_bss in error-handling code. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // <smpl> @r exists@ local idexpression struct cfg80211_bss * x; expression ra,rr; position p1,p2; @@ x = cfg80211_get_bss@p1(...) ... when != x = rr when != cfg80211_put_bss(x,...) when != if (...) { ... cfg80211_put_bss(x,...) ...} if(...) { ... when != x = ra when forall when != cfg80211_put_bss(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("cfg80211_get_bss",p1) cocci.print_secs("return",p2) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* staging: brcm80211: use correct pointer types in bcm_pktq_flushClemens Noss2011-05-172-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | to clarify the intention: On Sun, May 15, 2011 at 09:54:26PM +0200, Arend van Spriel wrote: > On 05/15/2011 08:10 PM, Hauke Mehrtens wrote: [...] >> Why don't you use the correct pointer type here instead of casting then >> around and the parameter names are meaningless too. >> >> static bool cb_del_ampdu_pkt(struct sk_buff *mpdu, struct >> cb_del_ampdu_pars *ampdu_pars) [...] > Actually this is a generic callback mechanism in which an additional > parameter can be passed, which can be of *any* type hence a void pointer > seems justified here and a meaningless name is used. I do agree that the > txi parameter will always be a struct sk_buff and should be indicated as > such. Reported-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Clemens Noss <cnoss@gmx.de> Acked-by: Roland Vossen <rvossen@broadcom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
OpenPOWER on IntegriCloud