require '_h2ph_pre.ph';

no warnings qw(redefine misc);

if(defined(&_KERNEL_OPT)) {
    require './dev/scsipi/opt_scsipi_debug.ph';
}
eval 'sub SCSIPI_DB1 () {0x1;}' unless defined(&SCSIPI_DB1);
eval 'sub SCSIPI_DB2 () {0x2;}' unless defined(&SCSIPI_DB2);
eval 'sub SCSIPI_DB3 () {0x4;}' unless defined(&SCSIPI_DB3);
eval 'sub SCSIPI_DB4 () {0x8;}' unless defined(&SCSIPI_DB4);
unless(defined(&SCSIPI_DEBUG_TYPE)) {
    eval 'sub SCSIPI_DEBUG_TYPE () { &SCSIPI_BUSTYPE_ATAPI;}' unless defined(&SCSIPI_DEBUG_TYPE);
}
unless(defined(&SCSIPI_DEBUG_TARGET)) {
    eval 'sub SCSIPI_DEBUG_TARGET () {-1;}' unless defined(&SCSIPI_DEBUG_TARGET);
}
unless(defined(&SCSIPI_DEBUG_LUN)) {
    eval 'sub SCSIPI_DEBUG_LUN () {0;}' unless defined(&SCSIPI_DEBUG_LUN);
}
unless(defined(&SCSIPI_DEBUG_FLAGS)) {
    eval 'sub SCSIPI_DEBUG_FLAGS () {( &SCSIPI_DB1| &SCSIPI_DB2| &SCSIPI_DB3);}' unless defined(&SCSIPI_DEBUG_FLAGS);
}
if(defined(&SCSIPI_DEBUG)) {
    eval 'sub SC_DEBUG {
        my($periph, $flags, $x) = @_;
	    eval q( &do {  &if (($periph)-> &periph_dbflags & ($flags)) {  &scsipi_printaddr(($periph));  &printf $x ; } }  &while (0));
    }' unless defined(&SC_DEBUG);
    eval 'sub SC_DEBUGN {
        my($periph, $flags, $x) = @_;
	    eval q( &do {  &if (($periph)-> &periph_dbflags & ($flags))  &printf $x ; }  &while (0));
    }' unless defined(&SC_DEBUGN);
} else {
    eval 'sub SC_DEBUG {
        my($periph, $flags, $x) = @_;
	    eval q();
    }' unless defined(&SC_DEBUG);
    eval 'sub SC_DEBUGN {
        my($periph, $flags, $x) = @_;
	    eval q();
    }' unless defined(&SC_DEBUGN);
}
1;
