最近整了下SATA PM下端link的问题,6G的盘,速度在初次上电的时候总是建立在1.5G,
但是通过重新加载驱动又能建立在3G了。
首先PM与host端的link能建立在3G,也能正常识别PM的ID,说明与host端的通信是正常的;
PM下端与硬盘的link不能正常建立在3G。
首先尝试在对PM下端port 的Control寄存器进行写入304-301-320进行reset并设置速度到Gen2,
不过没有效果;
再次尝试了在找回link (link_resume)之前,等待7秒时间,这样的操作仍然不起作用。
但是这个尝试启发我需要关注硬盘spin-up的时间,因为2T硬盘的spin-up时间相对1T的硬盘
需要的会久一点,所以做出了如下恢复:
在检测到link为1.5G时,在link_resume中重新进行一次链路复位(对PSCR[2]写入304-301-300);
最终解决了问题,将link建立在3G;
阅读(1378) | 评论(0) | 转发(0) |