On 18/12/2025 08:21:27+0100, Jens Wiklander wrote: > Hi, > > On Mon, Dec 15, 2025 at 3:17 PM Uwe Kleine-König > <[email protected]> wrote: > > > > Hello, > > > > the objective of this series is to make tee driver stop using callbacks > > in struct device_driver. These were superseded by bus methods in 2006 > > (commit 594c8281f905 ("[PATCH] Add bus_type probe, remove, shutdown > > methods.")) but nobody cared to convert all subsystems accordingly. > > > > Here the tee drivers are converted. The first commit is somewhat > > unrelated, but simplifies the conversion (and the drivers). It > > introduces driver registration helpers that care about setting the bus > > and owner. (The latter is missing in all drivers, so by using these > > helpers the drivers become more correct.) > > > > v1 of this series is available at > > https://lore.kernel.org/all/[email protected] > > > > Changes since v1: > > > > - rebase to v6.19-rc1 (no conflicts) > > - add tags received so far > > - fix whitespace issues pointed out by Sumit Garg > > - fix shutdown callback to shutdown and not remove > > > > As already noted in v1's cover letter, this series should go in during a > > single merge window as there are runtime warnings when the series is > > only applied partially. Sumit Garg suggested to apply the whole series > > via Jens Wiklander's tree. > > If this is done the dependencies in this series are honored, in case the > > plan changes: Patches #4 - #17 depend on the first two. > > > > Note this series is only build tested. > > > > Uwe Kleine-König (17): > > tee: Add some helpers to reduce boilerplate for tee client drivers > > tee: Add probe, remove and shutdown bus callbacks to tee_client_driver > > tee: Adapt documentation to cover recent additions > > hwrng: optee - Make use of module_tee_client_driver() > > hwrng: optee - Make use of tee bus methods > > rtc: optee: Migrate to use tee specific driver registration function > > rtc: optee: Make use of tee bus methods > > efi: stmm: Make use of module_tee_client_driver() > > efi: stmm: Make use of tee bus methods > > firmware: arm_scmi: optee: Make use of module_tee_client_driver() > > firmware: arm_scmi: Make use of tee bus methods > > firmware: tee_bnxt: Make use of module_tee_client_driver() > > firmware: tee_bnxt: Make use of tee bus methods > > KEYS: trusted: Migrate to use tee specific driver registration > > function > > KEYS: trusted: Make use of tee bus methods > > tpm/tpm_ftpm_tee: Make use of tee specific driver registration > > tpm/tpm_ftpm_tee: Make use of tee bus methods > > > > Documentation/driver-api/tee.rst | 18 +---- > > drivers/char/hw_random/optee-rng.c | 26 ++---- > > drivers/char/tpm/tpm_ftpm_tee.c | 31 +++++--- > > drivers/firmware/arm_scmi/transports/optee.c | 32 +++----- > > drivers/firmware/broadcom/tee_bnxt_fw.c | 30 ++----- > > drivers/firmware/efi/stmm/tee_stmm_efi.c | 25 ++---- > > drivers/rtc/rtc-optee.c | 27 ++----- > > drivers/tee/tee_core.c | 84 ++++++++++++++++++++ > > include/linux/tee_drv.h | 12 +++ > > security/keys/trusted-keys/trusted_tee.c | 17 ++-- > > 10 files changed, 164 insertions(+), 138 deletions(-) > > > > base-commit: 8f0b4cce4481fb22653697cced8d0d04027cb1e8 > > -- > > 2.47.3 > > > > Thank you for the nice cleanup, Uwe. > > I've applied patch 1-3 to the branch tee_bus_callback_for_6.20 in my > tree at https://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee.git/ > > The branch is based on v6.19-rc1, and I'll try to keep it stable for > others to depend on, if needed. Let's see if we can agree on taking > the remaining patches via that branch.
6 and 7 can go through your branch. -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
