于 2013年03月25日 14:00, Dan Carpenter 写道:
On Mon, Mar 25, 2013 at 10:13:56AM +0800, wei_w...@realsil.com.cn wrote:
+static int rts5249_optimize_phy(struct rtsx_pcr *pcr)
+{
+       int err;
+
+       err = rtsx_pci_write_phy_register(pcr, 0x19, 0xFE46);
+       if (err < 0)
+               return err;
+
+       mdelay(1);
Why do we have the mdelay() and the later msleep(5)?
rtsx_pci_write_phy_register() busy loops until the write succeeds or
it returns -ETIMEOUT.  The extra wait here seems unnecessary.

regards,
dan carpenter


.

Hi,

The busy loops in rtsx_pci_write_phy_register only tell us that the write sequence succeeds. The device still needs to wait for a while until the internal signal stable. Or else the timing won't fit the requirement.
All of the delays in the driver are necessary.

BR,
Wei
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to