[BACK]Return to ramdisk.c CVS log [TXT][DIR] Up to [local] / prex-old / dev / gen

Diff for /prex-old/dev/gen/ramdisk.c between version 1.1.1.1 and 1.1.1.1.2.1

version 1.1.1.1, 2008/06/03 10:38:41 version 1.1.1.1.2.1, 2008/08/13 17:12:23
Line 36 
Line 36 
 /* #define DEBUG_RAMDISK 1 */  /* #define DEBUG_RAMDISK 1 */
   
 #ifdef DEBUG_RAMDISK  #ifdef DEBUG_RAMDISK
 #define rd_printf(fmt, args...) printk("%s: " fmt, __FUNCTION__ , ## args)  #define DPRINTF(a) printf a
 #else  #else
 #define rd_printf(fmt...)       do {} while (0)  #define DPRINTF(a)
 #endif  #endif
   
 /* Block size */  /* Block size */
 #define BSIZE           512  #define BSIZE           512
   
 static int ramdisk_read(device_t dev, char *buf, size_t *nbyte, int blkno);  static int ramdisk_read(device_t, char *, size_t *, int);
 static int ramdisk_write(device_t dev, char *buf, size_t *nbyte, int blkno);  static int ramdisk_write(device_t, char *, size_t *, int);
 static int ramdisk_init(void);  static int ramdisk_init(void);
   
 /*  /*
Line 57 
Line 57 
         /* init */      ramdisk_init,          /* init */      ramdisk_init,
 };  };
   
   /*
    * Device I/O table
    */
 static struct devio ramdisk_io = {  static struct devio ramdisk_io = {
         /* open */      NULL,          /* open */      NULL,
         /* close */     NULL,          /* close */     NULL,
Line 77 
Line 80 
         void *kbuf;          void *kbuf;
         size_t nr_read;          size_t nr_read;
   
         rd_printf("read buf=%x nbyte=%d blkno=%x\n", buf, *nbyte, blkno);          DPRINTF(("ramdisk_read: buf=%x nbyte=%d blkno=%x\n",
                    buf, *nbyte, blkno));
   
         /* Check overrun */          /* Check overrun */
         if ((size_t)blkno * BSIZE > img_size) {          if ((size_t)blkno * BSIZE > img_size) {
                 rd_printf("Overrun!\n");                  DPRINTF(("ramdisk_read: overrun!\n"));
                 return EIO;                  return EIO;
         }          }
         nr_read = *nbyte;          nr_read = *nbyte;
Line 99 
Line 103 
         return 0;          return 0;
 }  }
   
 /*  
  * Data written to this device is discarded.  
  */  
 static int  static int
 ramdisk_write(device_t dev, char *buf, size_t *nbyte, int blkno)  ramdisk_write(device_t dev, char *buf, size_t *nbyte, int blkno)
 {  {
         void *kbuf;          void *kbuf;
         size_t nr_write;          size_t nr_write;
   
         rd_printf("write buf=%x nbyte=%d blkno=%x\n", buf, *nbyte, blkno);          DPRINTF(("ramdisk_write: buf=%x nbyte=%d blkno=%x\n",
                    buf, *nbyte, blkno));
   
         /* Check overrun */          /* Check overrun */
         if ((size_t)blkno * BSIZE > img_size)          if ((size_t)blkno * BSIZE > img_size)
Line 143 
Line 145 
         img_size = rd->size;          img_size = rd->size;
         if (img_size == 0)          if (img_size == 0)
                 return -1;                  return -1;
         printk("RAM disk at 0x%08x (%dK bytes)\n", img_start, img_size/1024);  #ifdef DEBUG
           printf("RAM disk at 0x%08x (%dK bytes)\n", img_start, img_size/1024);
   #endif
         /* Create device object */          /* Create device object */
         ramdisk_dev = device_create(&ramdisk_io, "ram0", DF_BLK);          ramdisk_dev = device_create(&ramdisk_io, "ram0", DF_BLK);
         ASSERT(ramdisk_dev);          ASSERT(ramdisk_dev);

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.1.2.1

CVSweb