浏览代码

mmc: s3mci: mark debug_regs[] as static

The global array clashes with a newly added symbol of the same name:

drivers/staging/ccree/cc_debugfs.o:(.data+0x0): multiple definition of `debug_regs'
drivers/mmc/host/s3cmci.o:(.data+0x70): first defined here

We should fix both, this one addresses the s3cmci driver by removing
the symbol from the global namespace. While at it, this separates
the declaration from the type definition and makes the variable const.

Fixes: 9bdd203b4dc8 ("s3cmci: add debugfs support for examining driver and hardware state")
Fixes: b3ec9a6736f2 ("staging: ccree: staging: ccree: replace sysfs by debugfs interface")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Arnd Bergmann 7 年之前
父节点
当前提交
2bd7b4aacd
共有 1 个文件被更改,包括 4 次插入2 次删除
  1. 4 2
      drivers/mmc/host/s3cmci.c

+ 4 - 2
drivers/mmc/host/s3cmci.c

@@ -1424,7 +1424,9 @@ static const struct file_operations s3cmci_fops_state = {
 struct s3cmci_reg {
 struct s3cmci_reg {
 	unsigned short	addr;
 	unsigned short	addr;
 	unsigned char	*name;
 	unsigned char	*name;
-} debug_regs[] = {
+};
+
+static const struct s3cmci_reg debug_regs[] = {
 	DBG_REG(CON),
 	DBG_REG(CON),
 	DBG_REG(PRE),
 	DBG_REG(PRE),
 	DBG_REG(CMDARG),
 	DBG_REG(CMDARG),
@@ -1446,7 +1448,7 @@ struct s3cmci_reg {
 static int s3cmci_regs_show(struct seq_file *seq, void *v)
 static int s3cmci_regs_show(struct seq_file *seq, void *v)
 {
 {
 	struct s3cmci_host *host = seq->private;
 	struct s3cmci_host *host = seq->private;
-	struct s3cmci_reg *rptr = debug_regs;
+	const struct s3cmci_reg *rptr = debug_regs;
 
 
 	for (; rptr->name; rptr++)
 	for (; rptr->name; rptr++)
 		seq_printf(seq, "SDI%s\t=0x%08x\n", rptr->name,
 		seq_printf(seq, "SDI%s\t=0x%08x\n", rptr->name,