summaryrefslogtreecommitdiff
path: root/drivers/char
AgeCommit message (Collapse)AuthorFilesLines
2006-12-07drm: add flag for mapping PCI DMA buffers read-only.George Sapountzis4-5/+27
Add DRM_PCI_BUFFER_RO flag for mapping PCI DMA buffer read-only. An additional flag is needed, since PCI DMA buffers do not have an associated map. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: fix up irqflags in drm_lock.cDave Airlie1-1/+1
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915 updates=?utf-8?q?Michel_D=C3=A4nzer?=2-19/+21
Add support for DRM_VBLANK_NEXTONMISS. Bump minor for swap scheduling ioctl and secondary vblank support. Avoid mis-counting vblank interrupts when they're only enabled for pipe A. Only schedule vblank tasklet if there are scheduled swaps pending. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: fix up irqflags arg=?utf-8?q?Michel_D=C3=A4nzer?=1-2/+3
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: Only return EBUSY after we've established we need to schedule a ↵=?utf-8?q?Michel_D=C3=A4nzer?=1-5/+5
new swap. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: Fix 'sequence has passed' condition in i915_vblank_swap().=?utf-8?q?Michel_D=C3=A4nzer?=1-1/+1
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: Add SAREA fileds for determining which pipe to sync window buffer ↵=?utf-8?q?Michel_D=C3=A4nzer?=1-0/+9
swaps to. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Make handling of dev_priv->vblank_pipe more robust.=?utf-8?q?Michel_D=C3=A4nzer?=1-8/+14
Initialize it to default value if it hasn't been set by the X server yet. In i915_vblank_pipe_set(), only update dev_priv->vblank_pipe and call i915_enable_interrupt() if the argument passed from userspace is valid to avoid corrupting dev_priv->vblank_pipe on invalid arguments. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: DRM_I915_VBLANK_SWAP ioctl: Take drm_vblank_seq_type_t instead=?utf-8?q?Michel_D=C3=A4nzer?=2-6/+40
of pipe number. Handle relative as well as absolute target sequence numbers. Return error if target sequence has already passed, so userspace can deal with this situation as it sees fit. On success, return the sequence number of the vertical blank when the buffer swap is expected to take place. Also add DRM_IOCTL_I915_VBLANK_SWAP definition for userspace code that may want to use ioctl() instead of drmCommandWriteRead(). Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: Add ioctl for scheduling buffer swaps at vertical blanks.=?utf-8?q?Michel_D=C3=A4nzer?=4-0/+211
This uses the core facility to schedule a driver callback that will be called ASAP after the given vertical blank interrupt with the HW lock held. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Core vsync: Don't clobber target sequence number when scheduling signal.=?utf-8?q?Michel_D=C3=A4nzer?=1-2/+3
It looks like this would have caused signals to always get sent on the next vertical blank, regardless of the sequence number. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Core vsync: Add flag DRM_VBLANK_NEXTONMISS.=?utf-8?q?Michel_D=C3=A4nzer?=2-7/+13
When this flag is set and the target sequence is missed, wait for the next vertical blank instead of returning immediately. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Make locked tasklet handling more robust.=?utf-8?q?Michel_D=C3=A4nzer?=2-2/+3
Initialize the spinlock unconditionally when struct drm_device is filled in, and return early in drm_locked_tasklet() if the driver doesn't support IRQs. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: drm_rmdraw: Declare id and idx as signed so testing for < 0 works as ↵=?utf-8?q?Felix_K=C3=BChling?=1-1/+2
intended. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Change first valid DRM drawable ID to be 1 instead of 0.=?utf-8?q?Michel_D=C3=A4nzer?=2-12/+35
This makes it easier for userspace to know when it needs to allocate an ID. Also free drawable information memory when it's no longer needed. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: drawable locking + memory management fixes + copyright=?utf-8?q?Michel_D=C3=A4nzer?=1-107/+155
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Add support for interrupt triggered driver callback with lock held to ↵=?utf-8?q?Michel_D=C3=A4nzer?=3-0/+90
DRM core. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: Add support for tracking drawable information to core=?utf-8?q?Michel_D=C3=A4nzer?=5-8/+262
Actually make the existing ioctls for adding and removing drawables do something useful, and add another ioctl for the X server to update drawable information. The only kind of drawable information tracked so far is cliprects. Only reallocate cliprect memory if the number of cliprects changes. Also improve diagnostic output. hook up drm ioctl update draw export drm_get_drawable_info symbol Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: add support for secondary vertical blank interrupt to i915=?utf-8?q?Michel_D=C3=A4nzer?=3-4/+27
When the vertical blank interrupt is enabled for both pipes, pipe A is considered primary and pipe B secondary. When it's only enabled for one pipe, it's always considered primary for backwards compatibility. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: add support for secondary vertical blank interrupt to DRM core=?utf-8?q?Michel_D=C3=A4nzer?=4-28/+60
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-06[PATCH] drivers/{char|isdn}: work_struct-induced breakageAl Viro4-19/+17
part 1 of fsck-knows-how-many Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-06Merge branch 'master' of ↵David Howells3-53/+6
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: drivers/pcmcia/ds.c Fix up merge failures with Linus's head and fix new compile failures. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-12-05Merge branch 'master' of ↵David Howells3-0/+3
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: drivers/ata/libata-scsi.c include/linux/libata.h Futher merge of Linus's head and compilation fixups. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-12-05Merge branch 'master' of ↵David Howells87-19551/+1576
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: drivers/infiniband/core/iwcm.c drivers/net/chelsio/cxgb2.c drivers/net/wireless/bcm43xx/bcm43xx_main.c drivers/net/wireless/prism54/islpci_eth.c drivers/usb/core/hub.h drivers/usb/input/hid-core.c net/core/netpoll.c Fix up merge failures with Linus's head and fix new compilation failures. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-12-05[PATCH] pcmcia: conf.ConfigBase and conf.Present consolidationDominik Brodowski3-47/+0
struct pcmcia_device *p_dev->conf.ConfigBase and .Present are set in almost all PCMICA driver right at the beginning, using the same calls but slightly different implementations. Unfiy this in the PCMCIA core. Includes a small bugfix ("drivers/net/pcmcia/xirc2ps_cs.c: remove unused label") from and Signed-off-by Adrian Bunk <bunk@stusta.de> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-12-05[PATCH] cm4000_cs: fix return value checkAkinobu Mita2-6/+6
The return value of class_create() need to be checked with IS_ERR(). And register_chrdev() returns errno on failure. This patch includes these fixes for cm4000_cs and cm4040_cs. Signed-off-by: Akinbou Mita <akinobu.mita@gmail.com> Signed-off-by: Harald Welte <laforge@gnumonks.org> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2006-12-04Merge branch 'for-linus4' of ↵Linus Torvalds3-0/+3
master.kernel.org:/pub/scm/linux/kernel/git/viro/bird * 'for-linus4' of master.kernel.org:/pub/scm/linux/kernel/git/viro/bird: [PATCH] severing poll.h -> mm.h [PATCH] severing skbuff.h -> mm.h [PATCH] severing skbuff.h -> poll.h [PATCH] severing skbuff.h -> highmem.h [PATCH] severing uaccess.h -> sched.h [PATCH] severing fs.h, radix-tree.h -> sched.h [PATCH] severing module.h->sched.h
2006-12-04[PATCH] severing poll.h -> mm.hAl Viro1-0/+1
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-12-04[PATCH] severing fs.h, radix-tree.h -> sched.hAl Viro2-0/+2
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-12-04Remove long-unmaintained ftape driver subsystem.Jeff Garzik64-19402/+0
It's bitrotten, long unmaintained, long hidden under BROKEN_ON_SMP, etc. As scheduled in feature-removal-schedule.txt, and ack'd several times on lkml. Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-12-03[RANDOM]: Annotate random.h IP helpers.Al Viro1-24/+24
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
2006-12-02Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdogLinus Torvalds6-4/+1423
* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 4 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 3 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 2 [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 1 [WATCHDOG] MIPS RM9000 on-chip watchdog device [WATCHDOG] Add iTCO vendor specific support [WATCHDOG] sc1200wdt.c pnp unregister fix. [WATCHDOG] config.h removal [WATCHDOG] NS pc87413-wdt Watchdog driver - fixes [WATCHDOG] NS pc87413-wdt Watchdog driver v1.1 [WATCHDOG] NS pc87413-wdt Watchdog driver
2006-12-02Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds1-2/+1
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (103 commits) usbcore: remove unused argument in autosuspend USB: keep count of unsuspended children USB hub: simplify remote-wakeup handling USB: struct usb_device: change flag to bitflag OHCI: make autostop conditional on CONFIG_PM USB: Add autosuspend support to the hub driver EHCI: Fix root-hub and port suspend/resume problems USB: create a new thread for every USB device found during the probe sequence USB: add driver for the USB debug devices USB: added dynamic major number for USB endpoints USB: pegasus error path not resetting task's state USB: endianness fix for asix.c USB: build the appledisplay driver USB serial: replace kmalloc+memset with kzalloc USB: hid-core: canonical defines for Apple USB device IDs USB: idmouse cleanup USB: make drivers/usb/core/driver.c:usb_device_match() static USB: lh7a40x_udc remove double declaration USB: pxa2xx_udc recognizes ixp425 rev b0 chip usbtouchscreen: add support for DMC TSC-10/25 devices ...
2006-12-02Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6Linus Torvalds9-101/+94
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (36 commits) Driver core: show drivers in /sys/module/ Documentation/driver-model/platform.txt update/rewrite Driver core: platform_driver_probe(), can save codespace driver core: Use klist_remove() in device_move() driver core: Introduce device_move(): move a device to a new parent. Driver core: make drivers/base/core.c:setup_parent() static driver core: Introduce device_find_child(). sysfs: sysfs_write_file() writes zero terminated data cpu topology: consider sysfs_create_group return value Driver core: Call platform_notify_remove later ACPI: Change ACPI to use dev_archdata instead of firmware_data Driver core: add dev_archdata to struct device Driver core: convert sound core to use struct device Driver core: change mem class_devices to be real devices Driver core: convert fb code to use struct device Driver core: convert firmware code to use struct device Driver core: convert mmc code to use struct device Driver core: convert ppdev code to use struct device Driver core: convert PPP code to use struct device Driver core: convert cpuid code to use struct device ...
2006-12-02Driver core: change mem class_devices to be real devicesGreg Kroah-Hartman1-4/+4
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: convert ppdev code to use struct deviceGreg Kroah-Hartman1-3/+3
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: convert raw device code to use struct deviceGreg Kroah-Hartman1-6/+6
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: convert tty core to use struct deviceGreg Kroah-Hartman1-9/+10
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Also fixes up the isdn drivers that were putting something in the class device's directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: change misc class_devices to be real devicesGreg Kroah-Hartman3-29/+24
This also ment that some of the misc drivers had to also be fixed up as they were assuming the device was a class_device. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: convert vc code to use struct deviceGreg Kroah-Hartman1-8/+8
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02Driver core: convert vt code to use struct deviceGreg Kroah-Hartman1-42/+39
Converts from using struct "class_device" to "struct device" making everything show up properly in /sys/devices/ with symlinks from the /sys/class directory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-02usb: pcwd_usb free urb cleanupMariusz Kozlowski1-2/+1
- usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-11-30Merge ../linux-2.6-watchdog-mmWim Van Sebroeck6-4/+1423
2006-11-30Fix misc .c/.h comment typosMatt LaPlante3-5/+5
Fix various .c/.h typos in comments (no code changes). Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-11-30Fix misc Kconfig typosMatt LaPlante1-1/+1
Fix various Kconfig typos. Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-11-26[PATCH] tlclk: fix platform_device_register_simple() error checkAkinobu Mita1-3/+2
The return value of platform_device_register_simple() should be checked by IS_ERR(). This patch also fix misc_register() error case. Because misc_register() returns error code. Cc: Sebastien Bouchard <sebastien.bouchard@ca.kontron.com> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-23[AGP] Allocate AGP pages with GFP_DMA32 by defaultLinus Torvalds2-2/+2
Not all graphic page remappers support physical addresses over the 4GB mark for remapping, so while some do (the AMD64 GART always did, and I just fixed the i965 to do so properly), we're safest off just forcing GFP_DMA32 allocations to make sure graphics pages get allocated in the low 32-bit address space by default. AGP sub-drivers that really care, and can do better, could just choose to implement their own allocator (or we could add another "64-bit safe" default allocator for their use), but quite frankly, you're not likely to care in practice. So for now, this trivial change means that we won't be allocating pages that we can't map correctly by mistake on x86-64. [ On traditional 32-bit x86, this could never happen, because GFP_KERNEL would never allocate any highmem memory anyway ] Acked-by: Andi Kleen <ak@suse.de> Acked-by: Dave Jones <davej@redhat.com> Cc: Eric Anholt <eric@anholt.net> Cc: Keith Packard <keithp@keithp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-22[AGP] Fix intel 965 AGP memory mapping functionLinus Torvalds1-7/+24
This introduces a i965-specific "mask_memory()" function that knows about the extended physical addresses that the i965 supports. This allows us to correctly map in physical memory in the >4GB range into the GTT. Also simplify/clean-up the i965 case for the aperture sizing by just returning the fixed 512kB size from "fetch_size()". We don't really care that not all of the aperture may be visible - the only thing that cares about the aperture size is the Intel "stolen memory" calculation, which depends on the fixed size. Cc: Keith Packard <keithp@keithp.com> Cc: Eric Anholt <eric@anholt.net> Cc: Dave Jones <davej@redhat.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-11-22WorkStruct: make allyesconfigDavid Howells18-85/+95
Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-11-22WorkStruct: Pass the work_struct pointer instead of context dataDavid Howells4-22/+25
Pass the work_struct pointer to the work function rather than context data. The work function can use container_of() to work out the data. For the cases where the container of the work_struct may go away the moment the pending bit is cleared, it is made possible to defer the release of the structure by deferring the clearing of the pending bit. To make this work, an extra flag is introduced into the management side of the work_struct. This governs auto-release of the structure upon execution. Ordinarily, the work queue executor would release the work_struct for further scheduling or deallocation by clearing the pending bit prior to jumping to the work function. This means that, unless the driver makes some guarantee itself that the work_struct won't go away, the work function may not access anything else in the work_struct or its container lest they be deallocated.. This is a problem if the auxiliary data is taken away (as done by the last patch). However, if the pending bit is *not* cleared before jumping to the work function, then the work function *may* access the work_struct and its container with no problems. But then the work function must itself release the work_struct by calling work_release(). In most cases, automatic release is fine, so this is the default. Special initiators exist for the non-auto-release case (ending in _NAR). Signed-Off-By: David Howells <dhowells@redhat.com>