All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Jarkko Nikula <jarkko.nikula@linux.intel.com>,
	Mario Limonciello <mario.limonciello@amd.com>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Wolfram Sang <wsa@kernel.org>,
	linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Mika Westerberg <mika.westerberg@linux.intel.com>,
	Jan Dabros <jsd@semihalf.com>, Andi Shyti <andi.shyti@kernel.org>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Hans de Goede <hdegoede@redhat.com>
Subject: [PATCH v3 18/25] i2c: designware: Remove ->disable() callback
Date: Fri, 10 Nov 2023 20:11:38 +0200	[thread overview]
Message-ID: <20231110182304.3894319-19-andriy.shevchenko@linux.intel.com> (raw)
In-Reply-To: <20231110182304.3894319-1-andriy.shevchenko@linux.intel.com>

Commit 90312351fd1e ("i2c: designware: MASTER mode as separated driver")
introduced ->disable() callback but there is no real use for it. Both
i2c-designware-master.c and i2c-designware-slave.c set it to the same
i2c_dw_disable() and scope is inside the same kernel module.

That said, replace the callback by explicitly calling the i2c_dw_disable().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/i2c/busses/i2c-designware-core.h    | 2 --
 drivers/i2c/busses/i2c-designware-master.c  | 1 -
 drivers/i2c/busses/i2c-designware-pcidrv.c  | 4 ++--
 drivers/i2c/busses/i2c-designware-platdrv.c | 4 ++--
 drivers/i2c/busses/i2c-designware-slave.c   | 3 +--
 5 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/i2c/busses/i2c-designware-core.h b/drivers/i2c/busses/i2c-designware-core.h
index 22477143bb98..52667d670363 100644
--- a/drivers/i2c/busses/i2c-designware-core.h
+++ b/drivers/i2c/busses/i2c-designware-core.h
@@ -238,7 +238,6 @@ struct i2c_dw_semaphore_callbacks;
  * @semaphore_idx: Index of table with semaphore type attached to the bus. It's
  *	-1 if there is no semaphore.
  * @shared_with_punit: true if this bus is shared with the SoCs PUNIT
- * @disable: function to disable the controller
  * @init: function to initialize the I2C hardware
  * @set_sda_hold_time: callback to retrieve IP specific SDA hold timing
  * @mode: operation mode - DW_IC_MASTER or DW_IC_SLAVE
