QE UEC: Extend number of supported UECs to 4
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
This patch extends the number of supported UECs to 4. Note that the problem of QE thread resources exhaustion is resolved by setting the correct number of QE threads according to Ethernet type (GBE or FE).
Quoted 1 line
diff -purN
drivers/qe/uec.c.origdrivers/qe/uec.c
qe/uec.c renamed from qe/uec.c.orig +42 -1
@@ -40,8 +40,13 @@ static uec_info_t eth1_uec_info = { .tx_clock = CFG_UEC1_TX_CLK, .eth_type = CFG_UEC1_ETH_TYPE, }, +#if (CFG_UEC1_ETH_TYPE ==FAST_ETH ) + .num_threads_tx = UEC_NUM_OF_THREADS_1, + .num_threads_rx = UEC_NUM_OF_THREADS_1, +#else .num_threads_tx = UEC_NUM_OF_THREADS_4, .num_threads_rx = UEC_NUM_OF_THREADS_4, +#endif .riscTx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .riscRx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .tx_bd_ring_len = 16,
@@ -58,8 +63,13 @@ static uec_info_t eth2_uec_info = { .tx_clock = CFG_UEC2_TX_CLK, .eth_type = CFG_UEC2_ETH_TYPE, }, +#if (CFG_UEC2_ETH_TYPE ==FAST_ETH ) + .num_threads_tx = UEC_NUM_OF_THREADS_1, + .num_threads_rx = UEC_NUM_OF_THREADS_1, +#else .num_threads_tx = UEC_NUM_OF_THREADS_4, .num_threads_rx = UEC_NUM_OF_THREADS_4, +#endif .riscTx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .riscRx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .tx_bd_ring_len = 16,
@@ -68,7 +78,6 @@ static uec_info_t eth2_uec_info = { .enet_interface = CFG_UEC2_INTERFACE_MODE, };#endif - #ifdef CONFIG_UEC_ETH3 static uec_info_t eth3_uec_info = { .uf_info = {
@@ -77,8 +86,13 @@ static uec_info_t eth3_uec_info = { .tx_clock = CFG_UEC3_TX_CLK, .eth_type = CFG_UEC3_ETH_TYPE, }, +#if (CFG_UEC3_ETH_TYPE ==FAST_ETH ) + .num_threads_tx = UEC_NUM_OF_THREADS_1, + .num_threads_rx = UEC_NUM_OF_THREADS_1, +#else .num_threads_tx = UEC_NUM_OF_THREADS_4, .num_threads_rx = UEC_NUM_OF_THREADS_4, +#endif .riscTx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .riscRx = QE_RISC_ALLOCATION_RISC1_AND_RISC2, .tx_bd_ring_len = 16,
@@ -87,6 +101,29 @@ static uec_info_t eth3_uec_info = { .enet_interface = CFG_UEC3_INTERFACE_MODE, };#endif +#ifdef CONFIG_UEC_ETH4 +static uec_info_t eth4_uec_info = { + .uf_info = { + .ucc_num =CFG_UEC4_UCC_NUM , + .rx_clock =CFG_UEC4_RX_CLK , + .tx_clock =CFG_UEC4_TX_CLK , + .eth_type =CFG_UEC4_ETH_TYPE , + }, +#if (CFG_UEC4_ETH_TYPE == FAST_ETH) + .num_threads_tx =UEC_NUM_OF_THREADS_1 , + .num_threads_rx =UEC_NUM_OF_THREADS_1 , +#else + .num_threads_tx =UEC_NUM_OF_THREADS_4 , + .num_threads_rx =UEC_NUM_OF_THREADS_4 , +#endif + .riscTx =QE_RISC_ALLOCATION_RISC1_AND_RISC2 , + .riscRx =QE_RISC_ALLOCATION_RISC1_AND_RISC2 , + .tx_bd_ring_len =16 , + .rx_bd_ring_len =16 , + .phy_address =CFG_UEC4_PHY_ADDR , + .enet_interface =CFG_UEC4_INTERFACE_MODE , +}; +#endif static int uec_mac_enable (uec_private_t *uec,comm_dir_e mode) {
@@ -1262,6 +1299,10 @@ int uec_initialize(int index)#ifdef CONFIG_UEC_ETH3 uec_info = ð3_uec_info;#endif + }else if (index ==3 ) { +#ifdef CONFIG_UEC_ETH4 + uec_info = ð4_uec_info; +#endif }else {printf ("%s: index is illegal.\n" , __FUNCTION__);return -EINVAL ;
Quoted 1 line
diff -purN
net/eth.c.orignet/eth.c
eth.c renamed from eth.c.orig +3 -0
@@ -217,6 +217,9 @@ int eth_initialize(bd_t *bis)#if defined(CONFIG_UEC_ETH3 )uec_initialize (2 );#endif +#if defined(CONFIG_UEC_ETH4 ) +uec_initialize (3 ); +#endif #if defined(FEC_ENET ) || defined(CONFIG_ETHER_ON_FCC )fec_initialize (bis);
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
David,
Sorry, I can not apply it. The patch has problem.
I suggest you manage source code with git,
and generate patch with git.
Thanks,
Dave
Quoted 7 lines · David Saada
This patch extends the number of supported UECs to 4. Note that the problem of QE thread resources exhaustion is resolved by setting the correct number of QE threads according to Ethernet type (GBE or FE).
Signed-off-by David Saada <[email protected]>Quoted 1 line
diff -purN
drivers/qe/uec.c.origdrivers/qe/uec.c
'>' is added.
I don't know how did you generate the patch.
Quoted 8 lines
qe/uec.c renamed from qe/uec.c.orig +0
-0@@ -40,8 +40,13 @@ static uec_info_t eth1_uec_info = { .tx_clock = CFG_UEC1_TX_CLK, .eth_type = CFG_UEC1_ETH_TYPE, },Quoted 1 line
diff -purN
net/eth.c.orignet/eth.c
same as below.
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
Quoted 8 lines
Sorry, I can not apply it. The patch has problem.
I suggest you manage source code with git,
and generate patch with git.Thanks,
Dave
Dave,
We have another source code repository (Synergy), and managing the source code with git is just not possible. I have posted many patches in the past using diff -purN, and there was never any problem.
Quoted 19 lines · David Saada
Quoted 7 lines
This patch extends the number of supported UECs to 4. Note that the problem of QE thread resources exhaustion is resolved by setting the correct number of QE threads according to Ethernet type (GBE or FE).
Signed-off-by David Saada <[email protected]>Quoted 1 line
diff -purN
drivers/qe/uec.c.origdrivers/qe/uec.c'>' is added.
I don't know how did you generate the patch.Quoted 6 lines
qe/uec.c renamed from qe/uec.c.orig +0
-0@@ -40,8 +40,13 @@ static uec_info_t eth1_uec_info = { .tx_clock = CFG_UEC1_TX_CLK, .eth_type = CFG_UEC1_ETH_TYPE, },
Quoted 3 lines
Quoted 1 line
Quoted 1 line
diff -purN
net/eth.c.orignet/eth.csame as below.
I can't understand the problem. Is it the '>' before the diff? I just added it manually - I can remove it.
David.
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
Quoted 5 lines
We have another source code repository (Synergy), and managing the source code with git is just not possible. I have posted many patches in
the past using diff -purN, and there was never any problem.
Ok, maybe problem occur in my site.
If Kim or Ben can apply it successfully, please accept it.
Thanks,
Dave
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
Quoted 11 lines
Quoted 4 lines
We have another source code repository (Synergy), and managing the source code with git is just not possible. I have posted many patches in
the past using diff -purN, and there was never any problem.Ok, maybe problem occur in my site.
If Kim or Ben can apply it successfully, please accept it.
Thanks,
Dave
Sure. I will wait with the second part of the patch (UEC MII commands) until this is sorted out.
Thanks,
David.
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
Quoted 9 lines · David Saada
Quoted 9 lines
Quoted 5 lines
We have another source code repository (Synergy), and managing the source code with git is just not possible. I have posted many patches in
the past using diff -purN, and there was never any problem.Ok, maybe problem occur in my site.
If Kim or Ben can apply it successfully, please accept it.
Quoted 10 lines
Quoted 3 lines
Thanks,
DaveSure. I will wait with the second part of the patch (UEC MII commands) until this is sorted out.
Thanks,
David.
I was able to apply this with a little manual tweaking. I had to remove the '>' from in front of each "diff -purN", and change the following patterns:
--- /file.orig
+++ /file
becomes:
--- a/file
+++ b/file
I'll send a pull request tomorrow to pick this up.
thanks,
Ben
PATCH v3 1/1 QE UEC: Extend number of supported UECs to 4
Quoted 1 line
I was able to apply this with a little manual tweaking. I had to
remove
Quoted 11 lines
the '>' from in front
of each "diff -purN", and change the following patterns:file renamed from file.orig +0
-0becomes:
file +0
-0
Quoted 4 lines
I'll send a pull request tomorrow to pick this up.
thanks,
Ben
Thanks Ben. I'll keep posting my future patches this way (no hassle here).
David.