Commit b14ad90c authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'cpsw-cpdma-DDR'



Grygorii Strashko says:

====================
net: ethernet: ti: cpsw: support placing CPDMA descriptors into DDR

This series intended to add support for placing CPDMA descriptors into
DDR by introducing new module parameter "descs_pool_size" to specify
size of descriptor's pool. The "descs_pool_size" defines total number
of CPDMA CPPI descriptors to be used for both ingress/egress packets
processing. If not specified - the default value 256 will be used
which will allow to place descriptor's pool into the internal CPPI
RAM.

In addition, added ability to re-split CPDMA pool of descriptors
between RX and TX path via ethtool '-G' command wich will allow to
configure and fix number of descriptors used by RX and TX path, which,
then, will be split between RX/TX channels proportionally depending on
number of RX/TX channels and its weight.

This allows significantly to reduce UDP packets drop rate for
bandwidth >301 Mbits/sec (am57x).

Before enabling this feature, the am437x SoC has to be fixed as it's
proved that it's not working when CPDMA descriptors placed in DDR.
So, the patch 1 fixes this issue.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 350a4718 c40d8883
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ Required properties:

Optional properties:
- ti,hwmods		: Must be "cpgmac0"
- no_bd_ram		: Must be 0 or 1
- dual_emac		: Specifies Switch to act as Dual EMAC
- syscon		: Phandle to the system control device node, which is
			  the control module device of the am33x
@@ -70,7 +69,6 @@ Examples:
		cpdma_channels = <8>;
		ale_entries = <1024>;
		bd_ram_size = <0x2000>;
		no_bd_ram = <0>;
		rx_descs = <64>;
		mac_control = <0x20>;
		slaves = <2>;
@@ -99,7 +97,6 @@ Examples:
		cpdma_channels = <8>;
		ale_entries = <1024>;
		bd_ram_size = <0x2000>;
		no_bd_ram = <0>;
		rx_descs = <64>;
		mac_control = <0x20>;
		slaves = <2>;
+0 −1
Original line number Diff line number Diff line
@@ -781,7 +781,6 @@
			cpdma_channels = <8>;
			ale_entries = <1024>;
			bd_ram_size = <0x2000>;
			no_bd_ram = <0>;
			mac_control = <0x20>;
			slaves = <2>;
			active_slave = <0>;
+0 −1
Original line number Diff line number Diff line
@@ -669,7 +669,6 @@
			cpdma_channels = <8>;
			ale_entries = <1024>;
			bd_ram_size = <0x2000>;
			no_bd_ram = <0>;
			mac_control = <0x20>;
			slaves = <2>;
			active_slave = <0>;
+0 −1
Original line number Diff line number Diff line
@@ -509,7 +509,6 @@
			cpdma_channels = <8>;
			ale_entries = <1024>;
			bd_ram_size = <0x2000>;
			no_bd_ram = <0>;
			mac_control = <0x20>;
			slaves = <2>;
			active_slave = <0>;
+0 −1
Original line number Diff line number Diff line
@@ -1707,7 +1707,6 @@
			cpdma_channels = <8>;
			ale_entries = <1024>;
			bd_ram_size = <0x2000>;
			no_bd_ram = <0>;
			mac_control = <0x20>;
			slaves = <2>;
			active_slave = <0>;
Loading