All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 12:13 ` Arnd Bergmann
  0 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2015-10-16 12:13 UTC (permalink / raw)
  To: linux-scsi, James Bottomley
  Cc: Hannes Reinecke, linux-arm-kernel, linux-kernel

The advansys drvier uses the request_dma function that is used on ISA
machines for the internal DMA controller, which causes build errors
on platforms that have ISA slots but do not provide the ISA DMA API:

drivers/scsi/advansys.c: In function 'advansys_board_found':
drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]

The problem now showed up in ARM randconfig builds after commit
6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
warning") made it possible to build on platforms that have neither
VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.

This adds a dependency to only build the driver on ISA based machines
if they also support ISA_DMA_API, or if they EISA or PCI are also
enabled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index d2f480b04a52..1d8b8257773d 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -498,7 +498,7 @@ config SCSI_DPT_I2O
 config SCSI_ADVANSYS
 	tristate "AdvanSys SCSI support"
 	depends on SCSI
-	depends on ISA || EISA || PCI
+	depends on (ISA && ISA_DMA_API) || EISA || PCI
 	help
 	  This is a driver for all SCSI host adapters manufactured by
 	  AdvanSys. It is documented in the kernel source in


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 12:13 ` Arnd Bergmann
  0 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2015-10-16 12:13 UTC (permalink / raw)
  To: linux-arm-kernel

The advansys drvier uses the request_dma function that is used on ISA
machines for the internal DMA controller, which causes build errors
on platforms that have ISA slots but do not provide the ISA DMA API:

drivers/scsi/advansys.c: In function 'advansys_board_found':
drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]

The problem now showed up in ARM randconfig builds after commit
6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
warning") made it possible to build on platforms that have neither
VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.

This adds a dependency to only build the driver on ISA based machines
if they also support ISA_DMA_API, or if they EISA or PCI are also
enabled.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index d2f480b04a52..1d8b8257773d 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -498,7 +498,7 @@ config SCSI_DPT_I2O
 config SCSI_ADVANSYS
 	tristate "AdvanSys SCSI support"
 	depends on SCSI
-	depends on ISA || EISA || PCI
+	depends on (ISA && ISA_DMA_API) || EISA || PCI
 	help
 	  This is a driver for all SCSI host adapters manufactured by
 	  AdvanSys. It is documented in the kernel source in

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] scsi: advansys needs ISA dma api for ISA support
  2015-10-16 12:13 ` Arnd Bergmann
@ 2015-10-16 12:16   ` Hannes Reinecke
  -1 siblings, 0 replies; 10+ messages in thread
From: Hannes Reinecke @ 2015-10-16 12:16 UTC (permalink / raw)
  To: Arnd Bergmann, linux-scsi, James Bottomley; +Cc: linux-arm-kernel, linux-kernel

On 10/16/2015 02:13 PM, Arnd Bergmann wrote:
> The advansys drvier uses the request_dma function that is used on ISA
> machines for the internal DMA controller, which causes build errors
> on platforms that have ISA slots but do not provide the ISA DMA API:
> 
> drivers/scsi/advansys.c: In function 'advansys_board_found':
> drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]
> 
> The problem now showed up in ARM randconfig builds after commit
> 6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
> warning") made it possible to build on platforms that have neither
> VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.
> 
> This adds a dependency to only build the driver on ISA based machines
> if they also support ISA_DMA_API, or if they EISA or PCI are also
> enabled.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
Reviewed-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		               zSeries & Storage
hare@suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 12:16   ` Hannes Reinecke
  0 siblings, 0 replies; 10+ messages in thread
From: Hannes Reinecke @ 2015-10-16 12:16 UTC (permalink / raw)
  To: linux-arm-kernel

On 10/16/2015 02:13 PM, Arnd Bergmann wrote:
> The advansys drvier uses the request_dma function that is used on ISA
> machines for the internal DMA controller, which causes build errors
> on platforms that have ISA slots but do not provide the ISA DMA API:
> 
> drivers/scsi/advansys.c: In function 'advansys_board_found':
> drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]
> 
> The problem now showed up in ARM randconfig builds after commit
> 6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
> warning") made it possible to build on platforms that have neither
> VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.
> 
> This adds a dependency to only build the driver on ISA based machines
> if they also support ISA_DMA_API, or if they EISA or PCI are also
> enabled.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
Reviewed-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		               zSeries & Storage
hare at suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N?rnberg
GF: F. Imend?rffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG N?rnberg)

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] scsi: advansys needs ISA dma api for ISA support
  2015-10-16 12:13 ` Arnd Bergmann
