net: dp83640: fix broken calibration routine.
authorRichard Cochran <richardcochran@gmail.com>
Mon, 25 May 2015 09:55:43 +0000 (11:55 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 May 2015 22:21:59 +0000 (18:21 -0400)
commit397a253af5031de4a4612210055935309af4472c
tree9a182f6ffa54801b4b2189f88f4fbdfb2ac68886
parent466c5ac8bdf29a382d064923a60ef302dd3b2aeb
net: dp83640: fix broken calibration routine.

Currently, the calibration function that corrects the initial offsets
among multiple devices only works the first time.  If the function is
called more than once, the calibration fails and bogus offsets will be
programmed into the devices.

In a well hidden spot, the device documentation tells that trigger indexes
0 and 1 are special in allowing the TRIG_IF_LATE flag to actually work.

This patch fixes the issue by using one of the special triggers during the
recalibration method.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/dp83640.c