bus/auxiliary: introduce auxiliary bus
authorXueming Li <xuemingl@nvidia.com>
Mon, 5 Jul 2021 06:45:12 +0000 (14:45 +0800)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 5 Jul 2021 16:11:28 +0000 (18:11 +0200)
commit1afce3086cf448a004d69b9f19a028e9a6db0083
tree956c7f360be223ac69606c92db1c459c4113c949
parent35d4f17b3d301469685442ebcc2108a5bd5e5bbe
bus/auxiliary: introduce auxiliary bus

Auxiliary bus [1] provides a way to split function into child-devices
representing sub-domains of functionality. Each auxiliary device
represents a part of its parent functionality.

Auxiliary device is identified by unique device name, sysfs path:
  /sys/bus/auxiliary/devices/<name>

Devargs legacy syntax of auxiliary device:
  -a auxiliary:<name>[,args...]
Devargs generic syntax of auxiliary device:
  -a bus=auxiliary,name=<name>/class=<class>/driver=<driver>[,args...]

[1] kernel auxiliary bus document:
https://www.kernel.org/doc/html/latest/driver-api/auxiliary_bus.html

Signed-off-by: Xueming Li <xuemingl@nvidia.com>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
MAINTAINERS
doc/guides/rel_notes/release_21_08.rst
drivers/bus/auxiliary/auxiliary_common.c [new file with mode: 0644]
drivers/bus/auxiliary/auxiliary_params.c [new file with mode: 0644]
drivers/bus/auxiliary/linux/auxiliary.c [new file with mode: 0644]
drivers/bus/auxiliary/meson.build [new file with mode: 0644]
drivers/bus/auxiliary/private.h [new file with mode: 0644]
drivers/bus/auxiliary/rte_bus_auxiliary.h [new file with mode: 0644]
drivers/bus/auxiliary/version.map [new file with mode: 0644]
drivers/bus/meson.build