Loading drivers/scsi/eata_pio.c +10 −46 Original line number Diff line number Diff line Loading @@ -92,58 +92,22 @@ static unsigned long queue_counter; static struct scsi_host_template driver_template; /* * eata_proc_info * inout : decides on the direction of the dataflow and the meaning of the * variables * buffer: If inout==FALSE data is being written to it else read from it * *start: If inout==FALSE start of the valid data in the buffer * offset: If inout==FALSE offset from the beginning of the imaginary file * from which we start writing into the buffer * length: If inout==FALSE max number of bytes to be written into the buffer * else number of bytes in the buffer */ static int eata_pio_proc_info(struct Scsi_Host *shost, char *buffer, char **start, off_t offset, int length, int rw) static int eata_pio_show_info(struct seq_file *m, struct Scsi_Host *shost) { int len = 0; off_t begin = 0, pos = 0; if (rw) return -ENOSYS; len += sprintf(buffer+len, "EATA (Extended Attachment) PIO driver version: " seq_printf(m, "EATA (Extended Attachment) PIO driver version: " "%d.%d%s\n",VER_MAJOR, VER_MINOR, VER_SUB); len += sprintf(buffer + len, "queued commands: %10ld\n" seq_printf(m, "queued commands: %10ld\n" "processed interrupts:%10ld\n", queue_counter, int_counter); len += sprintf(buffer + len, "\nscsi%-2d: HBA %.10s\n", seq_printf(m, "\nscsi%-2d: HBA %.10s\n", shost->host_no, SD(shost)->name); len += sprintf(buffer + len, "Firmware revision: v%s\n", seq_printf(m, "Firmware revision: v%s\n", SD(shost)->revision); len += sprintf(buffer + len, "IO: PIO\n"); len += sprintf(buffer + len, "Base IO : %#.4x\n", (u32) shost->base); len += sprintf(buffer + len, "Host Bus: %s\n", seq_printf(m, "IO: PIO\n"); seq_printf(m, "Base IO : %#.4x\n", (u32) shost->base); seq_printf(m, "Host Bus: %s\n", (SD(shost)->bustype == 'P')?"PCI ": (SD(shost)->bustype == 'E')?"EISA":"ISA "); pos = begin + len; if (pos < offset) { len = 0; begin = pos; } if (pos > offset + length) goto stop_output; stop_output: DBG(DBG_PROC, printk("2pos: %ld offset: %ld len: %d\n", pos, offset, len)); *start = buffer + (offset - begin); /* Start of wanted data */ len -= (offset - begin); /* Start slop */ if (len > length) len = length; /* Ending slop */ DBG(DBG_PROC, printk("3pos: %ld offset: %ld len: %d\n", pos, offset, len)); return len; return 0; } static int eata_pio_release(struct Scsi_Host *sh) Loading Loading @@ -985,7 +949,7 @@ static int eata_pio_detect(struct scsi_host_template *tpnt) static struct scsi_host_template driver_template = { .proc_name = "eata_pio", .name = "EATA (Extended Attachment) PIO driver", .proc_info = eata_pio_proc_info, .show_info = eata_pio_show_info, .detect = eata_pio_detect, .release = eata_pio_release, .queuecommand = eata_pio_queue, Loading Loading
drivers/scsi/eata_pio.c +10 −46 Original line number Diff line number Diff line Loading @@ -92,58 +92,22 @@ static unsigned long queue_counter; static struct scsi_host_template driver_template; /* * eata_proc_info * inout : decides on the direction of the dataflow and the meaning of the * variables * buffer: If inout==FALSE data is being written to it else read from it * *start: If inout==FALSE start of the valid data in the buffer * offset: If inout==FALSE offset from the beginning of the imaginary file * from which we start writing into the buffer * length: If inout==FALSE max number of bytes to be written into the buffer * else number of bytes in the buffer */ static int eata_pio_proc_info(struct Scsi_Host *shost, char *buffer, char **start, off_t offset, int length, int rw) static int eata_pio_show_info(struct seq_file *m, struct Scsi_Host *shost) { int len = 0; off_t begin = 0, pos = 0; if (rw) return -ENOSYS; len += sprintf(buffer+len, "EATA (Extended Attachment) PIO driver version: " seq_printf(m, "EATA (Extended Attachment) PIO driver version: " "%d.%d%s\n",VER_MAJOR, VER_MINOR, VER_SUB); len += sprintf(buffer + len, "queued commands: %10ld\n" seq_printf(m, "queued commands: %10ld\n" "processed interrupts:%10ld\n", queue_counter, int_counter); len += sprintf(buffer + len, "\nscsi%-2d: HBA %.10s\n", seq_printf(m, "\nscsi%-2d: HBA %.10s\n", shost->host_no, SD(shost)->name); len += sprintf(buffer + len, "Firmware revision: v%s\n", seq_printf(m, "Firmware revision: v%s\n", SD(shost)->revision); len += sprintf(buffer + len, "IO: PIO\n"); len += sprintf(buffer + len, "Base IO : %#.4x\n", (u32) shost->base); len += sprintf(buffer + len, "Host Bus: %s\n", seq_printf(m, "IO: PIO\n"); seq_printf(m, "Base IO : %#.4x\n", (u32) shost->base); seq_printf(m, "Host Bus: %s\n", (SD(shost)->bustype == 'P')?"PCI ": (SD(shost)->bustype == 'E')?"EISA":"ISA "); pos = begin + len; if (pos < offset) { len = 0; begin = pos; } if (pos > offset + length) goto stop_output; stop_output: DBG(DBG_PROC, printk("2pos: %ld offset: %ld len: %d\n", pos, offset, len)); *start = buffer + (offset - begin); /* Start of wanted data */ len -= (offset - begin); /* Start slop */ if (len > length) len = length; /* Ending slop */ DBG(DBG_PROC, printk("3pos: %ld offset: %ld len: %d\n", pos, offset, len)); return len; return 0; } static int eata_pio_release(struct Scsi_Host *sh) Loading Loading @@ -985,7 +949,7 @@ static int eata_pio_detect(struct scsi_host_template *tpnt) static struct scsi_host_template driver_template = { .proc_name = "eata_pio", .name = "EATA (Extended Attachment) PIO driver", .proc_info = eata_pio_proc_info, .show_info = eata_pio_show_info, .detect = eata_pio_detect, .release = eata_pio_release, .queuecommand = eata_pio_queue, Loading