linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] powerpc: edac: Fix build error
@ 2014-08-22  2:19 Pranith Kumar
  2014-08-22  5:07 ` Borislav Petkov
  2014-08-25  5:29 ` Michael Ellerman
  0 siblings, 2 replies; 3+ messages in thread
From: Pranith Kumar @ 2014-08-22  2:19 UTC (permalink / raw)
  To: Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Doug Thompson, Borislav Petkov, Mauro Carvalho Chehab,
	open list:LINUX FOR POWERPC...,
	open list, open list:EDAC-CORE
  Cc: Andrew Morton

Fix the following build error:

drivers/edac/ppc4xx_edac.c: In function 'mfsdram':
drivers/edac/ppc4xx_edac.c:249: error: implicit declaration of function
'__mfdcri'
drivers/edac/ppc4xx_edac.c: In function 'mtsdram':
drivers/edac/ppc4xx_edac.c:266: error: implicit declaration of function
'__mtdcri'
drivers/edac/ppc4xx_edac.c:269: warning: 'return' with a value, in function
returning void
drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_init_csrows':
drivers/edac/ppc4xx_edac.c:924: warning: initialization from incompatible
pointer type
drivers/edac/ppc4xx_edac.c:977: error: request for member 'dimm' in something
not a structure or union
drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_map_dcrs':
drivers/edac/ppc4xx_edac.c:1209: warning: passing argument 1 of 'dcr_map_mmio'
discards qualifiers from pointer target type

This driver depends on PPC_DCR_NATIVE to be set for the relevant headers to be
included. Also if PPC_DCR_MMIO=n the build fails. So make PPC_DCR depend on both
these options.

This is compile tested only.

Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
CC: Andrew Morton <akpm@linux-foundation.org>
---
 arch/powerpc/Kconfig       | 6 +++---
 drivers/edac/ppc4xx_edac.c | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 4bc7b62..9b90c1c 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -233,15 +233,15 @@ config ARCH_SUSPEND_POSSIBLE
 
 config PPC_DCR_NATIVE
 	bool
-	default n
+	default y
 
 config PPC_DCR_MMIO
 	bool
-	default n
+	default y
 
 config PPC_DCR
 	bool
-	depends on PPC_DCR_NATIVE || PPC_DCR_MMIO
+	depends on PPC_DCR_NATIVE && PPC_DCR_MMIO
 	default y
 
 config PPC_OF_PLATFORM_PCI
