linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
@ 2019-02-12 18:27 Sowjanya Komatineni
  2019-02-12 18:27 ` [PATCH V19 2/7] i2c: tegra: add bus clear Master Support Sowjanya Komatineni
  2019-02-12 18:32 ` [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
  0 siblings, 2 replies; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 18:27 UTC (permalink / raw)
  To: thierry.reding, jonathanh, mkarthik, smohammed, talho
  Cc: wsa, peda, digetx, linux-tegra, linux-kernel, linux-i2c,
	Sowjanya Komatineni

This patch sorts all the include headers alphabetically for the
I2C Tegra driver.

Acked-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
---
 [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18/V19] : Rebased to 5.0-rc4
 [V3/V4/V5/V7/V8] : Removed unsued headers in tegra I2C
 [V2] 		  : Added this in V2 to sort the headers in tegra I2C



 drivers/i2c/busses/i2c-tegra.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
index c77adbbea0c7..79c6aa87499b 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -6,24 +6,21 @@
  * Author: Colin Cross <ccross@android.com>
  */
 
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/platform_device.h>
 #include <linux/clk.h>
+#include <linux/delay.h>
 #include <linux/err.h>
 #include <linux/i2c.h>
-#include <linux/io.h>
+#include <linux/init.h>
 #include <linux/interrupt.h>
-#include <linux/delay.h>
-#include <linux/slab.h>
-#include <linux/of_device.h>
+#include <linux/io.h>
+#include <linux/iopoll.h>
+#include <linux/kernel.h>
 #include <linux/module.h>
-#include <linux/reset.h>
+#include <linux/of_device.h>
 #include <linux/pinctrl/consumer.h>
+#include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
-#include <linux/iopoll.h>
-
-#include <asm/unaligned.h>
+#include <linux/reset.h>
 
 #define TEGRA_I2C_TIMEOUT (msecs_to_jiffies(1000))
 #define BYTES_PER_FIFO_WORD 4
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH V19 2/7] i2c: tegra: add bus clear Master Support
  2019-02-12 18:27 [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
@ 2019-02-12 18:27 ` Sowjanya Komatineni
  2019-02-12 18:32 ` [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
  1 sibling, 0 replies; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 18:27 UTC (permalink / raw)
  To: thierry.reding, jonathanh, mkarthik, smohammed, talho
  Cc: wsa, peda, digetx, linux-tegra, linux-kernel, linux-i2c,
	Sowjanya Komatineni

Bus clear feature of Tegra I2C controller helps to recover from
bus hang when I2C master loses the bus arbitration due to the
slave device holding SDA LOW continuously for some unknown reasons.

Per I2C specification, the device that held the bus LOW should
release it within 9 clock pulses.

During bus clear operation, Tegra I2C controller sends 9 clock
pulses and terminates the transaction with STOP condition.
Upon successful bus clear operation, bus goes to idle state and
driver retries the transaction.

Acked-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
---
 [V19] 		  : updated to use i2c bus recovery through i2c core adapter
		    using i2c_bus_recovery_info
 [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18] : Rebased to 5.0-rc4
 [V5/V6/V7/V8]	  : Same as V4
 [V4]		  : Added I2C Bus Clear support patch to this version of series.


 drivers/i2c/busses/i2c-tegra.c | 81 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
index 79c6aa87499b..a46446dbc48a 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -51,6 +51,7 @@
 #define I2C_FIFO_STATUS_RX_SHIFT		0
 #define I2C_INT_MASK				0x064
 #define I2C_INT_STATUS				0x068
+#define I2C_INT_BUS_CLR_DONE			BIT(11)
 #define I2C_INT_PACKET_XFER_COMPLETE		BIT(7)
 #define I2C_INT_ALL_PACKETS_XFER_COMPLETE	BIT(6)
 #define I2C_INT_TX_FIFO_OVERFLOW		BIT(5)
@@ -93,6 +94,15 @@
 #define I2C_HEADER_MASTER_ADDR_SHIFT		12
 #define I2C_HEADER_SLAVE_ADDR_SHIFT		1
 
+#define I2C_BUS_CLEAR_CNFG			0x084
+#define I2C_BC_SCLK_THRESHOLD			9
+#define I2C_BC_SCLK_THRESHOLD_SHIFT		16
+#define I2C_BC_STOP_COND			BIT(2)
+#define I2C_BC_TERMINATE			BIT(1)
+#define I2C_BC_ENABLE				BIT(0)
+#define I2C_BUS_CLEAR_STATUS			0x088
+#define I2C_BC_STATUS				BIT(0)
+
 #define I2C_CONFIG_LOAD				0x08C
 #define I2C_MSTR_CONFIG_LOAD			BIT(0)
 #define I2C_SLV_CONFIG_LOAD			BIT(1)
@@ -154,6 +164,8 @@ enum msg_end_type {
  *		be transferred in one go.
  * @quirks: i2c adapter quirks for limiting write/read transfer size and not
  *		allowing 0 length transfers.
+ * @supports_bus_clear: Bus Clear support to recover from bus hang during
+ *		SDA stuck low from device for some unknown reasons.
  */
 struct tegra_i2c_hw_feature {
 	bool has_continue_xfer_support;
@@ -167,6 +179,7 @@ struct tegra_i2c_hw_feature {
 	bool has_slcg_override_reg;
 	bool has_mst_fifo;
 	const struct i2c_adapter_quirks *quirks;
+	bool supports_bus_clear;
 };
 
 /**
@@ -640,6 +653,13 @@ static irqreturn_t tegra_i2c_isr(int irq, void *dev_id)
 		goto err;
 	}
 
+	/*
+	 * I2C transfer is terminated during the bus clear so skip
+	 * processing the other interrupts.
+	 */
+	if (i2c_dev->hw->supports_bus_clear && (status & I2C_INT_BUS_CLR_DONE))
+		goto err;
+
 	if (i2c_dev->msg_read && (status & I2C_INT_RX_FIFO_DATA_REQ)) {
 		if (i2c_dev->msg_buf_remaining)
 			tegra_i2c_empty_rx_fifo(i2c_dev);
@@ -668,6 +688,8 @@ static irqreturn_t tegra_i2c_isr(int irq, void *dev_id)
 	tegra_i2c_mask_irq(i2c_dev, I2C_INT_NO_ACK | I2C_INT_ARBITRATION_LOST |
 		I2C_INT_PACKET_XFER_COMPLETE | I2C_INT_TX_FIFO_DATA_REQ |
 		I2C_INT_RX_FIFO_DATA_REQ);
+	if (i2c_dev->hw->supports_bus_clear)
+		tegra_i2c_mask_irq(i2c_dev, I2C_INT_BUS_CLR_DONE);
 	i2c_writel(i2c_dev, status, I2C_INT_STATUS);
 	if (i2c_dev->is_dvc)
 		dvc_writel(i2c_dev, DVC_STATUS_I2C_DONE_INTR, DVC_STATUS);
@@ -678,6 +700,44 @@ static irqreturn_t tegra_i2c_isr(int irq, void *dev_id)
 	return IRQ_HANDLED;
 }
 
+static int tegra_i2c_issue_bus_clear(struct i2c_adapter *adap)
+{
+	struct tegra_i2c_dev *i2c_dev = i2c_get_adapdata(adap);
+	int err;
+	unsigned long time_left;
+	u32 reg;
+
+	reinit_completion(&i2c_dev->msg_complete);
+	reg = (I2C_BC_SCLK_THRESHOLD << I2C_BC_SCLK_THRESHOLD_SHIFT) |
+	      I2C_BC_STOP_COND | I2C_BC_TERMINATE;
+	i2c_writel(i2c_dev, reg, I2C_BUS_CLEAR_CNFG);
+	if (i2c_dev->hw->has_config_load_reg) {
+		err = tegra_i2c_wait_for_config_load(i2c_dev);
+		if (err)
+			return err;
+	}
+
+	reg |= I2C_BC_ENABLE;
+	i2c_writel(i2c_dev, reg, I2C_BUS_CLEAR_CNFG);
+	tegra_i2c_unmask_irq(i2c_dev, I2C_INT_BUS_CLR_DONE);
+
+	time_left = wait_for_completion_timeout(&i2c_dev->msg_complete,
+						TEGRA_I2C_TIMEOUT);
+	if (time_left == 0) {
+		dev_err(i2c_dev->dev, "timed out for bus clear\n");
+		return -ETIMEDOUT;
+	}
+
+	reg = i2c_readl(i2c_dev, I2C_BUS_CLEAR_STATUS);
+	if (!(reg & I2C_BC_STATUS)) {
+		dev_err(i2c_dev->dev,
+			"un-recovered arbitration lost\n");
+		return -EIO;
+	}
+
+	return -EAGAIN;
+}
+
 static int tegra_i2c_xfer_msg(struct tegra_i2c_dev *i2c_dev,
 	struct i2c_msg *msg, enum msg_end_type end_state)
 {
@@ -759,6 +819,13 @@ static int tegra_i2c_xfer_msg(struct tegra_i2c_dev *i2c_dev,
 		return 0;
 
 	tegra_i2c_init(i2c_dev);
+	/* start recovery upon arbitration loss in single master mode */
+	if (i2c_dev->msg_err == I2C_ERR_ARBITRATION_LOST) {
+		if (!i2c_dev->is_multimaster_mode)
+			return i2c_recover_bus(&i2c_dev->adapter);
+		return -EAGAIN;
+	}
+
 	if (i2c_dev->msg_err == I2C_ERR_NO_ACK) {
 		if (msg->flags & I2C_M_IGNORE_NAK)
 			return 0;
@@ -841,6 +908,10 @@ static const struct i2c_adapter_quirks tegra194_i2c_quirks = {
 	.flags = I2C_AQ_NO_ZERO_LEN,
 };
 
+static struct i2c_bus_recovery_info tegra_i2c_recovery_info = {
+	.recover_bus = tegra_i2c_issue_bus_clear,
+};
+
 static const struct tegra_i2c_hw_feature tegra20_i2c_hw = {
 	.has_continue_xfer_support = false,
 	.has_per_pkt_xfer_complete_irq = false,
@@ -853,6 +924,7 @@ static const struct tegra_i2c_hw_feature tegra20_i2c_hw = {
 	.has_slcg_override_reg = false,
 	.has_mst_fifo = false,
 	.quirks = &tegra_i2c_quirks,
+	.supports_bus_clear = false,
 };
 
 static const struct tegra_i2c_hw_feature tegra30_i2c_hw = {
@@ -867,6 +939,7 @@ static const struct tegra_i2c_hw_feature tegra30_i2c_hw = {
 	.has_slcg_override_reg = false,
 	.has_mst_fifo = false,
 	.quirks = &tegra_i2c_quirks,
+	.supports_bus_clear = false,
 };
 
 static const struct tegra_i2c_hw_feature tegra114_i2c_hw = {
@@ -881,6 +954,7 @@ static const struct tegra_i2c_hw_feature tegra114_i2c_hw = {
 	.has_slcg_override_reg = false,
 	.has_mst_fifo = false,
 	.quirks = &tegra_i2c_quirks,
+	.supports_bus_clear = true,
 };
 
 static const struct tegra_i2c_hw_feature tegra124_i2c_hw = {
@@ -895,6 +969,7 @@ static const struct tegra_i2c_hw_feature tegra124_i2c_hw = {
 	.has_slcg_override_reg = true,
 	.has_mst_fifo = false,
 	.quirks = &tegra_i2c_quirks,
+	.supports_bus_clear = true,
 };
 
 static const struct tegra_i2c_hw_feature tegra210_i2c_hw = {
@@ -909,6 +984,7 @@ static const struct tegra_i2c_hw_feature tegra210_i2c_hw = {
 	.has_slcg_override_reg = true,
 	.has_mst_fifo = false,
 	.quirks = &tegra_i2c_quirks,
+	.supports_bus_clear = true,
 };
 
 static const struct tegra_i2c_hw_feature tegra194_i2c_hw = {
@@ -923,6 +999,7 @@ static const struct tegra_i2c_hw_feature tegra194_i2c_hw = {
 	.has_slcg_override_reg = true,
 	.has_mst_fifo = true,
 	.quirks = &tegra194_i2c_quirks,
+	.supports_bus_clear = true,
 };
 
 /* Match table for of_platform binding */
@@ -974,6 +1051,7 @@ static int tegra_i2c_probe(struct platform_device *pdev)
 	i2c_dev->base = base;
 	i2c_dev->div_clk = div_clk;
 	i2c_dev->adapter.algo = &tegra_i2c_algo;
+	i2c_dev->adapter.retries = 1;
 	i2c_dev->irq = irq;
 	i2c_dev->cont_id = pdev->id;
 	i2c_dev->dev = &pdev->dev;
@@ -1051,6 +1129,9 @@ static int tegra_i2c_probe(struct platform_device *pdev)
 		}
 	}
 
+	if (i2c_dev->hw->supports_bus_clear)
+		i2c_dev->adapter.bus_recovery_info = &tegra_i2c_recovery_info;
+
 	ret = tegra_i2c_init(i2c_dev);
 	if (ret) {
 		dev_err(&pdev->dev, "Failed to initialize i2c controller\n");
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* RE: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 18:27 [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
  2019-02-12 18:27 ` [PATCH V19 2/7] i2c: tegra: add bus clear Master Support Sowjanya Komatineni
@ 2019-02-12 18:32 ` Sowjanya Komatineni
  2019-02-12 18:42   ` Dmitry Osipenko
  1 sibling, 1 reply; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 18:32 UTC (permalink / raw)
  To: thierry.reding, Jonathan Hunter, Mantravadi Karthik,
	Shardar Mohammed, Timo Alho
  Cc: wsa, peda, digetx, linux-tegra, linux-kernel, linux-i2c

Please ignore all Patch V19 series. Will resend.

Dmitry/Thierry
I am using below stable tags in commit message based on V18 feedback to get patch applied to old kernels
Git send email considers whole text after Cc as email address and reports badly formatted address.

Is there any format that I should follow to specify kernel versions along with stable tag?

Cc: stable@vger.kernel.org # 4.4+
Cc: stable@vger.kernel.org # 4.20+

Thanks
Sowjanya

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 18:32 ` [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
@ 2019-02-12 18:42   ` Dmitry Osipenko
  2019-02-12 18:45     ` Sowjanya Komatineni
  0 siblings, 1 reply; 15+ messages in thread
From: Dmitry Osipenko @ 2019-02-12 18:42 UTC (permalink / raw)
  To: Sowjanya Komatineni, thierry.reding, Jonathan Hunter,
	Mantravadi Karthik, Shardar Mohammed, Timo Alho
  Cc: wsa, peda, linux-tegra, linux-kernel, linux-i2c

12.02.2019 21:32, Sowjanya Komatineni пишет:
> Please ignore all Patch V19 series. Will resend.
> 
> Dmitry/Thierry
> I am using below stable tags in commit message based on V18 feedback to get patch applied to old kernels
> Git send email considers whole text after Cc as email address and reports badly formatted address.
> 
> Is there any format that I should follow to specify kernel versions along with stable tag?
> 
> Cc: stable@vger.kernel.org # 4.4+
> Cc: stable@vger.kernel.org # 4.20+

You could ask send-email to not auto-include CC's from the commit message: 

git send-email --suppress-cc=all

Also see https://git-scm.com/docs/git-send-email#git-send-email---suppress-ccltcategorygt for more options.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* RE: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 18:42   ` Dmitry Osipenko
@ 2019-02-12 18:45     ` Sowjanya Komatineni
  0 siblings, 0 replies; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 18:45 UTC (permalink / raw)
  To: Dmitry Osipenko, thierry.reding, Jonathan Hunter,
	Mantravadi Karthik, Shardar Mohammed, Timo Alho
  Cc: wsa, peda, linux-tegra, linux-kernel, linux-i2c

> 12.02.2019 21:32, Sowjanya Komatineni пишет:
> > Please ignore all Patch V19 series. Will resend.
> > 
> > Dmitry/Thierry
> > I am using below stable tags in commit message based on V18 feedback 
> > to get patch applied to old kernels Git send email considers whole text after Cc as email address and reports badly formatted address.
> > 
> > Is there any format that I should follow to specify kernel versions along with stable tag?
> > 
> > Cc: stable@vger.kernel.org # 4.4+
> > Cc: stable@vger.kernel.org # 4.20+
>
> You could ask send-email to not auto-include CC's from the commit message: 
>
> git send-email --suppress-cc=all
>
> Also see https://git-scm.com/docs/git-send-email#git-send-email---suppress-ccltcategorygt for more options.

Thanks Dmitry. Will go thru...

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 19:06 Sowjanya Komatineni
  2019-02-12 21:00 ` Peter Rosin
@ 2019-02-14 16:51 ` Wolfram Sang
  1 sibling, 0 replies; 15+ messages in thread
From: Wolfram Sang @ 2019-02-14 16:51 UTC (permalink / raw)
  To: Sowjanya Komatineni
  Cc: thierry.reding, jonathanh, mkarthik, smohammed, talho, peda,
	digetx, linux-tegra, linux-kernel, linux-i2c

[-- Attachment #1: Type: text/plain, Size: 372 bytes --]

On Tue, Feb 12, 2019 at 11:06:42AM -0800, Sowjanya Komatineni wrote:
> This patch sorts all the include headers alphabetically for the
> I2C Tegra driver.
> 
> Acked-by: Thierry Reding <treding@nvidia.com>
> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
> Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>

Whole series applied to for-next, thanks!


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-13 23:45           ` Sowjanya Komatineni
@ 2019-02-14 16:51             ` Wolfram Sang
  0 siblings, 0 replies; 15+ messages in thread
From: Wolfram Sang @ 2019-02-14 16:51 UTC (permalink / raw)
  To: Sowjanya Komatineni
  Cc: Dmitry Osipenko, Peter Rosin, thierry.reding, Jonathan Hunter,
	Mantravadi Karthik, Shardar Mohammed, Timo Alho, linux-tegra,
	linux-kernel, linux-i2c

[-- Attachment #1: Type: text/plain, Size: 99 bytes --]


> Appreciate if you can help fix the comment while applying patches.

You are welcome, Sowjanya.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* RE: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-13 14:55         ` Wolfram Sang
@ 2019-02-13 23:45           ` Sowjanya Komatineni
  2019-02-14 16:51             ` Wolfram Sang
  0 siblings, 1 reply; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-13 23:45 UTC (permalink / raw)
  To: Wolfram Sang, Dmitry Osipenko
  Cc: Peter Rosin, thierry.reding, Jonathan Hunter, Mantravadi Karthik,
	Shardar Mohammed, Timo Alho, linux-tegra, linux-kernel,
	linux-i2c

> > Fixing up minor itches while applying patches is the right approach, 
> > thank you!
>
> It often is. But making a dogma out of it goes nowhere for me.

Sorry, somehow I looked at your 2nd reply for this patch-1 of V19 about having few comments to take care in this series but missed to view your 1st reply to same patch-1 of V19.
Fixed my mail view so will not miss next time.

Appreciate if you can help fix the comment while applying patches.

Thanks a lot
Sowjanya


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-13 13:13       ` Dmitry Osipenko
@ 2019-02-13 14:55         ` Wolfram Sang
  2019-02-13 23:45           ` Sowjanya Komatineni
  0 siblings, 1 reply; 15+ messages in thread
From: Wolfram Sang @ 2019-02-13 14:55 UTC (permalink / raw)
  To: Dmitry Osipenko
  Cc: Peter Rosin, Sowjanya Komatineni, thierry.reding, jonathanh,
	mkarthik, smohammed, talho, linux-tegra, linux-kernel, linux-i2c

[-- Attachment #1: Type: text/plain, Size: 150 bytes --]


> Fixing up minor itches while applying patches is the right approach,
> thank you!

It often is. But making a dogma out of it goes nowhere for me.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-13  8:35     ` Wolfram Sang
@ 2019-02-13 13:13       ` Dmitry Osipenko
  2019-02-13 14:55         ` Wolfram Sang
  0 siblings, 1 reply; 15+ messages in thread
From: Dmitry Osipenko @ 2019-02-13 13:13 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: Peter Rosin, Sowjanya Komatineni, thierry.reding, jonathanh,
	mkarthik, smohammed, talho, linux-tegra, linux-kernel, linux-i2c

13.02.2019 11:35, Wolfram Sang пишет:
> 
>>> "^ Header removal should be mentioned in the commit message, I think."
>>> - Wolfram Sang [0]
>>>
>>> Cheers,
>>> Peter
>>>
>>> [0] https://lkml.org/lkml/2019/2/11/375
>>>
>>
>> It could make sense to adjust the comment only if there will be
>> anything else worthwhile a new revision, otherwise it is
>> not-so-important. 
> 
> Not quite. Addressing review comments and proper commit messages are
> both important. So, it needs to be fixed. Yes, I can fix this small
> issue locally here (and I will do this, so no need to resend), but this
> is ultimately my decision (which you can surely ask for but not
> rely on).
> 
> I'll apply this series later today.
> 

Fixing up minor itches while applying patches is the right approach, thank you!

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 21:15   ` Dmitry Osipenko
@ 2019-02-13  8:35     ` Wolfram Sang
  2019-02-13 13:13       ` Dmitry Osipenko
  0 siblings, 1 reply; 15+ messages in thread
From: Wolfram Sang @ 2019-02-13  8:35 UTC (permalink / raw)
  To: Dmitry Osipenko
  Cc: Peter Rosin, Sowjanya Komatineni, thierry.reding, jonathanh,
	mkarthik, smohammed, talho, linux-tegra, linux-kernel, linux-i2c

[-- Attachment #1: Type: text/plain, Size: 673 bytes --]


> > "^ Header removal should be mentioned in the commit message, I think."
> > - Wolfram Sang [0]
> > 
> > Cheers,
> > Peter
> > 
> > [0] https://lkml.org/lkml/2019/2/11/375
> > 
> 
> It could make sense to adjust the comment only if there will be
> anything else worthwhile a new revision, otherwise it is
> not-so-important. 

Not quite. Addressing review comments and proper commit messages are
both important. So, it needs to be fixed. Yes, I can fix this small
issue locally here (and I will do this, so no need to resend), but this
is ultimately my decision (which you can surely ask for but not
rely on).

I'll apply this series later today.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 21:00 ` Peter Rosin
@ 2019-02-12 21:15   ` Dmitry Osipenko
  2019-02-13  8:35     ` Wolfram Sang
  0 siblings, 1 reply; 15+ messages in thread
From: Dmitry Osipenko @ 2019-02-12 21:15 UTC (permalink / raw)
  To: Peter Rosin, Sowjanya Komatineni, thierry.reding, jonathanh,
	mkarthik, smohammed, talho
  Cc: wsa, linux-tegra, linux-kernel, linux-i2c

13.02.2019 0:00, Peter Rosin пишет:
> On 2019-02-12 20:06, Sowjanya Komatineni wrote:
>> This patch sorts all the include headers alphabetically for the
>> I2C Tegra driver.
>>
>> Acked-by: Thierry Reding <treding@nvidia.com>
>> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
>> Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
>> ---
>>  [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18/V19] : Rebased to 5.0-rc4
>>  [V3/V4/V5/V7/V8] : Removed unsued headers in tegra I2C
> 
> "^ Header removal should be mentioned in the commit message, I think."
> - Wolfram Sang [0]
> 
> Cheers,
> Peter
> 
> [0] https://lkml.org/lkml/2019/2/11/375
> 

It could make sense to adjust the comment only if there will be anything else worthwhile a new revision, otherwise it is not-so-important. 

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
  2019-02-12 19:06 Sowjanya Komatineni
@ 2019-02-12 21:00 ` Peter Rosin
  2019-02-12 21:15   ` Dmitry Osipenko
  2019-02-14 16:51 ` Wolfram Sang
  1 sibling, 1 reply; 15+ messages in thread
From: Peter Rosin @ 2019-02-12 21:00 UTC (permalink / raw)
  To: Sowjanya Komatineni, thierry.reding, jonathanh, mkarthik,
	smohammed, talho
  Cc: wsa, digetx, linux-tegra, linux-kernel, linux-i2c

On 2019-02-12 20:06, Sowjanya Komatineni wrote:
> This patch sorts all the include headers alphabetically for the
> I2C Tegra driver.
> 
> Acked-by: Thierry Reding <treding@nvidia.com>
> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
> Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
> ---
>  [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18/V19] : Rebased to 5.0-rc4
>  [V3/V4/V5/V7/V8] : Removed unsued headers in tegra I2C

"^ Header removal should be mentioned in the commit message, I think."
- Wolfram Sang [0]

Cheers,
Peter

[0] https://lkml.org/lkml/2019/2/11/375

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
@ 2019-02-12 19:06 Sowjanya Komatineni
  2019-02-12 21:00 ` Peter Rosin
  2019-02-14 16:51 ` Wolfram Sang
  0 siblings, 2 replies; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 19:06 UTC (permalink / raw)
  To: thierry.reding, jonathanh, mkarthik, smohammed, talho, skomatineni
  Cc: wsa, peda, digetx, linux-tegra, linux-kernel, linux-i2c

This patch sorts all the include headers alphabetically for the
I2C Tegra driver.

Acked-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
---
 [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18/V19] : Rebased to 5.0-rc4
 [V3/V4/V5/V7/V8] : Removed unsued headers in tegra I2C
 [V2] 		  : Added this in V2 to sort the headers in tegra I2C



 drivers/i2c/busses/i2c-tegra.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
index c77adbbea0c7..79c6aa87499b 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -6,24 +6,21 @@
  * Author: Colin Cross <ccross@android.com>
  */
 
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/platform_device.h>
 #include <linux/clk.h>
+#include <linux/delay.h>
 #include <linux/err.h>
 #include <linux/i2c.h>
-#include <linux/io.h>
+#include <linux/init.h>
 #include <linux/interrupt.h>
-#include <linux/delay.h>
-#include <linux/slab.h>
-#include <linux/of_device.h>
+#include <linux/io.h>
+#include <linux/iopoll.h>
+#include <linux/kernel.h>
 #include <linux/module.h>
-#include <linux/reset.h>
+#include <linux/of_device.h>
 #include <linux/pinctrl/consumer.h>
+#include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
-#include <linux/iopoll.h>
-
-#include <asm/unaligned.h>
+#include <linux/reset.h>
 
 #define TEGRA_I2C_TIMEOUT (msecs_to_jiffies(1000))
 #define BYTES_PER_FIFO_WORD 4
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically
@ 2019-02-12 18:28 Sowjanya Komatineni
  0 siblings, 0 replies; 15+ messages in thread
From: Sowjanya Komatineni @ 2019-02-12 18:28 UTC (permalink / raw)
  To: thierry.reding, jonathanh, mkarthik, smohammed, talho
  Cc: wsa, peda, digetx, linux-tegra, linux-kernel, linux-i2c,
	Sowjanya Komatineni

This patch sorts all the include headers alphabetically for the
I2C Tegra driver.

Acked-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
---
 [V9/V10/V11/V12/V13/V14/V15/V16/V17/V18/V19] : Rebased to 5.0-rc4
 [V3/V4/V5/V7/V8] : Removed unsued headers in tegra I2C
 [V2] 		  : Added this in V2 to sort the headers in tegra I2C



 drivers/i2c/busses/i2c-tegra.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c
index c77adbbea0c7..79c6aa87499b 100644
--- a/drivers/i2c/busses/i2c-tegra.c
+++ b/drivers/i2c/busses/i2c-tegra.c
@@ -6,24 +6,21 @@
  * Author: Colin Cross <ccross@android.com>
  */
 
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/platform_device.h>
 #include <linux/clk.h>
+#include <linux/delay.h>
 #include <linux/err.h>
 #include <linux/i2c.h>
-#include <linux/io.h>
+#include <linux/init.h>
 #include <linux/interrupt.h>
-#include <linux/delay.h>
-#include <linux/slab.h>
-#include <linux/of_device.h>
+#include <linux/io.h>
+#include <linux/iopoll.h>
+#include <linux/kernel.h>
 #include <linux/module.h>
-#include <linux/reset.h>
+#include <linux/of_device.h>
 #include <linux/pinctrl/consumer.h>
+#include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
-#include <linux/iopoll.h>
-
-#include <asm/unaligned.h>
+#include <linux/reset.h>
 
 #define TEGRA_I2C_TIMEOUT (msecs_to_jiffies(1000))
 #define BYTES_PER_FIFO_WORD 4
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2019-02-14 16:51 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-12 18:27 [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
2019-02-12 18:27 ` [PATCH V19 2/7] i2c: tegra: add bus clear Master Support Sowjanya Komatineni
2019-02-12 18:32 ` [PATCH V19 1/7] i2c: tegra: sort all the include headers alphabetically Sowjanya Komatineni
2019-02-12 18:42   ` Dmitry Osipenko
2019-02-12 18:45     ` Sowjanya Komatineni
2019-02-12 18:28 Sowjanya Komatineni
2019-02-12 19:06 Sowjanya Komatineni
2019-02-12 21:00 ` Peter Rosin
2019-02-12 21:15   ` Dmitry Osipenko
2019-02-13  8:35     ` Wolfram Sang
2019-02-13 13:13       ` Dmitry Osipenko
2019-02-13 14:55         ` Wolfram Sang
2019-02-13 23:45           ` Sowjanya Komatineni
2019-02-14 16:51             ` Wolfram Sang
2019-02-14 16:51 ` Wolfram Sang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).