On Tue, Aug 13, 2019 at 08:11:34PM +0000, Christophe Leroy wrote:
ppc_md.ioremap() is only used for I/O workaround on CELL platform,
so indirect function call can be avoided.
This patch reworks the io-workaround and ioremap() functions to
use static keys for the activation of io-workaround.
When CONFIG_PPC_IO_WORKAROUNDS or CONFIG_PPC_INDIRECT_MMIO are not
selected, the I/O workaround ioremap() voids and the static key is
not used at all.
Why bother with the complex static key? ioremap isn't exactly a fast
path. Just make it a normal branch if enabled, with the option to
compile it out entirely as in your patch.