aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHaiying Wang <Haiying.Wang@freescale.com>2009-04-29 14:14:35 -0400
committerKumar Gala <galak@kernel.crashing.org>2009-05-19 01:50:23 -0400
commit345f84227b50e90329dd303499024603596566f4 (patch)
tree609868e873f374aacdbb58a37db8de4517bf4d8e
parent06c4435021f4856261edd01e2691071edeb8fa51 (diff)
net/ucc_geth: update riscTx and riscRx in ucc_geth
Change the definition of riscTx and riscRx to unsigned integer instead of enum, and change their values to support 4 risc allocation if the qe has 4 RISC engines. Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-rw-r--r--drivers/net/ucc_geth.c14
-rw-r--r--drivers/net/ucc_geth.h4
2 files changed, 13 insertions, 5 deletions
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c
index 44f8392da117..8287bc19868b 100644
--- a/drivers/net/ucc_geth.c
+++ b/drivers/net/ucc_geth.c
@@ -270,7 +270,7 @@ static int fill_init_enet_entries(struct ucc_geth_private *ugeth,
270 u8 num_entries, 270 u8 num_entries,
271 u32 thread_size, 271 u32 thread_size,
272 u32 thread_alignment, 272 u32 thread_alignment,
273 enum qe_risc_allocation risc, 273 unsigned int risc,
274 int skip_page_for_first_entry) 274 int skip_page_for_first_entry)
275{ 275{
276 u32 init_enet_offset; 276 u32 init_enet_offset;
@@ -307,7 +307,7 @@ static int fill_init_enet_entries(struct ucc_geth_private *ugeth,
307static int return_init_enet_entries(struct ucc_geth_private *ugeth, 307static int return_init_enet_entries(struct ucc_geth_private *ugeth,
308 u32 *p_start, 308 u32 *p_start,
309 u8 num_entries, 309 u8 num_entries,
310 enum qe_risc_allocation risc, 310 unsigned int risc,
311 int skip_page_for_first_entry) 311 int skip_page_for_first_entry)
312{ 312{
313 u32 init_enet_offset; 313 u32 init_enet_offset;
@@ -342,7 +342,7 @@ static int dump_init_enet_entries(struct ucc_geth_private *ugeth,
342 u32 __iomem *p_start, 342 u32 __iomem *p_start,
343 u8 num_entries, 343 u8 num_entries,
344 u32 thread_size, 344 u32 thread_size,
345 enum qe_risc_allocation risc, 345 unsigned int risc,
346 int skip_page_for_first_entry) 346 int skip_page_for_first_entry)
347{ 347{
348 u32 init_enet_offset; 348 u32 init_enet_offset;
@@ -2135,6 +2135,14 @@ static int ucc_struct_init(struct ucc_geth_private *ugeth)
2135 return -ENOMEM; 2135 return -ENOMEM;
2136 } 2136 }
2137 2137
2138 /* read the number of risc engines, update the riscTx and riscRx
2139 * if there are 4 riscs in QE
2140 */
2141 if (qe_get_num_of_risc() == 4) {
2142 ug_info->riscTx = QE_RISC_ALLOCATION_FOUR_RISCS;
2143 ug_info->riscRx = QE_RISC_ALLOCATION_FOUR_RISCS;
2144 }
2145
2138 ugeth->ug_regs = ioremap(uf_info->regs, sizeof(*ugeth->ug_regs)); 2146 ugeth->ug_regs = ioremap(uf_info->regs, sizeof(*ugeth->ug_regs));
2139 if (!ugeth->ug_regs) { 2147 if (!ugeth->ug_regs) {
2140 if (netif_msg_probe(ugeth)) 2148 if (netif_msg_probe(ugeth))
diff --git a/drivers/net/ucc_geth.h b/drivers/net/ucc_geth.h
index 2f8ee7c87efe..46bb1d233597 100644
--- a/drivers/net/ucc_geth.h
+++ b/drivers/net/ucc_geth.h
@@ -1120,8 +1120,8 @@ struct ucc_geth_info {
1120 enum ucc_geth_maccfg2_pad_and_crc_mode padAndCrc; 1120 enum ucc_geth_maccfg2_pad_and_crc_mode padAndCrc;
1121 enum ucc_geth_num_of_threads numThreadsTx; 1121 enum ucc_geth_num_of_threads numThreadsTx;
1122 enum ucc_geth_num_of_threads numThreadsRx; 1122 enum ucc_geth_num_of_threads numThreadsRx;
1123 enum qe_risc_allocation riscTx; 1123 unsigned int riscTx;
1124 enum qe_risc_allocation riscRx; 1124 unsigned int riscRx;
1125}; 1125};
1126 1126
1127/* structure representing UCC GETH */ 1127/* structure representing UCC GETH */