From: Xose Vazquez Perez <xose.vazquez@gmail.com>
To: Julian Calaby <julian.calaby@gmail.com>
Cc: qla2xxx-upstream@qlogic.com,
linux-scsi <linux-scsi@vger.kernel.org>,
"James E.J. Bottomley" <JBottomley@odin.com>,
Linux Firmware Maintainers <linux-firmware@kernel.org>
Subject: Re: [PATCH for-next] scsi: qla2xxx: Hide unavailable firmware
Date: Wed, 7 Oct 2015 17:13:06 +0200 [thread overview]
Message-ID: <56153682.1030801@gmail.com> (raw)
In-Reply-To: <CAGRGNgVSuMD3B4B0Jr-TOT5Kr4NRvJR=0e3tu71OxUzQtrq2sg@mail.gmail.com>
On Fri, May 22, 2015 at 10:00 AM, Julian Calaby <julian.calaby@gmail.com> wrote:
> Some qla2xxx devices have firmware stored in flash on the device,
> however for debugging and triage purposes, Qlogic staff like to
> be able to load known-good versions of these firmwares through
> request_firmware().
>
> These firmware files were never distributed and are unlikely to ever
> be released publically, so to hide these missing firmware files from
> scripts which check such things, (e.g. Debian's initramfs-tools) put
> them behind a new EXPERT Kconfig option.
What is state of this patch ?
> Cc: <qla2xxx-upstream@qlogic.com>
> Cc: James E.J. Bottomley <JBottomley@odin.com>
> Cc: Linux Firmware Maintainers <linux-firmware@kernel.org>
> Signed-off-by: Julian Calaby <julian.calaby@gmail.com>
> ---
> drivers/scsi/qla2xxx/Kconfig | 25 +++++++++++++++++++++++++
> drivers/scsi/qla2xxx/qla_os.c | 40 +++++++++++++++++++++++++++-------------
> 2 files changed, 52 insertions(+), 13 deletions(-)
>
> This is against linux-next @next-20150520 and has been compile
> tested only.
>
> diff --git a/drivers/scsi/qla2xxx/Kconfig b/drivers/scsi/qla2xxx/Kconfig
> index 33f60c9..31e9db4 100644
> --- a/drivers/scsi/qla2xxx/Kconfig
> +++ b/drivers/scsi/qla2xxx/Kconfig
> @@ -31,6 +31,31 @@ config SCSI_QLA_FC
>
> They are also included in the linux-firmware tree as well.
>
> + This driver also supports some adapters with firmware stored
> + onboard in flash.
> +
> +config SCSI_QLA_FC_TRIAGE
> + bool "Firmware loading support for flash based adapters"
> + depends on SCSI_QLA_FC
> + depends on EXPERT
> + default n
> + ---help---
> + Add firmware definitions for adapters with firmware stored
> + onboard in flash.
> +
> + This requires the following firmware files which are not
> + distributed:
> +
> + ISP Firmware Filename
> + ---------- -----------------
> + 81xx ql8100_fw.bin
> + 82xx ql8200_fw.bin
> +
> + This option should only be enabled by Qlogic support staff
> + as these firmware files are not available publically.
> +
> + If unsure say N.
> +
> config TCM_QLA2XXX
> tristate "TCM_QLA2XXX fabric module for Qlogic 2xxx series target mode HBAs"
> depends on SCSI_QLA_FC && TARGET_CORE
> diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
> index 7462dd7..da98d83 100644
> --- a/drivers/scsi/qla2xxx/qla_os.c
> +++ b/drivers/scsi/qla2xxx/qla_os.c
> @@ -5284,11 +5284,14 @@ qla2x00_timer(scsi_qla_host_t *vha)
> #define FW_ISP2322 3
> #define FW_ISP24XX 4
> #define FW_ISP25XX 5
> -#define FW_ISP81XX 6
> -#define FW_ISP82XX 7
> -#define FW_ISP2031 8
> -#define FW_ISP8031 9
> -#define FW_ISP27XX 10
> +#define FW_ISP2031 6
> +#define FW_ISP8031 7
> +#define FW_ISP27XX 8
> +
> +#ifdef CONFIG_SCSI_QLA_FC_TRIAGE
> +#define FW_ISP81XX 9
> +#define FW_ISP82XX 10
> +#endif
>
> #define FW_FILE_ISP21XX "ql2100_fw.bin"
> #define FW_FILE_ISP22XX "ql2200_fw.bin"
> @@ -5296,12 +5299,14 @@ qla2x00_timer(scsi_qla_host_t *vha)
> #define FW_FILE_ISP2322 "ql2322_fw.bin"
> #define FW_FILE_ISP24XX "ql2400_fw.bin"
> #define FW_FILE_ISP25XX "ql2500_fw.bin"
> -#define FW_FILE_ISP81XX "ql8100_fw.bin"
> -#define FW_FILE_ISP82XX "ql8200_fw.bin"
> #define FW_FILE_ISP2031 "ql2600_fw.bin"
> #define FW_FILE_ISP8031 "ql8300_fw.bin"
> #define FW_FILE_ISP27XX "ql2700_fw.bin"
>
> +#ifdef CONFIG_SCSI_QLA_FC_TRIAGE
> +#define FW_FILE_ISP81XX "ql8100_fw.bin"
> +#define FW_FILE_ISP82XX "ql8200_fw.bin"
> +#endif
>
> static DEFINE_MUTEX(qla_fw_lock);
>
> @@ -5312,11 +5317,13 @@ static struct fw_blob qla_fw_blobs[FW_BLOBS] = {
> { .name = FW_FILE_ISP2322, .segs = { 0x800, 0x1c000, 0x1e000, 0 }, },
> { .name = FW_FILE_ISP24XX, },
> { .name = FW_FILE_ISP25XX, },
> - { .name = FW_FILE_ISP81XX, },
> - { .name = FW_FILE_ISP82XX, },
> { .name = FW_FILE_ISP2031, },
> { .name = FW_FILE_ISP8031, },
> { .name = FW_FILE_ISP27XX, },
> +#ifdef CONFIG_SCSI_QLA_FC_TRIAGE
> + { .name = FW_FILE_ISP81XX, },
> + { .name = FW_FILE_ISP82XX, },
> +#endif
> };
>
> struct fw_blob *
> @@ -5337,16 +5344,18 @@ qla2x00_request_firmware(scsi_qla_host_t *vha)
> blob = &qla_fw_blobs[FW_ISP24XX];
> } else if (IS_QLA25XX(ha)) {
> blob = &qla_fw_blobs[FW_ISP25XX];
> - } else if (IS_QLA81XX(ha)) {
> - blob = &qla_fw_blobs[FW_ISP81XX];
> - } else if (IS_QLA82XX(ha)) {
> - blob = &qla_fw_blobs[FW_ISP82XX];
> } else if (IS_QLA2031(ha)) {
> blob = &qla_fw_blobs[FW_ISP2031];
> } else if (IS_QLA8031(ha)) {
> blob = &qla_fw_blobs[FW_ISP8031];
> } else if (IS_QLA27XX(ha)) {
> blob = &qla_fw_blobs[FW_ISP27XX];
> +#ifdef CONFIG_SCSI_QLA_FC_TRIAGE
> + } else if (IS_QLA81XX(ha)) {
> + blob = &qla_fw_blobs[FW_ISP81XX];
> + } else if (IS_QLA82XX(ha)) {
> + blob = &qla_fw_blobs[FW_ISP82XX];
> +#endif
> } else {
> return NULL;
> }
> @@ -5837,3 +5846,8 @@ MODULE_FIRMWARE(FW_FILE_ISP25XX);
> MODULE_FIRMWARE(FW_FILE_ISP2031);
> MODULE_FIRMWARE(FW_FILE_ISP8031);
> MODULE_FIRMWARE(FW_FILE_ISP27XX);
> +
> +#ifdef CONFIG_SCSI_QLA_FC_TRIAGE
> +MODULE_FIRMWARE(FW_FILE_ISP81XX);
> +MODULE_FIRMWARE(FW_FILE_ISP82XX);
> +#endif
> --
> 2.1.4
>
next prev parent reply other threads:[~2015-10-07 15:13 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-22 0:00 [PATCH for-next] scsi: qla2xxx: Hide unavailable firmware Julian Calaby
2015-05-22 0:05 ` Julian Calaby
2015-10-07 15:13 ` Xose Vazquez Perez [this message]
2015-10-07 23:41 ` Julian Calaby
2015-10-08 15:46 ` Himanshu Madhani
2015-10-08 16:17 ` James Bottomley
2015-10-08 17:38 ` Himanshu Madhani
2015-10-08 23:10 ` Julian Calaby
2015-10-09 0:26 ` Giridhar Malavali
2015-10-09 14:45 ` Xose Vazquez Perez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56153682.1030801@gmail.com \
--to=xose.vazquez@gmail.com \
--cc=JBottomley@odin.com \
--cc=julian.calaby@gmail.com \
--cc=linux-firmware@kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=qla2xxx-upstream@qlogic.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).