2020-07-14 14:54:14

by Lee Jones

[permalink] [raw]
Subject: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

If function callers and providers do not share the same prototypes the
compiler complains of missing prototypes. Fix this by moving the
already existing prototypes out to a mutually convenient location.

Fixes the following W=1 kernel build warning(s):

drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
109 | int check_astate(void)
| ^~~~~~~~~~~~
drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
114 | void restore_astate(int cpu)
| ^~~~~~~~~~~~~~

Cc: Olof Johansson <[email protected]>
Cc: Michael Ellerman <[email protected]>
Cc: Benjamin Herrenschmidt <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: [email protected]
Signed-off-by: Lee Jones <[email protected]>
---
arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
arch/powerpc/platforms/pasemi/powersave.S | 2 ++
drivers/cpufreq/pasemi-cpufreq.c | 1 +
include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
4 files changed, 31 insertions(+), 15 deletions(-)
create mode 100644 include/linux/platform_data/pasemi.h

diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h
index 70b56048ed1be..528d81ef748ad 100644
--- a/arch/powerpc/platforms/pasemi/pasemi.h
+++ b/arch/powerpc/platforms/pasemi/pasemi.h
@@ -15,21 +15,6 @@ extern void __init pasemi_map_registers(void);
extern void idle_spin(void);
extern void idle_doze(void);

-/* Restore astate to last set */
-#ifdef CONFIG_PPC_PASEMI_CPUFREQ
-extern int check_astate(void);
-extern void restore_astate(int cpu);
-#else
-static inline int check_astate(void)
-{
- /* Always return >0 so we never power save */
- return 1;
-}
-static inline void restore_astate(int cpu)
-{
-}
-#endif
-
extern struct pci_controller_ops pasemi_pci_controller_ops;

#endif /* _PASEMI_PASEMI_H */
diff --git a/arch/powerpc/platforms/pasemi/powersave.S b/arch/powerpc/platforms/pasemi/powersave.S
index d0215d5329ca7..7747b48963286 100644
--- a/arch/powerpc/platforms/pasemi/powersave.S
+++ b/arch/powerpc/platforms/pasemi/powersave.S
@@ -5,6 +5,8 @@
* Maintained by: Olof Johansson <[email protected]>
*/

+#include <linux/platform_data/pasemi.h>
+
#include <asm/processor.h>
#include <asm/page.h>
#include <asm/ppc_asm.h>
diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
index c66f566a854cb..c6bb3ecc90ef3 100644
--- a/drivers/cpufreq/pasemi-cpufreq.c
+++ b/drivers/cpufreq/pasemi-cpufreq.c
@@ -15,6 +15,7 @@
#include <linux/timer.h>
#include <linux/module.h>
#include <linux/of_address.h>
+#include <linux/platform_data/pasemi.h>

#include <asm/hw_irq.h>
#include <asm/io.h>
diff --git a/include/linux/platform_data/pasemi.h b/include/linux/platform_data/pasemi.h
new file mode 100644
index 0000000000000..3fed0687fcc9a
--- /dev/null
+++ b/include/linux/platform_data/pasemi.h
@@ -0,0 +1,28 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright (C) 2020 Linaro Ltd.
+ *
+ * Author: Lee Jones <[email protected]>
+ */
+
+#ifndef _LINUX_PLATFORM_DATA_PASEMI_H
+#define _LINUX_PLATFORM_DATA_PASEMI_H
+
+/* Restore astate to last set */
+#ifdef CONFIG_PPC_PASEMI_CPUFREQ
+int check_astate(void);
+void restore_astate(int cpu);
+#else
+static inline int check_astate(void)
+{
+ /* Always return >0 so we never power save */
+ return 1;
+}
+static inline void restore_astate(int cpu)
+{
+}
+#endif
+
+#endif /* _LINUX_PLATFORM_DATA_PASEMI_H */
+
+
--
2.25.1


