diff options
author | Philipp Stanner <pstanner@redhat.com> | 2024-11-21 22:56:25 +0300 |
---|---|---|
committer | Andi Shyti <andi.shyti@kernel.org> | 2025-01-09 18:40:10 +0300 |
commit | 65cba48d295216d0636ee835631142099374d905 (patch) | |
tree | 0d7c8d4b11e108836daa6239c2dc86343c44ecf8 | |
parent | 4262df2a69c32a0bce87d75342f6f8e3a535d7cb (diff) | |
download | linux-65cba48d295216d0636ee835631142099374d905.tar.xz |
i2c: i801: Remove unnecessary PCI function call
Since the changes in
commit f748a07a0b64 ("PCI: Remove legacy pcim_release()")
all pcim_enable_device() does is set up a callback that disables the
device from being disabled from driver detach. The function
pcim_pin_device() prevents said disabling. pcim_enable_device(),
therefore, sets up an action that is removed immediately afterwards by
pcim_pin_device().
Replace pcim_enable_device() with pci_enable_device() and remove the
unnecessary call to pcim_pin_device().
Signed-off-by: Philipp Stanner <pstanner@redhat.com>
Link: https://lore.kernel.org/r/20241121195624.144839-2-pstanner@redhat.com
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
-rw-r--r-- | drivers/i2c/busses/i2c-i801.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c index 75dab01d43a7..d9d354ce231d 100644 --- a/drivers/i2c/busses/i2c-i801.c +++ b/drivers/i2c/busses/i2c-i801.c @@ -1682,13 +1682,16 @@ static int i801_probe(struct pci_dev *dev, const struct pci_device_id *id) if (!(priv->features & FEATURE_BLOCK_BUFFER)) priv->features &= ~FEATURE_BLOCK_PROC; - err = pcim_enable_device(dev); + /* + * Do not call pcim_enable_device(), because the device has to remain + * enabled on driver detach. See i801_remove() for the reasoning. + */ + err = pci_enable_device(dev); if (err) { dev_err(&dev->dev, "Failed to enable SMBus PCI device (%d)\n", err); return err; } - pcim_pin_device(dev); /* Determine the address of the SMBus area */ priv->smba = pci_resource_start(dev, SMBBAR); |