Problems compiling kernel
Dear fellows,
I am facing some compiling errors in my kernel.
My kernel version is:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 27
EXTRAVERSION =
NAME = Rotary Wombat
And I updated the source using "git pull" today, before trying to compile the kernel.
I got these errors:
MODPOST vmlinux.o
GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1
arch/arm/plat-omap/built-in.o: In function `omap_verify_speed':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:46: undefined reference to cpufreq_frequency_table_verify' arch/arm/plat-omap/built-in.o: In function omap_cpu_init':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:119: undefined reference to cpufreq_frequency_table_cpuinfo' /home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:121: undefined reference to cpufreq_frequency_table_get_attr' arch/arm/plat-omap/built-in.o:(.data+0x91c): undefined reference to `cpufreq_freq_attr_scaling_available_freqs'
make: *** [.tmp_vmlinux1] Error 1
I looked in "plat-omap.c" and it calls the library cpufreq.h.cpufreq.h has the prototipes of that undefined references and cpufreq.c has the impementations of it.
So, I don't understand why it is happening. By the way, I am a begginer in linux development.
Any help will be welcome.
Signature · 5 lines
Regards, Eng. Ramon F. Lilienthal Project Engineer Instramed Ltda. - www.instramed.com.br +55 (51) 33344199 ext. 213
Ramon,
Can you confirm if you have CONFIG_CPU_FREQ_TABLE=y in the .config?
The 'undefined' functions in your compile log are defined in drivers/cpufreq/freq_table.c If you look at Makefile in the same dir, this file is included in compile based on the flag mentioned above.
Which platform are you building for?
Are you sure you haven't disabled CPU_FREQ manually?
If you haven't made any modifications the problem could be in the defconfig?
Though, I believe that cpu-omap.c may also need to be updated to take care of CONFIG_CPU_FREQ OR specifically CONFIG_CPU_FREQ_TABLE.
Best regards,
Sanjeev
Quoted 64 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Ramón Finger Lilienthal
Sent: Tuesday, October 21, 2008 7:13 PM
To:linux_omap
Subject: Problems compiling kernelDear fellows,
I am facing some compiling errors in my kernel.
My kernel version is:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 27
EXTRAVERSION =
NAME = Rotary WombatAnd I updated the source using "git pull" today, before trying to compile the kernel.
I got these errors:
MODPOST vmlinux.o
GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1
arch/arm/plat-omap/built-in.o: In function `omap_verify_speed':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:46:
undefined reference tocpufreq_frequency_table_verify' arch/arm/plat-omap/built-in.o: In functionomap_cpu_init':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:119:
undefined reference to `cpufreq_frequency_table_cpuinfo'/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:121:
undefined reference tocpufreq_frequency_table_get_attr' arch/arm/plat-omap/built-in.o:(.data+0x91c): undefined reference tocpufreq_freq_attr_scaling_available_freqs'
make: *** [.tmp_vmlinux1] Error 1I looked in "
plat-omap.c" and it calls the librarycpufreq.h.cpufreq.hhas the prototipes of that undefined references andcpufreq.chas the impementations of it.So, I don't understand why it is happening. By the way, I am a begginer in linux development.
Any help will be welcome.
--
Regards,
Eng. Ramon F. Lilienthal
Project Engineer
Instramed Ltda. - www.instramed.com.br
+55 (51) 33344199 ext. 213
Quoted 7 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Dear Sanjeev,
Thanks for your help.
Now, I am building for omap5912osk, and we have a new board omap5912 based. I hope in some months changing my efforts to OMAP35.
Part of my .config file is listed below. The flag CONFIG_CPU_FREQ_TABLE was set to "m", I changed to "y". I tried to compile again, but the error still happening. I took a look at .config after compiling and CONFIG_CPU_FREQ_TABLE got back to "m" (automatically).
==== .config ===
#
# CPU Frequency scaling
#CONFIG_CPU_FREQ=yCONFIG_CPU_FREQ_TABLE=m
# CONFIG_CPU_FREQ_DEBUG is not set CONFIG_CPU_FREQ_STAT=m CONFIG_CPU_FREQ_STAT_DETAILS=y CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y CONFIG_CPU_FREQ_GOV_POWERSAVE=m CONFIG_CPU_FREQ_GOV_USERSPACE=m CONFIG_CPU_FREQ_GOV_ONDEMAND=m CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
#
=============
After, i changed the flags CONFIG_CPU_FREQ_TABLE=y and CONFIG_CPU_FREQ_STAT=y. Then that error didn't occurred again, but another error happened:
====
CHK include/linux/compile.h
CC [M] drivers/net/b44.o
Kernel: arch/arm/boot/Image is ready
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 1059 modules
FATAL: drivers/net/b44: sizeof(struct ssb_device_id)=6 is not a modulo of the size of section __mod_ssb_device_table=16. Fix definition of struct ssb_device_id in mod_devicetable.h
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2
====
Again, thanks for your help
Regards,
Eng. Ramon F. Lilienthal
Project Engineer
Instramed Ltda. - www.instramed.com.br
+55 (51) 33344199 ext. 213
Quoted 77 lines · Sanjeev
Ramon,
Can you confirm if you have
CONFIG_CPU_FREQ_TABLE=yin the .config?The 'undefined' functions in your compile log are defined in
drivers/cpufreq/freq_table.cIf you look atMakefilein the same dir, this file is included in compile based on the flag mentioned above.Which platform are you building for?
Are you sure you haven't disabledCPU_FREQmanually?
If you haven't made any modifications the problem could be in the defconfig?Though, I believe that
cpu-omap.cmay also need to be updated to take care ofCONFIG_CPU_FREQOR specificallyCONFIG_CPU_FREQ_TABLE.Best regards,
SanjeevQuoted 60 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Ramón Finger Lilienthal
Sent: Tuesday, October 21, 2008 7:13 PM
To:linux_omap
Subject: Problems compiling kernelDear fellows,
I am facing some compiling errors in my kernel.
My kernel version is:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 27
EXTRAVERSION =
NAME = Rotary WombatAnd I updated the source using "git pull" today, before trying to compile the kernel.
I got these errors:
MODPOST vmlinux.o
GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1
arch/arm/plat-omap/built-in.o: In function `omap_verify_speed':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/c
pu-omap.c:46: undefined reference tocpufreq_frequency_table_verify' arch/arm/plat-omap/built-in.o: In functionomap_cpu_init':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/c
pu-omap.c:119: undefined reference to `cpufreq_frequency_table_cpuinfo'/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/c
pu-omap.c:121: undefined reference tocpufreq_frequency_table_get_attr' arch/arm/plat-omap/built-in.o:(.data+0x91c): undefined reference tocpufreq_freq_attr_scaling_available_freqs'
make: *** [.tmp_vmlinux1] Error 1I looked in "
plat-omap.c" and it calls the librarycpufreq.h.cpufreq.hhas the prototipes of that undefined references andcpufreq.chas the impementations of it.So, I don't understand why it is happening. By the way, I am a begginer in linux development.
Any help will be welcome.
--
Regards,
Eng. Ramon F. Lilienthal
Project Engineer
Instramed Ltda. - www.instramed.com.br
+55 (51) 33344199 ext. 213--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 8 lines
Quoted 2 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 45 lines
-----Original Message-----
From: Ramón Finger Lilienthal [mailto:[email protected]]
Sent: Wednesday, October 22, 2008 6:35 PM
To: Premi, Sanjeev;linux_omap
Subject: Re: Problems compiling kernelDear Sanjeev,
Thanks for your help.
Now, I am building for omap5912osk, and we have a new board omap5912 based. I hope in some months changing my efforts to OMAP35.
Part of my .config file is listed below. The flag
CONFIG_CPU_FREQ_TABLEwas set to "m", I changed to "y". I tried to compile again, but the error still happening. I took a look at .config after compiling andCONFIG_CPU_FREQ_TABLEgot back to "m" (automatically).==== .config ===
#
# CPU Frequency scaling
#CONFIG_CPU_FREQ=yCONFIG_CPU_FREQ_TABLE=m
#CONFIG_CPU_FREQ_DEBUGis not setCONFIG_CPU_FREQ_STAT=mCONFIG_CPU_FREQ_STAT_DETAILS=yCONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
#CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVEis not set #CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACEis not set #CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMANDis not set #CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVEis not setCONFIG_CPU_FREQ_GOV_PERFORMANCE=yCONFIG_CPU_FREQ_GOV_POWERSAVE=mCONFIG_CPU_FREQ_GOV_USERSPACE=mCONFIG_CPU_FREQ_GOV_ONDEMAND=mCONFIG_CPU_FREQ_GOV_CONSERVATIVE=m#
=============After, i changed the flags
CONFIG_CPU_FREQ_TABLE=yandCONFIG_CPU_FREQ_STAT=y.
Then that error didn't occurred again, but another error happened:
Quoted 12 lines
====
CHKinclude/linux/compile.h
CC [M]drivers/net/b44.o
Kernel:arch/arm/boot/Imageis ready
LDarch/arm/boot/compressed/vmlinux
OBJCOPYarch/arm/boot/zImage
Kernel:arch/arm/boot/zImageis ready
Building modules, stage 2.
MODPOST 1059 modules
FATAL:drivers/net/b44:sizeof(struct ssb_device_id)=6 is not a modulo of the size of section __mod_ssb_device_table=16. Fix definition of structssb_device_idinmod_devicetable.h
Did you change this driver?
Quoted 3 lines
make[1]: *** [
__modpost] Error 1
make: *** [modules] Error 2
====
I did not see this problem on my working branch based off tag v2.6.26-omap2. (I built for omap_osk_5912_defconfig)
However, I do see many section mismatches:
WARNING: arch/arm/mach-omap1/built-in.o(.data+0x26c): Section mismatch in reference from the variable omap1_clk_functions to the function .init.text:omap1_clk_disable_unused() The variable omap1_clk_functions references
the function __init omap1_clk_disable_unused()
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
LD vmlinux.o
MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x2a68): Section mismatch in reference from the function cpu_init() to the function .init.text:dump_cpu_info() The function cpu_init() references
the function __init dump_cpu_info().
This is often because cpu_init lacks a __init
annotation or the annotation of dump_cpu_info is wrong.
WARNING: vmlinux.o(.text+0x14af74): Section mismatch in reference from the function smc_drv_probe() to the function .init.text:smc_probe() The function smc_drv_probe() references
the function __init smc_probe().
This is often because smc_drv_probe lacks a __init
annotation or the annotation of smc_probe is wrong.
WARNING: vmlinux.o(.data+0x14dc): Section mismatch in reference from the variable omap1_clk_functions to the function .init.text:omap1_clk_disable_unused() The variable omap1_clk_functions references
the function __init omap1_clk_disable_unused()
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
Quoted 111 lines
Again, thanks for your help
Regards,
Eng. Ramon F. Lilienthal
Project Engineer
Instramed Ltda. - www.instramed.com.br
+55 (51) 33344199 ext. 213Quoted 6 lines · Sanjeev
Ramon,
Can you confirm if you have
CONFIG_CPU_FREQ_TABLE=yin the .config?The 'undefined' functions in your compile log are defined in
drivers/cpufreq/freq_table.cIf you look atMakefilein thesame dir, this file is included in compile based on the flag mentioned above.
Quoted 4 lines
Which platform are you building for?
Are you sure you haven't disabledCPU_FREQmanually? If you haven't made any modifications the problem could bein the defconfig?
Quoted 2 lines
Though, I believe that
cpu-omap.cmay also need to beupdated to take care of
CONFIG_CPU_FREQOR specificallyCONFIG_CPU_FREQ_TABLE.Quoted 8 lines
Best regards,
SanjeevQuoted 3 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf OfRamón Finger
Quoted 33 lines
Quoted 33 lines
Lilienthal
Sent: Tuesday, October 21, 2008 7:13 PM
To:linux_omap
Subject: Problems compiling kernelDear fellows,
I am facing some compiling errors in my kernel.
My kernel version is:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 27
EXTRAVERSION =
NAME = Rotary WombatAnd I updated the source using "git pull" today, before trying to compile the kernel.
I got these errors:
MODPOST vmlinux.o
GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1
arch/arm/plat-omap/built-in.o: In function `omap_verify_speed':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:46:
undefined reference to `cpufreq_frequency_table_verify'Quoted 8 lines
Quoted 8 lines
arch/arm/plat-omap/built-in.o: In function `omap_cpu_init':/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:119:
undefined reference to `cpufreq_frequency_table_cpuinfo'/home/ramon/work/linux-omap-2.6.new.teste/arch/arm/plat-omap/cpu-omap.c:121:
undefined reference to `cpufreq_frequency_table_get_attr' arch/arm/plat-omap/built-in.o:(.data+0x91c): undefinedreference to
Quoted 20 lines
Quoted 20 lines
`cpufreq_freq_attr_scaling_available_freqs'
make: *** [.tmp_vmlinux1] Error 1I looked in "
plat-omap.c" and it calls the librarycpufreq.h.cpufreq.hhas the prototipes of that undefined references andcpufreq.chas the impementations of it.So, I don't understand why it is happening. By the way, I am a begginer in linux development.
Any help will be welcome.
--
Regards,
Eng. Ramon F. Lilienthal
Project Engineer
Instramed Ltda. - www.instramed.com.br
+55 (51) 33344199 ext. 213Quoted 2 lines
Quoted 2 lines
--
To unsubscribe from this list: send the line "unsubscribelinux-omap"
Quoted 1 line
Quoted 1 line
in the body of a message to [email protected] More
majordomo
Quoted 5 lines
Quoted 4 lines
info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe
linux-omap"
Quoted 8 lines
Quoted 1 line
in the body of a message to [email protected] More
majordomo
Quoted 4 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html