summaryrefslogtreecommitdiffstats
path: root/sys/dev/mpt/mpt.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/mpt/mpt.c')
-rw-r--r--sys/dev/mpt/mpt.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/dev/mpt/mpt.c b/sys/dev/mpt/mpt.c
index 7c36061..a95c742 100644
--- a/sys/dev/mpt/mpt.c
+++ b/sys/dev/mpt/mpt.c
@@ -1053,6 +1053,12 @@ mpt_hard_reset(struct mpt_softc *mpt)
mpt_lprt(mpt, MPT_PRT_DEBUG, "hard reset\n");
+ if (mpt->is_1078) {
+ mpt_write(mpt, MPT_OFFSET_RESET_1078, 0x07);
+ DELAY(1000);
+ return;
+ }
+
error = mpt_enable_diag_mode(mpt);
if (error) {
mpt_prt(mpt, "WARNING - Could not enter diagnostic mode !\n");
@@ -2450,6 +2456,11 @@ mpt_download_fw(struct mpt_softc *mpt)
uint32_t ext_offset;
uint32_t data;
+ if (mpt->pci_pio_reg == NULL) {
+ mpt_prt(mpt, "No PIO resource!\n");
+ return (ENXIO);
+ }
+
mpt_prt(mpt, "Downloading Firmware - Image Size %d\n",
mpt->fw_image_size);
OpenPOWER on IntegriCloud