diff mbox series

powerpc/sysdev: fix compile errors

Message ID 20200121053114.89676-1-wenhu.pku@gmail.com (mailing list archive)
State Superseded
Delegated to: Scott Wood
Headers show
Series powerpc/sysdev: fix compile errors | expand

Checks

Context Check Description
snowpatch_ozlabs/apply_patch success Successfully applied on branch powerpc/merge (20862247a368dbb75d6e97d82345999adaacf3cc)
snowpatch_ozlabs/build-ppc64le success Build succeeded
snowpatch_ozlabs/build-ppc64be success Build succeeded
snowpatch_ozlabs/build-ppc64e success Build succeeded
snowpatch_ozlabs/build-pmac32 success Build succeeded
snowpatch_ozlabs/checkpatch success total: 0 errors, 0 warnings, 0 checks, 7 lines checked
snowpatch_ozlabs/needsstable success Patch has no Fixes tags

Commit Message

wangwenhu Jan. 21, 2020, 5:31 a.m. UTC
From: wangwenhu <wenhu.wang@vivo.com>

Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
fix the implicit declaration compile errors when building Cache-Sram.

arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
  cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
                          ^~~~~~~~~~~~~~~~
                          bitmap_complement
arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
  cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
                        ^
arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
  iounmap(cache_sram->base_virt);
  ^~~~~~~
  roundup
cc1: all warnings being treated as errors

Signed-off-by: wangwenhu <wenhu.wang@vivo.com>
---
 arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Christophe Leroy Jan. 21, 2020, 5:58 a.m. UTC | #1
Le 21/01/2020 à 06:31, wangwenhu a écrit :
> From: wangwenhu <wenhu.wang@vivo.com>
> 
> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
> fix the implicit declaration compile errors when building Cache-Sram.

It is usually better to include <linux/io.h> instead of <asm/io.h>

Christophe
Andrew Donnellan Jan. 21, 2020, 6:13 a.m. UTC | #2
On 21/1/20 4:31 pm, wangwenhu wrote:
> From: wangwenhu <wenhu.wang@vivo.com>
> 
> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
> fix the implicit declaration compile errors when building Cache-Sram.
> 
> arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
>    cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>                            ^~~~~~~~~~~~~~~~
>                            bitmap_complement
> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
>    cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>                          ^
> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
>    iounmap(cache_sram->base_virt);
>    ^~~~~~~
>    roundup
> cc1: all warnings being treated as errors
> 
> Signed-off-by: wangwenhu <wenhu.wang@vivo.com>

How long has this code been broken for?

> ---
>   arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
> index f6c665dac725..29b6868eff7d 100644
> --- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
> +++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
> @@ -17,6 +17,7 @@
>   #include <linux/of_platform.h>
>   #include <asm/pgtable.h>
>   #include <asm/fsl_85xx_cache_sram.h>
> +#include <asm/io.h>
> 
>   #include "fsl_85xx_cache_ctlr.h"
>
王文虎 Jan. 21, 2020, 6:59 a.m. UTC | #3
发件人:Andrew Donnellan <ajd@linux.ibm.com>
发送日期:2020-01-21 14:13:07
收件人:wangwenhu <wenhu.pku@gmail.com>,Benjamin Herrenschmidt <benh@kernel.crashing.org>,Paul Mackerras <paulus@samba.org>,Michael Ellerman <mpe@ellerman.id.au>,Kate Stewart <kstewart@linuxfoundation.org>,Greg Kroah-Hartman <gregkh@linuxfoundation.org>,Richard Fontana <rfontana@redhat.com>,Thomas Gleixner <tglx@linutronix.de>,linuxppc-dev@lists.ozlabs.org,linux-kernel@vger.kernel.org
抄送人:trivial@kernel.org,lonehugo@hotmail.com,wenhu.wang@vivo.com
主题:Re: [PATCH] powerpc/sysdev: fix compile errors>On 21/1/20 4:31 pm, wangwenhu wrote:
>> From: wangwenhu <wenhu.wang@vivo.com>
>> 
>> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
>> fix the implicit declaration compile errors when building Cache-Sram.
>> 
>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
>>    cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>                            ^~~~~~~~~~~~~~~~
>>                            bitmap_complement
>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
>>    cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>                          ^
>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
>>    iounmap(cache_sram->base_virt);
>>    ^~~~~~~
>>    roundup
>> cc1: all warnings being treated as errors
>> 
>> Signed-off-by: wangwenhu <wenhu.wang@vivo.com>
>
>How long has this code been broken for?

