Arm FF-A driver updates for v6.11

The main addition is the split of bus and driver into distinct modules
 The FF-A bus module is initialized at subsys_initcall level when builtin.
 
 FF-A drivers initialization is now changed to module_init level so that
 pKVM ffa proxy is all setup and running in case pKVM hypervisor needs to
 trap and handle FF-A calls.
 
 One of the reason for not having this split from the beginning is the
 need to workaround the FF-A v1.0 NULL UUID. The FF-A bus layer called
 into FF-A driver and populated the device UUID if it matches with the
 driver attempting to match. Moving the workaround away from the FF-A
 bus layer to the FF-A core driver as a bus notifier will help to remove
 the dependency.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmZ1dMsACgkQAEG6vDF+
 4phkJBAA0ybLo3iExgUTUi7G+zoCvbnt2vCWGhcd/TnOHuQYEl2pJG8N4tAytBDd
 CsUpWtX7nzo2DKV9UOM+TjyFVP0J2m8UvlUVb+X2CNbg2vUfVZLm831EN7WbdS1w
 yXAgyf3QMaLrmT9QVhf5FZDLJF2YV589cdBLML8PsJjbkKE5q3Xre2w3uv7dW7uE
 21zfAxrlqdbj3AuWSTt9aBxnkOXifhw93raoFL3Jr3RHOhaIot7KJbsFUFPNikZQ
 Q5daFnwGkKMslW18LUBB7VYlkDBtsHe4QPFddMKXRSufdQk65kB4q/TL79QDoSQ3
 7CgJZ2yl/gCeLr5nEmTGeQVnxaqQDE0bw1q9DqskcE/2Tfo916l260qix3qzLmtF
 /nmkP8geLijRAqkeAKXxj0vr5j3CWSGn2ziLi0167QUPnYBvtAgKKuPVUwZG3GBE
 hLwPIiclzJA5HnswsQm8zEOWwF1po5mycRV+dxINRWt6rh4jhSWVZvYH77kg6t0I
 wEc7mauh879G5CHuLGiwSof6R2pDzhXRwX9Q37kpYoq10/Vm9KPnm5XeUOQZ5F/s
 lZH8PZfds6M7tALrc9nsdMMF3YMU31oH9bpBYYQrad5J89Cx41OeNM41BkKLK7dW
 K2pJ7wOL3Us7a/gNszbL7kUG7wRVe/qVNouhC0y3uGOPFNScuTs=
 =Kl7/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmZ9eiUACgkQYKtH/8kJ
 Uif0zBAAjk+BS5UP627Uhej+cXrZhHkwRrj6mJ9C4wFYR6672vxhdMh+wPZcbh/H
 yl8/Z+1TUBTmVmQtmKyi0cRhFFX12I0FyXpa7n7WVMhXnmvYRd2SjbRctYfc3pxW
 C1TqHxM3a7bkaknzM4N5Uuj3qpwV74Hbp+rfaEdH4pL44vV2o2OkueM5IsBpgnSb
 Pe1Wn6zXgXFIQyo8aVF7DGxNuBleNgxtX+zfcY5694IGKDKn2llsKxVeM5cDNg2q
 WmKQ7rz7ZqpkDxQBL3wLZnd7lziSPVQ9jJ3m7ECzj7W0RAPQTskeNIlKyKK+9kHB
 HmmiOlLbQu+lirgZ15N3t8kiYFNVh8HDK+p5w/dgUD4EAT+TZgQgun9d61VLf6AT
 uD4XF0fPB3B3PKAfOhp7ZOU6sZH4uibFh+8RAm9xRJjXYvA0Il7gcwbC45O1dQK7
 cqusKECEPTKsFggj0fuYgfDiNEgZpGSFjKAfYvB63aRZjoj7L29YhMl0Hwr87dFC
 vsoJgs0pDW+V4ajqDoRPOLWkDwafMWjIrXxDFTEEw8xLQMTSOUC2Yei4sPDViLLG
 3HTlssc1gO2axhrn5SpxPCgX+UruC4MIacj7kntv1VhYmOE5yoOLeTGV6lWA0LGm
 NSqz0Gr8N+ycbtU2hNu/HULt6TViI3/SwRr2KK45rWHK7qHBu0Q=
 =tW+N
 -----END PGP SIGNATURE-----

Merge tag 'ffa-updates-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers

Arm FF-A driver updates for  v6.11

The main addition is the split of bus and driver into distinct modules
The FF-A bus module is initialized at subsys_initcall level when builtin.

FF-A drivers initialization is now changed to module_init level so that
pKVM ffa proxy is all setup and running in case pKVM hypervisor needs to
trap and handle FF-A calls.

One of the reason for not having this split from the beginning is the
need to workaround the FF-A v1.0 NULL UUID. The FF-A bus layer called
into FF-A driver and populated the device UUID if it matches with the
driver attempting to match. Moving the workaround away from the FF-A
bus layer to the FF-A core driver as a bus notifier will help to remove
the dependency.

* tag 'ffa-updates-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  firmware: arm_ffa: Split bus and driver into distinct modules
  firmware: arm_ffa: Move the FF-A v1.0 NULL UUID workaround to bus notifier

Link: https://lore.kernel.org/r/20240624103451.2870146-1-sudeep.holla@arm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2024-06-27 16:41:41 +02:00
commit 87dcb2f079
4 changed files with 58 additions and 29 deletions