Instead of keeping track of the mac_control register value and
only writing to it when it changed just always write it. This is
more safe anyway since the mac_control register content is altered
in the soft_reset functions.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Since the cpsw has two slaves which handle one network interface
each the slave number is interesting during debugging. use the
slave device for dev_dbg.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This makes it possible to directly call dev_dbg and friends
on the slave. Also the ethernet aliases in the devicetree
now match the devices.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
RX DMA Head Descriptor Pointer can get 0 when there is a lot of traffic,
which results in a timeout error. A good way to provoke this error is by
sending lots of ARP requests. This patch makes sure that the RX DMA Head
Descriptor Pointer is set.
The origin driver, from which this is derived, already contains this fix.
Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Prober slave_num is needed by cpsw_gmii_sel_am335x to calc reg value.
Signed-off-by: Jan Weitzel <j.weitzel@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
We currently only use one slave, so drop for_each_slave and hardcode
slave[0] until we pass the proper context to the functions that makes
this hack unnecessary.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Devicetree probed cpsw devices won't have platform_data, so inline
the fields from slave_data instead of keeping a pointer.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>