OSDN Git Service

change jpeg IPCores. startgen signal distribute into all module
[fpga-leon-mjpeg/leon-mjpeg.git] / snapgear-2.6-p42 / linux-2.6.21.1 / drivers / kmjpeg / kmjpeg.c~
diff --git a/snapgear-2.6-p42/linux-2.6.21.1/drivers/kmjpeg/kmjpeg.c~ b/snapgear-2.6-p42/linux-2.6.21.1/drivers/kmjpeg/kmjpeg.c~
deleted file mode 100644 (file)
index 1d48f38..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/types.h>
-#include <linux/kernel.h>
-#include <linux/fs.h>
-#include <linux/cdev.h>
-#include <linux/sched.h>
-#include <asm/current.h>
-#include <asm/uaccess.h>
-#include <asm/io.h>
-
-#include <linux/io.h>
-#include <linux/ioport.h>
-
-#include <linux/interrupt.h>
-#include <linux/fcntl.h>
-#include <linux/slab.h>
-
-#include "kmjpeg.h"
-
-MODULE_LICENSE("GPL");
-
-#define DRIVER_NAME "kmjpeg"
-
-#define AHBADD 0xa0000000
-#define RDYADD 0xa0000200
-#define APBADD 0x80000c00
-
-
-/* Physical address for NEEK
-#define AHBADD 0xb0000000
-#define RDYADD 0xb0000200
-#define APBADD 0x80000700
-*/
-
-static struct kmjpeg_priv *kmjpeg_devices;
-
-static unsigned int kmjpeg_major = 0;
-module_param(kmjpeg_major, uint, 0);
-
-struct kmjpeg_sregs_t {
-  volatile unsigned int fbadd;
-  volatile unsigned int size_info;
-  volatile unsigned int inc_add;
-  volatile unsigned int reset;
-};
-
-struct kmjpeg_sregs_t * kmjpeg_sregs;
-
-//volatile unsigned int *apb_regs;
-
-volatile unsigned int *hdata;
-volatile unsigned int *rdyadd;
-
-int kmjpeg_ioctl(struct inode *inode, struct file *filep, unsigned int cmd, unsigned long arg)
-{
-  int retval = 0;
-  struct ioctl_cmdreg datareg;
-  struct ioctl_cmdwrite datawrite;
-
-  unsigned int tmp;
-  int i;
-
-  memset(&datareg, 0, sizeof(datareg));
-  memset(&data4b, 0, sizeof(datawrite));
-
-
-  retval = 0;
-  switch(cmd){
-
-  case IOCTL_WR4BYTE :
-   if(!access_ok(VERIFY_READ, (void __user *)arg, _IOC_SIZE(cmd))){
-      retval = -EFAULT;
-      goto done;
-   }
-   if(copy_from_user(&datawrite, (int __user *)arg, sizeof(datawrite))){
-      retval = -EFAULT;
-      goto done;
-   }
-   
-   while(1){
-     tmp = *rdyadd;
-     if(tmp == 0x80000000)break;
-     for(i=0;i<800;i++);
-   }
-   *hdata = datawrite.pixeldata;
-   //   for(i=0;i<256;i++){
-   //    *hdata = data4b.fourbdata[i];
-     //     for(j=0;j<100000;j++);
-   //   }
-   break;
-  
-  case IOCTL_REGSET :
-    //    printk("IOCTL_REGSET\n");
-   if(!access_ok(VERIFY_READ, (void __user *)arg, _IOC_SIZE(cmd))){
-      retval = -EFAULT;
-      printk("ACCESS_NG\n");
-      goto done;
-    }
-   printk("end of access_ok\n");
-    if(copy_from_user(&datareg, (int __user *)arg, sizeof(datareg))){
-      retval = -EFAULT;
-      printk("COPY_NG\n");
-      goto done;
-    }
-    printk("IOCTL regset ..............................\n");
-    kmjpeg_sregs = ioremap_nocache(APBADD,12);
-    printk("IOCTL regset2 ..............................\n");
-    kmjpeg_sregs->fbadd = datareg.fb;
-    kmjpeg_sregs->size_info = datareg.size_info;
-    kmjpeg_sregs->inc_add = datareg.inc_add;
-    kmjpeg_sregs->reset = 0x0;
-    kmjpeg_sregs->reset =0xffffffff;
-    iounmap(kmjpeg_sregs);
-    printk("IOCTL regset3 ..............................\n");
-    break;
-  default :
-    retval = -EFAULT;
-    break;
-  }
- done :
-  return(retval);
-}
-
-ssize_t kmjpeg_write(struct file *filp, const char __user *buf, size_t count, loff_t *f_pos)
-{
-  int retval = 0;
-  unsigned int ycc;
-  unsigned char dbuf[3];
-
-  if(count != 3){
-    retval = -EFAULT;
-    goto out;
-  }
-  if(copy_from_user(dbuf, buf, 3)){
-    retval = -EFAULT;
-    goto out;
-  }
-  ycc = (unsigned int)(((unsigned int)dbuf[2]<<16)|((unsigned int)dbuf[1]<<8)|((unsigned int)dbuf[0]));
-  *hdata = ycc;
-  retval = count;
- out:
-  return(retval);
-} 
-
-static ssize_t kmjpeg_read(struct file* pFile, char __user* pBuf, size_t len, loff_t* offset)
-{
-   return 0;
-}
-
-
-
-
-static int kmjpeg_open(struct inode *inode, struct file *file)
-{
-   
-  printk("%s: major %d minor %d (pid %d)\n", __func__,imajor(inode),iminor(inode),current->pid);
-  inode->i_private = inode;
-  file->private_data = file;
-  printk(" i_private=%p private_data=%p\n",inode->i_private, file->private_data);
-  //  printk("kmjpeg_open ending\n");
-  return 0;
-}
-
-static int kmjpeg_close(struct inode *inode, struct file *file)
-{
-  printk("%s: major %d minor %d (pid %d)\n", __func__,imajor(inode),iminor(inode),current->pid);
-  printk(" i_private=%p private_data=%p\n",inode->i_private, file->private_data);
-
-  return 0;
-}
-
-struct file_operations kmjpeg_fops ={
-  .owner = THIS_MODULE,
-  .open = kmjpeg_open,
-  .release = kmjpeg_close,
-  .read = kmjpeg_read,
-  .write = kmjpeg_write,
-  .ioctl = kmjpeg_ioctl,
-};
-
- static int kmjpeg_init(void)
-{
-  int major;
-  int ret = 0;
-
-  major = register_chrdev(kmjpeg_major, DRIVER_NAME, &kmjpeg_fops);
-
-  if((kmjpeg_major > 0 && major != 0) || (kmjpeg_major == 0 && major < 0) || major < 0){
-    printk("%s driver registration error\n", DRIVER_NAME);
-    ret = major;
-    goto error;
-  }
-  if (kmjpeg_major == 0){
-    kmjpeg_major = major;
-  }
-
-  hdata = ioremap_nocache(AHBADD,4);
-  if(hdata==NULL){
-    printk("ioremap miss!\n");
-    return(0);
-  }
-  rdyadd = ioremap_nocache(RDYADD,4);
-  if(rdyadd==NULL){
-    printk("ioremap miss!\n");
-    return(0);
-  }
-  printk("%s driver[major %d] installed.\n", DRIVER_NAME, kmjpeg_major);
-
- error:
-  return(ret);
-}
-
-static void kmjpeg_exit(void)
-{
-  iounmap(hdata);
-  iounmap(rdyadd);
-  //  kfree(kmjpeg_devices);
-
-  unregister_chrdev(kmjpeg_major, DRIVER_NAME);
-  printk("%s driver unloaded\n", DRIVER_NAME);
-}
-
-module_init(kmjpeg_init);
-module_exit(kmjpeg_exit);