2020-07-15 04:08:10

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On 14-07-20, 15:50, Lee Jones wrote:
> If function callers and providers do not share the same prototypes the
> compiler complains of missing prototypes. Fix this by moving the
> already existing prototypes out to a mutually convenient location.
>
> Fixes the following W=1 kernel build warning(s):
>
> drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> 109 | int check_astate(void)
> | ^~~~~~~~~~~~
> drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> 114 | void restore_astate(int cpu)
> | ^~~~~~~~~~~~~~
>
> Cc: Olof Johansson <[email protected]>
> Cc: Michael Ellerman <[email protected]>
> Cc: Benjamin Herrenschmidt <[email protected]>
> Cc: Paul Mackerras <[email protected]>
> Cc: [email protected]
> Signed-off-by: Lee Jones <[email protected]>
> ---
> arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------

Is there no sane way we can include this file directly to the cpufreq
file ?

> arch/powerpc/platforms/pasemi/powersave.S | 2 ++
> drivers/cpufreq/pasemi-cpufreq.c | 1 +
> include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
> 4 files changed, 31 insertions(+), 15 deletions(-)
> create mode 100644 include/linux/platform_data/pasemi.h

--
viresh

2020-07-15 04:14:39

by Olof Johansson

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, Jul 14, 2020 at 7:50 AM Lee Jones <[email protected]> wrote:
>
> If function callers and providers do not share the same prototypes the
> compiler complains of missing prototypes. Fix this by moving the
> already existing prototypes out to a mutually convenient location.
>
> Fixes the following W=1 kernel build warning(s):
>
> drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> 109 | int check_astate(void)
> | ^~~~~~~~~~~~
> drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> 114 | void restore_astate(int cpu)
> | ^~~~~~~~~~~~~~
>
> Cc: Olof Johansson <[email protected]>
> Cc: Michael Ellerman <[email protected]>
> Cc: Benjamin Herrenschmidt <[email protected]>
> Cc: Paul Mackerras <[email protected]>
> Cc: [email protected]
> Signed-off-by: Lee Jones <[email protected]>
> ---
> arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> arch/powerpc/platforms/pasemi/powersave.S | 2 ++
> drivers/cpufreq/pasemi-cpufreq.c | 1 +
> include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
> 4 files changed, 31 insertions(+), 15 deletions(-)
> create mode 100644 include/linux/platform_data/pasemi.h
>
> diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h
> index 70b56048ed1be..528d81ef748ad 100644
> --- a/arch/powerpc/platforms/pasemi/pasemi.h
> +++ b/arch/powerpc/platforms/pasemi/pasemi.h
> @@ -15,21 +15,6 @@ extern void __init pasemi_map_registers(void);
> extern void idle_spin(void);
> extern void idle_doze(void);
>
> -/* Restore astate to last set */
> -#ifdef CONFIG_PPC_PASEMI_CPUFREQ
> -extern int check_astate(void);
> -extern void restore_astate(int cpu);
> -#else
> -static inline int check_astate(void)
> -{
> - /* Always return >0 so we never power save */
> - return 1;
> -}
> -static inline void restore_astate(int cpu)
> -{
> -}
> -#endif
> -
> extern struct pci_controller_ops pasemi_pci_controller_ops;
>
> #endif /* _PASEMI_PASEMI_H */
> diff --git a/arch/powerpc/platforms/pasemi/powersave.S b/arch/powerpc/platforms/pasemi/powersave.S
> index d0215d5329ca7..7747b48963286 100644
> --- a/arch/powerpc/platforms/pasemi/powersave.S
> +++ b/arch/powerpc/platforms/pasemi/powersave.S
> @@ -5,6 +5,8 @@
> * Maintained by: Olof Johansson <[email protected]>
> */
>
> +#include <linux/platform_data/pasemi.h>
> +
> #include <asm/processor.h>
> #include <asm/page.h>
> #include <asm/ppc_asm.h>
> diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> index c66f566a854cb..c6bb3ecc90ef3 100644
> --- a/drivers/cpufreq/pasemi-cpufreq.c
> +++ b/drivers/cpufreq/pasemi-cpufreq.c
> @@ -15,6 +15,7 @@
> #include <linux/timer.h>
> #include <linux/module.h>
> #include <linux/of_address.h>
> +#include <linux/platform_data/pasemi.h>
>
> #include <asm/hw_irq.h>
> #include <asm/io.h>
> diff --git a/include/linux/platform_data/pasemi.h b/include/linux/platform_data/pasemi.h
> new file mode 100644
> index 0000000000000..3fed0687fcc9a
> --- /dev/null
> +++ b/include/linux/platform_data/pasemi.h
> @@ -0,0 +1,28 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/*
> + * Copyright (C) 2020 Linaro Ltd.
> + *
> + * Author: Lee Jones <[email protected]>
> + */