@ 2015-10-16 13:53   ` James Bottomley
  -1 siblings, 0 replies; 10+ messages in thread
From: James Bottomley @ 2015-10-16 13:53 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-scsi, Hannes Reinecke, linux-arm-kernel, linux-kernel

On Fri, 2015-10-16 at 14:13 +0200, Arnd Bergmann wrote:
> The advansys drvier uses the request_dma function that is used on ISA
> machines for the internal DMA controller, which causes build errors
> on platforms that have ISA slots but do not provide the ISA DMA API:
> 
> drivers/scsi/advansys.c: In function 'advansys_board_found':
> drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]
> 
> The problem now showed up in ARM randconfig builds after commit
> 6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
> warning") made it possible to build on platforms that have neither
> VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.
> 
> This adds a dependency to only build the driver on ISA based machines
> if they also support ISA_DMA_API, or if they EISA or PCI are also
> enabled.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
> diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> index d2f480b04a52..1d8b8257773d 100644
> --- a/drivers/scsi/Kconfig
> +++ b/drivers/scsi/Kconfig
> @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
>  config SCSI_ADVANSYS
>  	tristate "AdvanSys SCSI support"
>  	depends on SCSI
> -	depends on ISA || EISA || PCI
> +	depends on (ISA && ISA_DMA_API) || EISA || PCI

I thought the desire was to avoid a compile failure when ISA && !
ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
PCI and !ISA_DMA_API?

James



^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 13:53   ` James Bottomley
  0 siblings, 0 replies; 10+ messages in thread
From: James Bottomley @ 2015-10-16 13:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 2015-10-16 at 14:13 +0200, Arnd Bergmann wrote:
> The advansys drvier uses the request_dma function that is used on ISA
> machines for the internal DMA controller, which causes build errors
> on platforms that have ISA slots but do not provide the ISA DMA API:
> 
> drivers/scsi/advansys.c: In function 'advansys_board_found':
> drivers/scsi/advansys.c:11300:10: error: implicit declaration of function 'request_dma' [-Werror=implicit-function-declaration]
> 
> The problem now showed up in ARM randconfig builds after commit
> 6571fb3f8b7f ("advansys: Update to version 3.5 and remove compilation
> warning") made it possible to build on platforms that have neither
> VIRT_TO_BUS nor ISA_DMA_API but that do have ISA.
> 
> This adds a dependency to only build the driver on ISA based machines
> if they also support ISA_DMA_API, or if they EISA or PCI are also
> enabled.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
> diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> index d2f480b04a52..1d8b8257773d 100644
> --- a/drivers/scsi/Kconfig
> +++ b/drivers/scsi/Kconfig
> @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
>  config SCSI_ADVANSYS
>  	tristate "AdvanSys SCSI support"
>  	depends on SCSI
> -	depends on ISA || EISA || PCI
> +	depends on (ISA && ISA_DMA_API) || EISA || PCI

I thought the desire was to avoid a compile failure when ISA && !
ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
PCI and !ISA_DMA_API?

James

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] scsi: advansys needs ISA dma api for ISA support
  2015-10-16 13:53   ` James Bottomley
@ 2015-10-16 14:19     ` Arnd Bergmann
  -1 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2015-10-16 14:19 UTC (permalink / raw)
  To: James Bottomley
  Cc: linux-scsi, Hannes Reinecke, linux-arm-kernel, linux-kernel

On Friday 16 October 2015 06:53:44 James Bottomley wrote:
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > 
> > diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> > index d2f480b04a52..1d8b8257773d 100644
> > --- a/drivers/scsi/Kconfig
> > +++ b/drivers/scsi/Kconfig
> > @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
> >  config SCSI_ADVANSYS
> >       tristate "AdvanSys SCSI support"
> >       depends on SCSI
> > -     depends on ISA || EISA || PCI
> > +     depends on (ISA && ISA_DMA_API) || EISA || PCI
> 
> I thought the desire was to avoid a compile failure when ISA && !
> ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
> PCI and !ISA_DMA_API?

I thought I had it ruled out, but now I've actually found a combination:
we can build an ARM kernel that supports two ancient machines, and one
of them supports ISA (but not ISA_DMA_API), while the other one supports
PCI. I had looked through several thousand randconfig builds and not
found this combination together with advansys, but I guess that is
because those were mostly old builds from the times when there was
a dependency on VIRT_TO_BUS that this platform doesn't have.

