drivers/base: Extend documentation with preferred way to use auxbus

Document the preferred way to use auxiliary bus.

Signed-off-by: Leon Romanovsky <leon@kernel.org>
Link: https://lore.kernel.org/r/206e8c249f630abd3661deb36b84b26282241040.1743510317.git.leon@kernel.org
[ reworded the text a bit - gregkh ]
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Leon Romanovsky 2025-04-01 15:28:46 +03:00 committed by Greg Kroah-Hartman
parent 18daa52418
commit 10076ae013

View File

@ -156,6 +156,16 @@
* },
* .ops = my_custom_ops,
* };
*
* Please note that such custom ops approach is valid, but it is hard to implement
* it right without global locks per-device to protect from auxiliary_drv removal
* during call to that ops. In addition, this implementation lacks proper module
* dependency, which causes to load/unload races between auxiliary parent and devices
* modules.
*
* The most easiest way to provide these ops reliably without needing to
* have a lock is to EXPORT_SYMBOL*() them and rely on already existing
* modules infrastructure for validity and correct dependencies chains.
*/
static const struct auxiliary_device_id *auxiliary_match_id(const struct auxiliary_device_id *id,