Absolutely not. It's neither your copyright, nor your authorship.


-Olof

2020-07-15 04:19:56

by Olof Johansson

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, Jul 14, 2020 at 8:07 PM Viresh Kumar <[email protected]> wrote:
>
> On 14-07-20, 15:50, Lee Jones wrote:
> > If function callers and providers do not share the same prototypes the
> > compiler complains of missing prototypes. Fix this by moving the
> > already existing prototypes out to a mutually convenient location.
> >
> > Fixes the following W=1 kernel build warning(s):
> >
> > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > 109 | int check_astate(void)
> > | ^~~~~~~~~~~~
> > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > 114 | void restore_astate(int cpu)
> > | ^~~~~~~~~~~~~~
> >
> > Cc: Olof Johansson <[email protected]>
> > Cc: Michael Ellerman <[email protected]>
> > Cc: Benjamin Herrenschmidt <[email protected]>
> > Cc: Paul Mackerras <[email protected]>
> > Cc: [email protected]
> > Signed-off-by: Lee Jones <[email protected]>
> > ---
> > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
>
> Is there no sane way we can include this file directly to the cpufreq
> file ?

Yep. arch/powerpc seems to be in the search path for modules on powerpc, so:

diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
index c66f566a854cb..815645170c4de 100644
--- a/drivers/cpufreq/pasemi-cpufreq.c
+++ b/drivers/cpufreq/pasemi-cpufreq.c
@@ -22,6 +22,8 @@
#include <asm/time.h>
#include <asm/smp.h>

+#include <platforms/pasemi/pasemi.h>
+
#define SDCASR_REG 0x0100
#define SDCASR_REG_STRIDE 0x1000
#define SDCPWR_CFGA0_REG 0x0100


-Olof

2020-07-15 04:20:04

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On 14-07-20, 20:49, Olof Johansson wrote:
> On Tue, Jul 14, 2020 at 8:07 PM Viresh Kumar <[email protected]> wrote:
> >
> > On 14-07-20, 15:50, Lee Jones wrote:
> > > If function callers and providers do not share the same prototypes the
> > > compiler complains of missing prototypes. Fix this by moving the
> > > already existing prototypes out to a mutually convenient location.
> > >
> > > Fixes the following W=1 kernel build warning(s):
> > >
> > > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > > 109 | int check_astate(void)
> > > | ^~~~~~~~~~~~
> > > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > > 114 | void restore_astate(int cpu)
> > > | ^~~~~~~~~~~~~~
> > >
> > > Cc: Olof Johansson <[email protected]>
> > > Cc: Michael Ellerman <[email protected]>
> > > Cc: Benjamin Herrenschmidt <[email protected]>
> > > Cc: Paul Mackerras <[email protected]>
> > > Cc: [email protected]
> > > Signed-off-by: Lee Jones <[email protected]>
> > > ---
> > > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> >
> > Is there no sane way we can include this file directly to the cpufreq
> > file ?
>
> Yep. arch/powerpc seems to be in the search path for modules on powerpc, so:
>
> diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> index c66f566a854cb..815645170c4de 100644
> --- a/drivers/cpufreq/pasemi-cpufreq.c
> +++ b/drivers/cpufreq/pasemi-cpufreq.c
> @@ -22,6 +22,8 @@
> #include <asm/time.h>
> #include <asm/smp.h>
>
> +#include <platforms/pasemi/pasemi.h>
> +
> #define SDCASR_REG 0x0100
> #define SDCASR_REG_STRIDE 0x1000
> #define SDCPWR_CFGA0_REG 0x0100

Fantastic. Thanks.

--
viresh

2020-07-15 06:34:49

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, 14 Jul 2020, Olof Johansson wrote:

