[SERIAL] add PNP IDs for FPI based touchscreens
[pandora-kernel.git] / drivers / char / drm / mga_irq.c
index 52eaa4e..eb96440 100644 (file)
@@ -1,7 +1,7 @@
 /* mga_irq.c -- IRQ handling for radeon -*- linux-c -*-
  *
  * Copyright (C) The Weather Channel, Inc.  2002.  All Rights Reserved.
- * 
+ *
  * The Weather Channel (TM) funded Tungsten Graphics to develop the
  * initial release of the Radeon 8500 driver under the XFree86 license.
  * This notice must be preserved.
 #include "mga_drm.h"
 #include "mga_drv.h"
 
-irqreturn_t mga_driver_irq_handler( DRM_IRQ_ARGS )
+irqreturn_t mga_driver_irq_handler(DRM_IRQ_ARGS)
 {
        drm_device_t *dev = (drm_device_t *) arg;
-       drm_mga_private_t *dev_priv = 
-          (drm_mga_private_t *)dev->dev_private;
+       drm_mga_private_t *dev_priv = (drm_mga_private_t *) dev->dev_private;
        int status;
        int handled = 0;
 
        status = MGA_READ(MGA_STATUS);
 
        /* VBLANK interrupt */
-       if ( status & MGA_VLINEPEN ) {
-               MGA_WRITE( MGA_ICLEAR, MGA_VLINEICLR );
+       if (status & MGA_VLINEPEN) {
+               MGA_WRITE(MGA_ICLEAR, MGA_VLINEICLR);
                atomic_inc(&dev->vbl_received);
                DRM_WAKEUP(&dev->vbl_queue);
                drm_vbl_send_signals(dev);
@@ -57,15 +56,14 @@ irqreturn_t mga_driver_irq_handler( DRM_IRQ_ARGS )
        /* SOFTRAP interrupt */
        if (status & MGA_SOFTRAPEN) {
                const u32 prim_start = MGA_READ(MGA_PRIMADDRESS);
-               const u32 prim_end   = MGA_READ(MGA_PRIMEND);
-
+               const u32 prim_end = MGA_READ(MGA_PRIMEND);
 
                MGA_WRITE(MGA_ICLEAR, MGA_SOFTRAPICLR);
 
                /* In addition to clearing the interrupt-pending bit, we
                 * have to write to MGA_PRIMEND to re-start the DMA operation.
                 */
-               if ( (prim_start & ~0x03) != (prim_end & ~0x03) ) {
+               if ((prim_start & ~0x03) != (prim_end & ~0x03)) {
                        MGA_WRITE(MGA_PRIMEND, prim_end);
                }
 
@@ -74,24 +72,24 @@ irqreturn_t mga_driver_irq_handler( DRM_IRQ_ARGS )
                handled = 1;
        }
 
-       if ( handled ) {
+       if (handled) {
                return IRQ_HANDLED;
        }
        return IRQ_NONE;
 }
 
-int mga_driver_vblank_wait(drm_device_t *dev, unsigned int *sequence)
+int mga_driver_vblank_wait(drm_device_t * dev, unsigned int *sequence)
 {
        unsigned int cur_vblank;
        int ret = 0;
 
        /* Assume that the user has missed the current sequence number
         * by about a day rather than she wants to wait for years
-        * using vertical blanks... 
+        * using vertical blanks...
         */
-       DRM_WAIT_ON( ret, dev->vbl_queue, 3*DRM_HZ, 
-                    ( ( ( cur_vblank = atomic_read(&dev->vbl_received ) )
-                        - *sequence ) <= (1<<23) ) );
+       DRM_WAIT_ON(ret, dev->vbl_queue, 3 * DRM_HZ,
+                   (((cur_vblank = atomic_read(&dev->vbl_received))
+                     - *sequence) <= (1 << 23)));
 
        *sequence = cur_vblank;
 
@@ -122,29 +120,29 @@ void mga_driver_irq_preinstall(drm_device_t * dev)
        drm_mga_private_t *dev_priv = (drm_mga_private_t *) dev->dev_private;
 
        /* Disable *all* interrupts */
-       MGA_WRITE( MGA_IEN, 0 );
+       MGA_WRITE(MGA_IEN, 0);
        /* Clear bits if they're already high */
-       MGA_WRITE( MGA_ICLEAR, ~0 );
+       MGA_WRITE(MGA_ICLEAR, ~0);
 }
 
 void mga_driver_irq_postinstall(drm_device_t * dev)
 {
        drm_mga_private_t *dev_priv = (drm_mga_private_t *) dev->dev_private;
 
-       DRM_INIT_WAITQUEUE( &dev_priv->fence_queue );
+       DRM_INIT_WAITQUEUE(&dev_priv->fence_queue);
 
        /* Turn on vertical blank interrupt and soft trap interrupt. */
        MGA_WRITE(MGA_IEN, MGA_VLINEIEN | MGA_SOFTRAPEN);
 }
 
-void mga_driver_irq_uninstall( drm_device_t *dev ) {
-       drm_mga_private_t *dev_priv = 
-          (drm_mga_private_t *)dev->dev_private;
+void mga_driver_irq_uninstall(drm_device_t * dev)
+{
+       drm_mga_private_t *dev_priv = (drm_mga_private_t *) dev->dev_private;
        if (!dev_priv)
                return;
 
        /* Disable *all* interrupts */
        MGA_WRITE(MGA_IEN, 0);
-       
+
        dev->irq_enabled = 0;
 }