soc: fsl: qe: introduce qe_io{read,write}* wrappers
authorRasmus Villemoes <linux@rasmusvillemoes.dk>
Thu, 28 Nov 2019 14:55:09 +0000 (15:55 +0100)
committerLi Yang <leoyang.li@nxp.com>
Mon, 9 Dec 2019 19:54:29 +0000 (13:54 -0600)
commit6ac9b61786cc64ae5cbfb69413137656f72e8204
treedda83c77c12888067d57e251d22bbfa5b91616b2
parentd9d95bcad38d18536ecf344e3f4105ed3c7dc7f7
soc: fsl: qe: introduce qe_io{read,write}* wrappers

The QUICC engine drivers use the powerpc-specific out_be32() etc. In
order to allow those drivers to build for other architectures, those
must be replaced by iowrite32be(). However, on powerpc, out_be32() is
a simple inline function while iowrite32be() is out-of-line. So in
order not to introduce a performance regression on powerpc when making
the drivers work on other architectures, introduce qe_io* helpers.

Also define the qe_{clr,set,clrset}bits* helpers in terms of these new
macros.

Reviewed-by: Timur Tabi <timur@kernel.org>
Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
include/soc/fsl/qe/qe.h