Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2141ec62 authored by Simon Horman's avatar Simon Horman Committed by Greg Kroah-Hartman
Browse files

Staging: dt3155: remove compat code



Remove compatibility code as this is not an older version of the kernel.

Signed-off-by: default avatarSimon Horman <horms@verge.net.au>
Cc: Scott Smedley <ss@aao.gov.au>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent cf137d5c
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -54,11 +54,10 @@
#include <linux/errno.h>
#include <linux/types.h>
#include <linux/mm.h>	/* PAGE_ALIGN() */
#include <linux/io.h>

#include <asm/page.h>

#include "sysdep.h"

/*#define ALL_DEBUG*/
#define ALL_MSG "allocator: "

+1 −114
Original line number Diff line number Diff line
@@ -59,13 +59,10 @@ extern void printques(int);

#ifdef MODULE
#include <linux/module.h>
#include <linux/version.h>
#include <linux/interrupt.h>


#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,10)
MODULE_LICENSE("GPL");
#endif

#endif

@@ -105,11 +102,7 @@ int dt3155_errno = 0;
#endif

/* wait queue for interrupts */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,1)
wait_queue_head_t dt3155_read_wait_queue[ MAXBOARDS ];
#else
struct wait_queue *dt3155_read_wait_queue[ MAXBOARDS ];
#endif

#define DT_3155_SUCCESS 0
#define DT_3155_FAILURE -EIO
@@ -186,11 +179,7 @@ static inline void dt3155_isr( int irq, void *dev_id, struct pt_regs *regs )
{
  int    minor = -1;
  int    index;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  unsigned long flags;
#else
  int    flags;
#endif
  u_long buffer_addr;

  /* find out who issued the interrupt */
@@ -264,21 +253,12 @@ static inline void dt3155_isr( int irq, void *dev_id, struct pt_regs *regs )
	  buffer_addr = dt3155_fbuffer[ minor ]->
	    frame_info[ dt3155_fbuffer[ minor ]->active_buf ].addr
	    + (DT3155_MAX_ROWS / 2) * stride;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	  local_save_flags(flags);
	  local_irq_disable();
#else
	  save_flags( flags );
	  cli();
#endif
	  wake_up_interruptible( &dt3155_read_wait_queue[ minor ] );

	  /* Set up the DMA address for the next field */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	  local_irq_restore(flags);
#else
	  restore_flags( flags );
#endif
	  WriteMReg((dt3155_lbase[ minor ] + ODD_DMA_START), buffer_addr);
	}

@@ -350,13 +330,8 @@ static inline void dt3155_isr( int irq, void *dev_id, struct pt_regs *regs )
	   DT3155_STATE_FLD )
	{

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	  local_save_flags(flags);
	  local_irq_disable();
#else
	  save_flags( flags );
	  cli();
#endif

#ifdef DEBUG_QUES_B
	  printques( minor );
@@ -412,11 +387,7 @@ static inline void dt3155_isr( int irq, void *dev_id, struct pt_regs *regs )

	  wake_up_interruptible( &dt3155_read_wait_queue[ minor ] );

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	  local_irq_restore(flags);
#else
	  restore_flags( flags );
#endif
	}


@@ -675,11 +646,6 @@ static int dt3155_mmap (struct file * file, struct vm_area_struct * vma)
  /* which device are we mmapping? */
  int				minor = MINOR(file->f_dentry->d_inode->i_rdev);
  unsigned long	offset;

  /* not actually sure when vm_area_struct changed,
     but it was in 2.3 sometime */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,20)

  offset = vma->vm_pgoff << PAGE_SHIFT;

  if (offset >= __pa(high_memory) || (file->f_flags & O_SYNC))
@@ -688,34 +654,17 @@ static int dt3155_mmap (struct file * file, struct vm_area_struct * vma)
  /* Don't try to swap out physical pages.. */
  vma->vm_flags |= VM_RESERVED;

#else

  if (vma->vm_offset & ~PAGE_MASK)
    return -ENXIO;

  offset = vma->vm_offset;

#endif

  /* they are mapping the registers or the buffer */
  if ((offset == dt3155_status[minor].reg_addr &&
       vma->vm_end - vma->vm_start == PCI_PAGE_SIZE) ||
      (offset == dt3155_status[minor].mem_addr &&
       vma->vm_end - vma->vm_start == dt3155_status[minor].mem_size))
    {
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
      if (remap_pfn_range(vma,
			vma->vm_start,
			offset >> PAGE_SHIFT,
			vma->vm_end - vma->vm_start,
			vma->vm_page_prot))
#else
      if (remap_page_range(vma->vm_start,
			   offset,
			   vma->vm_end - vma->vm_start,
			   vma->vm_page_prot))
#endif
	{
			vma->vm_page_prot)) {
	  printk("DT3155: remap_page_range() failed.\n");
	  return -EAGAIN;
	}
