aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2012-10-28 16:37:00 -0400
committerJean Delvare <khali@endymion.delvare>2012-10-28 16:37:00 -0400
commit31d178bffcff4c468c8c65bc42d9f4c0a7b8e3ec (patch)
tree73f3dc742605413e49ce9771a7ebd891fcabc889
parente657e078d3dfa9f96976db7a2b5fd7d7c9f1f1a6 (diff)
i2c-stub: Move to drivers/i2c
Move the i2c-stub driver to drivers/i2c, to match the Kconfig entry. This is less confusing that way. I also fixed all checkpatch warnings and errors. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Peter Huewe <peterhuewe@gmx.de>
-rw-r--r--drivers/i2c/Makefile1
-rw-r--r--drivers/i2c/busses/Makefile1
-rw-r--r--drivers/i2c/i2c-stub.c (renamed from drivers/i2c/busses/i2c-stub.c)66
3 files changed, 33 insertions, 35 deletions
diff --git a/drivers/i2c/Makefile b/drivers/i2c/Makefile
index beee6b2d361d..1722f50f2473 100644
--- a/drivers/i2c/Makefile
+++ b/drivers/i2c/Makefile
@@ -8,6 +8,7 @@ obj-$(CONFIG_I2C_SMBUS) += i2c-smbus.o
8obj-$(CONFIG_I2C_CHARDEV) += i2c-dev.o 8obj-$(CONFIG_I2C_CHARDEV) += i2c-dev.o
9obj-$(CONFIG_I2C_MUX) += i2c-mux.o 9obj-$(CONFIG_I2C_MUX) += i2c-mux.o
10obj-y += algos/ busses/ muxes/ 10obj-y += algos/ busses/ muxes/
11obj-$(CONFIG_I2C_STUB) += i2c-stub.o
11 12
12ccflags-$(CONFIG_I2C_DEBUG_CORE) := -DDEBUG 13ccflags-$(CONFIG_I2C_DEBUG_CORE) := -DDEBUG
13CFLAGS_i2c-core.o := -Wno-deprecated-declarations 14CFLAGS_i2c-core.o := -Wno-deprecated-declarations
diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile
index 2d33d62952c1..395b516ffa08 100644
--- a/drivers/i2c/busses/Makefile
+++ b/drivers/i2c/busses/Makefile
@@ -85,7 +85,6 @@ obj-$(CONFIG_I2C_ACORN) += i2c-acorn.o
85obj-$(CONFIG_I2C_ELEKTOR) += i2c-elektor.o 85obj-$(CONFIG_I2C_ELEKTOR) += i2c-elektor.o
86obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o 86obj-$(CONFIG_I2C_PCA_ISA) += i2c-pca-isa.o
87obj-$(CONFIG_I2C_SIBYTE) += i2c-sibyte.o 87obj-$(CONFIG_I2C_SIBYTE) += i2c-sibyte.o
88obj-$(CONFIG_I2C_STUB) += i2c-stub.o
89obj-$(CONFIG_SCx200_ACB) += scx200_acb.o 88obj-$(CONFIG_SCx200_ACB) += scx200_acb.o
90obj-$(CONFIG_SCx200_I2C) += scx200_i2c.o 89obj-$(CONFIG_SCx200_I2C) += scx200_i2c.o
91 90
diff --git a/drivers/i2c/busses/i2c-stub.c b/drivers/i2c/i2c-stub.c
index b1b3447942c9..d0a9c590c3cd 100644
--- a/drivers/i2c/busses/i2c-stub.c
+++ b/drivers/i2c/i2c-stub.c
@@ -2,7 +2,7 @@
2 i2c-stub.c - I2C/SMBus chip emulator 2 i2c-stub.c - I2C/SMBus chip emulator
3 3
4 Copyright (c) 2004 Mark M. Hoffman <mhoffman@lightlink.com> 4 Copyright (c) 2004 Mark M. Hoffman <mhoffman@lightlink.com>
5 Copyright (C) 2007 Jean Delvare <khali@linux-fr.org> 5 Copyright (C) 2007, 2012 Jean Delvare <khali@linux-fr.org>
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
@@ -51,8 +51,8 @@ struct stub_chip {
51static struct stub_chip *stub_chips; 51static struct stub_chip *stub_chips;
52 52
53/* Return negative errno on error. */ 53/* Return negative errno on error. */
54static s32 stub_xfer(struct i2c_adapter * adap, u16 addr, unsigned short flags, 54static s32 stub_xfer(struct i2c_adapter *adap, u16 addr, unsigned short flags,
55 char read_write, u8 command, int size, union i2c_smbus_data * data) 55 char read_write, u8 command, int size, union i2c_smbus_data *data)
56{ 56{
57 s32 ret; 57 s32 ret;
58 int i, len; 58 int i, len;
@@ -78,14 +78,14 @@ static s32 stub_xfer(struct i2c_adapter * adap, u16 addr, unsigned short flags,
78 case I2C_SMBUS_BYTE: 78 case I2C_SMBUS_BYTE:
79 if (read_write == I2C_SMBUS_WRITE) { 79 if (read_write == I2C_SMBUS_WRITE) {
80 chip->pointer = command; 80 chip->pointer = command;
81 dev_dbg(&adap->dev, "smbus byte - addr 0x%02x, " 81 dev_dbg(&adap->dev,
82 "wrote 0x%02x.\n", 82 "smbus byte - addr 0x%02x, wrote 0x%02x.\n",
83 addr, command); 83 addr, command);
84 } else { 84 } else {
85 data->byte = chip->words[chip->pointer++] & 0xff; 85 data->byte = chip->words[chip->pointer++] & 0xff;
86 dev_dbg(&adap->dev, "smbus byte - addr 0x%02x, " 86 dev_dbg(&adap->dev,
87 "read 0x%02x.\n", 87 "smbus byte - addr 0x%02x, read 0x%02x.\n",
88 addr, data->byte); 88 addr, data->byte);
89 } 89 }
90 90
91 ret = 0; 91 ret = 0;
@@ -95,14 +95,14 @@ static s32 stub_xfer(struct i2c_adapter * adap, u16 addr, unsigned short flags,
95 if (read_write == I2C_SMBUS_WRITE) { 95 if (read_write == I2C_SMBUS_WRITE) {
96 chip->words[command] &= 0xff00; 96 chip->words[command] &= 0xff00;
97 chip->words[command] |= data->byte; 97 chip->words[command] |= data->byte;
98 dev_dbg(&adap->dev, "smbus byte data - addr 0x%02x, " 98 dev_dbg(&adap->dev,
99 "wrote 0x%02x at 0x%02x.\n", 99 "smbus byte data - addr 0x%02x, wrote 0x%02x at 0x%02x.\n",
100 addr, data->byte, command); 100 addr, data->byte, command);
101 } else { 101 } else {
102 data->byte = chip->words[command] & 0xff; 102 data->byte = chip->words[command] & 0xff;
103 dev_dbg(&adap->dev, "smbus byte data - addr 0x%02x, " 103 dev_dbg(&adap->dev,
104 "read 0x%02x at 0x%02x.\n", 104 "smbus byte data - addr 0x%02x, read 0x%02x at 0x%02x.\n",
105 addr, data->byte, command); 105 addr, data->byte, command);
106 } 106 }
107 chip->pointer = command + 1; 107 chip->pointer = command + 1;
108 108
@@ -112,14 +112,14 @@ static s32 stub_xfer(struct i2c_adapter * adap, u16 addr, unsigned short flags,
112 case I2C_SMBUS_WORD_DATA: 112 case I2C_SMBUS_WORD_DATA:
113 if (read_write == I2C_SMBUS_WRITE) { 113 if (read_write == I2C_SMBUS_WRITE) {
114 chip->words[command] = data->word; 114 chip->words[command] = data->word;
115 dev_dbg(&adap->dev, "smbus word data - addr 0x%02x, " 115 dev_dbg(&adap->dev,
116 "wrote 0x%04x at 0x%02x.\n", 116 "smbus word data - addr 0x%02x, wrote 0x%04x at 0x%02x.\n",
117 addr, data->word, command); 117 addr, data->word, command);
118 } else { 118 } else {
119 data->word = chip->words[command]; 119 data->word = chip->words[command];
120 dev_dbg(&adap->dev, "smbus word data - addr 0x%02x, " 120 dev_dbg(&adap->dev,
121 "read 0x%04x at 0x%02x.\n", 121 "smbus word data - addr 0x%02x, read 0x%04x at 0x%02x.\n",
122 addr, data->word, command); 122 addr, data->word, command);
123 } 123 }
124 124
125 ret = 0; 125 ret = 0;
@@ -132,17 +132,17 @@ static s32 stub_xfer(struct i2c_adapter * adap, u16 addr, unsigned short flags,
132 chip->words[command + i] &= 0xff00; 132 chip->words[command + i] &= 0xff00;
133 chip->words[command + i] |= data->block[1 + i]; 133 chip->words[command + i] |= data->block[1 + i];
134 } 134 }
135 dev_dbg(&adap->dev, "i2c block data - addr 0x%02x, " 135 dev_dbg(&adap->dev,
136 "wrote %d bytes at 0x%02x.\n", 136 "i2c block data - addr 0x%02x, wrote %d bytes at 0x%02x.\n",
137 addr, len, command); 137 addr, len, command);
138 } else { 138 } else {
139 for (i = 0; i < len; i++) { 139 for (i = 0; i < len; i++) {
140 data->block[1 + i] = 140 data->block[1 + i] =
141 chip->words[command + i] & 0xff; 141 chip->words[command + i] & 0xff;
142 } 142 }
143 dev_dbg(&adap->dev, "i2c block data - addr 0x%02x, " 143 dev_dbg(&adap->dev,
144 "read %d bytes at 0x%02x.\n", 144 "i2c block data - addr 0x%02x, read %d bytes at 0x%02x.\n",
145 addr, len, command); 145 addr, len, command);
146 } 146 }
147 147
148 ret = 0; 148 ret = 0;
@@ -179,25 +179,24 @@ static int __init i2c_stub_init(void)
179 int i, ret; 179 int i, ret;
180 180
181 if (!chip_addr[0]) { 181 if (!chip_addr[0]) {
182 printk(KERN_ERR "i2c-stub: Please specify a chip address\n"); 182 pr_err("i2c-stub: Please specify a chip address\n");
183 return -ENODEV; 183 return -ENODEV;
184 } 184 }
185 185
186 for (i = 0; i < MAX_CHIPS && chip_addr[i]; i++) { 186 for (i = 0; i < MAX_CHIPS && chip_addr[i]; i++) {
187 if (chip_addr[i] < 0x03 || chip_addr[i] > 0x77) { 187 if (chip_addr[i] < 0x03 || chip_addr[i] > 0x77) {
188 printk(KERN_ERR "i2c-stub: Invalid chip address " 188 pr_err("i2c-stub: Invalid chip address 0x%02x\n",
189 "0x%02x\n", chip_addr[i]); 189 chip_addr[i]);
190 return -EINVAL; 190 return -EINVAL;
191 } 191 }
192 192
193 printk(KERN_INFO "i2c-stub: Virtual chip at 0x%02x\n", 193 pr_info("i2c-stub: Virtual chip at 0x%02x\n", chip_addr[i]);
194 chip_addr[i]);
195 } 194 }
196 195
197 /* Allocate memory for all chips at once */ 196 /* Allocate memory for all chips at once */
198 stub_chips = kzalloc(i * sizeof(struct stub_chip), GFP_KERNEL); 197 stub_chips = kzalloc(i * sizeof(struct stub_chip), GFP_KERNEL);
199 if (!stub_chips) { 198 if (!stub_chips) {
200 printk(KERN_ERR "i2c-stub: Out of memory\n"); 199 pr_err("i2c-stub: Out of memory\n");
201 return -ENOMEM; 200 return -ENOMEM;
202 } 201 }
203 202
@@ -219,4 +218,3 @@ MODULE_LICENSE("GPL");
219 218
220module_init(i2c_stub_init); 219module_init(i2c_stub_init);
221module_exit(i2c_stub_exit); 220module_exit(i2c_stub_exit);
222