Hi Martin, This patch series addresses the following issues in the UFS driver initialization code: * The legacy and MCQ scsi_add_host() calls occur in different functions. This patch series reduces the number of scsi_add_host() calls from two to one and hence makes the UFS driver easier to maintain. * Two functions have a boolean 'init_dev_params' argument. This patch series removes that argument from both functions by splitting functions and by pushing some function calls from caller into callee. Please consider this patch series for the next merge window. Thanks, Bart. Changes compared to v3: - Split patch "Move the MCQ scsi_add_host() call" into two patches to make it easier for reviewers. Changes compared to v2: - Improved several patch descriptions. - Moved one source code comment. Changes compared to v1: - Fixed a compiler warning reported by the kernel build robot. - Improved patch descriptions. Bart Van Assche (10): scsi: ufs: core: Introduce ufshcd_add_scsi_host() scsi: ufs: core: Introduce ufshcd_activate_link() scsi: ufs: core: Introduce ufshcd_post_device_init() scsi: ufs: core: Call ufshcd_add_scsi_host() later scsi: ufs: core: Move the ufshcd_device_init() call scsi: ufs: core: Move the ufshcd_device_init(hba, true) call scsi: ufs: core: Expand the ufshcd_device_init(hba, true) call scsi: ufs: core: Move the MCQ scsi_add_host() call scsi: ufs: core: Move code out of an if-statement scsi: ufs: core: Remove the second argument of ufshcd_device_init() drivers/ufs/core/ufshcd.c | 268 ++++++++++++++++++++++---------------- 1 file changed, 153 insertions(+), 115 deletions(-)