Example #1
0
void init_stkl20(struct lu_phy_attr *lu)
{
	smc_pm.name = "mhVTL - STK L20/40/80 series emulation";
	smc_pm.library_has_map = TRUE;
	smc_pm.library_has_barcode_reader = TRUE;
	smc_pm.library_has_playground = TRUE;

	/* Follow L20 SCSI Reference Manual  */
	smc_pm.start_picker	= 0x0001;
	smc_pm.start_map	= 0x000a;	/*   10d -   55d */
	smc_pm.start_drive	= 0x01f4;	/*  500d -  519d */
	smc_pm.start_storage	= 0x03e8;	/* 1000d - 1677d */

	smc_pm.lu = lu;
	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	update_stk_l_vpd_80(lu);
	update_stk_l_vpd_83(lu);
	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
	/* FIXME: Need to add page 0x2d - Drive Configuration Page */
	add_smc_mode_page_drive_configuration(lu);
}
Example #2
0
void init_scalar_smc(struct  lu_phy_attr *lu)
{
	int h, m, sec;
	int day, month, year;

	smc_pm.name = "mhVTL - Scalar emulation";
	smc_pm.library_has_map = TRUE;
	smc_pm.library_has_barcode_reader = TRUE;
	smc_pm.library_has_playground = FALSE;
	smc_pm.dvcid_serial_only = FALSE;

	smc_pm.start_picker	= 0x0001;
	smc_pm.start_map	= 0x0010;
	smc_pm.start_drive	= 0x0100;
	smc_pm.start_storage	= 0x1000;

	smc_pm.lu = lu;
	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	/* Reference Quantum 6-00423013 SCSI Reference - Rev A */
	ymd(&year, &month, &day, &h, &m, &sec);

	/* Controller firmware build date */
	sprintf((char *)&lu->inquiry[36], "%04d-%02d-%02d %02d:%02d:%02d",
				year, month, day, h, m, sec);

	lu->inquiry[55] = 0x01;	/* Contains barcode scanner : BarC */

	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
}
Example #3
0
void init_hp_eml_smc(struct  lu_phy_attr *lu)
{
	smc_pm.name = "mhVTL - HP EML E-Series emulation";

	smc_pm.lu = lu;
	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	update_eml_vpd_80(lu);
	update_eml_vpd_83(lu);
	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
}
Example #4
0
void init_stklxx(struct  lu_phy_attr *lu)
{
	smc_pm.name = "mhVTL - STK L series emulation";
	smc_pm.library_has_map = TRUE;
	smc_pm.library_has_barcode_reader = TRUE;
	smc_pm.library_has_playground = TRUE;

	/* Follow L700e/L180 SCSI Reference Manual - 8th Edition */
	smc_pm.start_picker	= 0x0001;
	smc_pm.start_map	= 0x0010;
	smc_pm.start_drive	= 0x01f0;
	smc_pm.start_storage	= 0x0400;

	smc_pm.lu = lu;
	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	update_stk_l_vpd_80(lu);
	update_stk_l_vpd_83(lu);
	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
}
Example #5
0
void init_stkslxx(struct  lu_phy_attr *lu)
{
	smc_pm.name = "mhVTL - STK SL series emulation";
	smc_pm.library_has_map = TRUE;
	smc_pm.library_has_barcode_reader = TRUE;
	smc_pm.library_has_playground = TRUE;

	/* Follow Streamline SL500 Interface Reference Manual - 2th Edition */
	smc_pm.start_picker	= 0x0001;
	smc_pm.start_map	= 0x000a;	/*   10d -   55d */
	smc_pm.start_drive	= 0x01f4;	/*  500d -  518d */
	smc_pm.start_storage	= 0x03e8;	/* 1000d - 1628d */

	smc_pm.lu = lu;
	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	update_stk_l_vpd_80(lu);
	update_stk_l_vpd_83(lu);
	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
}
Example #6
0
void init_hp_msl_smc(struct lu_phy_attr *lu)
{
	smc_pm.name = "mhVTL - HP MSL Series emulation";

	smc_pm.lu = lu;
	smc_pm.start_picker	= 0x0001;
	smc_pm.start_storage	= 0x0020;
	smc_pm.start_drive	= 0x01e0;
	smc_pm.start_map	= 0x01c0;
	smc_pm.dvcid_len	= 20,
	smc_pm.dvcid_serial_only = TRUE,
	smc_pm.no_dvcid_flag	 = TRUE,

	lu->inquiry[2] = 2;	/* Set SCSI-2 Approved Version */

	smc_personality_module_register(&smc_pm);

	init_slot_info(lu);

	update_eml_vpd_80(lu);
	update_eml_vpd_83(lu);
	init_smc_log_pages(lu);
	init_smc_mode_pages(lu);
}