2003-11-13 06:34:36 -08:00
/*
* scsi_id . h
*
* General defines and such for scsi_id
*
* Copyright ( C ) IBM Corp . 2003
*
2006-01-28 16:42:49 +01:00
* This program is free software ; you can redistribute it and / or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation version 2 of the License .
2003-11-13 06:34:36 -08:00
*/
2006-01-18 04:24:48 +01:00
# define MAX_PATH_LEN 512
2003-11-13 06:34:36 -08:00
2004-01-16 22:03:50 -08:00
/*
* MAX_ATTR_LEN : maximum length of the result of reading a sysfs
* attribute .
*/
# define MAX_ATTR_LEN 256
2003-12-07 08:55:40 -08:00
/*
* MAX_SERIAL_LEN : the maximum length of the serial number , including
* added prefixes such as vendor and product ( model ) strings .
*/
2004-06-26 01:18:17 -07:00
# define MAX_SERIAL_LEN 256
2003-12-07 08:55:40 -08:00
/*
* MAX_BUFFER_LEN : maximum buffer size and line length used while reading
* the config file .
*/
# define MAX_BUFFER_LEN 256
2008-05-14 13:42:41 +02:00
struct scsi_id_device {
char vendor [ 9 ] ;
char model [ 17 ] ;
char revision [ 5 ] ;
char type [ 33 ] ;
char kernel [ 64 ] ;
char serial [ MAX_SERIAL_LEN ] ;
2008-12-02 19:23:38 +01:00
char serial_short [ MAX_SERIAL_LEN ] ;
2008-05-14 13:55:49 +02:00
int use_sg ;
2008-05-14 13:42:41 +02:00
} ;
2008-09-06 15:45:31 +02:00
extern int scsi_std_inquiry ( struct udev * udev , struct scsi_id_device * dev_scsi , const char * devname ) ;
extern int scsi_get_serial ( struct udev * udev , struct scsi_id_device * dev_scsi , const char * devname ,
2008-12-02 19:23:38 +01:00
int page_code , int len ) ;
2005-09-14 20:23:48 +02:00
/*
2008-05-14 13:42:41 +02:00
* Page code values .
2005-09-14 20:23:48 +02:00
*/
enum page_code {
PAGE_83_PRE_SPC3 = - 0x83 ,
PAGE_UNSPECIFIED = 0x00 ,
PAGE_80 = 0x80 ,
PAGE_83 = 0x83 ,
} ;
2008-05-14 13:42:41 +02:00