diff mbox series

[1/1] media: staging: ipu3-imgu: Update firmware path

Message ID 20240411065639.417134-1-sakari.ailus@linux.intel.com (mailing list archive)
State New
Headers show
Series [1/1] media: staging: ipu3-imgu: Update firmware path | expand

Commit Message

Sakari Ailus April 11, 2024, 6:56 a.m. UTC
Use the current firmware path in linux-firmware repository. Check the
older paths still in order to avoid causing issues to the users.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
---
 drivers/staging/media/ipu3/ipu3-css-fw.c | 4 +++-
 drivers/staging/media/ipu3/ipu3-css-fw.h | 2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

Comments

Bingbu Cao April 11, 2024, 7:35 a.m. UTC | #1
Sakari,

On 4/11/24 2:56 PM, Sakari Ailus wrote:
> Use the current firmware path in linux-firmware repository. Check the
> older paths still in order to avoid causing issues to the users.

We also meet similiar issues for IPU6(github driver), I am wondering
as the WHENCE file create link and do we still need such patch for IPU6?

> 
> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> ---
>  drivers/staging/media/ipu3/ipu3-css-fw.c | 4 +++-
>  drivers/staging/media/ipu3/ipu3-css-fw.h | 2 ++
>  2 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.c b/drivers/staging/media/ipu3/ipu3-css-fw.c
> index 2b659b0ccca1..37482b626c3c 100644
> --- a/drivers/staging/media/ipu3/ipu3-css-fw.c
> +++ b/drivers/staging/media/ipu3/ipu3-css-fw.c
> @@ -117,7 +117,9 @@ int imgu_css_fw_init(struct imgu_css *css)
>  	unsigned int i, j, binary_nr;
>  	int r;
>  
> -	r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
> +	r = request_firmware(&css->fw, IMGU_FW_NAME_IPU_20161208, css->dev);
> +	if (r == -ENOENT)
> +		r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
>  	if (r == -ENOENT)
>  		r = request_firmware(&css->fw, IMGU_FW_NAME, css->dev);
>  	if (r)
> diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.h b/drivers/staging/media/ipu3/ipu3-css-fw.h
> index f9403da75785..c956aa21df25 100644
> --- a/drivers/staging/media/ipu3/ipu3-css-fw.h
> +++ b/drivers/staging/media/ipu3/ipu3-css-fw.h
> @@ -9,6 +9,8 @@
>  #define IMGU_FW_NAME		"intel/ipu3-fw.bin"
>  #define IMGU_FW_NAME_20161208	\
>  	"intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
> +#define IMGU_FW_NAME_IPU_20161208	\
> +	"intel/ipu/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
>  
>  typedef u32 imgu_fw_ptr;
>  
>
Sakari Ailus April 11, 2024, 7:45 a.m. UTC | #2
Hi Bingbu,

On Thu, Apr 11, 2024 at 03:35:25PM +0800, Bingbu Cao wrote:
> Sakari,
> 
> On 4/11/24 2:56 PM, Sakari Ailus wrote:
> > Use the current firmware path in linux-firmware repository. Check the
> > older paths still in order to avoid causing issues to the users.
> 
> We also meet similiar issues for IPU6(github driver), I am wondering
> as the WHENCE file create link and do we still need such patch for IPU6?

Good question. This was still never found in the upstream Linux kernel.

I don't have a strong opinion about it though. Something like that was done
to the ipu3-cio2 driver, too. So perhaps we could just take Hao Yao's patch
and get it to linux-firmware (with a bit more elaborate commit message)?

> 
> > 
> > Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> > ---
> >  drivers/staging/media/ipu3/ipu3-css-fw.c | 4 +++-
> >  drivers/staging/media/ipu3/ipu3-css-fw.h | 2 ++
> >  2 files changed, 5 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.c b/drivers/staging/media/ipu3/ipu3-css-fw.c
> > index 2b659b0ccca1..37482b626c3c 100644
> > --- a/drivers/staging/media/ipu3/ipu3-css-fw.c
> > +++ b/drivers/staging/media/ipu3/ipu3-css-fw.c
> > @@ -117,7 +117,9 @@ int imgu_css_fw_init(struct imgu_css *css)
> >  	unsigned int i, j, binary_nr;
> >  	int r;
> >  
> > -	r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
> > +	r = request_firmware(&css->fw, IMGU_FW_NAME_IPU_20161208, css->dev);
> > +	if (r == -ENOENT)
> > +		r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
> >  	if (r == -ENOENT)
> >  		r = request_firmware(&css->fw, IMGU_FW_NAME, css->dev);
> >  	if (r)
> > diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.h b/drivers/staging/media/ipu3/ipu3-css-fw.h
> > index f9403da75785..c956aa21df25 100644
> > --- a/drivers/staging/media/ipu3/ipu3-css-fw.h
> > +++ b/drivers/staging/media/ipu3/ipu3-css-fw.h
> > @@ -9,6 +9,8 @@
> >  #define IMGU_FW_NAME		"intel/ipu3-fw.bin"
> >  #define IMGU_FW_NAME_20161208	\
> >  	"intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
> > +#define IMGU_FW_NAME_IPU_20161208	\
> > +	"intel/ipu/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
> >  
> >  typedef u32 imgu_fw_ptr;
> >  
> > 
>
diff mbox series

Patch

diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.c b/drivers/staging/media/ipu3/ipu3-css-fw.c
index 2b659b0ccca1..37482b626c3c 100644
--- a/drivers/staging/media/ipu3/ipu3-css-fw.c
+++ b/drivers/staging/media/ipu3/ipu3-css-fw.c
@@ -117,7 +117,9 @@  int imgu_css_fw_init(struct imgu_css *css)
 	unsigned int i, j, binary_nr;
 	int r;
 
-	r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
+	r = request_firmware(&css->fw, IMGU_FW_NAME_IPU_20161208, css->dev);
+	if (r == -ENOENT)
+		r = request_firmware(&css->fw, IMGU_FW_NAME_20161208, css->dev);
 	if (r == -ENOENT)
 		r = request_firmware(&css->fw, IMGU_FW_NAME, css->dev);
 	if (r)
diff --git a/drivers/staging/media/ipu3/ipu3-css-fw.h b/drivers/staging/media/ipu3/ipu3-css-fw.h
index f9403da75785..c956aa21df25 100644
--- a/drivers/staging/media/ipu3/ipu3-css-fw.h
+++ b/drivers/staging/media/ipu3/ipu3-css-fw.h
@@ -9,6 +9,8 @@ 
 #define IMGU_FW_NAME		"intel/ipu3-fw.bin"
 #define IMGU_FW_NAME_20161208	\
 	"intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
+#define IMGU_FW_NAME_IPU_20161208	\
+	"intel/ipu/irci_irci_ecr-master_20161208_0213_20170112_1500.bin"
 
 typedef u32 imgu_fw_ptr;