Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60d585ad authored by Dean Luick's avatar Dean Luick Committed by Doug Ledford
Browse files

IB/hfi1: Simplify init_qpmap_table()



Make init_qpmap_table() easier to understand by simplifying
the loop indexing and writing each register when it is "full",
removing the need for a follow-on register write.

Reviewed-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
Reviewed-by: default avatarMike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: default avatarDean Luick <dean.luick@intel.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent de882ff5
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -13451,20 +13451,17 @@ static void init_qpmap_table(struct hfi1_devdata *dd,
	int i;
	u64 ctxt = first_ctxt;

	for (i = 0; i < 256;) {
	for (i = 0; i < 256; i++) {
		reg |= ctxt << (8 * (i % 8));
		i++;
		ctxt++;
		if (ctxt > last_ctxt)
			ctxt = first_ctxt;
		if (i % 8 == 0) {
		if (i % 8 == 7) {
			write_csr(dd, regno, reg);
			reg = 0;
			regno += 8;
		}
	}
	if (i % 8)
		write_csr(dd, regno, reg);

	add_rcvctrl(dd, RCV_CTRL_RCV_QP_MAP_ENABLE_SMASK
			| RCV_CTRL_RCV_BYPASS_ENABLE_SMASK);