> On Tue, Jul 14, 2020 at 7:50 AM Lee Jones <[email protected]> wrote:
> >
> > If function callers and providers do not share the same prototypes the
> > compiler complains of missing prototypes. Fix this by moving the
> > already existing prototypes out to a mutually convenient location.
> >
> > Fixes the following W=1 kernel build warning(s):
> >
> > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > 109 | int check_astate(void)
> > | ^~~~~~~~~~~~
> > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > 114 | void restore_astate(int cpu)
> > | ^~~~~~~~~~~~~~
> >
> > Cc: Olof Johansson <[email protected]>
> > Cc: Michael Ellerman <[email protected]>
> > Cc: Benjamin Herrenschmidt <[email protected]>
> > Cc: Paul Mackerras <[email protected]>
> > Cc: [email protected]
> > Signed-off-by: Lee Jones <[email protected]>
> > ---
> > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> > arch/powerpc/platforms/pasemi/powersave.S | 2 ++
> > drivers/cpufreq/pasemi-cpufreq.c | 1 +
> > include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
> > 4 files changed, 31 insertions(+), 15 deletions(-)
> > create mode 100644 include/linux/platform_data/pasemi.h
> >
> > diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h
> > index 70b56048ed1be..528d81ef748ad 100644
> > --- a/arch/powerpc/platforms/pasemi/pasemi.h
> > +++ b/arch/powerpc/platforms/pasemi/pasemi.h
> > @@ -15,21 +15,6 @@ extern void __init pasemi_map_registers(void);
> > extern void idle_spin(void);
> > extern void idle_doze(void);
> >
> > -/* Restore astate to last set */
> > -#ifdef CONFIG_PPC_PASEMI_CPUFREQ
> > -extern int check_astate(void);
> > -extern void restore_astate(int cpu);
> > -#else
> > -static inline int check_astate(void)
> > -{
> > - /* Always return >0 so we never power save */
> > - return 1;
> > -}
> > -static inline void restore_astate(int cpu)
> > -{
> > -}
> > -#endif
> > -
> > extern struct pci_controller_ops pasemi_pci_controller_ops;
> >
> > #endif /* _PASEMI_PASEMI_H */
> > diff --git a/arch/powerpc/platforms/pasemi/powersave.S b/arch/powerpc/platforms/pasemi/powersave.S
> > index d0215d5329ca7..7747b48963286 100644
> > --- a/arch/powerpc/platforms/pasemi/powersave.S
> > +++ b/arch/powerpc/platforms/pasemi/powersave.S
> > @@ -5,6 +5,8 @@
> > * Maintained by: Olof Johansson <[email protected]>
> > */
> >
> > +#include <linux/platform_data/pasemi.h>
> > +
> > #include <asm/processor.h>
> > #include <asm/page.h>
> > #include <asm/ppc_asm.h>
> > diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> > index c66f566a854cb..c6bb3ecc90ef3 100644
> > --- a/drivers/cpufreq/pasemi-cpufreq.c
> > +++ b/drivers/cpufreq/pasemi-cpufreq.c
> > @@ -15,6 +15,7 @@
> > #include <linux/timer.h>
> > #include <linux/module.h>
> > #include <linux/of_address.h>
> > +#include <linux/platform_data/pasemi.h>
> >
> > #include <asm/hw_irq.h>
> > #include <asm/io.h>
> > diff --git a/include/linux/platform_data/pasemi.h b/include/linux/platform_data/pasemi.h
> > new file mode 100644
> > index 0000000000000..3fed0687fcc9a
> > --- /dev/null
> > +++ b/include/linux/platform_data/pasemi.h
> > @@ -0,0 +1,28 @@
> > +/* SPDX-License-Identifier: GPL-2.0-only */
> > +/*
> > + * Copyright (C) 2020 Linaro Ltd.
> > + *
> > + * Author: Lee Jones <[email protected]>
> > + */
>
> Absolutely not. It's neither your copyright, nor your authorship.

The file was new. Anyway, the point is now moot.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

2020-07-15 06:39:12

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, 14 Jul 2020, Olof Johansson wrote:

