summaryrefslogtreecommitdiffstats
path: root/target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch')
-rw-r--r--target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch b/target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch
new file mode 100644
index 000000000..7e2a4a12d
--- /dev/null
+++ b/target/linux/ixp4xx-2.6/patches/101-npe_driver_fix_qmgr.patch
@@ -0,0 +1,36 @@
+
+---
+ drivers/net/ixp4xx/ixp4xx_qmgr.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- linux-ixp4xx.orig/drivers/net/ixp4xx/ixp4xx_qmgr.c 2006-10-15 18:52:35.000000000 +0200
++++ linux-ixp4xx/drivers/net/ixp4xx/ixp4xx_qmgr.c 2006-10-15 18:54:32.000000000 +0200
+@@ -107,7 +107,7 @@ static int get_free_qspace(struct qm_qmg
+ return -1;
+ }
+
+-static inline int log2(int x)
++static inline int _log2(int x)
+ {
+ int r=0;
+ while(x>>=1)
+@@ -127,7 +127,7 @@ static inline int log2(int x)
+ */
+ static int conf_q_regs(struct qm_queue *queue)
+ {
+- int bsize = log2(queue->len/16);
++ int bsize = _log2(queue->len/16);
+ int baddr = queue->addr + IX_QMGR_QCFG_SIZE;
+
+ /* +2, because baddr is in words and not in bytes */
+@@ -141,8 +141,8 @@ void queue_set_watermarks(struct qm_queu
+ u32 val;
+ /* calculate the register values
+ * 0->0, 1->1, 2->2, 4->3, 8->4 16->5...*/
+- ne = log2(ne<<1) & 0x7;
+- nf = log2(nf<<1) & 0x7;
++ ne = _log2(ne<<1) & 0x7;
++ nf = _log2(nf<<1) & 0x7;
+
+ /* Mask out old watermarks */
+ val = queue_read_cfg_reg(queue) & ~0xfc000000;