Hi Martin, In the UFS driver 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. Please consider this patch series for the next merge window. Thanks, Bart. Changes compared to v4: - Left out the changes that remove the 'init_dev_params' argument. - Added a few new patches. 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_post_device_init() scsi: ufs: core: Call ufshcd_add_scsi_host() later scsi: ufs: core: Introduce ufshcd_process_device_init_result() 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: Remove code that is no longer needed scsi: ufs: core: Move the MCQ scsi_add_host() call scsi: ufs: core: Move code out of an if-statement drivers/ufs/core/ufshcd.c | 288 ++++++++++++++++++++++++-------------- include/ufs/ufshcd.h | 3 + 2 files changed, 183 insertions(+), 108 deletions(-)