]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/pseries: Make vio and ibmebus initcalls pseries specific
authorOliver O'Halloran <oohall@gmail.com>
Tue, 21 Apr 2020 08:15:39 +0000 (18:15 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 2 Jun 2020 12:21:31 +0000 (22:21 +1000)
commita86ca2a1a923eeeccfb96c53f22cdf538219a398
tree213eacae192ea7c899ee8db74f7c5d42d437ecf8
parent33bbdeb334e5477d2facf4763ec1f3566abae462
powerpc/pseries: Make vio and ibmebus initcalls pseries specific

The vio and ibmebus buses are used for pseries specific
paravirtualised devices and currently they're initialised by the
generic initcall types. This is mostly fine, but it can result in some
nuisance errors in dmesg when booting on PowerNV on some OSes, e.g.

  [    2.984439] synth uevent: /devices/vio: failed to send uevent
  [    2.984442] vio vio: uevent: failed to send synthetic uevent
  [   17.968551] synth uevent: /devices/vio: failed to send uevent
  [   17.968554] vio vio: uevent: failed to send synthetic uevent

We don't see anything similar for the ibmebus because that depends on
!CONFIG_LITTLE_ENDIAN.

This patch squashes those by switching to using machine_*_initcall()
so the bus type is only registered when the kernel is running on a
pseries machine.

Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Reviewed-by: Tyrel Datwyler <tyreld@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200421081539.7485-1-oohall@gmail.com
arch/powerpc/platforms/pseries/ibmebus.c
arch/powerpc/platforms/pseries/vio.c