Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3bea7fcb authored by Jens Taprogge's avatar Jens Taprogge Committed by Greg Kroah-Hartman
Browse files

Staging: ipack: remove field driver from struct ipack_device.



After a successful match is found the driver field in struct device is
set by the core device code. We can use this field.

Signed-off-by: default avatarJens Taprogge <jens.taprogge@taprogge.org>
Signed-off-by: default avatarSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 90cb6194
Loading
Loading
Loading
Loading
+7 −10
Original line number Diff line number Diff line
@@ -59,32 +59,29 @@ static int ipack_bus_match(struct device *dev, struct device_driver *drv)
	const struct ipack_device_id *found_id;

	found_id = ipack_match_id(idrv->id_table, idev);
	if (found_id) {
		idev->driver = idrv;
		return 1;
	}

	return 0;
	return found_id ? 1 : 0;
}

static int ipack_bus_probe(struct device *device)
{
	struct ipack_device *dev = to_ipack_dev(device);
	struct ipack_driver *drv = to_ipack_driver(device->driver);

	if (!dev->driver->ops->probe)
	if (!drv->ops->probe)
		return -EINVAL;

	return dev->driver->ops->probe(dev);
	return drv->ops->probe(dev);
}

static int ipack_bus_remove(struct device *device)
{
	struct ipack_device *dev = to_ipack_dev(device);
	struct ipack_driver *drv = to_ipack_driver(device->driver);

	if (!dev->driver->ops->remove)
	if (!drv->ops->remove)
		return -EINVAL;

	dev->driver->ops->remove(dev);
	drv->ops->remove(dev);
	return 0;
}

+0 −2
Original line number Diff line number Diff line
@@ -53,7 +53,6 @@ struct ipack_addr_space {
 *	@bus_nr: IP bus number where the device is plugged
 *	@slot: Slot where the device is plugged in the carrier board
 *	@irq: IRQ vector
 *	@driver: Pointer to the ipack_driver that manages the device
 *	@bus: ipack_bus_device where the device is plugged to.
 *	@id_space: Virtual address to ID space.
 *	@io_space: Virtual address to IO space.
@@ -68,7 +67,6 @@ struct ipack_device {
	unsigned int bus_nr;
	unsigned int slot;
	unsigned int irq;
	struct ipack_driver *driver;
	struct ipack_bus_device *bus;
	struct ipack_addr_space id_space;
	struct ipack_addr_space io_space;