So screw this one and go back to the original patch.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 14:19     ` Arnd Bergmann
  0 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2015-10-16 14:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Friday 16 October 2015 06:53:44 James Bottomley wrote:
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > 
> > diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> > index d2f480b04a52..1d8b8257773d 100644
> > --- a/drivers/scsi/Kconfig
> > +++ b/drivers/scsi/Kconfig
> > @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
> >  config SCSI_ADVANSYS
> >       tristate "AdvanSys SCSI support"
> >       depends on SCSI
> > -     depends on ISA || EISA || PCI
> > +     depends on (ISA && ISA_DMA_API) || EISA || PCI
> 
> I thought the desire was to avoid a compile failure when ISA && !
> ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
> PCI and !ISA_DMA_API?

I thought I had it ruled out, but now I've actually found a combination:
we can build an ARM kernel that supports two ancient machines, and one
of them supports ISA (but not ISA_DMA_API), while the other one supports
PCI. I had looked through several thousand randconfig builds and not
found this combination together with advansys, but I guess that is
because those were mostly old builds from the times when there was
a dependency on VIRT_TO_BUS that this platform doesn't have.

So screw this one and go back to the original patch.

	Arnd

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] scsi: advansys needs ISA dma api for ISA support
  2015-10-16 14:19     ` Arnd Bergmann
@ 2015-10-16 14:26       ` James Bottomley
  -1 siblings, 0 replies; 10+ messages in thread
From: James Bottomley @ 2015-10-16 14:26 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: linux-scsi, Hannes Reinecke, linux-arm-kernel, linux-kernel

On Fri, 2015-10-16 at 16:19 +0200, Arnd Bergmann wrote:
> On Friday 16 October 2015 06:53:44 James Bottomley wrote:
> > > 
> > > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > > 
> > > diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> > > index d2f480b04a52..1d8b8257773d 100644
> > > --- a/drivers/scsi/Kconfig
> > > +++ b/drivers/scsi/Kconfig
> > > @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
> > >  config SCSI_ADVANSYS
> > >       tristate "AdvanSys SCSI support"
> > >       depends on SCSI
> > > -     depends on ISA || EISA || PCI
> > > +     depends on (ISA && ISA_DMA_API) || EISA || PCI
> > 
> > I thought the desire was to avoid a compile failure when ISA && !
> > ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
> > PCI and !ISA_DMA_API?
> 
> I thought I had it ruled out, but now I've actually found a combination:
> we can build an ARM kernel that supports two ancient machines, and one
> of them supports ISA (but not ISA_DMA_API), while the other one supports
> PCI. I had looked through several thousand randconfig builds and not
> found this combination together with advansys, but I guess that is
> because those were mostly old builds from the times when there was
> a dependency on VIRT_TO_BUS that this platform doesn't have.
> 
> So screw this one and go back to the original patch.

Agreed ... you've also got PA-RISC that enables EISA and is !
DMA_ISA_API.

James



^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2] scsi: advansys needs ISA dma api for ISA support
@ 2015-10-16 14:26       ` James Bottomley
  0 siblings, 0 replies; 10+ messages in thread
From: James Bottomley @ 2015-10-16 14:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 2015-10-16 at 16:19 +0200, Arnd Bergmann wrote:
> On Friday 16 October 2015 06:53:44 James Bottomley wrote:
> > > 
> > > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > > 
> > > diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
> > > index d2f480b04a52..1d8b8257773d 100644
> > > --- a/drivers/scsi/Kconfig
> > > +++ b/drivers/scsi/Kconfig
> > > @@ -498,7 +498,7 @@ config SCSI_DPT_I2O
> > >  config SCSI_ADVANSYS
> > >       tristate "AdvanSys SCSI support"
> > >       depends on SCSI
> > > -     depends on ISA || EISA || PCI
> > > +     depends on (ISA && ISA_DMA_API) || EISA || PCI
> > 
> > I thought the desire was to avoid a compile failure when ISA && !
> > ISA_DMA_API?  Won't this one fail if ISA is defined with either EISA or
> > PCI and !ISA_DMA_API?
> 
> I thought I had it ruled out, but now I've actually found a combination:
> we can build an ARM kernel that supports two ancient machines, and one
> of them supports ISA (but not ISA_DMA_API), while the other one supports
> PCI. I had looked through several thousand randconfig builds and not
> found this combination together with advansys, but I guess that is
> because those were mostly old builds from the times when there was
> a dependency on VIRT_TO_BUS that this platform doesn't have.
> 
> So screw this one and go back to the original patch.

Agreed ... you've also got PA-RISC that enables EISA and is !
DMA_ISA_API.

James

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2015-10-16 14:26 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-16 12:13 [PATCH v2] scsi: advansys needs ISA dma api for ISA support Arnd Bergmann
2015-10-16 12:13 ` Arnd Bergmann
2015-10-16 12:16 ` Hannes Reinecke
2015-10-16 12:16   ` Hannes Reinecke
2015-10-16 13:53 ` James Bottomley
2015-10-16 13:53   ` James Bottomley
2015-10-16 14:19   ` Arnd Bergmann
2015-10-16 14:19     ` Arnd Bergmann
2015-10-16 14:26     ` James Bottomley
2015-10-16 14:26       ` James Bottomley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.