Hello Kyuho, On 17/12/2018 08:14, Kyuho Choi wrote: > On Thursday, December 13, 2018, Marc Gonzalez wrote: > > Hello everyone, > > I'm having trouble getting UFS working on an APQ8098 MEDIABOX dev board. > (I'm running v4.20-rc4 with a few UFS patches taken off the MSM list.) > > I'm hoping someone with experience with the UFSHC will spot the one thing > missing that will make everything work! > > [ 4.929036] ufshcd-qcom 1da4000.ufshc: ufshcd_wait_for_dev_cmd: dev_cmd request timedout, tag 31 > [ 4.929229] ufshcd_upiu: query_complete_err: 1da4000.ufshc: HDR:16 00 00 1f 00 81 00 00 00 00 00 00, CDB:06 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > [ 4.937060] ufshcd-qcom 1da4000.ufshc: ufshcd_query_flag: Sending flag query for idn 1 failed, err = -11 > [ 4.950633] ufshcd-qcom 1da4000.ufshc: ufshcd_query_flag_retry: failed with error -11, retries 0 > [ 4.960131] ufshcd_upiu: query_send: 1da4000.ufshc: HDR:16 00 00 1f 00 81 00 00 00 00 00 00, CDB:06 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > [ 4.968909] ufshcd_command: send: 1da4000.ufshc: tag: 31, DB: 0x80000000, size: -1, IS: 0, LBA: 18446744073709551615, opcode: 0x0 > [ 5.034505] ufshcd-qcom 1da4000.ufshc: ufshcd_update_uic_error: UIC error flags = 0x00000000 > [ 5.098107] ufshcd-qcom 1da4000.ufshc: ufshcd_update_uic_error: UIC error flags = 0x00000000 > [ 5.168571] ufshcd-qcom 1da4000.ufshc: ufshcd_update_uic_error: UIC error flags = 0x00000001 > > > Here, your ufs has UIC layer error. Maybe it'll be > affected (or not) fDeviceInit set query cmnd. > > Does this error reproduced every bootup? Yes, the error occurs every single time. > Just for test, Increase query timeout value to over 1.5sec. And how about > another kernel versions like APQ808's reference kernel env? Indeed, this is something I forgot to mention! UFS does work on the downstream kernel (v4.4) using the qcom driver. So this is purely a software initialization issue. I will test your suggestion, thanks. I am also making a minimal vendor kernel, with all drivers removed except UFS, so I can dump all memory accesses at init for clock, regulators, UFS PHY, and UFSHC :-) Regards.