@@ -295,7 +294,6 @@ struct dw_i2c_dev {
 	void			(*release_lock)(void);
 	const struct i2c_dw_semaphore_callbacks *semaphore_cb;
 	bool			shared_with_punit;
-	void			(*disable)(struct dw_i2c_dev *dev);
 	int			(*init)(struct dw_i2c_dev *dev);
 	int			(*set_sda_hold_time)(struct dw_i2c_dev *dev);
 	int			mode;
diff --git a/drivers/i2c/busses/i2c-designware-master.c b/drivers/i2c/busses/i2c-designware-master.c
index 0b6576d7f811..bd3c8db521de 100644
--- a/drivers/i2c/busses/i2c-designware-master.c
+++ b/drivers/i2c/busses/i2c-designware-master.c
@@ -990,7 +990,6 @@ int i2c_dw_probe_master(struct dw_i2c_dev *dev)
 	init_completion(&dev->cmd_complete);
 
 	dev->init = i2c_dw_init_master;
-	dev->disable = i2c_dw_disable;
 
 	ret = i2c_dw_init_regmap(dev);
 	if (ret)
diff --git a/drivers/i2c/busses/i2c-designware-pcidrv.c b/drivers/i2c/busses/i2c-designware-pcidrv.c
index 93a117d295d7..6fd4a3d8764a 100644
--- a/drivers/i2c/busses/i2c-designware-pcidrv.c
+++ b/drivers/i2c/busses/i2c-designware-pcidrv.c
@@ -198,7 +198,7 @@ static int __maybe_unused i2c_dw_pci_runtime_suspend(struct device *dev)
 {
 	struct dw_i2c_dev *i_dev = dev_get_drvdata(dev);
 
-	i_dev->disable(i_dev);
+	i2c_dw_disable(i_dev);
 	return 0;
 }
 
@@ -341,7 +341,7 @@ static void i2c_dw_pci_remove(struct pci_dev *pdev)
 
 	i2c_del_adapter(&dev->adapter);
 
-	dev->disable(dev);
+	i2c_dw_disable(dev);
 
 	pm_runtime_forbid(&pdev->dev);
 	pm_runtime_get_noresume(&pdev->dev);
diff --git a/drivers/i2c/busses/i2c-designware-platdrv.c b/drivers/i2c/busses/i2c-designware-platdrv.c
index 6b1a26afc278..9b249d27841d 100644
--- a/drivers/i2c/busses/i2c-designware-platdrv.c
+++ b/drivers/i2c/busses/i2c-designware-platdrv.c
@@ -343,7 +343,7 @@ static void dw_i2c_plat_remove(struct platform_device *pdev)
 
 	i2c_del_adapter(&dev->adapter);
 
-	dev->disable(dev);
+	i2c_dw_disable(dev);
 
 	pm_runtime_dont_use_autosuspend(&pdev->dev);
 	pm_runtime_put_sync(&pdev->dev);
@@ -367,7 +367,7 @@ static int dw_i2c_plat_runtime_suspend(struct device *dev)
 	if (i_dev->shared_with_punit)
 		return 0;
 
-	i_dev->disable(i_dev);
+	i2c_dw_disable(i_dev);
 	i2c_dw_prepare_clk(i_dev, false);
 
 	return 0;
diff --git a/drivers/i2c/busses/i2c-designware-slave.c b/drivers/i2c/busses/i2c-designware-slave.c
index 70d183fa3bff..5abd5ec41954 100644
--- a/drivers/i2c/busses/i2c-designware-slave.c
+++ b/drivers/i2c/busses/i2c-designware-slave.c
@@ -90,7 +90,7 @@ static int i2c_dw_unreg_slave(struct i2c_client *slave)
 	struct dw_i2c_dev *dev = i2c_get_adapdata(slave->adapter);
 
 	regmap_write(dev->map, DW_IC_INTR_MASK, 0);
-	dev->disable(dev);
+	i2c_dw_disable(dev);
 	synchronize_irq(dev->irq);
 	dev->slave = NULL;
 	pm_runtime_put(dev->dev);
@@ -237,7 +237,6 @@ int i2c_dw_probe_slave(struct dw_i2c_dev *dev)
 	int ret;
 
 	dev->init = i2c_dw_init_slave;
-	dev->disable = i2c_dw_disable;
 
 	ret = i2c_dw_init_regmap(dev);
 	if (ret)
-- 
2.43.0.rc1.1.gbec44491f096



  parent reply	other threads:[~2023-11-10 18:30 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-10 18:11 [PATCH v3 00/25] i2c: designware: code consolidation & cleanups Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 01/25] i2c: designware: Delete adapter before disabling in i2c_dw_pci_remove() Andy Shevchenko
2023-11-15  9:45   ` Jarkko Nikula
2023-11-15 13:49     ` Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 02/25] i2c: designware: Fix PM calls order in dw_i2c_plat_probe() Andy Shevchenko
2023-11-15 11:14   ` Jarkko Nikula
2023-11-15 13:48     ` Andy Shevchenko
2023-11-15 13:51       ` Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 03/25] i2c: designware: Fix reset call " Andy Shevchenko
2023-11-15 11:26   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 04/25] i2c: designware: Let PCI core to take care about interrupt vectors Andy Shevchenko
2023-11-15 12:08   ` Jarkko Nikula
2023-11-15 13:54     ` Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 05/25] i2c: designware: Fix lock probe call order in dw_i2c_plat_probe() Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 06/25] i2c: designware: Replace a while-loop by for-loop Andy Shevchenko
2023-11-10 19:40   ` Mario Limonciello
2023-11-17 13:51   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 07/25] i2c: designware: Save pointer to semaphore callbacks instead of index Andy Shevchenko
2023-11-17 13:51   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 08/25] i2c: designware: Add missing 'c' into PCI IDs variable name Andy Shevchenko
2023-11-17 13:51   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 09/25] i2c: designware: Replace MODULE_ALIAS() with MODULE_DEVICE_TABLE() Andy Shevchenko
2023-11-10 19:39   ` Mario Limonciello
2023-11-17 14:07     ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 10/25] i2c: designware: Unify terminator in device ID tables Andy Shevchenko
2023-11-10 19:38   ` Mario Limonciello
2023-11-17 14:18     ` Jarkko Nikula
2023-11-20 14:17       ` Andy Shevchenko
2023-11-17 14:08   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 11/25] i2c: designware: Always provide " Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 12/25] i2c: designware: Drop return value from i2c_dw_acpi_configure() Andy Shevchenko
2023-11-17 14:46   ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 13/25] i2c: designware: Drop return value from dw_i2c_of_configure() Andy Shevchenko
2023-11-10 19:41   ` Mario Limonciello
2023-11-17 14:19     ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 14/25] i2c: designware: Rename dw_i2c_of_configure() -> i2c_dw_of_configure() Andy Shevchenko
2023-11-10 19:39   ` Mario Limonciello
2023-11-17 14:46     ` Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 15/25] i2c: designware: Consolidate firmware parsing and configuring code Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 16/25] i2c: designware: Unify the firmware type checks Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 17/25] i2c: designware: Move exports to I2C_DW namespaces Andy Shevchenko
2023-11-10 18:11 ` Andy Shevchenko [this message]
2023-11-14 15:03   ` [PATCH v3 18/25] i2c: designware: Remove ->disable() callback Jarkko Nikula
2023-11-10 18:11 ` [PATCH v3 19/25] i2c: designware: Consolidate PM ops Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 20/25] i2c: designware: Uninline i2c_dw_probe() Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 21/25] i2c: designware: Propagate firmware node Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 22/25] i2c: designware: Use pci_get_drvdata() Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 23/25] i2c: designware: Use temporary variable for struct device Andy Shevchenko
2023-11-10 19:36   ` Mario Limonciello
2023-11-10 18:11 ` [PATCH v3 24/25] i2c: designware: Get rid of redundant 'else' Andy Shevchenko
2023-11-10 18:11 ` [PATCH v3 25/25] i2c: designware: Fix spelling and other issues in the comments Andy Shevchenko
2023-11-10 19:35   ` Mario Limonciello

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231110182304.3894319-19-andriy.shevchenko@linux.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=andi.shyti@kernel.org \
    --cc=hdegoede@redhat.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=jsd@semihalf.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mika.westerberg@linux.intel.com \
    --cc=p.zabel@pengutronix.de \
    --cc=wsa@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.