diff mbox

arch: arm64: include: asm: add pci.h to pass compiling

Message ID 51CA5F71.207@asianux.com (mailing list archive)
State New, archived
Headers show

Commit Message

Chen Gang June 26, 2013, 3:26 a.m. UTC
Need add pci.h for compiling, the related error (with allmodconfig):

  drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_exit’:
  drivers/media/usb/b2c2/flexcop-usb.c:393:3: error: implicit declaration of function ‘pci_free_consistent’ [-Werror=implicit-function-declaration]
  drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_init’:
  drivers/media/usb/b2c2/flexcop-usb.c:410:2: error: implicit declaration of function ‘pci_alloc_consistent’ [-Werror=implicit-function-declaration]
  drivers/media/usb/b2c2/flexcop-usb.c:410:21: warning: assignment makes pointer from integer without a cast [enabled by default]
  cc1: some warnings being treated as errors

Signed-off-by: Chen Gang <gang.chen@asianux.com>
---
 arch/arm64/include/asm/pci.h |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm64/include/asm/pci.h

Comments

Catalin Marinas June 26, 2013, 2:07 p.m. UTC | #1
On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
> Need add pci.h for compiling, the related error (with allmodconfig):
> 
>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_exit’:
>   drivers/media/usb/b2c2/flexcop-usb.c:393:3: error: implicit declaration of function ‘pci_free_consistent’ [-Werror=implicit-function-declaration]
>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_init’:
>   drivers/media/usb/b2c2/flexcop-usb.c:410:2: error: implicit declaration of function ‘pci_alloc_consistent’ [-Werror=implicit-function-declaration]
>   drivers/media/usb/b2c2/flexcop-usb.c:410:21: warning: assignment makes pointer from integer without a cast [enabled by default]
>   cc1: some warnings being treated as errors
> 
> Signed-off-by: Chen Gang <gang.chen@asianux.com>
> ---
>  arch/arm64/include/asm/pci.h |   11 +++++++++++
>  1 files changed, 11 insertions(+), 0 deletions(-)
>  create mode 100644 arch/arm64/include/asm/pci.h
> 
> diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
> new file mode 100644
> index 0000000..2ed467f
> --- /dev/null
> +++ b/arch/arm64/include/asm/pci.h
> @@ -0,0 +1,11 @@
> +#ifndef ASMARM64_PCI_H
> +#define ASMARM64_PCI_H
> +
> +#ifdef __KERNEL__
> +
> +#include <asm-generic/pci-dma-compat.h>
> +#include <asm-generic/pci.h>
> +
> +#endif /* __KERNEL__ */
> +
> +#endif

