couldn't find the kernel version the module was compiled for
Hi all,
I am working on mpc8245 based board. I ahve compiled he rtc driver as a seperate modules. I have 2 function in assembly file i2c2.S. Its getting compiled but when I am inserting the module I am getting the above mentioned error.
i2c2.o: couldn't find the kernel version the module was compiled for x1226.o: Unresolved symbol load_runtime_reg
x1226.o: Unresolved symbol store_runtime_reg
The assembly file is like this:
/**************************************
*
* copyright @ Motorola, 1999
*
**************************************/
#include <linux/config.h>
#define CONFIG_HARD_I2C
#ifdef CONFIG_HARD_I2C
//#include <ppc_asm.tmpl>
#include <linux/ppc_asm.tmpl>
#include <asm/mmu.h> /**********************************************************
* function: load_runtime_reg
*
* input: r3 - value of eumbbar
* r4 - register offset in embedded utility space
*
* output: r3 - register content **********************************************************/ .text
.align 2
.globl load_runtime_regload_runtime_reg:
lwbrx r3,r4,r3 sync
bclr 20, 0
/****************************************************************
* function: store_runtime_reg
*
* input: r3 - value of eumbbar
* r4 - register offset in embedded utility space
* r5 - new value to be stored
* ****************************************************************/
.text
.align 2
.global store_runtime_regstore_runtime_reg:
stwbrx r5, r4, r3
sync
bclr 20,0/*_GLOBAL(load_runtime_reg)
lwbrx r3,r4,r3 sync
bclr 20, 0
_GLOBAL(store_runtime_reg)
stwbrx r5, r4, r3
sync
bclr 20,0*/
#endif /* CONFIG_HARD_I2C */
How can I avoid this.
Thanks & Regards,
rakesh
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Quoted 5 lines · In message <[email protected]> you wrote:
I am working on mpc8245 based board. I ahve compiled he rtc driver as a seperate modules. I have 2 function in assembly file
i2c2.S. Its getting compiled but when I am inserting the module I am getting the above mentioned error.
And you are absolutely sure that what you use is Linux kernel code?
Quoted 3 lines
i2c2.o: couldn't find the kernel version the module was compiled for x1226.o: Unresolved symbol
load_runtime_reg
x1226.o: Unresolved symbolstore_runtime_reg
...
Quoted 1 line
How can I avoid this.
To mee it seems as if you used a source file which was not intended for use with the Linux kernel, and adopted it for this purpose, but poorly. You don't mention how you build your kernel module, s owe can only speculate that there is either a problem with your source code, or (more likely) with the way you compile and link your source files into a module (like bad and/or missing compiler / linker options).
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: [email protected] He'd been wrong, there _was_ a light at the end of the tunnel, and it
was a flamethrower. - Terry Pratchett, _Mort_
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/