diff options
author | David Brownell <david-b@pacbell.net> | 2007-05-01 17:26:28 -0400 |
---|---|---|
committer | Jean Delvare <khali@hyperion.delvare> | 2007-05-01 17:26:28 -0400 |
commit | 2096b956d24c4b5950b808fc23b218425d79ebb1 (patch) | |
tree | 9e2c09c2e40c65bd56cbfd50955d5c7355474655 /drivers/media/dvb | |
parent | 4ad4eac60667f7c321faae28a3437f7a8b3d17cb (diff) |
i2c: Shrink struct i2c_client
This shrinks the size of "struct i2c_client" by 40 bytes:
- Substantially shrinks the string used to identify the chip type
- The "flags" don't need to be so big
- Removes some internal padding
It also adds kerneldoc for that struct, explaining how "name" is really a
chip type identifier; it's otherwise potentially confusing.
Because the I2C_NAME_SIZE symbol was abused for both i2c_client.name
and for i2c_adapter.name, this needed to affect i2c_adapter too. The
adapters which used that symbol now use the more-obviously-correct
idiom of taking the size of that field.
JD: Shorten i2c_adapter.name from 50 to 48 bytes while we're here, to
avoid wasting space in padding.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Diffstat (limited to 'drivers/media/dvb')
-rw-r--r-- | drivers/media/dvb/b2c2/flexcop-i2c.c | 3 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb-usb-i2c.c | 2 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/dibx000_common.c | 4 |
3 files changed, 5 insertions, 4 deletions
diff --git a/drivers/media/dvb/b2c2/flexcop-i2c.c b/drivers/media/dvb/b2c2/flexcop-i2c.c index 5347a406fff7..02a0ea6e1c17 100644 --- a/drivers/media/dvb/b2c2/flexcop-i2c.c +++ b/drivers/media/dvb/b2c2/flexcop-i2c.c | |||
@@ -183,7 +183,8 @@ int flexcop_i2c_init(struct flexcop_device *fc) | |||
183 | mutex_init(&fc->i2c_mutex); | 183 | mutex_init(&fc->i2c_mutex); |
184 | 184 | ||
185 | memset(&fc->i2c_adap, 0, sizeof(struct i2c_adapter)); | 185 | memset(&fc->i2c_adap, 0, sizeof(struct i2c_adapter)); |
186 | strncpy(fc->i2c_adap.name, "B2C2 FlexCop device",I2C_NAME_SIZE); | 186 | strncpy(fc->i2c_adap.name, "B2C2 FlexCop device", |
187 | sizeof(fc->i2c_adap.name)); | ||
187 | 188 | ||
188 | i2c_set_adapdata(&fc->i2c_adap,fc); | 189 | i2c_set_adapdata(&fc->i2c_adap,fc); |
189 | 190 | ||
diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-i2c.c b/drivers/media/dvb/dvb-usb/dvb-usb-i2c.c index 70df31b0a8a9..088b6dee3a7f 100644 --- a/drivers/media/dvb/dvb-usb/dvb-usb-i2c.c +++ b/drivers/media/dvb/dvb-usb/dvb-usb-i2c.c | |||
@@ -19,7 +19,7 @@ int dvb_usb_i2c_init(struct dvb_usb_device *d) | |||
19 | return -EINVAL; | 19 | return -EINVAL; |
20 | } | 20 | } |
21 | 21 | ||
22 | strncpy(d->i2c_adap.name,d->desc->name,I2C_NAME_SIZE); | 22 | strncpy(d->i2c_adap.name, d->desc->name, sizeof(d->i2c_adap.name)); |
23 | #ifdef I2C_ADAP_CLASS_TV_DIGITAL | 23 | #ifdef I2C_ADAP_CLASS_TV_DIGITAL |
24 | d->i2c_adap.class = I2C_ADAP_CLASS_TV_DIGITAL, | 24 | d->i2c_adap.class = I2C_ADAP_CLASS_TV_DIGITAL, |
25 | #else | 25 | #else |
diff --git a/drivers/media/dvb/frontends/dibx000_common.c b/drivers/media/dvb/frontends/dibx000_common.c index a18c8f45a2ee..315e09e95b0c 100644 --- a/drivers/media/dvb/frontends/dibx000_common.c +++ b/drivers/media/dvb/frontends/dibx000_common.c | |||
@@ -105,9 +105,9 @@ struct i2c_adapter * dibx000_get_i2c_adapter(struct dibx000_i2c_master *mst, enu | |||
105 | } | 105 | } |
106 | EXPORT_SYMBOL(dibx000_get_i2c_adapter); | 106 | EXPORT_SYMBOL(dibx000_get_i2c_adapter); |
107 | 107 | ||
108 | static int i2c_adapter_init(struct i2c_adapter *i2c_adap, struct i2c_algorithm *algo, const char name[I2C_NAME_SIZE], struct dibx000_i2c_master *mst) | 108 | static int i2c_adapter_init(struct i2c_adapter *i2c_adap, struct i2c_algorithm *algo, const char *name, struct dibx000_i2c_master *mst) |
109 | { | 109 | { |
110 | strncpy(i2c_adap->name, name, I2C_NAME_SIZE); | 110 | strncpy(i2c_adap->name, name, sizeof(i2c_adap->name)); |
111 | i2c_adap->class = I2C_CLASS_TV_DIGITAL, | 111 | i2c_adap->class = I2C_CLASS_TV_DIGITAL, |
112 | i2c_adap->algo = algo; | 112 | i2c_adap->algo = algo; |
113 | i2c_adap->algo_data = NULL; | 113 | i2c_adap->algo_data = NULL; |