Compile problems

Jason Gunthorpe jgg at
Sat Jun 24 18:24:44 EDT 2000

Hi all,

Just been working on getting the latest MTD cvs to compile on
2.3.99-pre8-rmk2 for an ARM platform.

There are a few issues it seems, someone should decide what they mean, I 

1) Damn Odd compile errors

mtdcore.c:350: warning: `init_mtd' defined but not used
mtdcore.c:374: warning: `cleanup_mtd' defined but not used
{standard input}: Assembler messages:
{standard input}:6: Warning: Ignoring changed section attributes for

The first two are due to the init/cleanup functions being declared static.
The second two are due to gcc emitting some very odd assembly:

@ Generated by gcc 2.95.2 19991024 (release) for ARM/elf
        .file   "mtdcore.c"
        .section .modinfo
.section        .modinfo,"a",%progbits
        .align  2
        .type    __module_kernel_version,object
        .size    __module_kernel_version,32
        .ascii  "kernel_version=2.3.99-pre8-rmk2\000"
.section        .rodata

The '.section .modinfo\n.previous' comes from the kernel module.h header,
the second section declaration directly after comes from GCC.. I don't
recall seeing this when compiling the kernel proper, so maybe there is
something strange about the MTD stuff?

2) ioremap, memcpy_fromio, etc seem to be PCI things

Most of the low level drivers won't even compile, mostly because my ARM
arch doesn't have PCI or ISA io functions :> But reading around I think
the slram,vmax and oct drivers are wrong.. vmax and oct should
probably use the isa_* flavors of all the functions, and I don't know how
slram should try to portably access the end of memory, but ioremap
probably isn't it? 


To unsubscribe, send "unsubscribe mtd" to majordomo at

More information about the linux-mtd mailing list