> On Tue, Jul 14, 2020 at 8:07 PM Viresh Kumar <[email protected]> wrote:
> >
> > On 14-07-20, 15:50, Lee Jones wrote:
> > > If function callers and providers do not share the same prototypes the
> > > compiler complains of missing prototypes. Fix this by moving the
> > > already existing prototypes out to a mutually convenient location.
> > >
> > > Fixes the following W=1 kernel build warning(s):
> > >
> > > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > > 109 | int check_astate(void)
> > > | ^~~~~~~~~~~~
> > > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > > 114 | void restore_astate(int cpu)
> > > | ^~~~~~~~~~~~~~
> > >
> > > Cc: Olof Johansson <[email protected]>
> > > Cc: Michael Ellerman <[email protected]>
> > > Cc: Benjamin Herrenschmidt <[email protected]>
> > > Cc: Paul Mackerras <[email protected]>
> > > Cc: [email protected]
> > > Signed-off-by: Lee Jones <[email protected]>
> > > ---
> > > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> >
> > Is there no sane way we can include this file directly to the cpufreq
> > file ?
>
> Yep. arch/powerpc seems to be in the search path for modules on powerpc, so:
>
> diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> index c66f566a854cb..815645170c4de 100644
> --- a/drivers/cpufreq/pasemi-cpufreq.c
> +++ b/drivers/cpufreq/pasemi-cpufreq.c
> @@ -22,6 +22,8 @@
> #include <asm/time.h>
> #include <asm/smp.h>
>
> +#include <platforms/pasemi/pasemi.h>
> +
> #define SDCASR_REG 0x0100
> #define SDCASR_REG_STRIDE 0x1000
> #define SDCPWR_CFGA0_REG 0x0100

I searched for "include.*platforms/" in drivers/, and was scared off
this method since no one else does this.

But if it's a reasonable solution, great. Will fix.

Thanks Olof.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

2020-07-15 06:40:10

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On 15-07-20, 07:36, Lee Jones wrote:
> I searched for "include.*platforms/" in drivers/, and was scared off
> this method since no one else does this.

Yeah its not right for generic drivers, but this is very much platform
specific so it is fine here.

--
viresh

2020-07-15 06:47:49

