I am new to familiar, but expect to be writing some new drivers
for it soon. In setting up the environment, and playing around
with compile options, I came across a problem (described below),
but am not sure of the normal procedure for suggesting changes,
and so on.
My concerns are (1) I don't really understand the makefile structure
yet, so this may be an inappropriate band-aid solution and (2) is
this too detailed for this mailing list?
The problem:
include/asm/mach/serial_sa1100.h contains the following:
---------
#if defined(CONFIG_SERIAL_SA1100) && !defined(CONFIG_SERIAL_SA1100_OLD)
void sa1100_register_uart_fns(struct sa1100_port_fns *fns);
void sa1100_register_uart(int idx, int port);
#else
#define sa1100_register_uart_fns(fns) do { } while (0)
#define sa1100_register_uart(idx,port) do { } while (0)
#endif
------------
but, drivers/char/serial_sa1100.c does not have ifdefs around
its definitions of these functions, causing this:
void __init sa1100_register_uart_fns(struct sa1100_port_fns *fns)
to get expanded by the preprocessor as this:
void __attribute__ ((__section__ (".text.init"))) do { } while (0)
------------
In my local serial_sa1100.c, I have just copied the ifdef line from
serial_sa1100.h, and now it compiles fine (although I have not tested
it yet.) These were the current linux/kernel files from the CVS
server on Friday.
Aside from the question of how to suggest changes, is there a reason
that nobody else has had this problem?
Cheers,
-- Mike.
-- ----------------------------------------------------------------------- Michael Nidd IBM Zurich Research Laboratory Saumerstrasse 4 CH-8803 Rueschlikon/Switzerland mni@zurich.ibm.com Tel: +41-1-724-89-30 Fax: +41-1-724-89-53Received on Mon Aug 27 00:53:28 2001
This archive was generated by hypermail 2.1.8 : Tue May 04 2004 - 09:38:29 EDT