It's been broken almost 15 months since the commit below:
"commit aa91796ec46339f2ed53da311bd3ea77a3e4dfe1
Author: Christophe Leroy <christophe.leroy@c-s.fr>
Date:   Tue Oct 9 13:51:41 2018 +0000

    powerpc: don't use ioremap_prot() nor __ioremap() unless really needed."

And we are working on it now for further development.

>
>> ---
>>   arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
>>   1 file changed, 1 insertion(+)
>> 
>> diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>> index f6c665dac725..29b6868eff7d 100644
>> --- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>> +++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>> @@ -17,6 +17,7 @@
>>   #include <linux/of_platform.h>
>>   #include <asm/pgtable.h>
>>   #include <asm/fsl_85xx_cache_sram.h>
>> +#include <asm/io.h>
>> 
>>   #include "fsl_85xx_cache_ctlr.h"
>> 
>
>-- 
>Andrew Donnellan              OzLabs, ADL Canberra
>ajd@linux.ibm.com             IBM Australia Limited
>

Wenhu
Christophe Leroy Jan. 21, 2020, 8:21 a.m. UTC | #4
Le 21/01/2020 à 07:59, 王文虎 a écrit :
> 发件人:Andrew Donnellan <ajd@linux.ibm.com>
> 发送日期:2020-01-21 14:13:07
> 收件人:wangwenhu <wenhu.pku@gmail.com>,Benjamin Herrenschmidt <benh@kernel.crashing.org>,Paul Mackerras <paulus@samba.org>,Michael Ellerman <mpe@ellerman.id.au>,Kate Stewart <kstewart@linuxfoundation.org>,Greg Kroah-Hartman <gregkh@linuxfoundation.org>,Richard Fontana <rfontana@redhat.com>,Thomas Gleixner <tglx@linutronix.de>,linuxppc-dev@lists.ozlabs.org,linux-kernel@vger.kernel.org
> 抄送人:trivial@kernel.org,lonehugo@hotmail.com,wenhu.wang@vivo.com
> 主题:Re: [PATCH] powerpc/sysdev: fix compile errors>On 21/1/20 4:31 pm, wangwenhu wrote:
>>> From: wangwenhu <wenhu.wang@vivo.com>
>>>
>>> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
>>> fix the implicit declaration compile errors when building Cache-Sram.
>>>
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>                             ^~~~~~~~~~~~~~~~
>>>                             bitmap_complement
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>                           ^
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
>>>     iounmap(cache_sram->base_virt);
>>>     ^~~~~~~
>>>     roundup
>>> cc1: all warnings being treated as errors
>>>
>>> Signed-off-by: wangwenhu <wenhu.wang@vivo.com>
>>
>> How long has this code been broken for?
> 
> It's been broken almost 15 months since the commit below:
> "commit aa91796ec46339f2ed53da311bd3ea77a3e4dfe1

Can you then add a Fixes: tag ?

Thanks
Christophe

