summaryrefslogtreecommitdiffstats
path: root/sys/mips/nlm/hal
diff options
context:
space:
mode:
authorjchandra <jchandra@FreeBSD.org>2013-01-24 15:23:01 +0000
committerjchandra <jchandra@FreeBSD.org>2013-01-24 15:23:01 +0000
commit83606c3801cb37a82dc9f9f70c04f00fb41d3866 (patch)
treebac79624766d0b540841cbd1823e091d5bbbf38c /sys/mips/nlm/hal
parentfd309737271993754984c9d12d5bd3f86e3fac12 (diff)
downloadFreeBSD-src-83606c3801cb37a82dc9f9f70c04f00fb41d3866.zip
FreeBSD-src-83606c3801cb37a82dc9f9f70c04f00fb41d3866.tar.gz
Fix credit configuration on Broadcom XLP CMS
The CMS output queue credit configuration register is 64 bit, so use a 64 bit variable while updating it. Obtained from: Venkatesh J V <venkatesh.vivekanandan@broadcom.com>
Diffstat (limited to 'sys/mips/nlm/hal')
-rw-r--r--sys/mips/nlm/hal/fmn.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/mips/nlm/hal/fmn.c b/sys/mips/nlm/hal/fmn.c
index 6d40134..8ebc7537 100644
--- a/sys/mips/nlm/hal/fmn.c
+++ b/sys/mips/nlm/hal/fmn.c
@@ -138,9 +138,9 @@ uint32_t nlm_cms_total_stations = 18 * 4 /*xlp_num_nodes*/;
void nlm_cms_setup_credits(uint64_t base, int destid, int srcid, int credit)
{
- uint32_t val;
+ uint64_t val;
- val = ((credit << 24) | (destid << 12) | (srcid << 0));
+ val = (((uint64_t)credit << 24) | (destid << 12) | (srcid << 0));
nlm_write_cms_reg(base, CMS_OUTPUTQ_CREDIT_CFG, val);
}
OpenPOWER on IntegriCloud