于 2013年03月25日 14:00, Dan Carpenter 写道:
On Mon, Mar 25, 2013 at 10:13:56AM +0800, [email protected] 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
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to