linux/drivers/net
Marc Kleine-Budde 7da29f97d6 can: dev: can-calc-bit-timing(): better sample point calculation
This patch optimizes the calculation of the sample point. To understand what it
does have a look at the original implementation.

If there is a combination of timing parameters where both the bitrate and
sample point error are 0 the current implementation will find it.

However if the reference clock doesn't allow an optimal bitrate (this means the
bitrate error is always != 0) there might be several timing parameter
combinations having the same bitrate error. The original implementation will
allways choose the one with the highest brp. The actual sample point error
isn't taken into account.

This patch changes the algorithm to minimize the sample point error, too. Now a
brp/tseg combination is accepted as better if one of these condition are
fulfilled:
1) the bit rate error must be smaller, or
2) the bit rate error must be equal and
   the sample point error must be equal or smaller

If a smaller bit rate error is found the sample point error is reset. This
ensures that we first optimize for small bit rate error and then for small
sample point errors.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-06-17 15:39:42 +02:00
..
appletalk
arcnet
bonding net: add netdev_lockdep_set_classes() helper 2016-06-09 13:28:37 -07:00
caif
can can: dev: can-calc-bit-timing(): better sample point calculation 2016-06-17 15:39:42 +02:00
cris
dsa dsa: b53: fix big-endian register access 2016-06-16 17:15:28 -07:00
ethernet net: gianfar: fix old-style declaration 2016-06-16 22:06:30 -07:00
fddi
fjes net: fjes: fjes_main: Remove create_workqueue 2016-06-03 19:29:42 -04:00
hamradio hamradio: baycom: fix old-style declaration 2016-06-16 22:06:30 -07:00
hippi
hyperv netvsc: get rid of completion timeouts 2016-06-09 11:40:05 -07:00
ieee802154 net: ieee802154/adf7242: syntax error ifdef DEBUG 2016-05-19 11:30:56 -07:00
ipvlan net: ipvlan: call netdev_lockdep_set_classes() 2016-06-09 13:28:37 -07:00
irda net: irda: avoid null pointer dereference 2016-05-19 11:30:57 -07:00
phy mdio: mux: avoid 'maybe-uninitialized' warning 2016-06-15 20:48:52 -07:00
plip
ppp net: add netdev_lockdep_set_classes() helper 2016-06-09 13:28:37 -07:00
slip
team net: add netdev_lockdep_set_classes() helper 2016-06-09 13:28:37 -07:00
usb r8152: modify the check of the flag of PHY_RESET in set_speed function 2016-06-16 17:08:33 -07:00
vmxnet3 vmxnet3: update to version 3 2016-06-16 22:37:05 -07:00
wan drivers/net/fsl_ucc: Do not prefix header guard with CONFIG_ 2016-06-08 11:07:17 -07:00
wimax
wireless For the next cycle, we have the following: 2016-06-10 23:13:32 -07:00
xen-netback xen-netback: only deinitialized hash if it was initialized 2016-05-20 17:41:18 -04:00
dummy.c
eql.c
geneve.c udp: prevent skbs lingering in tunnel socket queues 2016-05-20 19:56:02 -04:00
gtp.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c loopback: make use of NETIF_F_GSO_SOFTWARE 2016-06-03 19:37:21 -04:00
macsec.c macsec: fix netlink attribute for key id 2016-05-20 11:14:13 -07:00
macvlan.c net: macvlan: call netdev_lockdep_set_classes() 2016-06-09 13:28:37 -07:00
macvtap.c macvtap: use common code for virtio_net_hdr and skb GSO conversion 2016-06-10 23:03:55 -07:00
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c net: Fix coding style warnings and errors. 2016-05-19 11:48:27 -07:00
sungem_phy.c
tun.c tun: fix csum generation for tap devices 2016-06-15 14:00:33 -07:00
veth.c
virtio_net.c virtio_net: fix csum generation for virtio-net devices 2016-06-14 03:03:34 -04:00
vrf.c net: vrf: Switch dst dev to loopback on device delete 2016-06-15 21:39:59 -07:00
vxlan.c vxlan: Accept user specified MTU value when create new vxlan link 2016-05-31 11:46:00 -07:00
xen-netfront.c