Mark, My comments are at a technical level only. For IP issues please consider talking to the PMC Marketing team. To avoid potential conflicts across firmware files of other PMC products you may want to create a driver specific directory under /lib/firmware. Additionally, I noticed that /lib/firmware has company specific directories. So here are some suggestions. #1: /lib/firmware/pmcs/pm8001/*.bin. #2: /lib/firmware/pm8001/*.bin. Thanks, Kamaljit Singh -----Original Message----- From: linux-scsi-owner@xxxxxxxxxxxxxxx [mailto:linux-scsi-owner@xxxxxxxxxxxxxxx] On Behalf Of Mark Salyzyn Sent: Friday, May 04, 2012 4:33 AM To: linux-scsi@xxxxxxxxxxxxxxx Cc: Mark Salyzyn; Jack Wang; James Bottomley; lindar_liu; 于爱华; john_gong Subject: [PATCH] pm8001: support HDA (flashless) mode (take 3) Third time IS the charm :-) The pm8001 can be delivered as a standalone product with flash-programmed firmware images, or without the flash present requiring the driver to upload the images into the chip's RAM and then run. This is called flashless HDA mode. We add support for this firmware upload in the enclosed patch. We try some basic initialization checks of the Firmware, and if it appears dead, we make the assumption the adapter must in-fact be halted in this HDA mode. The Firmware images themselves have not been cleared for open-release by PMC, but they are available in OpenSolaris <hint hint>. PMC's rationalization for not wanting an open-release of the Firmware Images is that they do not want to take support calls except from paying OEMs (such as Xyratex) that are embedding PMC product into the motherboards and thus may have a tested combination of Firmware and Hardware. Please respect this sentiment. Images are expected in: /lib/firmware/aap1img.bin /lib/firmware/ilaimg.bin /lib/firmware/iopimg.bin /lib/firmware/istrimg.bin using the exact same naming convention as PMC and in OpenSolaris (and its followon children) for these image files. Take 2 of the patch, added manifests MAIN_HDA_FLAGS_FORCE_HDA and MAIN_HDA_FLAGS_HDA_FW to check against the bit value of .hda_mode_flag if the SEEPROM is forcing HDA flashless mode. Take 3 of the patch, added hot-plug reset operations, dropped some unnecessary but inert duplicated operations and dropped the firmware images down one level into /lib/firmware/pm8001/ directory. Signed-off-by: Mark Salyzyn <mark_salyzyn@xxxxxxxxxxx> Review-by: Jack Wang <jack_wang@xxxxxxxxx> Cc: James Bottomley <JBottomley@xxxxxxxxxxxxx> Cc: lindar_liu@xxxxxxxxx Cc: crystal_yu@xxxxxxxxx Cc: john_gong@xxxxxxxxx drivers/scsi/pm8001/pm8001_hwi.c | 582 +++++++++++++++++++++++++++++++++++--- drivers/scsi/pm8001/pm8001_hwi.h | 40 ++ drivers/scsi/pm8001/pm8001_init.c | 36 ++ drivers/scsi/pm8001/pm8001_sas.h | 3 4 files changed, 616 insertions(+), 45 deletions(-) ��.n��������+%������w��{.n�����{������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f