diff mbox series

i2c: tegra-bpmp: ignore DMA safe buffer flag

Message ID 20210111142713.3641208-1-mperttunen@nvidia.com
State Superseded
Headers show
Series i2c: tegra-bpmp: ignore DMA safe buffer flag | expand

Commit Message

Mikko Perttunen Jan. 11, 2021, 2:27 p.m. UTC
From: Muhammed Fazal <mfazale@nvidia.com>

Ignore I2C_M_DMA_SAFE flag as it does not make a difference
for bpmp-i2c, but causes -EINVAL to be returned for valid
transactions.

Signed-off-by: Muhammed Fazal <mfazale@nvidia.com>
Cc: stable@vger.kernel.org # v4.19+
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
---
This fixes failures seen with PMIC probing tools on
Tegra186+ boards.

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

Comments

Ben Dooks Jan. 11, 2021, 3:04 p.m. UTC | #1
On 11/01/2021 14:27, Mikko Perttunen wrote:
> From: Muhammed Fazal <mfazale@nvidia.com>
> 
> Ignore I2C_M_DMA_SAFE flag as it does not make a difference
> for bpmp-i2c, but causes -EINVAL to be returned for valid
> transactions.
> 
> Signed-off-by: Muhammed Fazal <mfazale@nvidia.com>
> Cc: stable@vger.kernel.org # v4.19+
> Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
> ---
> This fixes failures seen with PMIC probing tools on
> Tegra186+ boards.
> 
>   drivers/i2c/busses/i2c-tegra-bpmp.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/i2c/busses/i2c-tegra-bpmp.c b/drivers/i2c/busses/i2c-tegra-bpmp.c
> index ec7a7e917edd..998d4b21fb59 100644
> --- a/drivers/i2c/busses/i2c-tegra-bpmp.c
> +++ b/drivers/i2c/busses/i2c-tegra-bpmp.c
> @@ -80,6 +80,9 @@ static int tegra_bpmp_xlate_flags(u16 flags, u16 *out)
>   		flags &= ~I2C_M_RECV_LEN;
>   	}
>   
> +	if (flags & I2C_M_DMA_SAFE)
> +		flags &= ~I2C_M_DMA_SAFE;
> +

Just a comment, you can do without the test here.
Just doing this would have been fine:

	flags &= ~I2C_M_DMA_SAFE;
Mikko Perttunen Jan. 11, 2021, 3:49 p.m. UTC | #2
On 1/11/21 5:04 PM, Ben Dooks wrote:
> On 11/01/2021 14:27, Mikko Perttunen wrote:
>> From: Muhammed Fazal <mfazale@nvidia.com>
>>
>> Ignore I2C_M_DMA_SAFE flag as it does not make a difference
>> for bpmp-i2c, but causes -EINVAL to be returned for valid
>> transactions.
>>
>> Signed-off-by: Muhammed Fazal <mfazale@nvidia.com>
>> Cc: stable@vger.kernel.org # v4.19+
>> Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
>> ---
>> This fixes failures seen with PMIC probing tools on
>> Tegra186+ boards.
>>
>>   drivers/i2c/busses/i2c-tegra-bpmp.c | 3 +++
>>   1 file changed, 3 insertions(+)
>>
>> diff --git a/drivers/i2c/busses/i2c-tegra-bpmp.c 
>> b/drivers/i2c/busses/i2c-tegra-bpmp.c
>> index ec7a7e917edd..998d4b21fb59 100644
>> --- a/drivers/i2c/busses/i2c-tegra-bpmp.c
>> +++ b/drivers/i2c/busses/i2c-tegra-bpmp.c
>> @@ -80,6 +80,9 @@ static int tegra_bpmp_xlate_flags(u16 flags, u16 *out)
>>           flags &= ~I2C_M_RECV_LEN;
>>       }
>> +    if (flags & I2C_M_DMA_SAFE)
>> +        flags &= ~I2C_M_DMA_SAFE;
>> +
> 
> Just a comment, you can do without the test here.
> Just doing this would have been fine:
> 
>      flags &= ~I2C_M_DMA_SAFE;
> 
> 
> 

Yep, I'll send a v2.

thanks,
Mikko
diff mbox series

Patch

diff --git a/drivers/i2c/busses/i2c-tegra-bpmp.c b/drivers/i2c/busses/i2c-tegra-bpmp.c
index ec7a7e917edd..998d4b21fb59 100644
--- a/drivers/i2c/busses/i2c-tegra-bpmp.c
+++ b/drivers/i2c/busses/i2c-tegra-bpmp.c
@@ -80,6 +80,9 @@  static int tegra_bpmp_xlate_flags(u16 flags, u16 *out)
 		flags &= ~I2C_M_RECV_LEN;
 	}
 
+	if (flags & I2C_M_DMA_SAFE)
+		flags &= ~I2C_M_DMA_SAFE;
+
 	return (flags != 0) ? -EINVAL : 0;
 }