diff mbox

[v2] reset: ti_syscon: fix a ti_syscon_reset_status issue

Message ID 1480467812-32507-1-git-send-email-xuejiancheng@hisilicon.com
State Accepted
Commit 5987b4bf512101137fa60c5c0ccac3db51541221
Headers show

Commit Message

Jiancheng Xue Nov. 30, 2016, 1:03 a.m. UTC
If STATUS_SET was not set, ti_syscon_reset_status would always return 0
no matter whether the status_bit was set or not.

Signed-off-by: Jiancheng Xue <xuejiancheng@hisilicon.com>

---
Change Log
v2:
- Refined this patch according to the suggestion from Andrew F. Davis.

 drivers/reset/reset-ti-syscon.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

-- 
1.9.1

Comments

Philipp Zabel Nov. 30, 2016, 10:07 a.m. UTC | #1
Hi Jiancheng,

Am Mittwoch, den 30.11.2016, 09:03 +0800 schrieb Jiancheng Xue:
> If STATUS_SET was not set, ti_syscon_reset_status would always return 0

> no matter whether the status_bit was set or not.

> 

> Signed-off-by: Jiancheng Xue <xuejiancheng@hisilicon.com>


Thank you, I've added:

Fixes: cc7c2bb1493c ("reset: add TI SYSCON based reset driver")

and applied the patch.

regards
Philipp

> ---

> Change Log

> v2:

> - Refined this patch according to the suggestion from Andrew F. Davis.

> 

>  drivers/reset/reset-ti-syscon.c | 4 ++--

>  1 file changed, 2 insertions(+), 2 deletions(-)

> 

> diff --git a/drivers/reset/reset-ti-syscon.c b/drivers/reset/reset-ti-syscon.c

> index 47f0ffd..1799fd4 100644

> --- a/drivers/reset/reset-ti-syscon.c

> +++ b/drivers/reset/reset-ti-syscon.c

> @@ -154,8 +154,8 @@ static int ti_syscon_reset_status(struct reset_controller_dev *rcdev,

>  	if (ret)

>  		return ret;

>  

> -	return (reset_state & BIT(control->status_bit)) &&

> -			(control->flags & STATUS_SET);

> +	return !(reset_state & BIT(control->status_bit)) ==

> +		!(control->flags & STATUS_SET);

>  }

>  

>  static struct reset_control_ops ti_syscon_reset_ops = {
Suman Anna Jan. 6, 2017, 10:24 p.m. UTC | #2
Hi Philipp,

On 11/30/2016 04:07 AM, Philipp Zabel wrote:
> Hi Jiancheng,

> 

> Am Mittwoch, den 30.11.2016, 09:03 +0800 schrieb Jiancheng Xue:

>> If STATUS_SET was not set, ti_syscon_reset_status would always return 0

>> no matter whether the status_bit was set or not.

>>

>> Signed-off-by: Jiancheng Xue <xuejiancheng@hisilicon.com>

> 

> Thank you, I've added:

> 

> Fixes: cc7c2bb1493c ("reset: add TI SYSCON based reset driver")

> 

> and applied the patch.


Haven't seen this patch hit linux-next yet. In any case, if it is not
too late,

Tested-by: Suman Anna <s-anna@ti.com>


I will post a minor following binding update patch to fix some typos.

regards
Suman
diff mbox

Patch

diff --git a/drivers/reset/reset-ti-syscon.c b/drivers/reset/reset-ti-syscon.c
index 47f0ffd..1799fd4 100644
--- a/drivers/reset/reset-ti-syscon.c
+++ b/drivers/reset/reset-ti-syscon.c
@@ -154,8 +154,8 @@  static int ti_syscon_reset_status(struct reset_controller_dev *rcdev,
 	if (ret)
 		return ret;
 
-	return (reset_state & BIT(control->status_bit)) &&
-			(control->flags & STATUS_SET);
+	return !(reset_state & BIT(control->status_bit)) ==
+		!(control->flags & STATUS_SET);
 }
 
 static struct reset_control_ops ti_syscon_reset_ops = {