]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
net: dp83640: fix broken calibration routine.
authorRichard Cochran <richardcochran@gmail.com>
Mon, 25 May 2015 09:55:43 +0000 (11:55 +0200)
committerJiri Slaby <jslaby@suse.cz>
Wed, 10 Jun 2015 09:18:11 +0000 (11:18 +0200)
commit170ba4f7460901954e41d5915356dfb10247ff63
tree3a287d9310cace6cdf325fcd267e4088a0846e69
parent144b2988119e8b58bdb7bef0e51d07dc66b06254
net: dp83640: fix broken calibration routine.

[ Upstream commit 397a253af5031de4a4612210055935309af4472c ]

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>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/net/phy/dp83640.c