Message ID | 1418878635-18960-1-git-send-email-eliot@blennerhassett.gen.nz (mailing list archive) |
---|---|
State | Accepted |
Commit | 43986431246fdaa534822b9cbe9dafed94eab004 |
Headers | show |
At Thu, 18 Dec 2014 17:57:13 +1300, eliot@blennerhassett.gen.nz wrote: > > From: Eliot Blennerhassett <eliot@blennerhassett.gen.nz> > > Some products firmware is no longer being updated > e.g. dsp5000, dsp8700 but it should continue to work > with updated HPI versions. > Avoid regression by allowing this firmware to be loaded as > long as major version is the same. > Warn about mismatching versions, as matching versions are > preferred. > > Signed-off-by: Eliot Blennerhassett <eliot@blennerhassett.gen.nz> Applied all three patches. thanks, Takashi > --- > sound/pci/asihpi/hpidspcd.c | 26 ++++++++++++-------------- > 1 file changed, 12 insertions(+), 14 deletions(-) > > diff --git a/sound/pci/asihpi/hpidspcd.c b/sound/pci/asihpi/hpidspcd.c > index ac91637..3603c24 100644 > --- a/sound/pci/asihpi/hpidspcd.c > +++ b/sound/pci/asihpi/hpidspcd.c > @@ -1,8 +1,9 @@ > -/***********************************************************************/ > -/** > +/*********************************************************************** > > AudioScience HPI driver > - Copyright (C) 1997-2011 AudioScience Inc. <support@audioscience.com> > + Functions for reading DSP code using hotplug firmware loader > + > + Copyright (C) 1997-2014 AudioScience Inc. <support@audioscience.com> > > This program is free software; you can redistribute it and/or modify > it under the terms of version 2 of the GNU General Public License as > @@ -17,11 +18,7 @@ > along with this program; if not, write to the Free Software > Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA > > -\file > -Functions for reading DSP code using > -hotplug firmware loader from individual dsp code files > -*/ > -/***********************************************************************/ > +***********************************************************************/ > #define SOURCEFILE_NAME "hpidspcd.c" > #include "hpidspcd.h" > #include "hpidebug.h" > @@ -68,17 +65,18 @@ short hpi_dsp_code_open(u32 adapter, void *os_data, struct dsp_code *dsp_code, > goto error2; > } > > - if ((header.version >> 9) != (HPI_VER >> 9)) { > - /* Consider even and subsequent odd minor versions to be compatible */ > - dev_err(&dev->dev, "Incompatible firmware version DSP image %X != Driver %X\n", > + if (HPI_VER_MAJOR(header.version) != HPI_VER_MAJOR(HPI_VER)) { > + /* Major version change probably means Host-DSP protocol change */ > + dev_err(&dev->dev, > + "Incompatible firmware version DSP image %X != Driver %X\n", > header.version, HPI_VER); > goto error2; > } > > if (header.version != HPI_VER) { > - dev_info(&dev->dev, > - "Firmware: release version mismatch DSP image %X != Driver %X\n", > - header.version, HPI_VER); > + dev_warn(&dev->dev, > + "Firmware version mismatch: DSP image %X != Driver %X\n", > + header.version, HPI_VER); > } > > HPI_DEBUG_LOG(DEBUG, "dsp code %s opened\n", fw_name); > -- > 1.9.1 >
diff --git a/sound/pci/asihpi/hpidspcd.c b/sound/pci/asihpi/hpidspcd.c index ac91637..3603c24 100644 --- a/sound/pci/asihpi/hpidspcd.c +++ b/sound/pci/asihpi/hpidspcd.c @@ -1,8 +1,9 @@ -/***********************************************************************/ -/** +/*********************************************************************** AudioScience HPI driver - Copyright (C) 1997-2011 AudioScience Inc. <support@audioscience.com> + Functions for reading DSP code using hotplug firmware loader + + Copyright (C) 1997-2014 AudioScience Inc. <support@audioscience.com> This program is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as @@ -17,11 +18,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -\file -Functions for reading DSP code using -hotplug firmware loader from individual dsp code files -*/ -/***********************************************************************/ +***********************************************************************/ #define SOURCEFILE_NAME "hpidspcd.c" #include "hpidspcd.h" #include "hpidebug.h" @@ -68,17 +65,18 @@ short hpi_dsp_code_open(u32 adapter, void *os_data, struct dsp_code *dsp_code, goto error2; } - if ((header.version >> 9) != (HPI_VER >> 9)) { - /* Consider even and subsequent odd minor versions to be compatible */ - dev_err(&dev->dev, "Incompatible firmware version DSP image %X != Driver %X\n", + if (HPI_VER_MAJOR(header.version) != HPI_VER_MAJOR(HPI_VER)) { + /* Major version change probably means Host-DSP protocol change */ + dev_err(&dev->dev, + "Incompatible firmware version DSP image %X != Driver %X\n", header.version, HPI_VER); goto error2; } if (header.version != HPI_VER) { - dev_info(&dev->dev, - "Firmware: release version mismatch DSP image %X != Driver %X\n", - header.version, HPI_VER); + dev_warn(&dev->dev, + "Firmware version mismatch: DSP image %X != Driver %X\n", + header.version, HPI_VER); } HPI_DEBUG_LOG(DEBUG, "dsp code %s opened\n", fw_name);