diff --git a/drivers/edac/ppc4xx_edac.c b/drivers/edac/ppc4xx_edac.c
index ef6b7e0..8725b73 100644
--- a/drivers/edac/ppc4xx_edac.c
+++ b/drivers/edac/ppc4xx_edac.c
@@ -246,8 +246,8 @@ static const char * const ppc4xx_plb_masters[9] = {
 static inline u32
 mfsdram(const dcr_host_t *dcr_host, unsigned int idcr_n)
 {
-	return __mfdcri(dcr_host->base + SDRAM_DCR_ADDR_OFFSET,
-			dcr_host->base + SDRAM_DCR_DATA_OFFSET,
+	return __mfdcri(dcr_host->host.native.base + SDRAM_DCR_ADDR_OFFSET,
+			dcr_host->host.native.base + SDRAM_DCR_DATA_OFFSET,
 			idcr_n);
 }
 
@@ -263,8 +263,8 @@ mfsdram(const dcr_host_t *dcr_host, unsigned int idcr_n)
 static inline void
 mtsdram(const dcr_host_t *dcr_host, unsigned int idcr_n, u32 value)
 {
-	return __mtdcri(dcr_host->base + SDRAM_DCR_ADDR_OFFSET,
-			dcr_host->base + SDRAM_DCR_DATA_OFFSET,
+	return __mtdcri(dcr_host->host.native.base + SDRAM_DCR_ADDR_OFFSET,
+			dcr_host->host.native.base + SDRAM_DCR_DATA_OFFSET,
 			idcr_n,
 			value);
 }
-- 
1.9.1


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

* Re: [PATCH] powerpc: edac: Fix build error
  2014-08-22  2:19 [PATCH] powerpc: edac: Fix build error Pranith Kumar
@ 2014-08-22  5:07 ` Borislav Petkov
  2014-08-25  5:29 ` Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Borislav Petkov @ 2014-08-22  5:07 UTC (permalink / raw)
  To: Pranith Kumar, Grant Erickson
  Cc: Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Doug Thompson, Mauro Carvalho Chehab,
	open list:LINUX FOR POWERPC...,
	open list, open list:EDAC-CORE, Andrew Morton

On Thu, Aug 21, 2014 at 10:19:51PM -0400, Pranith Kumar wrote:
> Fix the following build error:
> 
> drivers/edac/ppc4xx_edac.c: In function 'mfsdram':
> drivers/edac/ppc4xx_edac.c:249: error: implicit declaration of function
> '__mfdcri'
> drivers/edac/ppc4xx_edac.c: In function 'mtsdram':
> drivers/edac/ppc4xx_edac.c:266: error: implicit declaration of function
> '__mtdcri'
> drivers/edac/ppc4xx_edac.c:269: warning: 'return' with a value, in function
> returning void
> drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_init_csrows':
> drivers/edac/ppc4xx_edac.c:924: warning: initialization from incompatible
> pointer type
> drivers/edac/ppc4xx_edac.c:977: error: request for member 'dimm' in something
> not a structure or union
> drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_map_dcrs':
> drivers/edac/ppc4xx_edac.c:1209: warning: passing argument 1 of 'dcr_map_mmio'
> discards qualifiers from pointer target type
> 
> This driver depends on PPC_DCR_NATIVE to be set for the relevant headers to be
> included. Also if PPC_DCR_MMIO=n the build fails. So make PPC_DCR depend on both
> these options.
> 
> This is compile tested only.

This driver has been carried through the years from misc people after
its initial drop in 2009. And frankly, I'd prefer if someone with the
hardware could actually test it before we break it any further.

Alternatively, if it is obsolete and no one uses it, we could very well
delete it instead. Initial commit talks about the hw it supports:

dba7a77c0e40 ("edac: new ppc4xx driver module")

So it would be good if we got some opinions from the PPC crowd. Who are
on CC.

(leaving in the rest for context).

> 
> Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
> CC: Andrew Morton <akpm@linux-foundation.org>
> ---
>  arch/powerpc/Kconfig       | 6 +++---
>  drivers/edac/ppc4xx_edac.c | 8 ++++----
>  2 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 4bc7b62..9b90c1c 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -233,15 +233,15 @@ config ARCH_SUSPEND_POSSIBLE
>  
>  config PPC_DCR_NATIVE
>  	bool
> -	default n
> +	default y
>  
>  config PPC_DCR_MMIO
>  	bool
> -	default n
> +	default y
>  
>  config PPC_DCR
>  	bool
> -	depends on PPC_DCR_NATIVE || PPC_DCR_MMIO
> +	depends on PPC_DCR_NATIVE && PPC_DCR_MMIO
>  	default y
>  
>  config PPC_OF_PLATFORM_PCI
> diff --git a/drivers/edac/ppc4xx_edac.c b/drivers/edac/ppc4xx_edac.c
> index ef6b7e0..8725b73 100644
> --- a/drivers/edac/ppc4xx_edac.c
> +++ b/drivers/edac/ppc4xx_edac.c
> @@ -246,8 +246,8 @@ static const char * const ppc4xx_plb_masters[9] = {
>  static inline u32
>  mfsdram(const dcr_host_t *dcr_host, unsigned int idcr_n)
>  {
> -	return __mfdcri(dcr_host->base + SDRAM_DCR_ADDR_OFFSET,
> -			dcr_host->base + SDRAM_DCR_DATA_OFFSET,
> +	return __mfdcri(dcr_host->host.native.base + SDRAM_DCR_ADDR_OFFSET,
> +			dcr_host->host.native.base + SDRAM_DCR_DATA_OFFSET,
>  			idcr_n);
>  }
>  
> @@ -263,8 +263,8 @@ mfsdram(const dcr_host_t *dcr_host, unsigned int idcr_n)
>  static inline void
>  mtsdram(const dcr_host_t *dcr_host, unsigned int idcr_n, u32 value)
>  {
> -	return __mtdcri(dcr_host->base + SDRAM_DCR_ADDR_OFFSET,
> -			dcr_host->base + SDRAM_DCR_DATA_OFFSET,
> +	return __mtdcri(dcr_host->host.native.base + SDRAM_DCR_ADDR_OFFSET,
> +			dcr_host->host.native.base + SDRAM_DCR_DATA_OFFSET,
>  			idcr_n,
>  			value);
>  }
> -- 
> 1.9.1
> 
> 

-- 
Regards/Gruss,
    Boris.

Sent from a fat crate under my desk. Formatting is fine.
--

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

* Re: [PATCH] powerpc: edac: Fix build error
  2014-08-22  2:19 [PATCH] powerpc: edac: Fix build error Pranith Kumar
  2014-08-22  5:07 ` Borislav Petkov
@ 2014-08-25  5:29 ` Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Michael Ellerman @ 2014-08-25  5:29 UTC (permalink / raw)
  To: Pranith Kumar
  Cc: Benjamin Herrenschmidt, Paul Mackerras, Doug Thompson,
	Borislav Petkov, Mauro Carvalho Chehab,
	open list:LINUX FOR POWERPC...,
	open list, open list:EDAC-CORE, Andrew Morton

On Thu, 2014-08-21 at 22:19 -0400, Pranith Kumar wrote:
> Fix the following build error:
> 
> drivers/edac/ppc4xx_edac.c: In function 'mfsdram':
> drivers/edac/ppc4xx_edac.c:249: error: implicit declaration of function
> '__mfdcri'
> drivers/edac/ppc4xx_edac.c: In function 'mtsdram':
> drivers/edac/ppc4xx_edac.c:266: error: implicit declaration of function
> '__mtdcri'
> drivers/edac/ppc4xx_edac.c:269: warning: 'return' with a value, in function
> returning void
> drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_init_csrows':
> drivers/edac/ppc4xx_edac.c:924: warning: initialization from incompatible
> pointer type
> drivers/edac/ppc4xx_edac.c:977: error: request for member 'dimm' in something
> not a structure or union
> drivers/edac/ppc4xx_edac.c: In function 'ppc4xx_edac_map_dcrs':
> drivers/edac/ppc4xx_edac.c:1209: warning: passing argument 1 of 'dcr_map_mmio'
> discards qualifiers from pointer target type
> 
> This driver depends on PPC_DCR_NATIVE to be set for the relevant headers to be
> included. Also if PPC_DCR_MMIO=n the build fails. So make PPC_DCR depend on both
> these options.

Um, NAK I think. The whole point is that some platforms implement DCR natively
and some via MMIO, and that's meant to be hidden by the DCR API.

If the driver is directly calling DCR native routines then it should depend on
that.

cheers




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

end of thread, other threads:[~2014-08-25  5:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-22  2:19 [PATCH] powerpc: edac: Fix build error Pranith Kumar
2014-08-22  5:07 ` Borislav Petkov
2014-08-25  5:29 ` Michael Ellerman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).