mbox series

[v5,0/1] Allow platform drivers to update UIC command timeout

Message ID cover.1721792309.git.quic_nguyenb@quicinc.com (mailing list archive)
Headers show
Series Allow platform drivers to update UIC command timeout | expand

Message

Bao D. Nguyen July 24, 2024, 3:49 a.m. UTC
The UIC command timeout default value remains as 500ms.

Allow platform drivers to change the UIC command timeout as they wish.
During product development where a lot of debug logging/printing can
occur, the uart may print from different modules with interrupt disabled
for more than 500ms, causing interrupt starvation and UIC command timeout
as a result. The UIC command timeout may eventually cause a watchdog
timeout unnecessarily. With this change, the platform drivers can set a
different UIC command timeout as desired. The supported values range
from 500ms to 2 seconds.

v4 -> v5: - Changed the logic in the function uic_cmd_timeout_set()
	    using param_set_uint_minmax() as suggested by Peter Wang.
	  - Add a space in front of the module description string for better alignment. 
v3 -> v4: - Addressed Bart's concern about the two string to int conversions
	    would yield different results.
v2 -> v3: - Addressed Bart's comments. Renamed UIC_CMD_TIMEOUT to
            UIC_CMD_TIMEOUT_DEFAULT. Changed "Default.." to "Defaults..".
            Removed an extra line in the module description.
v1 -> v2: - Created kernel module parameter namely uic_cmd_timeout
            as recommended by Bart. Addressed some other comments.
          - Un-do the change in the include/ufs/ufshcd.h file
            which added the uic_cmd_timeout field to the hba struct.
	  - Removed the patch 2 in the series where the UIC command
	    timeout value was overridden by the platform driver.

Bao D. Nguyen (1):
  scsi: ufs: core: Support Updating UIC Command Timeout

 drivers/ufs/core/ufshcd.c | 29 ++++++++++++++++++++++++-----
 1 file changed, 24 insertions(+), 5 deletions(-)