by Olof Johansson

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, Jul 14, 2020 at 11:33 PM Lee Jones <[email protected]> wrote:
>
> On Tue, 14 Jul 2020, Olof Johansson wrote:
>
> > On Tue, Jul 14, 2020 at 7:50 AM Lee Jones <[email protected]> wrote:
> > >
> > > If function callers and providers do not share the same prototypes the
> > > compiler complains of missing prototypes. Fix this by moving the
> > > already existing prototypes out to a mutually convenient location.
> > >
> > > Fixes the following W=1 kernel build warning(s):
> > >
> > > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > > 109 | int check_astate(void)
> > > | ^~~~~~~~~~~~
> > > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > > 114 | void restore_astate(int cpu)
> > > | ^~~~~~~~~~~~~~
> > >
> > > Cc: Olof Johansson <[email protected]>
> > > Cc: Michael Ellerman <[email protected]>
> > > Cc: Benjamin Herrenschmidt <[email protected]>
> > > Cc: Paul Mackerras <[email protected]>
> > > Cc: [email protected]
> > > Signed-off-by: Lee Jones <[email protected]>
> > > ---
> > > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> > > arch/powerpc/platforms/pasemi/powersave.S | 2 ++
> > > drivers/cpufreq/pasemi-cpufreq.c | 1 +
> > > include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
> > > 4 files changed, 31 insertions(+), 15 deletions(-)
> > > create mode 100644 include/linux/platform_data/pasemi.h
> > >
> > > diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h
> > > index 70b56048ed1be..528d81ef748ad 100644
> > > --- a/arch/powerpc/platforms/pasemi/pasemi.h
> > > +++ b/arch/powerpc/platforms/pasemi/pasemi.h
> > > @@ -15,21 +15,6 @@ extern void __init pasemi_map_registers(void);
> > > extern void idle_spin(void);
> > > extern void idle_doze(void);
> > >
> > > -/* Restore astate to last set */
> > > -#ifdef CONFIG_PPC_PASEMI_CPUFREQ
> > > -extern int check_astate(void);
> > > -extern void restore_astate(int cpu);
> > > -#else
> > > -static inline int check_astate(void)
> > > -{
> > > - /* Always return >0 so we never power save */
> > > - return 1;
> > > -}
> > > -static inline void restore_astate(int cpu)
> > > -{
> > > -}
> > > -#endif
> > > -
> > > extern struct pci_controller_ops pasemi_pci_controller_ops;
> > >
> > > #endif /* _PASEMI_PASEMI_H */
> > > diff --git a/arch/powerpc/platforms/pasemi/powersave.S b/arch/powerpc/platforms/pasemi/powersave.S
> > > index d0215d5329ca7..7747b48963286 100644
> > > --- a/arch/powerpc/platforms/pasemi/powersave.S
> > > +++ b/arch/powerpc/platforms/pasemi/powersave.S
> > > @@ -5,6 +5,8 @@
> > > * Maintained by: Olof Johansson <[email protected]>
> > > */
> > >
> > > +#include <linux/platform_data/pasemi.h>
> > > +
> > > #include <asm/processor.h>
> > > #include <asm/page.h>
> > > #include <asm/ppc_asm.h>
> > > diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> > > index c66f566a854cb..c6bb3ecc90ef3 100644
> > > --- a/drivers/cpufreq/pasemi-cpufreq.c
> > > +++ b/drivers/cpufreq/pasemi-cpufreq.c
> > > @@ -15,6 +15,7 @@
> > > #include <linux/timer.h>
> > > #include <linux/module.h>
> > > #include <linux/of_address.h>
> > > +#include <linux/platform_data/pasemi.h>
> > >
> > > #include <asm/hw_irq.h>
> > > #include <asm/io.h>
> > > diff --git a/include/linux/platform_data/pasemi.h b/include/linux/platform_data/pasemi.h
> > > new file mode 100644
> > > index 0000000000000..3fed0687fcc9a
> > > --- /dev/null
> > > +++ b/include/linux/platform_data/pasemi.h
> > > @@ -0,0 +1,28 @@
> > > +/* SPDX-License-Identifier: GPL-2.0-only */
> > > +/*
> > > + * Copyright (C) 2020 Linaro Ltd.
> > > + *
> > > + * Author: Lee Jones <[email protected]>
> > > + */
> >
> > Absolutely not. It's neither your copyright, nor your authorship.
>
> The file was new. Anyway, the point is now moot.

The contents was copied and pasted from other material, not originally
produced by you.

I suggest you consult with Linaro lawyers on how to handle this if you
have to do something like it in the future.


-Olof

2020-07-15 07:34:43

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH 05/13] cpufreq/arch: powerpc: pasemi: Move prototypes to shared header

On Tue, 14 Jul 2020, Olof Johansson wrote:

