git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git]
/
drivers
/
i2c
/
busses
/
i2c-prosavage.c
diff --git
a/drivers/i2c/busses/i2c-prosavage.c
b/drivers/i2c/busses/i2c-prosavage.c
index
0aabe49
..
07c1f1e
100644
(file)
--- a/
drivers/i2c/busses/i2c-prosavage.c
+++ b/
drivers/i2c/busses/i2c-prosavage.c
@@
-54,7
+54,6
@@
* (Additional documentation needed :(
*/
* (Additional documentation needed :(
*/
-#include <linux/config.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/pci.h>
@@
-68,7
+67,7
@@
#define MAX_BUSSES 2
struct s_i2c_bus {
#define MAX_BUSSES 2
struct s_i2c_bus {
- void
*mmvga;
+ void
__iomem
*mmvga;
int i2c_reg;
int adap_ok;
struct i2c_adapter adap;
int i2c_reg;
int adap_ok;
struct i2c_adapter adap;
@@
-76,7
+75,7
@@
struct s_i2c_bus {
};
struct s_i2c_chip {
};
struct s_i2c_chip {
- void
*mmio;
+ void
__iomem
*mmio;
struct s_i2c_bus i2c_bus[MAX_BUSSES];
};
struct s_i2c_bus i2c_bus[MAX_BUSSES];
};
@@
-84,11
+83,6
@@
struct s_i2c_chip {
/*
* i2c configuration
*/
/*
* i2c configuration
*/
-#ifndef I2C_HW_B_S3VIA
-#define I2C_HW_B_S3VIA 0x18 /* S3VIA ProSavage adapter */
-#endif
-
-/* delays */
#define CYCLE_DELAY 10
#define TIMEOUT (HZ / 2)
#define CYCLE_DELAY 10
#define TIMEOUT (HZ / 2)
@@
-96,13
+90,6
@@
struct s_i2c_chip {
/*
* S3/VIA 8365/8375 registers
*/
/*
* S3/VIA 8365/8375 registers
*/
-#ifndef PCI_DEVICE_ID_S3_SAVAGE4
-#define PCI_DEVICE_ID_S3_SAVAGE4 0x8a25
-#endif
-#ifndef PCI_DEVICE_ID_S3_PROSAVAGE8
-#define PCI_DEVICE_ID_S3_PROSAVAGE8 0x8d04
-#endif
-
#define VGA_CR_IX 0x3d4
#define VGA_CR_DATA 0x3d5
#define VGA_CR_IX 0x3d4
#define VGA_CR_DATA 0x3d5
@@
-181,7
+168,7
@@
static int bit_s3via_getsda(void *bus)
/*
* adapter initialisation
*/
/*
* adapter initialisation
*/
-static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p,
u8
*mmvga, u32 i2c_reg)
+static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p,
void __iomem
*mmvga, u32 i2c_reg)
{
int ret;
p->adap.owner = THIS_MODULE;
{
int ret;
p->adap.owner = THIS_MODULE;
@@
-193,7
+180,6
@@
static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p, u8 *mmvga,
p->algo.getsda = bit_s3via_getsda;
p->algo.getscl = bit_s3via_getscl;
p->algo.udelay = CYCLE_DELAY;
p->algo.getsda = bit_s3via_getsda;
p->algo.getscl = bit_s3via_getscl;
p->algo.udelay = CYCLE_DELAY;
- p->algo.mdelay = CYCLE_DELAY;
p->algo.timeout = TIMEOUT;
p->algo.data = p;
p->mmvga = mmvga;
p->algo.timeout = TIMEOUT;
p->algo.data = p;
p->mmvga = mmvga;
@@
-226,9
+212,9
@@
static void prosavage_remove(struct pci_dev *dev)
if (chip->i2c_bus[i].adap_ok == 0)
continue;
if (chip->i2c_bus[i].adap_ok == 0)
continue;
- ret = i2c_
bit_del_bus
(&chip->i2c_bus[i].adap);
+ ret = i2c_
del_adapter
(&chip->i2c_bus[i].adap);
if (ret) {
if (ret) {
- dev_err(&dev->dev, "
:
%s not removed\n",
+ dev_err(&dev->dev, "%s not removed\n",
chip->i2c_bus[i].adap.name);
}
}
chip->i2c_bus[i].adap.name);
}
}
@@
-249,14
+235,12
@@
static int __devinit prosavage_probe(struct pci_dev *dev, const struct pci_devic
struct s_i2c_chip *chip;
struct s_i2c_bus *bus;
struct s_i2c_chip *chip;
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);
if (chip == NULL) {
return -ENOMEM;
}
chip = (struct s_i2c_chip *)pci_get_drvdata(dev);
if (chip == NULL) {
return -ENOMEM;
}
- memset(chip, 0, sizeof(struct s_i2c_chip));
-
base = dev->resource[0].start & PCI_BASE_ADDRESS_MEM_MASK;
len = dev->resource[0].end - base + 1;
chip->mmio = ioremap_nocache(base, len);
base = dev->resource[0].start & PCI_BASE_ADDRESS_MEM_MASK;
len = dev->resource[0].end - base + 1;
chip->mmio = ioremap_nocache(base, len);
@@
-298,7
+282,7
@@
static int __devinit prosavage_probe(struct pci_dev *dev, const struct pci_devic
}
return 0;
err_adap:
}
return 0;
err_adap:
- dev_err(&dev->dev, "
:
%s failed\n", bus->adap.name);
+ dev_err(&dev->dev, "%s failed\n", bus->adap.name);
prosavage_remove(dev);
return ret;
}
prosavage_remove(dev);
return ret;
}
@@
-313,8
+297,10
@@
static struct pci_device_id prosavage_pci_tbl[] = {
{ 0, },
};
{ 0, },
};
+MODULE_DEVICE_TABLE (pci, prosavage_pci_tbl);
+
static struct pci_driver prosavage_driver = {
static struct pci_driver prosavage_driver = {
- .name = "prosavage
-
smbus",
+ .name = "prosavage
_
smbus",
.id_table = prosavage_pci_tbl,
.probe = prosavage_probe,
.remove = prosavage_remove,
.id_table = prosavage_pci_tbl,
.probe = prosavage_probe,
.remove = prosavage_remove,
@@
-322,7
+308,7
@@
static struct pci_driver prosavage_driver = {
static int __init i2c_prosavage_init(void)
{
static int __init i2c_prosavage_init(void)
{
- return pci_
module_init
(&prosavage_driver);
+ return pci_
register_driver
(&prosavage_driver);
}
static void __exit i2c_prosavage_exit(void)
}
static void __exit i2c_prosavage_exit(void)