提交 5263ebb5 编写于 作者: D Deepak Saxena 提交者: Greg Kroah-Hartman

[PATCH] i2c: kzalloc conversion, other drivers

Use kzalloc instead of kmalloc+memset in all remaining i2c bus and
chip drivers.
Signed-off-by: NDeepak Saxena <dsaxena@plexity.net>
Signed-off-by: NJean Delvare <khali@linux-fr.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 ba9c2e8d
...@@ -344,10 +344,9 @@ static int __devinit amd8111_probe(struct pci_dev *dev, const struct pci_device_ ...@@ -344,10 +344,9 @@ static int __devinit amd8111_probe(struct pci_dev *dev, const struct pci_device_
if (~pci_resource_flags(dev, 0) & IORESOURCE_IO) if (~pci_resource_flags(dev, 0) & IORESOURCE_IO)
return -ENODEV; return -ENODEV;
smbus = kmalloc(sizeof(struct amd_smbus), GFP_KERNEL); smbus = kzalloc(sizeof(struct amd_smbus), GFP_KERNEL);
if (!smbus) if (!smbus)
return -ENOMEM; return -ENOMEM;
memset(smbus, 0, sizeof(struct amd_smbus));
smbus->dev = dev; smbus->dev = dev;
smbus->base = pci_resource_start(dev, 0); smbus->base = pci_resource_start(dev, 0);
......
...@@ -672,13 +672,12 @@ static int __devinit iic_probe(struct ocp_device *ocp){ ...@@ -672,13 +672,12 @@ static int __devinit iic_probe(struct ocp_device *ocp){
printk(KERN_WARNING"ibm-iic%d: missing additional data!\n", printk(KERN_WARNING"ibm-iic%d: missing additional data!\n",
ocp->def->index); ocp->def->index);
if (!(dev = kmalloc(sizeof(*dev), GFP_KERNEL))){ if (!(dev = kzalloc(sizeof(*dev), GFP_KERNEL))) {
printk(KERN_CRIT "ibm-iic%d: failed to allocate device data\n", printk(KERN_CRIT "ibm-iic%d: failed to allocate device data\n",
ocp->def->index); ocp->def->index);
return -ENOMEM; return -ENOMEM;
} }
memset(dev, 0, sizeof(*dev));
dev->idx = ocp->def->index; dev->idx = ocp->def->index;
ocp_set_drvdata(ocp, dev); ocp_set_drvdata(ocp, dev);
......
...@@ -440,19 +440,17 @@ iop3xx_i2c_probe(struct device *dev) ...@@ -440,19 +440,17 @@ iop3xx_i2c_probe(struct device *dev)
struct i2c_adapter *new_adapter; struct i2c_adapter *new_adapter;
struct i2c_algo_iop3xx_data *adapter_data; struct i2c_algo_iop3xx_data *adapter_data;
new_adapter = kmalloc(sizeof(struct i2c_adapter), GFP_KERNEL); new_adapter = kzalloc(sizeof(struct i2c_adapter), GFP_KERNEL);
if (!new_adapter) { if (!new_adapter) {
ret = -ENOMEM; ret = -ENOMEM;
goto out; goto out;
} }
memset((void*)new_adapter, 0, sizeof(*new_adapter));
adapter_data = kmalloc(sizeof(struct i2c_algo_iop3xx_data), GFP_KERNEL); adapter_data = kzalloc(sizeof(struct i2c_algo_iop3xx_data), GFP_KERNEL);
if (!adapter_data) { if (!adapter_data) {
ret = -ENOMEM; ret = -ENOMEM;
goto free_adapter; goto free_adapter;
} }
memset((void*)adapter_data, 0, sizeof(*adapter_data));
res = platform_get_resource(pdev, IORESOURCE_MEM, 0); res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!res) { if (!res) {
......
...@@ -535,13 +535,12 @@ create_iface(struct device_node *np, struct device *dev) ...@@ -535,13 +535,12 @@ create_iface(struct device_node *np, struct device *dev)
tsize = sizeof(struct keywest_iface) + tsize = sizeof(struct keywest_iface) +
(sizeof(struct keywest_chan) + 4) * nchan; (sizeof(struct keywest_chan) + 4) * nchan;
iface = (struct keywest_iface *) kmalloc(tsize, GFP_KERNEL); iface = (struct keywest_iface *) kzalloc(tsize, GFP_KERNEL);
if (iface == NULL) { if (iface == NULL) {
printk(KERN_ERR "i2c-keywest: can't allocate inteface !\n"); printk(KERN_ERR "i2c-keywest: can't allocate inteface !\n");
pmac_low_i2c_unlock(np); pmac_low_i2c_unlock(np);
return -ENOMEM; return -ENOMEM;
} }
memset(iface, 0, tsize);
spin_lock_init(&iface->lock); spin_lock_init(&iface->lock);
init_completion(&iface->complete); init_completion(&iface->complete);
iface->node = of_node_get(np); iface->node = of_node_get(np);
......
...@@ -296,10 +296,9 @@ static int fsl_i2c_probe(struct device *device) ...@@ -296,10 +296,9 @@ static int fsl_i2c_probe(struct device *device)
pdata = (struct fsl_i2c_platform_data *) pdev->dev.platform_data; pdata = (struct fsl_i2c_platform_data *) pdev->dev.platform_data;
if (!(i2c = kmalloc(sizeof(*i2c), GFP_KERNEL))) { if (!(i2c = kzalloc(sizeof(*i2c), GFP_KERNEL))) {
return -ENOMEM; return -ENOMEM;
} }
memset(i2c, 0, sizeof(*i2c));
i2c->irq = platform_get_irq(pdev, 0); i2c->irq = platform_get_irq(pdev, 0);
i2c->flags = pdata->device_flags; i2c->flags = pdata->device_flags;
......
...@@ -500,13 +500,10 @@ mv64xxx_i2c_probe(struct device *dev) ...@@ -500,13 +500,10 @@ mv64xxx_i2c_probe(struct device *dev)
if ((pd->id != 0) || !pdata) if ((pd->id != 0) || !pdata)
return -ENODEV; return -ENODEV;
drv_data = kmalloc(sizeof(struct mv64xxx_i2c_data), GFP_KERNEL); drv_data = kzalloc(sizeof(struct mv64xxx_i2c_data), GFP_KERNEL);
if (!drv_data) if (!drv_data)
return -ENOMEM; return -ENOMEM;
memset(drv_data, 0, sizeof(struct mv64xxx_i2c_data));
if (mv64xxx_i2c_map_regs(pd, drv_data)) { if (mv64xxx_i2c_map_regs(pd, drv_data)) {
rc = -ENODEV; rc = -ENODEV;
goto exit_kfree; goto exit_kfree;
......
...@@ -313,10 +313,9 @@ static int __devinit nforce2_probe(struct pci_dev *dev, const struct pci_device_ ...@@ -313,10 +313,9 @@ static int __devinit nforce2_probe(struct pci_dev *dev, const struct pci_device_
int res1, res2; int res1, res2;
/* we support 2 SMBus adapters */ /* we support 2 SMBus adapters */
if (!(smbuses = (void *)kmalloc(2*sizeof(struct nforce2_smbus), if (!(smbuses = (void *)kzalloc(2*sizeof(struct nforce2_smbus),
GFP_KERNEL))) GFP_KERNEL)))
return -ENOMEM; return -ENOMEM;
memset (smbuses, 0, 2*sizeof(struct nforce2_smbus));
pci_set_drvdata(dev, smbuses); pci_set_drvdata(dev, smbuses);
/* SMBus adapter 1 */ /* SMBus adapter 1 */
......
...@@ -155,12 +155,11 @@ static void i2c_parport_attach (struct parport *port) ...@@ -155,12 +155,11 @@ static void i2c_parport_attach (struct parport *port)
{ {
struct i2c_par *adapter; struct i2c_par *adapter;
adapter = kmalloc(sizeof(struct i2c_par), GFP_KERNEL); adapter = kzalloc(sizeof(struct i2c_par), GFP_KERNEL);
if (adapter == NULL) { if (adapter == NULL) {
printk(KERN_ERR "i2c-parport: Failed to kmalloc\n"); printk(KERN_ERR "i2c-parport: Failed to kzalloc\n");
return; return;
} }
memset(adapter, 0x00, sizeof(struct i2c_par));
pr_debug("i2c-parport: attaching to %s\n", port->name); pr_debug("i2c-parport: attaching to %s\n", port->name);
adapter->pdev = parport_register_device(port, "i2c-parport", adapter->pdev = parport_register_device(port, "i2c-parport",
......
...@@ -211,12 +211,11 @@ static int create_iface(struct device_node *np, struct device *dev) ...@@ -211,12 +211,11 @@ static int create_iface(struct device_node *np, struct device *dev)
} }
busid = *reg; busid = *reg;
iface = kmalloc(sizeof(struct smu_iface), GFP_KERNEL); iface = kzalloc(sizeof(struct smu_iface), GFP_KERNEL);
if (iface == NULL) { if (iface == NULL) {
printk(KERN_ERR "i2c-pmac-smu: can't allocate inteface !\n"); printk(KERN_ERR "i2c-pmac-smu: can't allocate inteface !\n");
return -ENOMEM; return -ENOMEM;
} }
memset(iface, 0, sizeof(struct smu_iface));
init_completion(&iface->complete); init_completion(&iface->complete);
iface->busid = busid; iface->busid = busid;
......
...@@ -241,14 +241,12 @@ static int __devinit prosavage_probe(struct pci_dev *dev, const struct pci_devic ...@@ -241,14 +241,12 @@ static int __devinit prosavage_probe(struct pci_dev *dev, const struct pci_devic
struct s_i2c_chip *chip; struct s_i2c_chip *chip;
struct s_i2c_bus *bus; struct s_i2c_bus *bus;
pci_set_drvdata(dev, kmalloc(sizeof(struct s_i2c_chip), GFP_KERNEL)); pci_set_drvdata(dev, kzalloc(sizeof(struct s_i2c_chip), GFP_KERNEL));
chip = (struct s_i2c_chip *)pci_get_drvdata(dev); chip = (struct s_i2c_chip *)pci_get_drvdata(dev);
if (chip == NULL) { if (chip == NULL) {
return -ENOMEM; return -ENOMEM;
} }
memset(chip, 0, sizeof(struct s_i2c_chip));
base = dev->resource[0].start & PCI_BASE_ADDRESS_MEM_MASK; base = dev->resource[0].start & PCI_BASE_ADDRESS_MEM_MASK;
len = dev->resource[0].end - base + 1; len = dev->resource[0].end - base + 1;
chip->mmio = ioremap_nocache(base, len); chip->mmio = ioremap_nocache(base, len);
......
...@@ -442,14 +442,13 @@ static int __init scx200_acb_create(int base, int index) ...@@ -442,14 +442,13 @@ static int __init scx200_acb_create(int base, int index)
int rc = 0; int rc = 0;
char description[64]; char description[64];
iface = kmalloc(sizeof(*iface), GFP_KERNEL); iface = kzalloc(sizeof(*iface), GFP_KERNEL);
if (!iface) { if (!iface) {
printk(KERN_ERR NAME ": can't allocate memory\n"); printk(KERN_ERR NAME ": can't allocate memory\n");
rc = -ENOMEM; rc = -ENOMEM;
goto errout; goto errout;
} }
memset(iface, 0, sizeof(*iface));
adapter = &iface->adapter; adapter = &iface->adapter;
i2c_set_adapdata(adapter, iface); i2c_set_adapdata(adapter, iface);
snprintf(adapter->name, I2C_NAME_SIZE, "SCx200 ACB%d", index); snprintf(adapter->name, I2C_NAME_SIZE, "SCx200 ACB%d", index);
......
...@@ -243,11 +243,10 @@ static int ds1337_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -243,11 +243,10 @@ static int ds1337_detect(struct i2c_adapter *adapter, int address, int kind)
I2C_FUNC_I2C)) I2C_FUNC_I2C))
goto exit; goto exit;
if (!(data = kmalloc(sizeof(struct ds1337_data), GFP_KERNEL))) { if (!(data = kzalloc(sizeof(struct ds1337_data), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit; goto exit;
} }
memset(data, 0, sizeof(struct ds1337_data));
INIT_LIST_HEAD(&data->list); INIT_LIST_HEAD(&data->list);
/* The common I2C client data is placed right before the /* The common I2C client data is placed right before the
......
...@@ -193,11 +193,10 @@ static int ds1374_probe(struct i2c_adapter *adap, int addr, int kind) ...@@ -193,11 +193,10 @@ static int ds1374_probe(struct i2c_adapter *adap, int addr, int kind)
struct i2c_client *client; struct i2c_client *client;
int rc; int rc;
client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL); client = kzalloc(sizeof(struct i2c_client), GFP_KERNEL);
if (!client) if (!client)
return -ENOMEM; return -ENOMEM;
memset(client, 0, sizeof(struct i2c_client));
strncpy(client->name, DS1374_DRV_NAME, I2C_NAME_SIZE); strncpy(client->name, DS1374_DRV_NAME, I2C_NAME_SIZE);
client->addr = addr; client->addr = addr;
client->adapter = adap; client->adapter = adap;
......
...@@ -171,11 +171,10 @@ int eeprom_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -171,11 +171,10 @@ int eeprom_detect(struct i2c_adapter *adapter, int address, int kind)
| I2C_FUNC_SMBUS_BYTE)) | I2C_FUNC_SMBUS_BYTE))
goto exit; goto exit;
if (!(data = kmalloc(sizeof(struct eeprom_data), GFP_KERNEL))) { if (!(data = kzalloc(sizeof(struct eeprom_data), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit; goto exit;
} }
memset(data, 0, sizeof(struct eeprom_data));
new_client = &data->client; new_client = &data->client;
memset(data->data, 0xff, EEPROM_SIZE); memset(data->data, 0xff, EEPROM_SIZE);
......
...@@ -174,11 +174,10 @@ m41t00_probe(struct i2c_adapter *adap, int addr, int kind) ...@@ -174,11 +174,10 @@ m41t00_probe(struct i2c_adapter *adap, int addr, int kind)
struct i2c_client *client; struct i2c_client *client;
int rc; int rc;
client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL); client = kzalloc(sizeof(struct i2c_client), GFP_KERNEL);
if (!client) if (!client)
return -ENOMEM; return -ENOMEM;
memset(client, 0, sizeof(struct i2c_client));
strncpy(client->name, M41T00_DRV_NAME, I2C_NAME_SIZE); strncpy(client->name, M41T00_DRV_NAME, I2C_NAME_SIZE);
client->addr = addr; client->addr = addr;
client->adapter = adap; client->adapter = adap;
......
...@@ -179,16 +179,14 @@ static int max6875_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -179,16 +179,14 @@ static int max6875_detect(struct i2c_adapter *adapter, int address, int kind)
if (address & 1) if (address & 1)
return 0; return 0;
if (!(data = kmalloc(sizeof(struct max6875_data), GFP_KERNEL))) if (!(data = kzalloc(sizeof(struct max6875_data), GFP_KERNEL)))
return -ENOMEM; return -ENOMEM;
memset(data, 0, sizeof(struct max6875_data));
/* A fake client is created on the odd address */ /* A fake client is created on the odd address */
if (!(fake_client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL))) { if (!(fake_client = kzalloc(sizeof(struct i2c_client), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit_kfree1; goto exit_kfree1;
} }
memset(fake_client, 0, sizeof(struct i2c_client));
/* Init real i2c_client */ /* Init real i2c_client */
real_client = &data->client; real_client = &data->client;
......
...@@ -122,11 +122,10 @@ static int pca9539_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -122,11 +122,10 @@ static int pca9539_detect(struct i2c_adapter *adapter, int address, int kind)
/* OK. For now, we presume we have a valid client. We now create the /* OK. For now, we presume we have a valid client. We now create the
client structure, even though we cannot fill it completely yet. */ client structure, even though we cannot fill it completely yet. */
if (!(data = kmalloc(sizeof(struct pca9539_data), GFP_KERNEL))) { if (!(data = kzalloc(sizeof(struct pca9539_data), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit; goto exit;
} }
memset(data, 0, sizeof(struct pca9539_data));
new_client = &data->client; new_client = &data->client;
i2c_set_clientdata(new_client, data); i2c_set_clientdata(new_client, data);
......
...@@ -127,11 +127,10 @@ int pcf8574_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -127,11 +127,10 @@ int pcf8574_detect(struct i2c_adapter *adapter, int address, int kind)
/* OK. For now, we presume we have a valid client. We now create the /* OK. For now, we presume we have a valid client. We now create the
client structure, even though we cannot fill it completely yet. */ client structure, even though we cannot fill it completely yet. */
if (!(data = kmalloc(sizeof(struct pcf8574_data), GFP_KERNEL))) { if (!(data = kzalloc(sizeof(struct pcf8574_data), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit; goto exit;
} }
memset(data, 0, sizeof(struct pcf8574_data));
new_client = &data->client; new_client = &data->client;
i2c_set_clientdata(new_client, data); i2c_set_clientdata(new_client, data);
......
...@@ -178,11 +178,10 @@ int pcf8591_detect(struct i2c_adapter *adapter, int address, int kind) ...@@ -178,11 +178,10 @@ int pcf8591_detect(struct i2c_adapter *adapter, int address, int kind)
/* OK. For now, we presume we have a valid client. We now create the /* OK. For now, we presume we have a valid client. We now create the
client structure, even though we cannot fill it completely yet. */ client structure, even though we cannot fill it completely yet. */
if (!(data = kmalloc(sizeof(struct pcf8591_data), GFP_KERNEL))) { if (!(data = kzalloc(sizeof(struct pcf8591_data), GFP_KERNEL))) {
err = -ENOMEM; err = -ENOMEM;
goto exit; goto exit;
} }
memset(data, 0, sizeof(struct pcf8591_data));
new_client = &data->client; new_client = &data->client;
i2c_set_clientdata(new_client, data); i2c_set_clientdata(new_client, data);
......
...@@ -148,12 +148,11 @@ static int rtc8564_attach(struct i2c_adapter *adap, int addr, int kind) ...@@ -148,12 +148,11 @@ static int rtc8564_attach(struct i2c_adapter *adap, int addr, int kind)
{addr, I2C_M_RD, 2, data} {addr, I2C_M_RD, 2, data}
}; };
d = kmalloc(sizeof(struct rtc8564_data), GFP_KERNEL); d = kzalloc(sizeof(struct rtc8564_data), GFP_KERNEL);
if (!d) { if (!d) {
ret = -ENOMEM; ret = -ENOMEM;
goto done; goto done;
} }
memset(d, 0, sizeof(struct rtc8564_data));
new_client = &d->client; new_client = &d->client;
strlcpy(new_client->name, "RTC8564", I2C_NAME_SIZE); strlcpy(new_client->name, "RTC8564", I2C_NAME_SIZE);
......
...@@ -500,11 +500,10 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind) ...@@ -500,11 +500,10 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
return 0; return 0;
} }
tps = kmalloc(sizeof *tps, GFP_KERNEL); tps = kzalloc(sizeof *tps, GFP_KERNEL);
if (!tps) if (!tps)
return 0; return 0;
memset(tps, 0, sizeof *tps);
init_MUTEX(&tps->lock); init_MUTEX(&tps->lock);
INIT_WORK(&tps->work, tps65010_work, tps); INIT_WORK(&tps->work, tps65010_work, tps);
tps->irq = -1; tps->irq = -1;
......
...@@ -80,10 +80,9 @@ static struct i2c_dev *get_free_i2c_dev(struct i2c_adapter *adap) ...@@ -80,10 +80,9 @@ static struct i2c_dev *get_free_i2c_dev(struct i2c_adapter *adap)
{ {
struct i2c_dev *i2c_dev; struct i2c_dev *i2c_dev;
i2c_dev = kmalloc(sizeof(*i2c_dev), GFP_KERNEL); i2c_dev = kzalloc(sizeof(*i2c_dev), GFP_KERNEL);
if (!i2c_dev) if (!i2c_dev)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
memset(i2c_dev, 0x00, sizeof(*i2c_dev));
spin_lock(&i2c_dev_array_lock); spin_lock(&i2c_dev_array_lock);
if (i2c_dev_array[adap->nr]) { if (i2c_dev_array[adap->nr]) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册