> On Tue, Jul 14, 2020 at 11:33 PM Lee Jones <[email protected]> wrote:
> >
> > On Tue, 14 Jul 2020, Olof Johansson wrote:
> >
> > > On Tue, Jul 14, 2020 at 7:50 AM Lee Jones <[email protected]> wrote:
> > > >
> > > > If function callers and providers do not share the same prototypes the
> > > > compiler complains of missing prototypes. Fix this by moving the
> > > > already existing prototypes out to a mutually convenient location.
> > > >
> > > > Fixes the following W=1 kernel build warning(s):
> > > >
> > > > drivers/cpufreq/pasemi-cpufreq.c:109:5: warning: no previous prototype for ‘check_astate’ [-Wmissing-prototypes]
> > > > 109 | int check_astate(void)
> > > > | ^~~~~~~~~~~~
> > > > drivers/cpufreq/pasemi-cpufreq.c:114:6: warning: no previous prototype for ‘restore_astate’ [-Wmissing-prototypes]
> > > > 114 | void restore_astate(int cpu)
> > > > | ^~~~~~~~~~~~~~
> > > >
> > > > Cc: Olof Johansson <[email protected]>
> > > > Cc: Michael Ellerman <[email protected]>
> > > > Cc: Benjamin Herrenschmidt <[email protected]>
> > > > Cc: Paul Mackerras <[email protected]>
> > > > Cc: [email protected]
> > > > Signed-off-by: Lee Jones <[email protected]>
> > > > ---
> > > > arch/powerpc/platforms/pasemi/pasemi.h | 15 ------------
> > > > arch/powerpc/platforms/pasemi/powersave.S | 2 ++
> > > > drivers/cpufreq/pasemi-cpufreq.c | 1 +
> > > > include/linux/platform_data/pasemi.h | 28 +++++++++++++++++++++++
> > > > 4 files changed, 31 insertions(+), 15 deletions(-)
> > > > create mode 100644 include/linux/platform_data/pasemi.h
> > > >
> > > > diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h
> > > > index 70b56048ed1be..528d81ef748ad 100644
> > > > --- a/arch/powerpc/platforms/pasemi/pasemi.h
> > > > +++ b/arch/powerpc/platforms/pasemi/pasemi.h
> > > > @@ -15,21 +15,6 @@ extern void __init pasemi_map_registers(void);
> > > > extern void idle_spin(void);
> > > > extern void idle_doze(void);
> > > >
> > > > -/* Restore astate to last set */
> > > > -#ifdef CONFIG_PPC_PASEMI_CPUFREQ
> > > > -extern int check_astate(void);
> > > > -extern void restore_astate(int cpu);
> > > > -#else
> > > > -static inline int check_astate(void)
> > > > -{
> > > > - /* Always return >0 so we never power save */
> > > > - return 1;
> > > > -}
> > > > -static inline void restore_astate(int cpu)
> > > > -{
> > > > -}
> > > > -#endif
> > > > -
> > > > extern struct pci_controller_ops pasemi_pci_controller_ops;
> > > >
> > > > #endif /* _PASEMI_PASEMI_H */
> > > > diff --git a/arch/powerpc/platforms/pasemi/powersave.S b/arch/powerpc/platforms/pasemi/powersave.S
> > > > index d0215d5329ca7..7747b48963286 100644
> > > > --- a/arch/powerpc/platforms/pasemi/powersave.S
> > > > +++ b/arch/powerpc/platforms/pasemi/powersave.S
> > > > @@ -5,6 +5,8 @@
> > > > * Maintained by: Olof Johansson <[email protected]>
> > > > */
> > > >
> > > > +#include <linux/platform_data/pasemi.h>
> > > > +
> > > > #include <asm/processor.h>
> > > > #include <asm/page.h>
> > > > #include <asm/ppc_asm.h>
> > > > diff --git a/drivers/cpufreq/pasemi-cpufreq.c b/drivers/cpufreq/pasemi-cpufreq.c
> > > > index c66f566a854cb..c6bb3ecc90ef3 100644
> > > > --- a/drivers/cpufreq/pasemi-cpufreq.c
> > > > +++ b/drivers/cpufreq/pasemi-cpufreq.c
> > > > @@ -15,6 +15,7 @@
> > > > #include <linux/timer.h>
> > > > #include <linux/module.h>
> > > > #include <linux/of_address.h>
> > > > +#include <linux/platform_data/pasemi.h>
> > > >
> > > > #include <asm/hw_irq.h>
> > > > #include <asm/io.h>
> > > > diff --git a/include/linux/platform_data/pasemi.h b/include/linux/platform_data/pasemi.h
> > > > new file mode 100644
> > > > index 0000000000000..3fed0687fcc9a
> > > > --- /dev/null
> > > > +++ b/include/linux/platform_data/pasemi.h
> > > > @@ -0,0 +1,28 @@
> > > > +/* SPDX-License-Identifier: GPL-2.0-only */
> > > > +/*
> > > > + * Copyright (C) 2020 Linaro Ltd.
> > > > + *
> > > > + * Author: Lee Jones <[email protected]>
> > > > + */
> > >
> > > Absolutely not. It's neither your copyright, nor your authorship.
> >
> > The file was new. Anyway, the point is now moot.
>
> The contents was copied and pasted from other material, not originally
> produced by you.
>
> I suggest you consult with Linaro lawyers on how to handle this if you
> have to do something like it in the future.

Very well. Thanks for the heads-up.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog