Commit 1a575cde authored by Nathan Chancellor's avatar Nathan Chancellor Committed by Jakub Kicinski
Browse files

ptp: ocp: Avoid operator precedence warning in ptp_ocp_summary_show()

Clang warns twice:

drivers/ptp/ptp_ocp.c:2065:16: error: operator '?:' has lower precedence
than '&'; '&' will be evaluated first
[-Werror,-Wbitwise-conditional-parentheses]
                           on & map ? " ON" : "OFF", src);
                           ~~~~~~~~ ^
drivers/ptp/ptp_ocp.c:2065:16: note: place parentheses around the '&'
expression to silence this warning
                           on & map ? " ON" : "OFF", src);
                                    ^
                           (       )
drivers/ptp/ptp_ocp.c:2065:16: note: place parentheses around the '?:'
expression to evaluate it first
                           on & map ? " ON" : "OFF", src);
                                    ^

on and map are both booleans so this should be a logical AND, which
clears up the operator precedence issue.

Fixes: a62a56d0 ("ptp: ocp: Enable 4th timestamper / PPS generator")
Link: https://github.com/ClangBuiltLinux/linux/issues/1457


Suggested-by: default avatarJonathan Lemon <jonathan.lemon@gmail.com>
Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
Acked-by: default avatarJonathan Lemon <jonathan.lemon@gmail.com>
Link: https://lore.kernel.org/r/20210917045204.1385801-1-nathan@kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 5ef8a029
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -2062,11 +2062,11 @@ ptp_ocp_summary_show(struct seq_file *s, void *data)
		on = ioread32(&ts_reg->enable);
		on = ioread32(&ts_reg->enable);
		map = !!(bp->pps_req_map & OCP_REQ_TIMESTAMP);
		map = !!(bp->pps_req_map & OCP_REQ_TIMESTAMP);
		seq_printf(s, "%7s: %s, src: %s\n", "TS3",
		seq_printf(s, "%7s: %s, src: %s\n", "TS3",
			   on & map ? " ON" : "OFF", src);
			   on && map ? " ON" : "OFF", src);


		map = !!(bp->pps_req_map & OCP_REQ_PPS);
		map = !!(bp->pps_req_map & OCP_REQ_PPS);
		seq_printf(s, "%7s: %s, src: %s\n", "PPS",
		seq_printf(s, "%7s: %s, src: %s\n", "PPS",
			   on & map ? " ON" : "OFF", src);
			   on && map ? " ON" : "OFF", src);
	}
	}


	if (bp->irig_out) {
	if (bp->irig_out) {