For some architectures (e.g. arc, openrisc), BASE_BAUD isn't constant And SERIAL_PORT_DFNS always use BASE_BAUND, and also all drivers use SERIAL_PORT_DFNS to initialize static variables, statically. So need define SERIAL_PORT_DFNS as empty to tell drivers they don't support SERIAL_PORT_DFNS (mostly like frv and parisc did), or can not pass compiling The related error (allmodconfig for arc with gcc-4.8.0): CC [M] drivers/staging/speakup/serialio.o drivers/staging/speakup/serialio.c:12:2: error: initializer element is not constant SERIAL_PORT_DFNS ^ drivers/staging/speakup/serialio.c:12:2: error: (near initialization for 'rs_table[0].baud_base') drivers/staging/speakup/serialio.c:12:2: error: initializer element is not constant drivers/staging/speakup/serialio.c:12:2: error: (near initialization for 'rs_table[1].baud_base') drivers/staging/speakup/serialio.c:12:2: error: initializer element is not constant drivers/staging/speakup/serialio.c:12:2: error: (near initialization for 'rs_table[2].baud_base') drivers/staging/speakup/serialio.c:12:2: error: initializer element is not constant drivers/staging/speakup/serialio.c:12:2: error: (near initialization for 'rs_table[3].baud_base') Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx> --- arch/arc/include/asm/serial.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/arch/arc/include/asm/serial.h b/arch/arc/include/asm/serial.h index 602b097..f18b772 100644 --- a/arch/arc/include/asm/serial.h +++ b/arch/arc/include/asm/serial.h @@ -32,4 +32,6 @@ #define BASE_BAUD (arc_get_core_freq() / 16 / 3) #endif +#define SERIAL_PORT_DFNS + #endif /* _ASM_ARC_SERIAL_H */ -- 1.7.7.6 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel