Re: [PATCH 2/3] scsi: ufs: Allow resetting the UFS device

From: Stephen Boyd
Date: Tue Jun 04 2019 - 11:29:12 EST


Quoting Bjorn Andersson (2019-06-04 00:20:00)
> @@ -6104,6 +6105,25 @@ static int ufshcd_abort(struct scsi_cmnd *cmd)
> return err;
> }
>
> +/**
> + ufshcd_device_reset() - toggle the (optional) device reset line
> + * @hba: per-adapter instance
> + *
> + * Toggles the (optional) reset line to reset the attached device.
> + */
> +static void ufshcd_device_reset(struct ufs_hba *hba)
> +{
> + /*
> + * The USB device shall detect reset pulses of 1us, sleep for 10us to

This isn't usb though. Can we have a gpio reset driver and then
implement this in the reset framework instead? Or did that not work out
for some reason?

> + * be on the safe side.
> + */
> + gpiod_set_value_cansleep(hba->device_reset, 1);
> + usleep_range(10, 15);
> +
> + gpiod_set_value_cansleep(hba->device_reset, 0);
> + usleep_range(10, 15);
> +}
> +
> /**
> * ufshcd_host_reset_and_restore - reset and restore host controller
> * @hba: per-adapter instance