* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected.
@ 2011-12-13 21:06 Denis Kuzmenko
2011-12-21 7:04 ` Kukjin Kim
2011-12-28 7:59 ` Kukjin Kim
0 siblings, 2 replies; 9+ messages in thread
From: Denis Kuzmenko @ 2011-12-13 21:06 UTC (permalink / raw)
To: linux-arm-kernel
Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected.
Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua>
---
Patch is against 3.2-rc4.
CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of this the
file s3c2410-iotiming.c is not ever compiled and enabling
CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to function
s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs defined
as NULL for this case.
Changelog:
v1 -> v2
New CONFIG_ symbols S3C241{0,2}_IOTIMING were removed as It was observed that
they already present but hidden from user.
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index e084b7e..133d005 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2118,7 +2118,7 @@ config CPU_FREQ_S3C24XX_DEBUG
config CPU_FREQ_S3C24XX_IODEBUG
bool "Debug CPUfreq Samsung driver IO timing"
- depends on CPU_FREQ_S3C24XX
+ depends on CPU_FREQ_S3C24XX && (S3C2410_IOTIMING || S3C2412_IOTIMING)
help
Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
index dac4760..c465252 100644
--- a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
+++ b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h
@@ -202,13 +202,23 @@ extern int s3c_plltab_register(struct cpufreq_frequency_table *plls,
extern struct s3c_cpufreq_config *s3c_cpufreq_getconfig(void);
extern struct s3c_iotimings *s3c_cpufreq_getiotimings(void);
-extern void s3c2410_iotiming_debugfs(struct seq_file *seq,
- struct s3c_cpufreq_config *cfg,
- union s3c_iobank *iob);
-
-extern void s3c2412_iotiming_debugfs(struct seq_file *seq,
- struct s3c_cpufreq_config *cfg,
- union s3c_iobank *iob);
+#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS
+ #ifdef CONFIG_S3C2410_IOTIMING
+ extern void s3c2410_iotiming_debugfs(struct seq_file *seq,
+ struct s3c_cpufreq_config *cfg,
+ union s3c_iobank *iob);
+ #else
+ #define s3c2410_iotiming_debugfs NULL
+ #endif
+
+ #ifdef CONFIG_S3C2412_IOTIMING
+ extern void s3c2412_iotiming_debugfs(struct seq_file *seq,
+ struct s3c_cpufreq_config *cfg,
+ union s3c_iobank *iob);
+ #else
+ #define s3c2412_iotiming_debugfs NULL
+ #endif
+#endif
#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS
#define s3c_cpufreq_debugfs_call(x) x
@@ -241,10 +251,7 @@ extern void s3c2410_iotiming_set(struct s3c_cpufreq_config *cfg,
#endif /* CONFIG_S3C2410_IOTIMING */
/* S3C2412 compatible routines */
-
-extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg,
- struct s3c_iotimings *timings);
-
+#ifdef CONFIG_S3C2412_IOTIMING
extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg,
struct s3c_iotimings *timings);
@@ -253,6 +260,11 @@ extern int s3c2412_iotiming_calc(struct s3c_cpufreq_config *cfg,
extern void s3c2412_iotiming_set(struct s3c_cpufreq_config *cfg,
struct s3c_iotimings *iot);
+#else
+#define s3c2412_iotiming_calc NULL
+#define s3c2412_iotiming_get NULL
+#define s3c2412_iotiming_set NULL
+#endif
#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUG
#define s3c_freq_dbg(x...) printk(KERN_INFO x)
^ permalink raw reply related [flat|nested] 9+ messages in thread* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-13 21:06 [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected Denis Kuzmenko @ 2011-12-21 7:04 ` Kukjin Kim 2011-12-21 19:49 ` Denis Kuzmenko 2011-12-28 7:59 ` Kukjin Kim 1 sibling, 1 reply; 9+ messages in thread From: Kukjin Kim @ 2011-12-21 7:04 UTC (permalink / raw) To: linux-arm-kernel Denis Kuzmenko wrote: > > Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. > > Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> > --- > > Patch is against 3.2-rc4. > CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of this > the > file s3c2410-iotiming.c is not ever compiled and enabling > CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to > function > s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs > defined > as NULL for this case. > Hi Denis, Well, there is no error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected in my case and s3c2410-iotiming.c is built...when is it happened? I just selected every regarding configuration in kernel menuconfig... Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. > Changelog: > v1 -> v2 > New CONFIG_ symbols S3C241{0,2}_IOTIMING were removed as It was observed > that > they already present but hidden from user. > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index e084b7e..133d005 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -2118,7 +2118,7 @@ config CPU_FREQ_S3C24XX_DEBUG > > config CPU_FREQ_S3C24XX_IODEBUG > bool "Debug CPUfreq Samsung driver IO timing" > - depends on CPU_FREQ_S3C24XX > + depends on CPU_FREQ_S3C24XX && (S3C2410_IOTIMING || > S3C2412_IOTIMING) > help > Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core > > diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > index dac4760..c465252 100644 > --- a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > +++ b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > @@ -202,13 +202,23 @@ extern int s3c_plltab_register(struct > cpufreq_frequency_table *plls, > extern struct s3c_cpufreq_config *s3c_cpufreq_getconfig(void); > extern struct s3c_iotimings *s3c_cpufreq_getiotimings(void); > > -extern void s3c2410_iotiming_debugfs(struct seq_file *seq, > - struct s3c_cpufreq_config *cfg, > - union s3c_iobank *iob); > - > -extern void s3c2412_iotiming_debugfs(struct seq_file *seq, > - struct s3c_cpufreq_config *cfg, > - union s3c_iobank *iob); > +#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS > + #ifdef CONFIG_S3C2410_IOTIMING > + extern void s3c2410_iotiming_debugfs(struct seq_file *seq, > + struct s3c_cpufreq_config *cfg, > + union s3c_iobank *iob); > + #else > + #define s3c2410_iotiming_debugfs NULL > + #endif > + > + #ifdef CONFIG_S3C2412_IOTIMING > + extern void s3c2412_iotiming_debugfs(struct seq_file *seq, > + struct s3c_cpufreq_config *cfg, > + union s3c_iobank *iob); > + #else > + #define s3c2412_iotiming_debugfs NULL > + #endif > +#endif > > #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS > #define s3c_cpufreq_debugfs_call(x) x > @@ -241,10 +251,7 @@ extern void s3c2410_iotiming_set(struct > s3c_cpufreq_config *cfg, > #endif /* CONFIG_S3C2410_IOTIMING */ > > /* S3C2412 compatible routines */ > - > -extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, > - struct s3c_iotimings *timings); > - > +#ifdef CONFIG_S3C2412_IOTIMING > extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, > struct s3c_iotimings *timings); > > @@ -253,6 +260,11 @@ extern int s3c2412_iotiming_calc(struct > s3c_cpufreq_config *cfg, > > extern void s3c2412_iotiming_set(struct s3c_cpufreq_config *cfg, > struct s3c_iotimings *iot); > +#else > +#define s3c2412_iotiming_calc NULL > +#define s3c2412_iotiming_get NULL > +#define s3c2412_iotiming_set NULL > +#endif > > #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUG > #define s3c_freq_dbg(x...) printk(KERN_INFO x) ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-21 7:04 ` Kukjin Kim @ 2011-12-21 19:49 ` Denis Kuzmenko 2011-12-21 22:04 ` Kukjin Kim 0 siblings, 1 reply; 9+ messages in thread From: Denis Kuzmenko @ 2011-12-21 19:49 UTC (permalink / raw) To: linux-arm-kernel On 12/21/2011 09:04 AM, Kukjin Kim wrote: > Denis Kuzmenko wrote: >> >> Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. >> >> Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> >> --- >> >> Patch is against 3.2-rc4. >> CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of this >> the >> file s3c2410-iotiming.c is not ever compiled and enabling >> CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to >> function >> s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs >> defined >> as NULL for this case. >> > Hi Denis, > > Well, there is no error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected in my > case and s3c2410-iotiming.c is built...when is it happened? I just selected > every regarding configuration in kernel menuconfig... Please, try attached config (it's still failing in v3.2-rc6). -- Best regards, Denis Kuzmenko. -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: .config URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20111221/e70a99b9/attachment-0001.ksh> ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-21 19:49 ` Denis Kuzmenko @ 2011-12-21 22:04 ` Kukjin Kim 2011-12-22 0:40 ` Denis Kuzmenko 0 siblings, 1 reply; 9+ messages in thread From: Kukjin Kim @ 2011-12-21 22:04 UTC (permalink / raw) To: linux-arm-kernel Denis Kuzmenko wrote: > > On 12/21/2011 09:04 AM, Kukjin Kim wrote: > > Denis Kuzmenko wrote: > >> > >> Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. > >> > >> Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> > >> --- > >> > >> Patch is against 3.2-rc4. > >> CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of > this > >> the > >> file s3c2410-iotiming.c is not ever compiled and enabling > >> CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to > >> function > >> s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs > >> defined > >> as NULL for this case. > >> > > Hi Denis, > > > > Well, there is no error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected in > my > > case and s3c2410-iotiming.c is built...when is it happened? I just > selected > > every regarding configuration in kernel menuconfig... > > Please, try attached config (it's still failing in v3.2-rc6). > Hi Denis, Yes, when s3c2410 stuff is not selected, it happened. Look at me soon and thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-21 22:04 ` Kukjin Kim @ 2011-12-22 0:40 ` Denis Kuzmenko 2011-12-22 1:44 ` Kukjin Kim 0 siblings, 1 reply; 9+ messages in thread From: Denis Kuzmenko @ 2011-12-22 0:40 UTC (permalink / raw) To: linux-arm-kernel On 12/22/2011 12:04 AM, Kukjin Kim wrote: > Denis Kuzmenko wrote: >> >> On 12/21/2011 09:04 AM, Kukjin Kim wrote: >>> Denis Kuzmenko wrote: >>>> >>>> Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. >>>> >>>> Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> >>>> --- >>>> >>>> Patch is against 3.2-rc4. >>>> CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of >> this >>>> the >>>> file s3c2410-iotiming.c is not ever compiled and enabling >>>> CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to >>>> function >>>> s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs >>>> defined >>>> as NULL for this case. >>>> >>> Hi Denis, >>> >>> Well, there is no error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected in >> my >>> case and s3c2410-iotiming.c is built...when is it happened? I just >> selected >>> every regarding configuration in kernel menuconfig... >> >> Please, try attached config (it's still failing in v3.2-rc6). >> > Hi Denis, > > Yes, when s3c2410 stuff is not selected, it happened. > Look at me soon and thanks. Hi, Kukjin, Sorry, can you please explain as I can't understand. Especially second sentence. -- Best regards, Denis Kuzmenko. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-22 0:40 ` Denis Kuzmenko @ 2011-12-22 1:44 ` Kukjin Kim 0 siblings, 0 replies; 9+ messages in thread From: Kukjin Kim @ 2011-12-22 1:44 UTC (permalink / raw) To: linux-arm-kernel Denis Kuzmenko wrote: > > On 12/22/2011 12:04 AM, Kukjin Kim wrote: > > Denis Kuzmenko wrote: > >> > >> On 12/21/2011 09:04 AM, Kukjin Kim wrote: > >>> Denis Kuzmenko wrote: > >>>> > >>>> Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. > >>>> > >>>> Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> > >>>> --- > >>>> > >>>> Patch is against 3.2-rc4. > >>>> CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of > >> this > >>>> the > >>>> file s3c2410-iotiming.c is not ever compiled and enabling > >>>> CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to > >>>> function > >>>> s3c2410_iotiming_debugfs defined in that file. > s3c2410_iotiming_debugfs > >>>> defined > >>>> as NULL for this case. > >>>> > >>> Hi Denis, > >>> > >>> Well, there is no error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected > in > >> my > >>> case and s3c2410-iotiming.c is built...when is it happened? I just > >> selected > >>> every regarding configuration in kernel menuconfig... > >> > >> Please, try attached config (it's still failing in v3.2-rc6). > >> > > Hi Denis, > > > > Yes, when s3c2410 stuff is not selected, it happened. > > Look at me soon and thanks. > Hi, Kukjin, > > Sorry, can you please explain as I can't understand. Especially second > sentence. > Oops, mis-typing. Let me look at that with your patch :) Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-13 21:06 [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected Denis Kuzmenko 2011-12-21 7:04 ` Kukjin Kim @ 2011-12-28 7:59 ` Kukjin Kim 2011-12-28 21:02 ` Denis Kuzmenko 1 sibling, 1 reply; 9+ messages in thread From: Kukjin Kim @ 2011-12-28 7:59 UTC (permalink / raw) To: linux-arm-kernel Denis Kuzmenko wrote: > > Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. > > Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> > --- > > Patch is against 3.2-rc4. > CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because of this > the > file s3c2410-iotiming.c is not ever compiled and enabling > CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to > function > s3c2410_iotiming_debugfs defined in that file. s3c2410_iotiming_debugfs > defined > as NULL for this case. > > Changelog: > v1 -> v2 > New CONFIG_ symbols S3C241{0,2}_IOTIMING were removed as It was observed > that > they already present but hidden from user. > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index e084b7e..133d005 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -2118,7 +2118,7 @@ config CPU_FREQ_S3C24XX_DEBUG > > config CPU_FREQ_S3C24XX_IODEBUG > bool "Debug CPUfreq Samsung driver IO timing" > - depends on CPU_FREQ_S3C24XX > + depends on CPU_FREQ_S3C24XX && (S3C2410_IOTIMING || > S3C2412_IOTIMING) As you know, CONFIG_CPU_FREQ_S3C24XX_IODEBUG is for enabling of s3c_freq_iodbg() and there is no problem when CONFIG_S3C241{0,2}_IOTIMING is not selected, even though s3c_freq_iodbg() is used only at s3c2410-iotiming.c now. So this is not necessary to fix the problem you said. > help > Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core > > diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > index dac4760..c465252 100644 > --- a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > +++ b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h > @@ -202,13 +202,23 @@ extern int s3c_plltab_register(struct > cpufreq_frequency_table *plls, > extern struct s3c_cpufreq_config *s3c_cpufreq_getconfig(void); > extern struct s3c_iotimings *s3c_cpufreq_getiotimings(void); > > -extern void s3c2410_iotiming_debugfs(struct seq_file *seq, > - struct s3c_cpufreq_config *cfg, > - union s3c_iobank *iob); > - > -extern void s3c2412_iotiming_debugfs(struct seq_file *seq, > - struct s3c_cpufreq_config *cfg, > - union s3c_iobank *iob); > +#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS > + #ifdef CONFIG_S3C2410_IOTIMING > + extern void s3c2410_iotiming_debugfs(struct seq_file *seq, > + struct s3c_cpufreq_config *cfg, > + union s3c_iobank *iob); > + #else > + #define s3c2410_iotiming_debugfs NULL > + #endif > + > + #ifdef CONFIG_S3C2412_IOTIMING > + extern void s3c2412_iotiming_debugfs(struct seq_file *seq, > + struct s3c_cpufreq_config *cfg, > + union s3c_iobank *iob); > + #else > + #define s3c2412_iotiming_debugfs NULL > + #endif > +#endif Well, do we really need to have '#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS' here? I think, just having dependency with CONFIG_S3C241{1,2}_IOTIMING can avoid the build error. > > #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS > #define s3c_cpufreq_debugfs_call(x) x > @@ -241,10 +251,7 @@ extern void s3c2410_iotiming_set(struct > s3c_cpufreq_config *cfg, > #endif /* CONFIG_S3C2410_IOTIMING */ > > /* S3C2412 compatible routines */ > - > -extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, > - struct s3c_iotimings *timings); > - Yes, why is this duplicated :( > +#ifdef CONFIG_S3C2412_IOTIMING > extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, > struct s3c_iotimings *timings); > > @@ -253,6 +260,11 @@ extern int s3c2412_iotiming_calc(struct > s3c_cpufreq_config *cfg, > > extern void s3c2412_iotiming_set(struct s3c_cpufreq_config *cfg, > struct s3c_iotimings *iot); > +#else > +#define s3c2412_iotiming_calc NULL > +#define s3c2412_iotiming_get NULL > +#define s3c2412_iotiming_set NULL > +#endif > > #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUG > #define s3c_freq_dbg(x...) printk(KERN_INFO x) So how about at below? If you're ok, will send before v3.2. --- >From 41bb50bd22cdc6d3aa7fb75efab78d341f932ae5 Mon Sep 17 00:00:00 2001 From: Denis Kuzmenko <linux@solonet.org.ua> Date: Wed, 28 Dec 2011 14:04:51 +0900 Subject: [PATCH] ARM: SAMSUNG: Fix build error when selecting CPU_FREQ_S3C24XX_DEBUGFS on S3C2440 Following is happened when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS is selected without building of s3c2410-iotiming.c file: arch/arm/mach-s3c2440/built-in.o:(.data+0x38c): undefined reference to `s3c2410_iotiming_debugfs Basically, the CONFIG_S3C2410_IOTIMING is not selected for MACH_MINI2440. Because the s3c2410-iotiming.c is not ever compiled and enabling CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option caused undefined reference to s3c2410_iotiming_debugfs() defined in that file. The s3c2410_iotiming_debugfs defined as NULL for this case. Signed-off-by: Denis Kuzmenko <linux@solonet.org.ua> [kgene.kim at samsung.com: removed useless changes] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> --- arch/arm/plat-samsung/include/plat/cpu-freq-core.h | 25 ++++++++++++-------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h index dac4760..95509d8 100644 --- a/arch/arm/plat-samsung/include/plat/cpu-freq-core.h +++ b/arch/arm/plat-samsung/include/plat/cpu-freq-core.h @@ -202,14 +202,6 @@ extern int s3c_plltab_register(struct cpufreq_frequency_table *plls, extern struct s3c_cpufreq_config *s3c_cpufreq_getconfig(void); extern struct s3c_iotimings *s3c_cpufreq_getiotimings(void); -extern void s3c2410_iotiming_debugfs(struct seq_file *seq, - struct s3c_cpufreq_config *cfg, - union s3c_iobank *iob); - -extern void s3c2412_iotiming_debugfs(struct seq_file *seq, - struct s3c_cpufreq_config *cfg, - union s3c_iobank *iob); - #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS #define s3c_cpufreq_debugfs_call(x) x #else @@ -226,6 +218,10 @@ extern void s3c2410_cpufreq_setrefresh(struct s3c_cpufreq_config *cfg); extern void s3c2410_set_fvco(struct s3c_cpufreq_config *cfg); #ifdef CONFIG_S3C2410_IOTIMING +extern void s3c2410_iotiming_debugfs(struct seq_file *seq, + struct s3c_cpufreq_config *cfg, + union s3c_iobank *iob); + extern int s3c2410_iotiming_calc(struct s3c_cpufreq_config *cfg, struct s3c_iotimings *iot); @@ -235,6 +231,7 @@ extern int s3c2410_iotiming_get(struct s3c_cpufreq_config *cfg, extern void s3c2410_iotiming_set(struct s3c_cpufreq_config *cfg, struct s3c_iotimings *iot); #else +#define s3c2410_iotiming_debugfs NULL #define s3c2410_iotiming_calc NULL #define s3c2410_iotiming_get NULL #define s3c2410_iotiming_set NULL @@ -242,8 +239,10 @@ extern void s3c2410_iotiming_set(struct s3c_cpufreq_config *cfg, /* S3C2412 compatible routines */ -extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, - struct s3c_iotimings *timings); +#ifdef CONFIG_S3C2412_IOTIMING +extern void s3c2412_iotiming_debugfs(struct seq_file *seq, + struct s3c_cpufreq_config *cfg, + union s3c_iobank *iob); extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, struct s3c_iotimings *timings); @@ -253,6 +252,12 @@ extern int s3c2412_iotiming_calc(struct s3c_cpufreq_config *cfg, extern void s3c2412_iotiming_set(struct s3c_cpufreq_config *cfg, struct s3c_iotimings *iot); +#else +#define s3c2412_iotiming_debugfs NULL +#define s3c2412_iotiming_calc NULL +#define s3c2412_iotiming_get NULL +#define s3c2412_iotiming_set NULL +#endif /* CONFIG_S3C2412_IOTIMING */ #ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUG #define s3c_freq_dbg(x...) printk(KERN_INFO x) -- Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-28 7:59 ` Kukjin Kim @ 2011-12-28 21:02 ` Denis Kuzmenko 2011-12-29 3:44 ` Kukjin Kim 0 siblings, 1 reply; 9+ messages in thread From: Denis Kuzmenko @ 2011-12-28 21:02 UTC (permalink / raw) To: linux-arm-kernel Hi Kukjin, Your patch applies (note that it looks like your email-client have wrapped long lines thus broke the path) and works OK. Looks good to me. See some additional comments below. On 12/28/2011 09:59 AM, Kukjin Kim wrote: > Denis Kuzmenko wrote: (snip) >> + depends on CPU_FREQ_S3C24XX && (S3C2410_IOTIMING || >> S3C2412_IOTIMING) > > As you know, CONFIG_CPU_FREQ_S3C24XX_IODEBUG is for enabling of > s3c_freq_iodbg() and there is no problem when CONFIG_S3C241{0,2}_IOTIMING is > not selected, even though s3c_freq_iodbg() is used only at > s3c2410-iotiming.c now. So this is not necessary to fix the problem you > said. I'm OK with this approach, however I don't see any future use of s3c_freq_iodbg() without s3c2410-iotiming.c. But it's not anyway critical so please pick any variant which you like. (snip) > Well, do we really need to have '#ifdef CONFIG_CPU_FREQ_S3C24XX_DEBUGFS' > here? > I think, just having dependency with CONFIG_S3C241{1,2}_IOTIMING can avoid > the build error. Yes, CONFIG_S3C241{1,2}_IOTIMING dependency is just enough. (snip) >> -extern int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg, >> - struct s3c_iotimings *timings); >> - > > Yes, why is this duplicated :( Don't have an idea. I'm new to this platform and to Linux at all so I don't know how it appeared. Just another harmless mistype I think. (snip) > So how about at below? > If you're ok, will send before v3.2. So, as already said, I have no objections. And thank you for review. -- Best regards, Denis Kuzmenko. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected. 2011-12-28 21:02 ` Denis Kuzmenko @ 2011-12-29 3:44 ` Kukjin Kim 0 siblings, 0 replies; 9+ messages in thread From: Kukjin Kim @ 2011-12-29 3:44 UTC (permalink / raw) To: linux-arm-kernel Denis Kuzmenko wrote: > > Hi Kukjin, > Hi Denis, > Your patch applies (note that it looks like your email-client have Yeah, if over 76 columns, my e-mail client changes its line so maybe happened wrapped long lines. > wrapped long lines thus broke the path) and works OK. Looks good to me. > See some additional comments below. > > On 12/28/2011 09:59 AM, Kukjin Kim wrote: > > Denis Kuzmenko wrote: > (snip) > >> + depends on CPU_FREQ_S3C24XX && (S3C2410_IOTIMING || > >> S3C2412_IOTIMING) > > > > As you know, CONFIG_CPU_FREQ_S3C24XX_IODEBUG is for enabling of > > s3c_freq_iodbg() and there is no problem when > CONFIG_S3C241{0,2}_IOTIMING is > > not selected, even though s3c_freq_iodbg() is used only at > > s3c2410-iotiming.c now. So this is not necessary to fix the problem you > > said. > > I'm OK with this approach, however I don't see any future use of > s3c_freq_iodbg() without s3c2410-iotiming.c. But it's not anyway > critical so please pick any variant which you like. > Yes. I think we need to sort out the CPUFREQ on S3C24XX next time :) (snip) > (snip) > > So how about at below? > > If you're ok, will send before v3.2. > > So, as already said, I have no objections. > And thank you for review. > Thanks and Happy New Year! Best regards, Kgene. -- Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2011-12-29 3:44 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-12-13 21:06 [PATCHv2 resend] Fix compilation error when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS selected Denis Kuzmenko 2011-12-21 7:04 ` Kukjin Kim 2011-12-21 19:49 ` Denis Kuzmenko 2011-12-21 22:04 ` Kukjin Kim 2011-12-22 0:40 ` Denis Kuzmenko 2011-12-22 1:44 ` Kukjin Kim 2011-12-28 7:59 ` Kukjin Kim 2011-12-28 21:02 ` Denis Kuzmenko 2011-12-29 3:44 ` Kukjin Kim
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).