> Author: Christophe Leroy <christophe.leroy@c-s.fr>
> Date:   Tue Oct 9 13:51:41 2018 +0000
> 
>      powerpc: don't use ioremap_prot() nor __ioremap() unless really needed."
> 
> And we are working on it now for further development.
> 
>>
>>> ---
>>>    arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
>>>    1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> index f6c665dac725..29b6868eff7d 100644
>>> --- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> +++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> @@ -17,6 +17,7 @@
>>>    #include <linux/of_platform.h>
>>>    #include <asm/pgtable.h>
>>>    #include <asm/fsl_85xx_cache_sram.h>
>>> +#include <asm/io.h>
>>>
>>>    #include "fsl_85xx_cache_ctlr.h"
>>>
>>
>> -- 
>> Andrew Donnellan              OzLabs, ADL Canberra
>> ajd@linux.ibm.com             IBM Australia Limited
>>
> 
> Wenhu
>
Christophe Leroy Jan. 21, 2020, 8:37 a.m. UTC | #5
Le 21/01/2020 à 07:59, 王文虎 a écrit :
> 发件人:Andrew Donnellan <ajd@linux.ibm.com>
> 发送日期:2020-01-21 14:13:07
> 收件人:wangwenhu <wenhu.pku@gmail.com>,Benjamin Herrenschmidt <benh@kernel.crashing.org>,Paul Mackerras <paulus@samba.org>,Michael Ellerman <mpe@ellerman.id.au>,Kate Stewart <kstewart@linuxfoundation.org>,Greg Kroah-Hartman <gregkh@linuxfoundation.org>,Richard Fontana <rfontana@redhat.com>,Thomas Gleixner <tglx@linutronix.de>,linuxppc-dev@lists.ozlabs.org,linux-kernel@vger.kernel.org
> 抄送人:trivial@kernel.org,lonehugo@hotmail.com,wenhu.wang@vivo.com
> 主题:Re: [PATCH] powerpc/sysdev: fix compile errors>On 21/1/20 4:31 pm, wangwenhu wrote:
>>> From: wangwenhu <wenhu.wang@vivo.com>
>>>
>>> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
>>> fix the implicit declaration compile errors when building Cache-Sram.
>>>
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>                             ^~~~~~~~~~~~~~~~
>>>                             bitmap_complement
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>                           ^
>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
>>>     iounmap(cache_sram->base_virt);
>>>     ^~~~~~~
>>>     roundup
>>> cc1: all warnings being treated as errors
>>>
>>> Signed-off-by: wangwenhu <wenhu.wang@vivo.com>
>>
>> How long has this code been broken for?
> 
> It's been broken almost 15 months since the commit below:
> "commit aa91796ec46339f2ed53da311bd3ea77a3e4dfe1
> Author: Christophe Leroy <christophe.leroy@c-s.fr>
> Date:   Tue Oct 9 13:51:41 2018 +0000
> 
>      powerpc: don't use ioremap_prot() nor __ioremap() unless really needed."
> 
> And we are working on it now for further development.

That's pretty surprising. That commit didn't change the iounmap(). It 
only replaced ioremap_prot() by ioremap_coherent(). Both are defined in io.h

Christophe

> 
>>
>>> ---
>>>    arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
>>>    1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> index f6c665dac725..29b6868eff7d 100644
>>> --- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> +++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>> @@ -17,6 +17,7 @@
>>>    #include <linux/of_platform.h>
>>>    #include <asm/pgtable.h>
>>>    #include <asm/fsl_85xx_cache_sram.h>
>>> +#include <asm/io.h>
>>>
>>>    #include "fsl_85xx_cache_ctlr.h"
>>>
>>
>> -- 
>> Andrew Donnellan              OzLabs, ADL Canberra
>> ajd@linux.ibm.com             IBM Australia Limited
>>
> 
> Wenhu
>
王文虎 Feb. 18, 2020, 10:25 a.m. UTC | #6
From: Christophe Leroy <christophe.leroy@c-s.fr>
 Date: 2020-01-21 16:37:07
To:"王文虎" <wenhu.wang@vivo.com>,Andrew Donnellan <ajd@linux.ibm.com>
 cc: Kate Stewart <kstewart@linuxfoundation.org>,Richard Fontana <rfontana@redhat.com>,Greg Kroah-Hartman <gregkh@linuxfoundation.org>,linux-kernel@vger.kernel.org,wangwenhu <wenhu.pku@gmail.com>,Paul Mackerras <paulus@samba.org>,trivial@kernel.org,Thomas Gleixner <tglx@linutronix.de>,linuxppc-dev@lists.ozlabs.org,lonehugo@hotmail.com
