[PATCH] MIPS: Octeon: Use defines instead of magic numbers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch will be followed by a similar patch to
drivers/staging/octeon/ethernet.c

Signed-off-by: Asbjoern Sloth Toennesen <asbjorn@xxxxxxxxxx>
---
 arch/mips/cavium-octeon/executive/cvmx-helper.c | 15 ++++++++++-----
 arch/mips/include/asm/octeon/cvmx-ipd-defs.h    |  2 ++
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/arch/mips/cavium-octeon/executive/cvmx-helper.c b/arch/mips/cavium-octeon/executive/cvmx-helper.c
index ff26d02..9b938c8 100644
--- a/arch/mips/cavium-octeon/executive/cvmx-helper.c
+++ b/arch/mips/cavium-octeon/executive/cvmx-helper.c
@@ -46,6 +46,8 @@
 #include <asm/octeon/cvmx-smix-defs.h>
 #include <asm/octeon/cvmx-asxx-defs.h>
 
+#include <linux/if_ether.h>
+
 /**
  * cvmx_override_pko_queue_priority(int ipd_port, uint64_t
  * priorities[16]) is a function pointer. It is meant to allow
@@ -918,7 +920,8 @@ int __cvmx_helper_errata_fix_ipd_ptr_alignment(void)
 		p64 = (uint64_t *) cvmx_phys_to_ptr(pkt_buffer.s.addr);
 		p64[0] = 0xffffffffffff0000ull;
 		p64[1] = 0x08004510ull;
-		p64[2] = ((uint64_t) (size - 14) << 48) | 0x5ae740004000ull;
+		p64[2] = ((uint64_t) (size - ETH_HLEN) << 48)
+			| 0x5ae740004000ull;
 		p64[3] = 0x3a5fc0a81073c0a8ull;
 
 		for (i = 0; i < num_segs; i++) {
@@ -954,11 +957,13 @@ int __cvmx_helper_errata_fix_ipd_ptr_alignment(void)
 			       1 << INDEX(FIX_IPD_OUTPORT));
 
 		cvmx_write_csr(CVMX_GMXX_RXX_JABBER
-			       (INDEX(FIX_IPD_OUTPORT),
-				INTERFACE(FIX_IPD_OUTPORT)), 65392 - 14 - 4);
+				(INDEX(FIX_IPD_OUTPORT),
+					INTERFACE(FIX_IPD_OUTPORT)),
+				CVMX_IPD_MAX_MTU - ETH_HLEN - ETH_FCS_LEN);
 		cvmx_write_csr(CVMX_GMXX_RXX_FRM_MAX
-			       (INDEX(FIX_IPD_OUTPORT),
-				INTERFACE(FIX_IPD_OUTPORT)), 65392 - 14 - 4);
+				(INDEX(FIX_IPD_OUTPORT),
+					INTERFACE(FIX_IPD_OUTPORT)),
+				CVMX_IPD_MAX_MTU - ETH_HLEN - ETH_FCS_LEN);
 
 		cvmx_pko_send_packet_prepare(FIX_IPD_OUTPORT,
 					     cvmx_pko_get_base_queue
diff --git a/arch/mips/include/asm/octeon/cvmx-ipd-defs.h b/arch/mips/include/asm/octeon/cvmx-ipd-defs.h
index 1193f73..a877917 100644
--- a/arch/mips/include/asm/octeon/cvmx-ipd-defs.h
+++ b/arch/mips/include/asm/octeon/cvmx-ipd-defs.h
@@ -28,6 +28,8 @@
 #ifndef __CVMX_IPD_DEFS_H__
 #define __CVMX_IPD_DEFS_H__
 
+#define CVMX_IPD_MAX_MTU 65392
+
 #define CVMX_IPD_1ST_MBUFF_SKIP (CVMX_ADD_IO_SEG(0x00014F0000000000ull))
 #define CVMX_IPD_1st_NEXT_PTR_BACK (CVMX_ADD_IO_SEG(0x00014F0000000150ull))
 #define CVMX_IPD_2nd_NEXT_PTR_BACK (CVMX_ADD_IO_SEG(0x00014F0000000158ull))
-- 
2.9.3





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux