#include <system.h>
#ifdef TESTING
#include <hint_data.h>
#else
#include "scsi.h"
#include <hint_data.h>
#endif
//#include "scsi.h"
#define MAX_SCSI_QUEUED  (2048)


void ngssdInit(void *lu);

bool_t ngssd_is_idle();

void ngssd_tentative_cached_hint_notify();

void ngssdDestroy();

#ifdef Fanatic
#define ngssd_lock(){ \
	pthread_mutex_lock(&(ngssd.mutex));
	ngssd.mutex_count++; \
	assert(ngssd.mutex_count==1); \
}

void ngssd_unlock(){ \
	ngssd.mutex_count--; \
	assert(ngssd.mutex_count==0); \
	pthread_mutex_unlock(&(ngssd.mutex)); \
}
#else
#define ngssd_lock()      pthread_mutex_lock(&(ngssd.mutex));
#define ngssd_unlock()    pthread_mutex_unlock(&(ngssd.mutex));
#endif