Subject: Re: [PATCH] powerpc/sysdev: fix compile errors>
>
>Le 21/01/2020 à 07:59, 王文虎 a écrit :
>> 发件人:Andrew Donnellan <ajd@linux.ibm.com>
>> 发送日期:2020-01-21 14:13:07
>> 收件人:wangwenhu <wenhu.pku@gmail.com>,Benjamin Herrenschmidt <benh@kernel.crashing.org>,Paul Mackerras <paulus@samba.org>,Michael Ellerman <mpe@ellerman.id.au>,Kate Stewart <kstewart@linuxfoundation.org>,Greg Kroah-Hartman <gregkh@linuxfoundation.org>,Richard Fontana <rfontana@redhat.com>,Thomas Gleixner <tglx@linutronix.de>,linuxppc-dev@lists.ozlabs.org,linux-kernel@vger.kernel.org
>> 抄送人:trivial@kernel.org,lonehugo@hotmail.com,wenhu.wang@vivo.com
>> 主题:Re: [PATCH] powerpc/sysdev: fix compile errors>On 21/1/20 4:31 pm, wangwenhu wrote:
>>>> From: wangwenhu <wenhu.wang@vivo.com>
>>>>
>>>> Include arch/powerpc/include/asm/io.h into fsl_85xx_cache_sram.c to
>>>> fix the implicit declaration compile errors when building Cache-Sram.
>>>>
>>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c: In function ‘instantiate_cache_sram’:
>>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:26: error: implicit declaration of function ‘ioremap_coherent’; did you mean ‘bitmap_complement’? [-Werror=implicit-function-declaration]
>>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>>                             ^~~~~~~~~~~~~~~~
>>>>                             bitmap_complement
>>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:97:24: error: assignment makes pointer from integer without a cast [-Werror=int-conversion]
>>>>     cache_sram->base_virt = ioremap_coherent(cache_sram->base_phys,
>>>>                           ^
>>>> arch/powerpc/sysdev/fsl_85xx_cache_sram.c:123:2: error: implicit declaration of function ‘iounmap’; did you mean ‘roundup’? [-Werror=implicit-function-declaration]
>>>>     iounmap(cache_sram->base_virt);
>>>>     ^~~~~~~
>>>>     roundup
>>>> cc1: all warnings being treated as errors
>>>>
>>>> Signed-off-by: wangwenhu <wenhu.wang@vivo.com>
>>>
>>> How long has this code been broken for?
>> 
>> It's been broken almost 15 months since the commit below:
>> "commit aa91796ec46339f2ed53da311bd3ea77a3e4dfe1
>> Author: Christophe Leroy <christophe.leroy@c-s.fr>
>> Date:   Tue Oct 9 13:51:41 2018 +0000
>> 
>>      powerpc: don't use ioremap_prot() nor __ioremap() unless really needed."
>> 
>> And we are working on it now for further development.
>
>That's pretty surprising. That commit didn't change the iounmap(). It 
>only replaced ioremap_prot() by ioremap_coherent(). Both are defined in io.h
>
>Christophe
>

The compile error exists since the uploading of the driver
Details below:
1. "ioremap_flags" defined in "asm/io.h" was used primarily(Wed Oct 13 17:30:56 2010):
(6db92cc9d07d: powerpc/85xx: add cache-sram support);
2. "ioremap_prot" was used to replace "ioremap_flags"
(40f1ce7fb7e8: powerpc: Remove ioremap_flags);
3. "ioremap_coherent" was used to replace "ioremap_prot":
(aa91796ec463: powerpc: don't use ioremap_prot() nor __ioremap() unless really needed.)

So I will do the re-patch with a "Fixed" tag and "<linux/io.h>" include modification.
Which commit should be referenced to append to "Fixed" tag? (No.1 or No.3 ?)

Wenhu

>> 
>>>
>>>> ---
>>>>    arch/powerpc/sysdev/fsl_85xx_cache_sram.c | 1 +
>>>>    1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>>> index f6c665dac725..29b6868eff7d 100644
>>>> --- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>>> +++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
>>>> @@ -17,6 +17,7 @@
>>>>    #include <linux/of_platform.h>
>>>>    #include <asm/pgtable.h>
>>>>    #include <asm/fsl_85xx_cache_sram.h>
>>>> +#include <asm/io.h>
>>>>
>>>>    #include "fsl_85xx_cache_ctlr.h"
>>>>
>>>
>>> -- 
>>> Andrew Donnellan              OzLabs, ADL Canberra
>>> ajd@linux.ibm.com             IBM Australia Limited
>>>
>> 
>> Wenhu
>>
diff mbox series

Patch

diff --git a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
index f6c665dac725..29b6868eff7d 100644
--- a/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
+++ b/arch/powerpc/sysdev/fsl_85xx_cache_sram.c
@@ -17,6 +17,7 @@ 
 #include <linux/of_platform.h>
 #include <asm/pgtable.h>
 #include <asm/fsl_85xx_cache_sram.h>
+#include <asm/io.h>
 
 #include "fsl_85xx_cache_ctlr.h"