@@ -761,9 +710,6 @@ static int dt3155_open( struct inode* inode, struct file* filep)
  printk("DT3155: Device opened.\n");

  dt3155_dev_open[ minor ] = 1 ;
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
  MOD_INC_USE_COUNT;
#endif

  dt3155_flush( minor );

@@ -771,11 +717,7 @@ static int dt3155_open( struct inode* inode, struct file* filep)
  int_csr_r.reg = 0;
  WriteMReg( (dt3155_lbase[ minor ] + INT_CSR), int_csr_r.reg );

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,1)
  init_waitqueue_head(&(dt3155_read_wait_queue[minor]));
#else
  dt3155_read_wait_queue[minor] = NULL;
#endif

  return 0;
}
@@ -798,9 +740,6 @@ static int dt3155_close( struct inode *inode, struct file *filep)
    }
  else
    {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
      MOD_DEC_USE_COUNT;
#endif
      dt3155_dev_open[ minor ] = 0;

      if (dt3155_status[ minor ].state != DT3155_STATE_IDLE)
@@ -846,8 +785,6 @@ static int dt3155_read (
  /*  if (dt3155_status[minor].state == DT3155_STATE_IDLE)*/
  /*    return -EBUSY;*/

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,1)

  /* non-blocking reads should return if no data */
  if (filep->f_flags & O_NDELAY)
    {
@@ -877,34 +814,6 @@ static int dt3155_read (
	}
    }

#else
  while ((frame_index = dt3155_get_ready_buffer(minor)) < 0 )
    {
      int index;
      if (filep->f_flags & O_NDELAY)
	return 0;

      /* sleep till data arrives , or we get interrupted */
      interruptible_sleep_on(&dt3155_read_wait_queue[minor]);
      for (index = 0; index < _NSIG_WORDS; index++)
	{
	  /*
	   * Changing the next line of code below to this:
	   * if (current->pending.signal.sig[index] &
	   *                           ~current->blocked.sig[index])
	   * would also work on a 2.4 kernel, however, the above
	   * method is preferred & more portable.
	   */
	  if (current->signal.sig[index] & ~current->blocked.sig[index])
	    {
	      printk ("DT3155: read: interrupted\n");
	      return -EINTR;
	    }
	}
    }

#endif

  frame_info_p = &dt3155_status[minor].fbuffer.frame_info[frame_index];

  /* make this an offset */
@@ -1046,12 +955,6 @@ int init_module(void)
  int rcode = 0;
  char *devname[ MAXBOARDS ];

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,1)
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
  SET_MODULE_OWNER(&dt3155_fops);
#endif
#endif

  devname[ 0 ] = "dt3155a";
#if MAXBOARDS == 2
  devname[ 1 ] = "dt3155b";
@@ -1091,17 +994,6 @@ int init_module(void)

  /* Now let's find the hardware.  find_PCI() will set ndevices to the
   * number of cards found in this machine. */
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
  if ( !(pcibios_present()) )
    {
      printk("DT3155: Error: No PCI bios on this machine \n");
      if( unregister_chrdev( dt3155_major, "dt3155" ) != 0 )
	printk("DT3155: cleanup_module failed\n");

      return DT_3155_FAILURE;
    }
  else
#endif
    {
      if ( (rcode = find_PCI()) !=  DT_3155_SUCCESS )
	{
@@ -1199,10 +1091,5 @@ void cleanup_module(void)
	  free_irq( dt3155_status[ index ].irq, (void*)&dt3155_status[index] );
	}
    }

#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
  if (MOD_IN_USE)
    printk("DT3155: device busy, remove delayed\n");
#endif
}
+0 −5
Original line number Diff line number Diff line
@@ -33,13 +33,8 @@ extern u_char *dt3155_bbase;
#ifdef __KERNEL__
#include <linux/wait.h>

#include <linux/version.h>	/* need access to LINUX_VERSION_CODE */
/* wait queue for reads */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 3, 1)
extern wait_queue_head_t dt3155_read_wait_queue[MAXBOARDS];
#else
extern struct wait_queue *dt3155_read_wait_queue[MAXBOARDS];
#endif
#endif

/* number of devices */
+6 −35
Original line number Diff line number Diff line
@@ -435,20 +435,11 @@ static inline void internal_release_locked_buffer( int m )
 *****************************************************/
inline void dt3155_release_locked_buffer( int m )
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
	unsigned long int flags;
	local_save_flags(flags);
	local_irq_disable();
	internal_release_locked_buffer(m);
	local_irq_restore(flags);
