Skip to contentSkip to conversation

ib_qib: use request_firmware() to load SD7220 firmware

PATCH Applied Ben Hutchings 1 participant 1 message Jun 12, 2010 InfiniBand

lore
Share & tools
lore
#0 lore raw

PATCH 2/2 ib_qib: use request_firmware() to load SD7220 firmware

---
This is compile-tested only, but closely based on a patch for the older ib_ipath driver, included in recent Debian kernel packages.

Ben.

 drivers/infiniband/hw/qib/Makefile         |    2 +-
 drivers/infiniband/hw/qib/qib_7220.h       |    7 -
 drivers/infiniband/hw/qib/qib_sd7220.c     |   53 ++-
 drivers/infiniband/hw/qib/qib_sd7220_img.c | 1081 ----------------------------
 firmware/Makefile                          |    1 +
 firmware/WHENCE                            |   40 +
 firmware/qlogic/sd7220.fw.ihex             |  513 +++++++++++++
 7 files changed, 598 insertions(+), 1099 deletions(-)
 delete mode 100644 drivers/infiniband/hw/qib/qib_sd7220_img.c
 create mode 100644 firmware/qlogic/sd7220.fw.ihex
drivers/infiniband/hw/qib/Makefile +1 -1
index c6515a1..f12d7bb 100644
@@ -6,7 +6,7 @@ ib_qib-y := qib_cq.o qib_diag.o qib_dma.o qib_driver.o qib_eeprom.o \
 	qib_qp.o qib_qsfp.o qib_rc.o qib_ruc.o qib_sdma.o qib_srq.o \
 	qib_sysfs.o qib_twsi.o qib_tx.o qib_uc.o qib_ud.o \
 	qib_user_pages.o qib_user_sdma.o qib_verbs_mcast.o qib_iba7220.o \
-	qib_sd7220.o qib_sd7220_img.o qib_iba7322.o qib_verbs.o
+	qib_sd7220.o qib_iba7322.o qib_verbs.o
 
 # 6120 has no fallback if no MSI interrupts, others can do INTx
 ib_qib-$(CONFIG_PCI_MSI) += qib_iba6120.o
drivers/infiniband/hw/qib/qib_7220.h +0 -7
index ea0bfd8..21f374a 100644
@@ -109,10 +109,6 @@ struct qib_chippport_specific {
  */
 int qib_sd7220_presets(struct qib_devdata *dd);
 int qib_sd7220_init(struct qib_devdata *dd);
-int qib_sd7220_prog_ld(struct qib_devdata *dd, int sdnum, u8 *img,
-		       int len, int offset);
-int qib_sd7220_prog_vfy(struct qib_devdata *dd, int sdnum, const u8 *img,
-			int len, int offset);
 void qib_sd7220_clr_ibpar(struct qib_devdata *);
 /*
  * Below used for sdnum parameter, selecting one of the two sections
@@ -121,9 +117,6 @@ void qib_sd7220_clr_ibpar(struct qib_devdata *);
  */
 #define IB_7220_SERDES 2
 
-int qib_sd7220_ib_load(struct qib_devdata *dd);
-int qib_sd7220_ib_vfy(struct qib_devdata *dd);
-
 static inline u32 qib_read_kreg32(const struct qib_devdata *dd,
 				  const u16 regno)
 {
drivers/infiniband/hw/qib/qib_sd7220.c +43 -10

131 lines not on this page · raw message

drivers/infiniband/hw/qib/qib_sd7220_img.c deleted +0 -1081

1,081 lines not on this page · raw message

firmware/Makefile +1 -0
index 243409f..ccfa2fe 100644
@@ -66,6 +66,7 @@ fw-shipped-$(CONFIG_DVB_AV7110) += av7110/bootcode.bin
 fw-shipped-$(CONFIG_DVB_TTUSB_BUDGET) += ttusb-budget/dspbootcode.bin
 fw-shipped-$(CONFIG_E100) += e100/d101m_ucode.bin e100/d101s_ucode.bin \
 			     e100/d102e_ucode.bin
+fw-shipped-$(CONFIG_INFINIBAND_QIB) += qlogic/sd7220.fw
 fw-shipped-$(CONFIG_MYRI_SBUS) += myricom/lanai.bin
 fw-shipped-$(CONFIG_PCMCIA_PCNET) += cis/LA-PCM.cis cis/PCMLM28.cis \
 				     cis/DP83903.cis cis/NE2K.cis \
firmware/WHENCE +40 -0
index e8e550f..ae5f8a4 100644
@@ -858,3 +858,43 @@ Licence:
 Found in hex form in kernel source.
 
 --------------------------------------------------------------------------
+
+Driver: ib_qib - QLogic Infiniband
+
+File: qlogic/sd7220.fw
+
+Licence:
+
+ * Copyright (c) 2007, 2008 QLogic Corporation. All rights reserved.
+ *
+ * This software is available to you under a choice of one of two
+ * licenses.  You may choose to be licensed under the terms of the GNU
+ * General Public License (GPL) Version 2, available from the file
+ * COPYING in the main directory of this source tree, or the
+ * OpenIB.org BSD license below:
+ *
+ *     Redistribution and use in source and binary forms, with or
+ *     without modification, are permitted provided that the following
+ *     conditions are met:
+ *
+ *      - Redistributions of source code must retain the above
+ *        copyright notice, this list of conditions and the following
+ *        disclaimer.
+ *
+ *      - Redistributions in binary form must reproduce the above
+ *        copyright notice, this list of conditions and the following
+ *        disclaimer in the documentation and/or other materials
+ *        provided with the distribution.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+
+Found in hex form in kernel source.
+
+--------------------------------------------------------------------------
firmware/qlogic/sd7220.fw.ihex new file +513 -0

513 lines not on this page · raw message

Signature · 1 line
1.7.1