- 27 11月, 2011 37 次提交
-
-
由 Jonathan Cameron 提交于
Internally the fact that say scale is shared across channels is actually of remarkably little interest. Hence lets not store it. Numerous devices have weird combinations of channels sharing scale anyway so it is not as though this was really telling us much. Note however that we do still use the shared sysfs attrs thus massively reducing the number of attrs in complex drivers. Side effect is that certain drivers that were abusing this (mostly my work) needed to do a few more checks on what the channel they are being queried on actually is. This is also helpful for in kernel interfaces where we just want to query the scale and don't care whether it is shared with other channels or not. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Acked-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Lars-Peter Clausen 提交于
Currently the iio framework uses bitmasks for the address field of channel info attributes. This is for historical reasons and no longer required since it will only ever query a single info attribute at once. This patch changes the code to use the non-shifted iio_chan_info_enum values for the info attribute address. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Lars-Peter Clausen 提交于
Document the different parameters of the IIO_EVENT_CODE macro and friends. While we are at it standardise the name of channel type parameter. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Lars-Peter Clausen 提交于
Since we want to export struct iio_event_data to userspace use the userspace integer types. Also add a include to linux/types.h. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Issue brought up by Lars-Peter Clausen. This is a varient of what he suggested. io/iio.h for driver stuff (has to include types.h) Sub files for the bits drivers may or may not use iio/sysfs.h iio/buffer.h (contents of current buffer_generic.h) (obviously anything offering events will need events.h as well) iio/types.h for the enums that matter to both iio_chan_type, iio_modifier iio/events.h for the event code stuff IIO_EVENT_CODE and friends. + everything in chrdev.h So this is the stuff that userspace cares about. Also include iio_event_type, iio_event_direction Thus iio drivers include iio.h + as required events.h sysfs.h buffer.h in kernel users (once that interface is merged) will need inkern.h which will pull in types.h Userspace will need just events.h (which pulls in types.h) to get everything they need to know about. Buffer userspace access doesn't currently need any core defines. All information about the data format is passed through sysfs. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Greg Kroah-Hartman 提交于
This was introduced in commit b4641336 (iio: fix a leak due to improper use of anon_inode_getfd()) Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Logic bug meant the chrdev would fail to open if there was no buffer support in a driver or in the core. This meant the ioctl to get the event chrdev would fail and hence events were not available. V2: change error to -EINVAL to mark as unsuitable for reading rather than not there. Both are true depending on how you look at it. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Lars-Peter Clausen 提交于
iio_utils.h uses opendir and friends which need dirent.h Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Lars-Peter Clausen 提交于
Make sure that the userspace buffer is large enough to hold a iio_event_data struct before writing to it. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
The logic building the name had a small bug where it did not verify if it was generic before applying the modifier. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Both of these are decidedly silly bugs show up whilst testing completely different code paths. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
I really don't want to think about how this bit got in there. It allocates some storage - copies something into it then frees it without making use of it. Oops. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Postenable and predisable are called via buffer->ops so don't need to check if buffer exists. The return value of iio_device_register_trigger_consumer is always zero and it isn't checked anyway so get rid of it. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Maxin B. John 提交于
Signed-off-by: NMaxin B. John <maxin.john@gmail.com> Reviewed-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jonathan Cameron 提交于
Bug has been fixed for some time in the outofstaging tree, but didn't propogate back to here. Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Michael Hennerich 提交于
Free channels in case read fails with error. Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com> Acked-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Michael Hennerich 提交于
This patch type casts the switch control variable to 32 bits in order to prevent a call __ucmpdi2 generated by some versions of gcc. This fixes an undefined reference to `__ucmpdi2' when compiled for arch/blackfin Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com> Acked-by: NJonathan Cameron <jic23@cam.ac.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Greg Kroah-Hartman 提交于
It wasn't being used, and had a hacked-up export symbol table which wasn't very nice either. Reported-by: NJames Morris <jmorris@namei.org> Cc: Herbert Xu <herbert@gondor.hengli.com.au> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Geert Uytterhoeven 提交于
The m68k core irq code stopped honoring these flags during the irq restructuring in 2006. Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Mark Einon 提交于
Following the move to put the driver into one file, comments were added to identify which source file each set of functions originated from. These no longer made sense after functions were moved around to remove some forward declarations, so remove them. A function comment was previously not moved along with its function, now they are reunited. Signed-off-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
FIXME: it should be possible to get rid of ET1310_PCI_L0L1LATENCY as well. Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
pci_{save, restore}_state are balanced in .suspend and .resume. They are not used anywhere else in the driver. Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
Wrong status code and unbalanced phy_connect. Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Francois Romieu 提交于
Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com> Acked-by: NMark Einon <mark.einon@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Thomas Meyer 提交于
Use kmemdup rather than duplicating its implementation The semantic patch that makes this change is available in scripts/coccinelle/api/memdup.cocci. More information about semantic patching is available at http://coccinelle.lip6.fr/Signed-off-by: NThomas Meyer <thomas@m3y3r.de> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Stefan Hajnoczi 提交于
It is unsafe to free buffers in line6_pcm_stop(), which is not allowed to sleep, since urbs cannot be killed completely there and only unlinked. This means I/O may still be in progress and the URB completion function still gets invoked. This may result in memory corruption when buffer_in is freed but I/O is still pending. Additionally, line6_pcm_start() is not supposed to sleep so it should not use kmalloc(GFP_KERNEL). These issues can be resolved by performing buffer allocation/freeing in the .hw_params/.hw_free callbacks instead. The ALSA documentation also recommends doing buffer allocation/freeing in these callbacks. Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Stefan Hajnoczi 提交于
The POD HD300 isochronous endpoints have different max packet sizes for read and write. Using the read endpoint max packet size may be too large for the write endpoint. Instead we should use the minimum of both endpoints to be sure the size is acceptable. In theory we could decouple read and write packet sizes but the driver currently uses a single size which I chose not to mess with since other features like software monitoring may depend on a single packet size for both endpoints. Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Stefan Hajnoczi 提交于
The driver leaves MIDI processing up to userspace for the POD HD300 device. Add a missing case statement to skip MIDI postprocessing in the driver. This change has no effect other than silencing a printk: line6usb driver bug: missing case in linux/drivers/staging/line6/midi.c:179 Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Stefan Hajnoczi 提交于
The Pod HD device family uses new MIDI SysEx messages and therefore cannot reuse the existing Pod code. Instead of hardcoding Pod HD MIDI messages into the driver, leave MIDI up to userspace. This driver simply presents MIDI and pcm ALSA devices. This device is similar to the Pod except that it has 48 kHz audio and does not respond to Pod SysEx messages. Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jesper Juhl 提交于
If the first call to line6_midibuf_init() fails we'll leak a little bit of memory. If the second call fails we'll leak a bit more. This happens when we return from the function and the local variable 'line6midi' goes out of scope. Signed-off-by: NJesper Juhl <jj@chaosbits.net> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Tomas Winkler 提交于
MEI_CLIENTS_MAX is 255 and host_client_id is u8 therefore for check to work we need to first assign the return value of find_first_zero_bit to unsigned long variable Fix warning drivers/staging/mei/main.c: In function mei_open drivers/staging/mei/main.c:260:2: warning: comparison is always false due to limited range of data type Signed-off-by: NTomas Winkler <tomas.winkler@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Oren Weil 提交于
Misc device provides everything MEI needs for registration, it doesn't required separate driver class. Signed-off-by: NOren Weil <oren.jer.weil@intel.com> Signed-off-by: NTomas Winkler <tomas.winkler@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Tomas Winkler 提交于
wd_ops and wd_info structures are local to wd.c so mark them static Cc: Oren Weil <oren.jer.weil@intel.com> Signed-off-by: NTomas Winkler <tomas.winkler@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Alan Cox 提交于
It now clashes with upstream DRM which we don't want to block. We don't want to delete this code just yet as we want to keep it for comparison and reference when debugging, but soon it will be a removal candidate as well Signed-off-by: NAlan Cox <alan@linux.intel.com> Cc: linux-next@vger.kernel.org Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 24 11月, 2011 3 次提交
-
-
由 Linus Torvalds 提交于
-
git://github.com/rustyrussell/linux由 Linus Torvalds 提交于
* git://github.com/rustyrussell/linux: virtio-pci: make reset operation safer virtio-mmio: Correct the name of the guest features selector virtio: add HAS_IOMEM dependency to MMIO platform bus driver
-
由 Michael S. Tsirkin 提交于
virtio pci device reset actually just does an I/O write, which in PCI is really posted, that is it can complete on CPU before the device has received it. Further, interrupts might have been pending on another CPU, so device callback might get invoked after reset. This conflicts with how drivers use reset, which is typically: reset unregister a callback running after reset completed can race with unregister, potentially leading to use after free bugs. Fix by flushing out the write, and flushing pending interrupts. This assumes that device is never reset from its vq/config callbacks, or in parallel with being added/removed, document this assumption. Signed-off-by: NMichael S. Tsirkin <mst@redhat.com> Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
-