linux/drivers/net/ethernet/xilinx
Andre Przywara f735c40ed9 net: axienet: Autodetect 64-bit DMA capability
When newer revisions of the Axienet IP are configured for a 64-bit bus,
we *need* to write to the MSB part of the an address registers,
otherwise the IP won't recognise this as a DMA start condition.
This is even true when the actual DMA address comes from the lower 4 GB.

To autodetect this configuration, at probe time we write all 1's to such
an MSB register, and see if any bits stick. If this is configured for a
32-bit bus, those MSB registers are RES0, so reading back 0 indicates
that no MSB writes are necessary.
On the other hands reading anything other than 0 indicated the need to
write the MSB registers, so we set the respective flag.

The actual DMA mask stays at 32-bit for now. To help bisecting, a
separate patch will enable allocations from higher addresses.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-03-24 16:33:05 -07:00
..
Kconfig net: xilinx: temac: Relax Kconfig dependencies 2020-03-24 16:33:04 -07:00
ll_temac.h net: ll_temac: Add ethtool support for coalesce parameters 2020-02-29 21:30:43 -08:00
ll_temac_main.c net: ll_temac: let core reject the unsupported coalescing parameters 2020-03-17 20:56:58 -07:00
ll_temac_mdio.c net: ll_temac: Prepare indirect register access for multicast support 2019-05-23 09:33:57 -07:00
Makefile
xilinx_axienet.h net: axienet: Autodetect 64-bit DMA capability 2020-03-24 16:33:05 -07:00
xilinx_axienet_main.c net: axienet: Autodetect 64-bit DMA capability 2020-03-24 16:33:05 -07:00
xilinx_axienet_mdio.c net: axienet: Fix MDIO bus parent node detection 2019-06-06 16:24:30 -07:00
xilinx_emaclite.c netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00