2020-03-12 22:30:12

by Leo Li

[permalink] [raw]
Subject: [PATCH 0/6] Fix sparse warnings for common qe library code

The QE code was previously only supported on big-endian PowerPC systems
that use the same endian as the QE device. The endian transfer code is
not really exercised. Recent updates extended the QE drivers to
little-endian ARM/ARM64 systems which makes the endian transfer really
meaningful and hence triggered more sparse warnings for the endian
mismatch. Some of these endian issues are real issues that need to be
fixed.

While at it, fixed some direct de-references of IO memory space and
suppressed other __iomem address space mismatch issues by adding correct
address space attributes.

Li Yang (6):
soc: fsl: qe: fix sparse warnings for qe.c
soc: fsl: qe: fix sparse warning for qe_common.c
soc: fsl: qe: fix sparse warnings for ucc.c
soc: fsl: qe: fix sparse warnings for qe_ic.c
soc: fsl: qe: fix sparse warnings for ucc_fast.c
soc: fsl: qe: fix sparse warnings for ucc_slow.c

drivers/soc/fsl/qe/qe.c | 4 ++--
drivers/soc/fsl/qe/qe_common.c | 2 +-
drivers/soc/fsl/qe/qe_ic.c | 2 +-
drivers/soc/fsl/qe/ucc.c | 2 +-
drivers/soc/fsl/qe/ucc_slow.c | 33 +++++++++++++--------------------
include/soc/fsl/qe/ucc_fast.h | 6 +++---
include/soc/fsl/qe/ucc_slow.h | 13 ++++++-------
7 files changed, 27 insertions(+), 35 deletions(-)

--
2.17.1


2020-03-16 21:14:16

by Rasmus Villemoes

[permalink] [raw]
Subject: Re: [PATCH 0/6] Fix sparse warnings for common qe library code

On 12/03/2020 23.28, Li Yang wrote:
> The QE code was previously only supported on big-endian PowerPC systems
> that use the same endian as the QE device. The endian transfer code is
> not really exercised. Recent updates extended the QE drivers to
> little-endian ARM/ARM64 systems which makes the endian transfer really
> meaningful and hence triggered more sparse warnings for the endian
> mismatch. Some of these endian issues are real issues that need to be
> fixed.
>
> While at it, fixed some direct de-references of IO memory space and
> suppressed other __iomem address space mismatch issues by adding correct
> address space attributes.
>
> Li Yang (6):
> soc: fsl: qe: fix sparse warnings for qe.c
> soc: fsl: qe: fix sparse warning for qe_common.c
> soc: fsl: qe: fix sparse warnings for ucc.c
> soc: fsl: qe: fix sparse warnings for qe_ic.c
> soc: fsl: qe: fix sparse warnings for ucc_fast.c
> soc: fsl: qe: fix sparse warnings for ucc_slow.c

Patches 2-5 should not change the generated code, whether LE or BE host,
as they merely add sparse annotations (please double-check with objdump
that that is indeed the case), so for those you may add

Reviewed-by: Rasmus Villemoes <[email protected]>

I think patch 1 is also correct, but I don't have hardware to test it on
ATM. I'd like to see patch 6 split into smaller pieces, most of it seems
obviously correct.

Rasmus