#else
  int flags;

  save_flags( flags );
  cli();
  internal_release_locked_buffer( m );
  restore_flags( flags );
#endif
}


@@ -460,15 +451,9 @@ inline void dt3155_release_locked_buffer( int m )
inline int dt3155_flush( int m )
{
  int index;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  unsigned long int flags;
  local_save_flags(flags);
  local_irq_disable();
#else
  int flags;
  save_flags( flags );
  cli();
#endif

  internal_release_locked_buffer( m );
  dt3155_fbuffer[ m ]->empty_len = 0;
@@ -486,11 +471,7 @@ inline int dt3155_flush( int m )
  dt3155_fbuffer[ m ]->ready_head = 0;
  dt3155_fbuffer[ m ]->ready_len = 0;

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  local_irq_restore(flags);
#else
  restore_flags( flags );
#endif

  return 0;
}
@@ -507,15 +488,9 @@ inline int dt3155_flush( int m )
inline int dt3155_get_ready_buffer( int m )
{
  int frame_index;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  unsigned long int flags;
  local_save_flags(flags);
  local_irq_disable();
#else
  int flags;
  save_flags( flags );
  cli();
#endif

#ifdef DEBUG_QUES_A
  printques( m );
@@ -535,11 +510,7 @@ inline int dt3155_get_ready_buffer( int m )
  printques( m );
#endif

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  local_irq_restore(flags);
#else
  restore_flags( flags );
#endif

  return frame_index;
}
+0 −97
Original line number Diff line number Diff line

/* This header only makes send when included in a 2.0 compile */

#ifndef _PCI_COMPAT_H_
#define _PCI_COMPAT_H_

#ifdef __KERNEL__

#include <linux/bios32.h> /* pcibios_* */
#include <linux/pci.h> /* pcibios_* */
#include <linux/malloc.h> /* kmalloc */

/* fake the new pci interface based on the old one: encapsulate bus/devfn */
struct pci_fake_dev {
    u8 bus;
    u8 devfn;
    int index;
};
#define pci_dev pci_fake_dev /* the other pci_dev is unused by 2.0 drivers */

extern inline struct pci_dev *pci_find_device(unsigned int vendorid,
					      unsigned int devid,
					      struct pci_dev *from)
{
    struct pci_dev *pptr = kmalloc(sizeof(*pptr), GFP_KERNEL);
    int index = 0;
    int ret;

    if (!pptr) return NULL;
    if (from) index = pptr->index + 1;
    ret = pcibios_find_device(vendorid, devid, index,
			      &pptr->bus, &pptr->devfn);
    if (ret) { kfree(pptr); return NULL; }
    return pptr;
}

extern inline struct pci_dev *pci_find_class(unsigned int class,
					     struct pci_dev *from)
{
    return NULL; /* FIXME */
}

extern inline void pci_release_device(struct pci_dev *dev)
{
    kfree(dev);
}

/* struct pci_dev *pci_find_slot (unsigned int bus, unsigned int devfn); */

#define pci_present pcibios_present

extern inline int
pci_read_config_byte(struct pci_dev *dev, u8 where, u8 *val)
{
    return pcibios_read_config_byte(dev->bus, dev->devfn, where, val);
}

extern inline int
pci_read_config_word(struct pci_dev *dev, u8 where, u16 *val)
{
    return pcibios_read_config_word(dev->bus, dev->devfn, where, val);
}

extern inline int
pci_read_config_dword(struct pci_dev *dev, u8 where, u32 *val)
{
    return pcibios_read_config_dword(dev->bus, dev->devfn, where, val);
}

extern inline int
pci_write_config_byte(struct pci_dev *dev, u8 where, u8 val)
{
    return pcibios_write_config_byte(dev->bus, dev->devfn, where, val);
}

extern inline int
pci_write_config_word(struct pci_dev *dev, u8 where, u16 val)
{
    return pcibios_write_config_word(dev->bus, dev->devfn, where, val);
}

extern inline int
pci_write_config_dword(struct pci_dev *dev, u8 where, u32 val)
{
    return pcibios_write_config_dword(dev->bus, dev->devfn, where, val);
}

extern inline void pci_set_master(struct pci_dev *dev)
{
    u16 cmd;
    pcibios_read_config_word(dev->bus, dev->devfn, PCI_COMMAND, &cmd);
    cmd |= PCI_COMMAND_MASTER;
    pcibios_write_config_word(dev->bus, dev->devfn, PCI_COMMAND, cmd);
}

#endif /* __KERNEL__ */
#endif /* _PCI_COMPAT_H_ */
Loading