Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee04bed6 authored by Asai Thambi SP's avatar Asai Thambi SP Committed by Jens Axboe
Browse files

mtip32xx: fix incorrectly setting MTIP_DDF_SEC_LOCK_BIT



Fix incorrectly setting MTIP_DDF_SEC_LOCK_BIT

Signed-off-by: default avatarSelvan Mani <smani@micron.com>
Signed-off-by: default avatarAsai Thambi S P <asamymuthupa@micron.com>
Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent a7806fad
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -990,15 +990,11 @@ static bool mtip_pause_ncq(struct mtip_port *port,
	reply = port->rxfis + RX_FIS_D2H_REG;
	task_file_data = readl(port->mmio+PORT_TFDATA);

	if (fis->command == ATA_CMD_SEC_ERASE_UNIT)
		clear_bit(MTIP_DDF_SEC_LOCK_BIT, &port->dd->dd_flag);

	if ((task_file_data & 1))
		return false;

	if (fis->command == ATA_CMD_SEC_ERASE_PREP) {
		set_bit(MTIP_PF_SE_ACTIVE_BIT, &port->flags);
		set_bit(MTIP_DDF_SEC_LOCK_BIT, &port->dd->dd_flag);
		port->ic_pause_timer = jiffies;
		return true;
	} else if ((fis->command == ATA_CMD_DOWNLOAD_MICRO) &&
@@ -1010,6 +1006,7 @@ static bool mtip_pause_ncq(struct mtip_port *port,
		((fis->command == 0xFC) &&
			(fis->features == 0x27 || fis->features == 0x72 ||
			 fis->features == 0x62 || fis->features == 0x26))) {
		clear_bit(MTIP_DDF_SEC_LOCK_BIT, &port->dd->dd_flag);
		/* Com reset after secure erase or lowlevel format */
		mtip_restart_port(port);
		return false;