2003-11-13 17:34:36 +03:00
/*
* scsi_id . h
*
* General defines and such for scsi_id
*
* Copyright ( C ) IBM Corp . 2003
*
2006-01-28 18:42:49 +03: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 17:34:36 +03:00
*/
2006-01-18 06:24:48 +03:00
# define MAX_PATH_LEN 512
2003-11-13 17:34:36 +03:00
2004-01-17 09:03:50 +03:00
/*
* MAX_ATTR_LEN : maximum length of the result of reading a sysfs
* attribute .
*/
# define MAX_ATTR_LEN 256
2003-12-07 19:55:40 +03:00
/*
* MAX_SERIAL_LEN : the maximum length of the serial number , including
* added prefixes such as vendor and product ( model ) strings .
*/
2004-06-26 12:18:17 +04:00
# define MAX_SERIAL_LEN 256
2003-12-07 19:55:40 +03:00
/*
* MAX_BUFFER_LEN : maximum buffer size and line length used while reading
* the config file .
*/
# define MAX_BUFFER_LEN 256
2008-05-14 15:42:41 +04: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-05-14 15:55:49 +04:00
int use_sg ;
2008-05-14 15:42:41 +04:00
} ;
2008-09-06 17:45:31 +04: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-05-14 15:42:41 +04:00
int page_code , char * serial_short , int len ) ;
2005-09-14 22:23:48 +04:00
/*
2008-05-14 15:42:41 +04:00
* Page code values .
2005-09-14 22:23:48 +04:00
*/
enum page_code {
PAGE_83_PRE_SPC3 = - 0x83 ,
PAGE_UNSPECIFIED = 0x00 ,
PAGE_80 = 0x80 ,
PAGE_83 = 0x83 ,
} ;
2008-05-14 15:42:41 +04:00