I wonder whether it makes sense to include pci-dma-compat.h in
asm-generic/pci.h, I don't see why one would want the generic pci.h but
not the generic pci-dma-compat.h (cc'ing Arnd).
Chen Gang June 27, 2013, 12:30 a.m. UTC | #2
On 06/26/2013 10:07 PM, Catalin Marinas wrote:
> On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
>> > Need add pci.h for compiling, the related error (with allmodconfig):
>> > 
>> >   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_exit’:
>> >   drivers/media/usb/b2c2/flexcop-usb.c:393:3: error: implicit declaration of function ‘pci_free_consistent’ [-Werror=implicit-function-declaration]
>> >   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_init’:
>> >   drivers/media/usb/b2c2/flexcop-usb.c:410:2: error: implicit declaration of function ‘pci_alloc_consistent’ [-Werror=implicit-function-declaration]
>> >   drivers/media/usb/b2c2/flexcop-usb.c:410:21: warning: assignment makes pointer from integer without a cast [enabled by default]
>> >   cc1: some warnings being treated as errors
>> > 
>> > Signed-off-by: Chen Gang <gang.chen@asianux.com>
>> > ---
>> >  arch/arm64/include/asm/pci.h |   11 +++++++++++
>> >  1 files changed, 11 insertions(+), 0 deletions(-)
>> >  create mode 100644 arch/arm64/include/asm/pci.h
>> > 
>> > diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
>> > new file mode 100644
>> > index 0000000..2ed467f
>> > --- /dev/null
>> > +++ b/arch/arm64/include/asm/pci.h
>> > @@ -0,0 +1,11 @@
>> > +#ifndef ASMARM64_PCI_H
>> > +#define ASMARM64_PCI_H
>> > +
>> > +#ifdef __KERNEL__
>> > +
>> > +#include <asm-generic/pci-dma-compat.h>
>> > +#include <asm-generic/pci.h>
>> > +
>> > +#endif /* __KERNEL__ */
>> > +
>> > +#endif
> I wonder whether it makes sense to include pci-dma-compat.h in
> asm-generic/pci.h, I don't see why one would want the generic pci.h but
> not the generic pci-dma-compat.h (cc'ing Arnd).

I think, it will let architecture guys easier to add their own
pci-dma-compat.h (although they still need generic pci_dma_compat.h, and
generic pci.h, too).

e.g. one architecture want include generic pci-dma-compat.h firstly,
then define its own features in its own pci-dma-compat.h.

Thanks.
Chen Gang June 27, 2013, 2:05 a.m. UTC | #3
On 06/27/2013 08:30 AM, Chen Gang wrote:
> On 06/26/2013 10:07 PM, Catalin Marinas wrote:
>> On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
>>>> Need add pci.h for compiling, the related error (with allmodconfig):
>>>>
>>>>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_exit’:
>>>>   drivers/media/usb/b2c2/flexcop-usb.c:393:3: error: implicit declaration of function ‘pci_free_consistent’ [-Werror=implicit-function-declaration]
>>>>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_init’:
>>>>   drivers/media/usb/b2c2/flexcop-usb.c:410:2: error: implicit declaration of function ‘pci_alloc_consistent’ [-Werror=implicit-function-declaration]
>>>>   drivers/media/usb/b2c2/flexcop-usb.c:410:21: warning: assignment makes pointer from integer without a cast [enabled by default]
>>>>   cc1: some warnings being treated as errors
>>>>
>>>> Signed-off-by: Chen Gang <gang.chen@asianux.com>
>>>> ---
>>>>  arch/arm64/include/asm/pci.h |   11 +++++++++++
>>>>  1 files changed, 11 insertions(+), 0 deletions(-)
>>>>  create mode 100644 arch/arm64/include/asm/pci.h
>>>>
>>>> diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
>>>> new file mode 100644
>>>> index 0000000..2ed467f
>>>> --- /dev/null
>>>> +++ b/arch/arm64/include/asm/pci.h
>>>> @@ -0,0 +1,11 @@
>>>> +#ifndef ASMARM64_PCI_H
>>>> +#define ASMARM64_PCI_H
>>>> +
>>>> +#ifdef __KERNEL__
>>>> +
>>>> +#include <asm-generic/pci-dma-compat.h>
>>>> +#include <asm-generic/pci.h>
>>>> +
>>>> +#endif /* __KERNEL__ */
>>>> +
>>>> +#endif
>> I wonder whether it makes sense to include pci-dma-compat.h in
>> asm-generic/pci.h, I don't see why one would want the generic pci.h but
>> not the generic pci-dma-compat.h (cc'ing Arnd).
> 

For m32r, it needs generic pci.h but not the generic pci-dma-compat.h.

I am just compiling it with allmodconfig to see whether it will can
cause issue too, if so I will send the patch for asm-generic. :-)

And, sorry for the original reply below is incorrect.

> I think, it will let architecture guys easier to add their own
> pci-dma-compat.h (although they still need generic pci_dma_compat.h, and
> generic pci.h, too).
> 
> e.g. one architecture want include generic pci-dma-compat.h firstly,
> then define its own features in its own pci-dma-compat.h.
> 
> Thanks.
>
Chen Gang June 27, 2013, 3:47 a.m. UTC | #4
On 06/27/2013 10:05 AM, Chen Gang wrote:
> On 06/27/2013 08:30 AM, Chen Gang wrote:
>> On 06/26/2013 10:07 PM, Catalin Marinas wrote:
>>> On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
>>>>> Need add pci.h for compiling, the related error (with allmodconfig):
>>>>>
>>>>>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_exit’:
>>>>>   drivers/media/usb/b2c2/flexcop-usb.c:393:3: error: implicit declaration of function ‘pci_free_consistent’ [-Werror=implicit-function-declaration]
>>>>>   drivers/media/usb/b2c2/flexcop-usb.c: In function ‘flexcop_usb_transfer_init’:
>>>>>   drivers/media/usb/b2c2/flexcop-usb.c:410:2: error: implicit declaration of function ‘pci_alloc_consistent’ [-Werror=implicit-function-declaration]
>>>>>   drivers/media/usb/b2c2/flexcop-usb.c:410:21: warning: assignment makes pointer from integer without a cast [enabled by default]
>>>>>   cc1: some warnings being treated as errors
>>>>>
>>>>> Signed-off-by: Chen Gang <gang.chen@asianux.com>
>>>>> ---
>>>>>  arch/arm64/include/asm/pci.h |   11 +++++++++++
>>>>>  1 files changed, 11 insertions(+), 0 deletions(-)
>>>>>  create mode 100644 arch/arm64/include/asm/pci.h
>>>>>
>>>>> diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
>>>>> new file mode 100644
>>>>> index 0000000..2ed467f
>>>>> --- /dev/null
>>>>> +++ b/arch/arm64/include/asm/pci.h
>>>>> @@ -0,0 +1,11 @@
>>>>> +#ifndef ASMARM64_PCI_H
>>>>> +#define ASMARM64_PCI_H
>>>>> +
>>>>> +#ifdef __KERNEL__
>>>>> +
>>>>> +#include <asm-generic/pci-dma-compat.h>
>>>>> +#include <asm-generic/pci.h>
>>>>> +
>>>>> +#endif /* __KERNEL__ */
>>>>> +
>>>>> +#endif
>>> I wonder whether it makes sense to include pci-dma-compat.h in
>>> asm-generic/pci.h, I don't see why one would want the generic pci.h but
>>> not the generic pci-dma-compat.h (cc'ing Arnd).
>>
> 

For m32r, it also face the same issue. So I need send related patch to
asm-generic instead of arm64.

> For m32r, it needs generic pci.h but not the generic pci-dma-compat.h.
> 
> I am just compiling it with allmodconfig to see whether it will can
> cause issue too, if so I will send the patch for asm-generic. :-)
> 
> And, sorry for the original reply below is incorrect.
> 
>> I think, it will let architecture guys easier to add their own
>> pci-dma-compat.h (although they still need generic pci_dma_compat.h, and
>> generic pci.h, too).
>>
>> e.g. one architecture want include generic pci-dma-compat.h firstly,
>> then define its own features in its own pci-dma-compat.h.
>>
>> Thanks.
>>
> 
>
Arnd Bergmann June 27, 2013, 8:43 a.m. UTC | #5
On Thursday 27 June 2013 08:30:40 Chen Gang wrote:
> On 06/26/2013 10:07 PM, Catalin Marinas wrote:
> > On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
> > I wonder whether it makes sense to include pci-dma-compat.h in
> > asm-generic/pci.h, I don't see why one would want the generic pci.h but
> > not the generic pci-dma-compat.h (cc'ing Arnd).
> 
> I think, it will let architecture guys easier to add their own
> pci-dma-compat.h (although they still need generic pci_dma_compat.h, and
> generic pci.h, too).
> 
> e.g. one architecture want include generic pci-dma-compat.h firstly,
> then define its own features in its own pci-dma-compat.h.

I think there is no excuse for still keeping the asm-generic/pci-dma-compat.h
header around any more.

All architectures use the same implementation and have done so for years.
We should just convert the remaining users to use the dma_mapping.h
interfaces directly.

	Arnd
Chen Gang June 27, 2013, 10:20 a.m. UTC | #6
On 06/27/2013 04:43 PM, Arnd Bergmann wrote:
> On Thursday 27 June 2013 08:30:40 Chen Gang wrote:
>> > On 06/26/2013 10:07 PM, Catalin Marinas wrote:
>>> > > On Wed, Jun 26, 2013 at 04:26:41AM +0100, Chen Gang wrote:
>>> > > I wonder whether it makes sense to include pci-dma-compat.h in
>>> > > asm-generic/pci.h, I don't see why one would want the generic pci.h but
>>> > > not the generic pci-dma-compat.h (cc'ing Arnd).
>> > 
>> > I think, it will let architecture guys easier to add their own
>> > pci-dma-compat.h (although they still need generic pci_dma_compat.h, and
>> > generic pci.h, too).
>> > 
>> > e.g. one architecture want include generic pci-dma-compat.h firstly,
>> > then define its own features in its own pci-dma-compat.h.
> I think there is no excuse for still keeping the asm-generic/pci-dma-compat.h
> header around any more.
> 
> All architectures use the same implementation and have done so for years.
> We should just convert the remaining users to use the dma_mapping.h
> interfaces directly.

in "asm-generic/pci-dma-compat.h", it include "linux/dma-mapping.h" firstly.

So can we say it also has additional features (at least for compatible
old things) which "dma-mapping.h" not have ?

Thanks.
diff mbox

Patch

diff --git a/arch/arm64/include/asm/pci.h b/arch/arm64/include/asm/pci.h
new file mode 100644
index 0000000..2ed467f
--- /dev/null
+++ b/arch/arm64/include/asm/pci.h
@@ -0,0 +1,11 @@ 
+#ifndef ASMARM64_PCI_H
+#define ASMARM64_PCI_H
+
+#ifdef __KERNEL__
+
+#include <asm-generic/pci-dma-compat.h>
+#include <asm-generic/pci.h>
+
+#endif /* __KERNEL__ */
+
+#endif