Unverified Commit e41736c0 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!9782 usb-storage: alauda: Check whether the media is initialized

parents 61a04d9c dcf39041
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -105,6 +105,8 @@ struct alauda_info {
	unsigned char sense_key;
	unsigned long sense_asc;	/* additional sense code */
	unsigned long sense_ascq;	/* additional sense code qualifier */

	bool media_initialized;
};

#define short_pack(lsb,msb) ( ((u16)(lsb)) | ( ((u16)(msb))<<8 ) )
@@ -476,11 +478,12 @@ static int alauda_check_media(struct us_data *us)
	}

	/* Check for media change */
	if (status[0] & 0x08) {
	if (status[0] & 0x08 || !info->media_initialized) {
		usb_stor_dbg(us, "Media change detected\n");
		alauda_free_maps(&MEDIA_INFO(us));
		alauda_init_media(us);

		rc = alauda_init_media(us);
		if (rc == USB_STOR_TRANSPORT_GOOD)
			info->media_initialized = true;
		info->sense_key = UNIT_ATTENTION;
		info->sense_asc = 0x28;
		info->sense_ascq = 0x00;