eisa: remove driver_data direct access of struct device
In the near future, the driver core is going to not allow direct access to the driver_data pointer in struct device. Instead, the functions dev_get_drvdata() and dev_set_drvdata() should be used. These functions have been around since the beginning, so are backwards compatible with all older kernel versions. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
2bdf914915
Коммит
4b9d0d3b81
|
@ -31,11 +31,11 @@ static int __init pci_eisa_init(struct pci_dev *pdev,
|
|||
}
|
||||
|
||||
pci_eisa_root.dev = &pdev->dev;
|
||||
pci_eisa_root.dev->driver_data = &pci_eisa_root;
|
||||
pci_eisa_root.res = pdev->bus->resource[0];
|
||||
pci_eisa_root.bus_base_addr = pdev->bus->resource[0]->start;
|
||||
pci_eisa_root.slots = EISA_MAX_SLOTS;
|
||||
pci_eisa_root.dma_mask = pdev->dma_mask;
|
||||
dev_set_drvdata(pci_eisa_root.dev, &pci_eisa_root);
|
||||
|
||||
if (eisa_root_register (&pci_eisa_root)) {
|
||||
printk (KERN_ERR "pci_eisa : Could not register EISA root\n");
|
||||
|
|
|
@ -57,7 +57,7 @@ static int __init virtual_eisa_root_init (void)
|
|||
|
||||
eisa_bus_root.force_probe = force_probe;
|
||||
|
||||
eisa_root_dev.dev.driver_data = &eisa_bus_root;
|
||||
dev_set_drvdata(&eisa_root_dev.dev, &eisa_bus_root);
|
||||
|
||||
if (eisa_root_register (&eisa_bus_root)) {
|
||||
/* A real bridge may have been registered before
|
||||
|
|
|
@ -78,12 +78,12 @@ static inline void eisa_driver_unregister (struct eisa_driver *edrv) { }
|
|||
/* Mimics pci.h... */
|
||||
static inline void *eisa_get_drvdata (struct eisa_device *edev)
|
||||
{
|
||||
return edev->dev.driver_data;
|
||||
return dev_get_drvdata(&edev->dev);
|
||||
}
|
||||
|
||||
static inline void eisa_set_drvdata (struct eisa_device *edev, void *data)
|
||||
{
|
||||
edev->dev.driver_data = data;
|
||||
dev_set_drvdata(&edev->dev, data);
|
||||
}
|
||||
|
||||
/* The EISA root device. There's rumours about machines with multiple
|
||||
|
|
Загрузка…
Ссылка в новой задаче